mirror of
https://github.com/ARUP-CAS/aiscr-qgis-amcr-viewer.git
synced 2026-10-09 12:27:36 +02:00
- openspec/config.yaml podle seedu z aiscr-management (stupeň change-tracked, vestavěné schéma spec-driven, bez openspec/specs/) - AGENTS.md: sekce OpenSpec (kdy zakládat změnu, postup, archivace s --skip-specs), artefakty změny ve stejném PR jako implementace - CI: job OpenSpec validuje artefakty (CLI připnuté na 1.14.0) Připraveno s pomocí AI (Claude), ručně zkontrolováno.
66 lines
2.9 KiB
YAML
66 lines
2.9 KiB
YAML
schema: spec-driven
|
|
|
|
# Seeded from aiscr-management
|
|
# .agents/canonical_configs/templates/openspec/config_seed.yaml;
|
|
# from now on the content is owned by this repository.
|
|
|
|
context: |
|
|
Repository: aiscr-qgis-amcr-viewer — QGIS plugin (AMČR Viewer) for
|
|
downloading and visualising data from the AMČR Digital Archive
|
|
(digiarchiv.aiscr.cz).
|
|
|
|
OpenSpec posture: change-tracked.
|
|
This is the local reading of a posture declared and owned by the
|
|
management hub (aiscr-management, .agents/sync/repos.toml):
|
|
- change-tracked — change-scoped planning artifacts live under
|
|
`openspec/changes/`; no durable capability specs are maintained here.
|
|
Do not edit this line to unblock work in progress. Changing posture is
|
|
a decision taken deliberately with the hub and then applied here.
|
|
|
|
When OpenSpec fires: behaviour-changing work (user-visible behaviour,
|
|
layer attributes, the digiarchiv API contract the plugin relies on,
|
|
stored settings), cross-repo work, and governance-touching work. Not
|
|
typo and formatting fixes, dependency or tool-pin bumps that change no
|
|
behaviour, or refreshing a generated surface from its source.
|
|
|
|
Repository conventions: `AGENTS.md` is the single source of truth
|
|
(Qt5/Qt6 rules, versioning, branches, checks). Plugin code lives in
|
|
`amcr_viewer/` (entry point `amcr_viewer.py`, API and layers in
|
|
`amcr_tools.py`, dialogs in `amcr_dialog.py`, codelists in
|
|
`amcr_codelists.py`). User documentation is `README.md` (English);
|
|
planning artifacts, commits and PRs are in Czech or English as the
|
|
author prefers, code and identifiers in English.
|
|
|
|
rules:
|
|
proposal:
|
|
- State what changes for a user of the plugin, not only in the code
|
|
- Name the affected modules under amcr_viewer/ explicitly
|
|
- Say when the change depends on or affects the digiarchiv API or
|
|
another AIS CR repository, and where
|
|
specs:
|
|
- Use RFC 2119 keywords (SHALL/MUST/SHOULD/MAY)
|
|
- Use Given/When/Then scenarios for testable contracts
|
|
- Describe behaviour the plugin guarantees, not how the code does it
|
|
design:
|
|
- Record the alternatives considered and why the chosen one won
|
|
- Respect the QGIS 3.44 minimum and Qt5/Qt6 rules from AGENTS.md
|
|
- Name the verification that will show the change worked
|
|
tasks:
|
|
- Order tasks so each one is independently verifiable
|
|
- Name the command or check that proves each group is done
|
|
- Include the version bump (metadata.txt + CITATION.cff) when
|
|
behaviour changes
|
|
- Include a final verification task that runs the checks from
|
|
AGENTS.md (check_sources, bandit, detect-secrets, flake8, ruff,
|
|
pyqgis4-checker, smoke test in qgis/qgis:ltr and :stable)
|
|
|
|
operations:
|
|
apply:
|
|
guidance:
|
|
- Completed artifacts are not approval to implement; wait for an
|
|
explicit request to apply the change
|
|
archive:
|
|
guidance:
|
|
- Posture is change-tracked, so archive with --skip-specs (no
|
|
openspec/specs/ tree is maintained)
|