I0203 — Učinit vynucování volitelným a dokázat, že repozitář, který ho odmítne, není dotčen
Přidat jeden klíč politiky, který zapne vynucování za běhu, nastavit ho ve výchozím stavu na vypnuto a případem dokázat, že repozitář, který ho nikdy nenastaví, se chová přesně jako dnes.
BLOKOVÁNO vlna 2 · p1 · profil implementation · běží samostatně
Součást runtime-adapters — Profily se stávají runtime omezeními, ne radou.
Blokováno. Tento úkol nemůže začít, dokud není I0202 hotovo. Stav je z toho odvozen, ne deklarován.
Cíl
Přidat jeden klíč politiky, který zapne vynucování za běhu, nastavit ho ve výchozím stavu na vypnuto a případem dokázat, že repozitář, který ho nikdy nenastaví, se chová přesně jako dnes.
Proč
Omezení toho, co smí worker číst nebo vydávat, mění chování každé relace. Změna takové velikosti nemůže přijít s aktualizací; musí být zvolena a volba musí být viditelná v politice, kterou repozitář už reviduje.
Aktuální stav
Nic se nevynucuje, takže nic nepotřebuje opt-in. Přidání adaptéru bez něj by vynutilo limity v každém repozitáři, který se aktualizuje.
Cílový stav
Politika nese explicitní klíč vynucování. Chybí-li nebo je false, nástroj se chová jako před adaptérem a případ to předvádí, místo aby to tvrdil.
Rozsah
- lib
- podíl
Mimo rozsah
- Jakákoli výchozí hodnota, která zapíná vynucování
- Přepsání po příkazech; volba patří repozitáři, jednou
Závislosti
Co na tom čeká
Kritéria přijetí
- Klíč je deklarován v allowlistu politiky a odmítne se, pokud drží cokoli jiného než boolean
- Výchozí i chybějící znamená vypnuto a projekce to říkají tam, kde to worker čte
- Případ spustí celý životní cyklus v repozitáři, který klíč nikdy nenastaví, a ukáže nezměněné chování
- Doctor hlásí, zda je vynucování zapnuté, aniž by ho zapnul
Validace
- bash test/run.sh
- bin/majordomus doctor
Požadované důkazy
- sada testů
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Riziko
Opt-in, který je v kostře ve výchozím stavu zapnutý, není opt-in; kostra musí být pokryta stejným případem.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
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/I0203.yaml. Přečtěte jej zpět přes majordomus plan show I0203.