diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index f3f9da3..08dd3d2 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -17,11 +17,18 @@ Nepotřebné body můžeš smazat. Komentáře () se v PR nezobrazuj - +## Zapojení AI + + +- + ## Kontrolní seznam - [ ] Změny jsou v souladu se stylem projektu (viz `AGENTS.md`) - [ ] Při změně funkcí povýšena verze v `amcr_viewer/metadata.txt` a doplněn `changelog` - [ ] Otestováno v QGIS (min. podporovaná verze 3.44) - [ ] PR míří do správné cílové větve +- [ ] Větev odpovídá konvenci (`feat/ fix/ docs/ chore/`, AI `agents//`) ## Související issue diff --git a/AGENTS.md b/AGENTS.md index 2be5a2c..e0b9536 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -12,6 +12,15 @@ přes AMČR účet. Zdroj dat: https://digiarchiv.aiscr.cz/ · Nápověda: https://amcr-help.aiscr.cz/digiarchiv/qgis-viewer.html +## Zařazení v ekosystému AIS CR + +Tento repozitář je jedním ze **sourozeneckých repozitářů** ekosystému AIS CR. +Centrální governance a AI konfigurace spravuje hub **`aiscr-management`**; konvence +v tomto souboru jsou s tímto vzorem sladěné a zjednodušené pro potřeby jednoho +QGIS pluginu. Těžkou mašinerii hubu (složka `.agents/`, OpenSpec, sync skripty, +multi-assistant generování) tento repozitář **záměrně nepřebírá**. Při širších +otázkách governance má přednost vzor z `aiscr-management`. + ## Struktura repozitáře ``` @@ -37,19 +46,35 @@ README.md # uživatelská dokumentace (anglicky) - **Commity, PR a komentáře v issue:** česky. ### Commity -- Styl odpovídá historii: česky, věcně, popisně. -- U prací na konkrétní funkci se používá prefix názvu větve, např.: - `feature/projektove-akce: do dialogu akce přidán checkbox …` -- Jeden commit = jedna logická změna. +- Styl odpovídá historii: česky, věcně, popisně; jeden commit = jedna logická + změna. +- První řádek stručně a výstižně (ideálně v imperativu); podrobnosti do těla. +- Pokud je commit připraven s pomocí AI, uveď to v těle commitu nebo v popisu PR. ### Větve -- Vývoj probíhá na tematických větvích, např. `feature/`, - `chore/`, `hotfix/`. +Konvence názvů je sladěná s hubem `aiscr-management`: + +- **lidé:** `feat/` (nová funkce), `fix/` (oprava), `docs/` + (dokumentace), `chore/` (údržba). +- **AI agenti:** `agents//` (např. `agents/claude/oprava-pian`). + +Další pravidla: + - Cílová větev pro nový vývoj je aktuální `version/v2.x.y` (ne přímo do výchozí větve bez PR). +- **Nikdy** nepushuj přímo do chráněných větví; vždy přes Pull Request. - Standardizační / nefunkční změny drž v samostatné větvi, ať se nemíchají do feature PR. +### Pravidla pro AI agenty (git) +- AI ve výchozím stavu zůstává u **lokální práce na aktuální větvi**. +- Bez **výslovného pokynu** uživatele AI nestageuje (`git add`), necommituje, + nepushuje ani samo nepřepíná/nezakládá větev pro vzdálené doručení. +- Při výslovném požadavku na push/PR použij větev `agents//`; + pokud aktuální větev tomuto vzoru neodpovídá, vyžádej si nejdřív potvrzení. +- Vytvoření větve, stage, commit, push ani draft PR AI běžně nenabízí; zmiňuj je + jen tehdy, když jsou pro splnění úkolu opravdu nutné. + ### QGIS specifika - Minimální podporovaná verze QGIS je **3.44** (`qgisMinimumVersion` v `metadata.txt`); kód nesmí spoléhat na novější API. @@ -63,6 +88,8 @@ README.md # uživatelská dokumentace (anglicky) - Verze pluginu žije v **`amcr_viewer/metadata.txt`** (`version=`). - **Při každé změně chování / nové funkci** povyš verzi a doplň položku do `changelog=` v `metadata.txt` (formát `vX.Y.Z (RRRR-MM-DD)` + odrážky). +- Datum v changelogu ber z **deterministického zdroje**, ne z paměti, např. + `python -c "import datetime; print(datetime.date.today().isoformat())"`. - Release se vytváří publikací GitHub Release; workflow `.github/workflows/release_plugin.yml` zabalí složku `amcr_viewer/` do `amcr_viewer.zip` a přiloží ji k releasu. Do ZIPu se nesmí dostat `.git*` @@ -75,6 +102,17 @@ README.md # uživatelská dokumentace (anglicky) - PR musí mířit do správné `version/v2.x.y` větve. - Před požádáním o review projdi kontrolní seznam v šabloně (zejména bump verze v `metadata.txt`, pokud měníš chování). +- V popisu PR uveď **podíl AI** (např. „text navržen AI, ručně zkontrolováno") + a odkaz na související issue, pokud existuje. + +## Bezpečnost a soukromí + +- Do promptů, příkladů ani commitů **nevkládej** ostrá produkční data, plné + log dumpy ani reálné osobní údaje (PII). +- **Rediguj** secrets, tokeny, API klíče a hesla z čehokoli, co posíláš AI; + nikdy je necommituj do repozitáře (ani přihlašovací údaje k AMČR účtu). +- Pro interní infrastrukturu (URL, hostname, prostředí) používej placeholdery, + pokud konkrétní hodnota není nutná a povolená. ## Lokální ověření