I2712 — release-check bere tag, jehož běh release ještě probíhá, jako čekající, a ne jako chybějící záznam
Zařídit, aby scripts/ci/release-check rozlišil tag, jehož release workflow ještě běží (nebo jehož záznamovou větev právě otevírá), od publikovaného release, který nikdo nezaznamenal.
HOTOVO vlna 1 · p1 · profil implementation · bezpečné paralelně
Součást development-runtime — The runtime has a development surface.
Cíl
Zařídit, aby scripts/ci/release-check rozlišil tag, jehož release workflow ještě běží (nebo jehož záznamovou větev právě otevírá), od publikovaného release, který nikdo nezaznamenal.
Proč
2026-10-14 18:37Z: úloha structure v #1146 (I1510) selhala na release-check hláškou \"v0.26.0 is published and the layer holds no release record for it ... and no release/record-v0.26.0 branch proposes one\", zatímco release workflow 38613749519 pro v0.26.0 se stále sestavoval; release na GitHubu ještě neexistoval. Každá větev posuzovaná v tomto okně byla červená z důvodu, který nebyl její vlastní. I2054 zabránila tomu, aby čekající tag zmrazil frontu, jakmile větev se záznamem existuje; okno před vznikem větve zůstalo.
Aktuální stav
release-check počítá pushnutý tag jako publikovaný a okamžitě vyžaduje záznam nebo záznamovou větev.
Cílový stav
Tag, jehož běh release pro ten tag je ve frontě nebo probíhá, nebo jehož GitHub release ještě neexistuje, se hlásí jako čekající s pojmenovaným během, ne jako nález; publikovaný release bez záznamu i bez větve záznamu po skončení svého běhu zůstává nálezem.
Rozsah
- scripts/ci/release-check
- docs/RELEASE.md
- test/cases
Mimo rozsah
- Co dělá samotný release workflow
Závislosti
Kritéria přijetí
- Mezi pushem tagu a jeho záznamovou větví release-check hlásí tag jako pending s jeho během a skončí s 0
- Poté, co běh releasu skončil bez záznamu a bez záznamové větve, je to stále nález
Validace
- bin/majordomus plan validate
Požadované důkazy
- tag_in_flight_is_pending_case
Důkazy
| pokrývá | typ | command | výsledek | u commitu |
|---|---|---|---|---|
| tag_in_flight_is_pending_case | test | MJ_TEST_JOBS=3 bash test/run.sh 3027_the_release_path_goes_first 3028_the_pages_job_waits_for_its_deployment 3029_a_tag_in_flight_is_pending 3021_a_tag_does_not_freeze_the_queue 3019_a_failed_branch_run_cancels_itself 103_release_projection 94_ci_plan | testy: 7 prošlo, 0 selhalo (běh 2026-10-14 ~22Z na master c0e3585dc836201089d6b5dd49f5a79fe8bff798 plus tato změna); případ 3029: tag bez záznamu a bez větve záznamu, jehož release běh je ve frontě nebo běží (nebo ještě nemá release na GitHubu, v rámci tolerance), se hlásí jako čekající se svým během a skončí s 0; po skončení běhu zůstává nálezem s poznámkou | c0e3585 |
Časová osa
- zahájeno
- 2026-10-14T22:01:24Z
- ověřeno
- —
- dokončeno
- 2026-10-14T22:02:55Z
Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.
Kanonický záznam: .ai/repo/project/issues/I2712.yaml. Přečtěte si ho zpět pomocí majordomus plan show I2712.