I1306 — Synchronizace pokračuje, opakuje se bez škody a říká, jak je čerstvá
Implementovat synchronizaci: inkrementální od trvalého checkpointu, idempotentní při opakování, omezenou v tom, co může jeden běh stáhnout, a upřímnou v tom, jak byla každá změna získána.
BLOKOVÁNO vlna 4 · p1 · profil deep-work · běží samostatně
Blokováno. Tento úkol nelze zahájit, dokud nejsou hotovy I1303, I1305. Stav je z toho odvozen, ne deklarován.
Cíl
Implementovat synchronizaci: inkrementální od trvalého checkpointu, idempotentní při opakování, omezenou v tom, co může jeden běh stáhnout, a upřímnou v tom, jak byla každá změna získána.
Proč
Polling není odběr. Běh, který nemůže pokračovat, buď pokaždé znovu stáhne celý pracovní prostor, nebo tiše přeskočí, co zmeškal, a úložiště, které se mění, když se upstream nezměnil, nemůže nikdo porovnat.
Aktuální stav
Nic neexistuje.
Cílový stav
Běh načte svůj checkpoint, stáhne jen to, co se změnilo, zapíše záznamy bajt po bajtu shodné, když se nic nezměnilo, zaznamená režim získání každé změny, omezí se počtem i časem a zanechá checkpoint, od kterého může přerušený běh pokračovat.
Rozsah
- scripts/lib
- skripty
- test/cases
Mimo rozsah
- Jakýkoli zápis do vendoru
- Sémantika sledování, která nazývá polling odběrem
Závislosti
- I1303BLOKOVÁNO Úložiště je omezené, změřené a neviditelné pro každou publikovanou projekci
- I1305BLOKOVÁNO Pozorovaná smlouva má otisk, stav kompatibility a fixture
Co na tom čeká
Kritéria přijetí
- Druhý běh nad nezměněným workspace nechá úložiště bajt po bajtu shodné
- Přerušený běh pokračuje od svého checkpointu, aniž by znovu stahoval, co už měl
- Každá změna zaznamenává režim získání, který ji vytvořil, a polling se nikdy nehlásí jako push
- Běh je omezen počtem i reálným časem a říká, čeho nedosáhl
- Přehrání zachyceného běhu nad fixtures reprodukuje totéž úložiště
Validace
- bash test/run.sh
Požadované důkazy
- idempotent_replay
- obnovitelné
- acquisition_honest
- omezeno
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říliš těsné meze znemožní dokončit první synchronizaci velkého pracovního prostoru; příliš volné způsobí, že rozbitý adaptér je drahý. Obojí se ladí proti naměřenému prvnímu běhu, ne volí předem.
Č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/I1306.yaml. Načtěte jej zpět pomocí majordomus plan show I1306.