I0841 — Ekvivalence cache dokázaná případy ve tvaru vlastností
Pro každý příkaz registru určený jen ke čtení ho spustit se studenou cache, s teplou i s vypnutou, na tomto repozitáři i na syntetickém, a ověřit shodný výstup bajt po bajtu i exit kód; potom změnit jeden soubor a ověřit, že se servíruje změněný výstup.
BLOKOVÁNO vlna 2 · p0 · profil implementation · běží samostatně
Součást M004 — Výkon je spustitelný důkaz a horká cesta nedělá žádnou kanonickou práci dvakrát.
Blokováno. Tento úkol nemůže začít, dokud není hotovo I0821. Stav je z toho odvozen, ne deklarován.
Cíl
Pro každý příkaz registru určený jen ke čtení ho spustit se studenou cache, s teplou i s vypnutou, na tomto repozitáři i na syntetickém, a ověřit shodný výstup bajt po bajtu i exit kód; potom změnit jeden soubor a ověřit, že se servíruje změněný výstup.
Proč
Cache, která mění výsledek, je horší než žádná cache; důkaz musí pokrýt každého čtenáře, ne jen toho, který byl testován.
Aktuální stav
Zatím neexistuje žádná cache.
Cílový stav
Jeden případ, který prochází příkazy registru jen pro čtení, takže později přidaný příkaz pokrývá stávající.
Rozsah
- test/cases
- share/commands.yaml
Závislosti
Co na tom čeká
Kritéria přijetí
- Případ čte registr kvůli seznamu příkazů a selže, pokud je prázdný
- Každý příkaz jen pro čtení je napříč režimy bajt po bajtu shodný
- Změněný soubor změní výstup a čítače ukážou minutí
Validace
- bash test/run.sh 86_cache_equivalence
Požadované důkazy
- flatten_cache
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
Příkazy, jejichž výstup nese časové razítko (context), se porovnávají po vypuštění řádky s razítkem a případ říká, kterou řádku.
Č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/I0841.yaml. Přečtěte si ho zpět pomocí majordomus plan show I0841.