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.

I0809 — Zaznamenávat jen hrany, které soubor uvádí, každou s tím, kde byla pozorována

Implementovat fáze resolve a graph: hrany odvozené z explicitních vztahů, které kanonické soubory již deklarují — tvrzení ke zdroji, implementaci a testu; úkol k milníku a jeho závislostem; důkaz k úkolu; doktrína k validátoru, tvrzení a testu; záznam k úloze — každá nese soubor a pole, ve kterém byla pozorována, a žádná nenese vztah odvozený z prózy.

HOTOVO vlna 3 · p1 · profil deep-work · běží samostatně

Součást M003 — Relace je trvalá obálka a znalost se kompiluje z toho, co už je kanonické.

Cíl

Implementovat fáze resolve a graph: hrany odvozené z explicitních vztahů, které kanonické soubory již deklarují — tvrzení ke zdroji, implementaci a testu; úkol k milníku a jeho závislostem; důkaz k úkolu; doktrína k validátoru, tvrzení a testu; záznam k úloze — každá nese soubor a pole, ve kterém byla pozorována, a žádná nenese vztah odvozený z prózy.

Proč

Repozitář už obsahuje hustý, ručně udržovaný, strojově čitelný graf, který žádný příkaz neumí procházet. Jeho extrakce nestojí nic na přesnosti, protože každá hrana je uvedena. Heuristická extrakce z prózy by přidala hrany, které nikdo nenapsal, a hranu, kterou nikdo nenapsal, nemůže zkontrolovat ten, kdo by si všiml, že je špatně.

Aktuální stav

docs/CLAIMS.yaml uvádí tři vztahy na tvrzení; soubory úkolů uvádějí milník a seznam závislostí; share/doctrines.yaml uvádí validátor, seznam tvrzení, test a příkazy, které ji vynucují; každý záznam kontinuity uvádí svou úlohu. Nic z toho nečte jako graf.

Cílový stav

Hrana je from, to, typ a původ a fáze grafu odmítne hranu, které cokoli z těchto čtyř chybí. Typy hran jsou uzavřená deklarovaná množina. Visící hrana — taková, jejíž cíl není uzel — se zachová a ohlásí místo zahození, protože porušený odkaz je nález.

Rozsah

  • lib/knowledge.sh
  • lib/knowledge.awk
  • test/cases/74_knowledge_edges.sh
  • test/cases/75_knowledge_mutation.sh

Mimo rozsah

  • Odvozování vztahu z prózy
  • Jakákoli podobnost, shlukování nebo generování taxonomie
  • Hrany relací, které přijdou s integrací relací

Závislosti

Co na tom čeká

Kritéria přijetí

  • Každá hrana nese zdrojový soubor, v němž byla pozorována, a hrana bez provenience je selhání validace, ne tiché zahození
  • Typy hran jsou deklarovaná uzavřená množina a nedeklarovaný typ je chyba
  • Změna závislosti v souboru úkolu změní graf při další synchronizaci, aniž by se ručně upravoval jakýkoli generovaný soubor
  • Visící hrana se hlásí a jmenuje oba konce
  • Z odkazu Markdown, jehož cíl je mimo repozitář, se nevytváří žádná hrana

Validace

  • bash test/run.sh 74_knowledge_edges
  • bash test/run.sh 75_knowledge_mutation

Požadované důkazy

  • provenance_required
  • mutation_propagates

Důkazy

pokrývátypcommandvýsledeku commitu
provenance_requiredtesttest/run.sh 74_knowledge_edgesone case passed. Každá hrana nese soubor a pole nebo řádek, ve kterém byla pozorována; případ ověřuje řetězec původu každého ze šesti deklarovaných druhů vztahů a pak kontroluje, že žádný vyslaný řádek nemá méně než čtyři sloupce. Dvě pojistky jsou mutačně testovány proti kopii extraktoru: vymazání argumentu původu způsobí, že je hrana odmítnuta s FAIL, místo aby se vyslala s prázdným zdrojem, a přejmenování typu hrany na takový, který uzavřená množina nedeklaruje, je chyba, ne nové slovo slovníku4a7c934
mutation_propagatestesttest/run.sh 75_knowledge_mutationjeden případ prošel. Každá mutace upraví přesně jeden kanonický soubor a případ ověřuje, co se pohnulo i co ne: přesměrování závislosti pohne touto hranou a každou jinou hranu nechá bajt po bajtu shodnou; přesun úkolu na jiný milník pohne jeho hranou part_of; přepojení implementace tvrzení přepojí tuto hranu; přidání tvrzení přidá jeho uzel a přesně jeho tři deklarované hrany a nic jiného nezmění; smazání úkolu odstraní jeho uzel a z toho, co na něj mířilo, udělá hlášenou visící hranu. K ničemu z toho se neupravuje nic generovaného a pracovní strom je poté bajt po bajtu shodný4a7c934

Riziko

Odkazy v markdownu jsou jediný zdroj hran, který není kurátorovaný. Brát rozbitý externí odkaz jako stejně závažný jako rozbitý odkaz z tvrzení na test by z úmyslného odchozího odkazu udělalo trvale červenou kontrolu; vlastnictví a závažnost je nutné rozlišit.

Časová osa

zahájeno
2026-09-04T18:14:13Z
ověřeno
—
dokončeno
2026-09-04T18:31:05Z

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

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