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.

Provozní způsob selhání je objekt katalogu, nikdy stránka

Provozní způsob selhání je objekt katalogu, nikdy stránka

majordomus://rule/project.why-catalogue-is-canonical@1aktivní whykatalogprojectionsdokumentace

odkazuje na něj

Zdůvodnění

Sekce, kterou toto pravidlo řídí, začala jako deset ručně psaných stránek s parserem v bashi za nimi a fungovala přesně tak dlouho, dokud bylo deset tím správným číslem. Režim selhání takového tvaru není v tom, že se rozbije; je v tom, že jedenáctý záznam stojí stránku, datový soubor, seznam šablon, položku navigace a zpětný odkaz jinde, takže jedenáctý záznam nikdo nenapíše. Katalog, který nikdo nerozšiřuje, je katalog, který přestává popisovat produkt.

Stejný argument, který dělá ze schopnosti jednu deklaraci s mnoha projekcemi (project.interfaces-are-projections), platí i zde ze stejného důvodu: okamžiky čte člověk na stránce, worker přes MCP, skript přes HTTP a generátor webu, a čtyři čtení jednoho souboru jsou čtyři příležitosti k nesouladu.

Požadované chování

Provozní moment, publikum a provozní oblast jsou každé jeden soubor Markdown pod sekcí why vrstvy, s front matter deklarujícím podporovanou verzi schema:. Front matter je strojový kontrakt: objevování, validace, členství, vztahy, filtrování, řazení, vyhledávání, příkazový řádek, trasy HTTP, dokument OpenAPI, MCP, odvozený graf, stránky webu i diagnóza se čtou z něj a žádná projekce neodvozuje strukturu z prózy.

Přidání platného souboru je celý akt přidání položky. Nic nesmí vyžadovat druhou úpravu: ani seznam v Rustu, konstantu v JavaScriptu, navigační soubor, seznam šablon, registr transportu, dokument schématu nebo generovaný index.

Členství a každá opačná relace se odvozují. Publikum nevypisuje své okamžiky, tvrzení nevypisuje okamžiky, které na něj odpovídají, a okamžik nenese vlastní trasu, cestu API, počet ani okamžiky, které ho jmenují. Odvozená hodnota zapsaná do zdrojového souboru je porušením tohoto pravidla, i když je v den zápisu správná.

Každý odkaz, který záznam činí, je typovaný a vyřeší se proti tomu, co jmenuje — samotný katalog, registr příkazů, registr schopností, tvrzení, efektivní sada pravidel, případy užití — a nevyřešený název je chyba s nabídnutým nejbližším kandidátem, nikdy odkaz na stránku, která neexistuje.

Chování při selhání

majordomus why validate skončí kódem 10 a pojmenuje každé zjištění s jeho souborem, klíčem front matteru a u nevyřešeného odkazu nejbližším kandidátem. Generátor webu odmítne vykreslit katalog, který neprojde validací, a scripts/site-check odmítne projekci, kterou okamžik nevytvořil nebo která neodkazuje zpět. Žádný příkaz nerozhoduje, zda nová projekce začala registrovat záznamy ručně; rozhoduje recenzent a níže uvedený behaviorální případ dokazuje invariant, který činí odpověď ověřitelnou.

Ověření

majordomus why validate a bash test/run.sh 98_why_catalogue, který přidá jeden soubor, najde ho v doménovém indexu, příkazovém řádku, HTTP API, MCP i projekci webu bez další změny, pak ho odstraní a zjistí, že ze všeho zmizel.

Odkud to pochází

kanonický soubor
.ai/repo/rules/project/why-catalogue-is-canonical.v1.md
identity
project.why-catalogue-is-canonical@1
dostupné také jako
Zdroj MCP majordomus://rule/project.why-catalogue-is-canonical@1 · majordomus entity show rule/project-why-catalogue-is-canonical-1 · GET /api/v1/entity?uri=majordomus://rule/project.why-catalogue-is-canonical@1
v Cockpitu
/cockpit/objects/rule/project-why-catalogue-is-canonical-1

Tato stránka je generována z výše uvedeného souboru pomocí scripts/generate-site-data; úprava stránky nic nemění, úprava souboru změní všechna rozhraní. Výše uvedené vztahy jsou hrany docs/generated/graph.json, které spustitelný program zapisuje ze stejného indexu.

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