Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

I1504 — Jeden vývojový přechod je schopnost, od začátku do konce

Deklarovat jeden vývojový přechod — `done` plánu — jako jediné `capability!` druhu command v modulu plánu, s typovaným vstupním schématem, případy měření a registrovanou událostí ledgeru, a nasměrovat lib/plan.sh na něj, místo aby YAML zapisoval sám.

PŘIPRAVENO vlna 0 · p0 · profil deep-work · běží samostatně

Součást development-runtime — The runtime has a development surface.

Připraveno. Všechny závislosti jsou hotové, takže majordomus plan start I1504 bude přijato.

Cíl

Deklarovat jeden vývojový přechod — `done` plánu — jako jediné `capability!` druhu command v modulu plánu, s typovaným vstupním schématem, případy měření a registrovanou událostí ledgeru, a nasměrovat lib/plan.sh na něj, místo aby YAML zapisoval sám.

Proč

Je to nejmenší změna, která testuje architekturu, již uvádí ADR 0040, a závěrem samotného auditu je, že první fáze práce není UI. Nic v cílovém toku není nová infrastruktura: makro schopnosti, vstupní schémata, generovaný OpenAPI, MCP bridge i formulářový runner Cockpitu generovaný ze schématu existují a fungují — chybí šipka od vývojového přechodu k některému z nich. Registr má dnes tři schopnosti příkazů a ani jedna není o vývoji, proto `tools/call majordomus_plan_done` odpovídá `unknown tool`: neexistuje schopnost pro přechod plánu a ta chybová zpráva je architektura v jednom řádku. Pokud to přistane čistě, každá další fáze má stejný tvar, a pokud ne, nefungovalo by ani nic pozdějšího.

Aktuální stav

Přechody plánu existují jen v lib/plan.sh, které zapisuje YAML úkolů přímo. Rustová strana čte stejné záznamy přes plan.* a od základu auditu také přes devtask.issue a devtask.milestone a nic nezapisuje. .ai/repo/development-semantics-baseline.txt nese `backing:plan` jako přijatý záznam.

Cílový stav

Přesun jednoho úkolu na hotovo se rozhoduje na jednom místě. CLI, nástroj MCP, trasa HTTP, operace OpenAPI a generovaný formulář Cockpitu jsou každé projekcí té jediné deklarace, žádné není psáno ručně a nástroj shellu ji volá tak, jak lib/context.sh a lib/capture.sh už volají binárku Rustu.

Rozsah

  • apps/majordomus-cli/src/capability/builtin/plan.rs
  • apps/majordomus-cli/src/plan.rs
  • share/events.yaml
  • lib/plan.sh
  • .ai/repo/development-semantics-baseline.txt
  • test/cases

Mimo rozsah

  • Ostatní přechody. Start a verify mají stejný tvar, jakmile je tento dokázán; rozšiřování před jeho důkazem je selhání, které má tento úkol zachytit.
  • Jakákoli stránka Cockpitu. Stávající generický runner musí novou schopnost řídit bez úpravy zdroje Cockpitu; pokud nemůže, je to nález.
  • Druhý model projektu. Kanonické záznamy zůstávají tam, kde jsou, a zachovávají svůj tvar.

Závislosti

Žádné. Tento úkol je kořenem grafu.

Co na tom čeká

Kritéria přijetí

  • Nástroj MCP existuje a tools/call přesune úkol do done
  • Operace jiná než GET pro přechod se objeví ve vygenerovaném OpenAPI, aniž by někdo upravoval dokument
  • Stávající generický runner Cockpitu ho řídí bez změny jediného souboru pod apps/majordomus-cli/src/cockpit
  • lib/plan.sh už YAML úkolu nezapisuje sám
  • test/cases/99_plan_capabilities.sh stále drží oba enginy na bajtové rovnosti
  • Kontrola sémantiky vývoje hlásí o jednu položku méně a odmítá návrat základní hodnoty

Validace

  • bin/majordomus-cli capabilities validate
  • bin/majordomus-cli generate --check
  • bash test/run.sh 99_plan_capabilities
  • majordomus plan validate

Požadované důkazy

  • transition_is_a_capability
  • projection_not_handwritten
  • two_engines_still_agree

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

Vysoká hodnota, omezený dosah škod. Skutečné riziko je rozsah: větev, která portuje lib/plan.sh celé, nic nedokazuje a nelze ji posoudit. Jeden přechod, nebo stop.

Č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/I1504.yaml. Přečtěte jej zpět pomocí majordomus plan show I1504.

Prohledává názvy a popisy všech stránek, které tento web publikuje.