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.

Dovednost je schopnost, jen když ji něco dokazuje — otestovaná, zdokumentovaná, vynucená a používaná se odvozují, nikdy nepíší

Dovednost je schopnost, jen když ji něco dokazuje — otestovaná, zdokumentovaná, vynucená a používaná se odvozují, nikdy nepíší

majordomus://adr/adr-0076navrženo skillsevidenceodvozování

odkazuje na

  • put_in_force apps/majordomus-cli/src/capability/builtin/skills.rs (soubor)
  • put_in_force apps/majordomus-cli/src/skill/mod.rs (soubor)
  • put_in_force majordomus.skill-integrity@1
  • put_in_force project.skills-are-proven-capabilities@1
  • put_in_force test/cases/391_skills_are_proven_capabilities.sh (test)
  • put_in_force test/cases/95_skills.sh (test)

odkazuje na něj

Nic ve vrstvě to nejmenuje. Zpětné odkazy se odvozují, takže prázdný seznam je odpověď, ne opomenutí.

76. Dovednost je schopnost jen tehdy, když to něco dokládá

Rozšiřuje ADR 7.

Kontext

ADR 7 učinilo z dovedností data: jeden SKILL.md na adresář, zjišťovaný třídou zdroje, validovaný proti generovanému schématu, promítaný na web a servírovaný jako majordomus://skill/<id>. To určilo, co dovednost je. Nechalo to otevřené, co o ní repozitář může ukázat. Existovaly tři dovednosti, všechny platné, a změřeno proti stromu, žádnou z nich nejmenoval žádný test a dvě z nich nebyly odkazovány ničím, co pracovník následuje: promptem, workflow, receptem. Katalog byl úplný a každá jeho položka nedokázaná — selhání, které má ručně vedený registr, dosažené o úroveň výš, skrze data, která jsou správná a o použití neříkají nic.

Zřejmý lék, pole tested: true nebo status: verified ve front matter, je totéž selhání znovu: autorské tvrzení, které žádná kontrola nemůže ověřit a které zastará v den, kdy se smaže test, který je ospravedlňoval.

Rozhodnutí

Čtyři fakta o dovednosti se odvozují při každém čtení jedinou derivací ve spustitelném souboru (crate::skill::Skills) a žádný soubor žádné z nich neuvádí.

  • otestováno — test, který vlastní runner, jmenuje dovednost pomocí majordomus-skill: <id> na řádku komentáře a poslední běh toho testu v knize důkazů posuzuje táž funkce, která posuzuje pojmenovaný test pravidla (rules::test_state): dokázáno, vstupy beze změny, zastaralé, selhává, neběželo. Značka uvnitř řetězce jsou data a nic neváže, takže test, který zapisuje fixtures, se na ně neváže.
  • zdokumentováno — stránka dovednosti na webu je sledovaný soubor.
  • vynucováno — rozeslané pravidlo validuje dovednosti (jeho validátor je skills) a CI kontrola, jejíž příkaz spouští skills verify, je vybrána změnou cesty dovednosti. Kontrola se pozná podle toho, co spouští, ne podle svého id.
  • používáno — povrch pro vyvolání odkazuje na dovednost přes majordomus://skill/<id> nebo cestou k jejímu SKILL.md: workflow, prompty a profily vrstvy (ze sekcí manifestu), šablony poskytovatelů, justfile a .just/, workflow CI a kořenové bootstrapy. Dokumentace není vyvolání; stránka, která dovednost popisuje, nikoho nenutí ji následovat.

Odvození je modul schopnosti skills — skills.status, skills.explain, skills.verify — deklarovaný jednou a promítnutý do příkazové řádky, HTTP, MCP a OpenAPI. Modul je skills, protože skill je deklarativní druh.

Aktivní dovednost, kterou nejmenuje žádný test nebo ji nic nevyvolává, je sirotek a selhání. Stejně tak test nebo vyvolání jmenující neexistující dovednost, selhávající zaznamenaný běh a soubor dovednosti, který index odmítá (hlášeno jako contract a stále uvedeno jako invalid, aby se výpis nikdy nezkrátil). Důkazy, které nejsou aktuální, chybějící stránka a chybějící gate jsou varování: každé je dluh s příkazem, který ho vyrovná, a důkazy jsou zvlášť lokální artefakt, který každá úprava testu ze své podstaty zastarává, takže odmítat kvůli nim by odmítalo každý commit, který test zlepší. Koncept nebo zastaralá dovednost nedluží nic.

Jeden soudce na fakt. Kontrakt dovednosti (schéma, sekce, duplicitní popisy, související id, příklady) zůstává u lib/skills.sh a indexu, jak ho nechalo ADR 7. Důkaz posuzuje jen skills.verify; validátor doktríny mj_validate_skills čte tento verdikt a hlásí každý nález přes doctor a watch a říká, že je neznámý — nikdy úspěch — když executable není sestaven. CI kontrola skills-proof spouští tentýž příkaz.

Původ je neprůhledná značka. Dovednost, jejíž koncept byl studován mimo tento repozitář, nese provenance: {origin: prior-art, ledger: import-<date>#<n>, decision: adapted | reimplemented | merged}, uzavřené a kontrolované vzorem ve schématu. Mapování na zdroj — repozitář, cesta, revize, poznámky — žije v gitignorovaném .ai/local/imports/<date>.yaml. Veřejný repozitář nejmenuje žádný soukromý materiál a pozdější čtenář stále pozná importované od nativního.

Odvozený stav se nezapisuje do commitovaných projekcí. site/data/generated/skills.json zůstává katalogem, jakým byl. Stav závisí na účetní knize a na diffu proti commitu, ve kterém byl běh zaznamenán, takže by se jeho projekce měnila s každým commitem a každým zaznamenaným během a odvozování by nikdy nekonvergovalo.

Zamítnuté alternativy

  • Autorské pole tested/verified, kontrolované proti stromu. Jsou to dva zdroje pro jeden fakt a kontrola je stejně odvozením.
  • Vazba testů na dovednosti z front matter dovednosti (tests: [...]). Pravidlo to tak dělá a dovednost by mohla; ale to, co postup procvičuje, je test, a autor dovednosti, který vypisuje testy, jež nenapsal, je směr, který zastarává. Značka žije tam, kde je důkaz; odvození ji čte odtamtud.
  • Počítat jakoukoli zmínku jako použití. Dokumentace, vlastní příklady dovednosti a seznamy related jiných dovedností všechny dovednosti zmiňují; žádná z nich nenutí pracovníka nějakou následovat. Použití se omezuje na povrchy, které pracovníkovi instruují.
  • Odmítat na základě důkazů, které nejsou aktuální. Viz výše; znemožnilo by to commitnout zlepšení testu a je to to, co už měří evidence-check a zaznamenaný běh.
  • Ukazovat postavení na veřejném webu. Není to stabilní projekce (viz rozhodnutí); postavení se místo toho čte živě z povrchů spustitelného souboru.

Důsledky

  • Každá aktivní dovednost tohoto repozitáře je jmenována v test/cases/391_skills_are_proven_capabilities.sh a apps/majordomus-cli/tests/skills.rs, z nichž každý čte dovednost z repozitáře a selže, pokud to není platná, vyvolávaná schopnost, která počítá test mezi své vlastní, a selže, když je aktivní dovednost vynechána z řádku značky.
  • Stávající dovednosti získaly svá první vyvolání: workflow životního cyklu úlohy jmenuje implement, assess-before-deleting a report-verification-state; prompt review jmenuje repo-review a pack-for-review; prompt předávky jmenuje report-verification-state; deploy-site už vyvolával jeho recept.
  • První vlna převzatých konceptů — assess-before-deleting, report-verification-state, pack-for-review — nese značky provenience; čtvrtý koncept, plánování před změnou fungujícího kódu, byl sloučen do implement, které ho už vyžadovalo, a nepřidává dovednost.
  • Fixturní dovednost v behaviorálním případu nyní potřebuje test pojmenování a vyvolání, aby doctor prošlo při sestaveném spustitelném souboru; 95_skills nese obojí.
  • rules::test_state a rules::ledger_diffs jsou sdílené posouzení; změna toho, jak se posuzuje zaznamenaný běh, mění pravidla a dovednosti společně.

Odkud to pochází

kanonický soubor
.ai/repo/adrs/0076-a-skill-is-a-capability-only-when-something-proves-it.md
identity
adr-0076
dostupné také jako
Zdroj MCP majordomus://adr/adr-0076 · majordomus entity show adr/adr-0076 · GET /api/v1/entity?uri=majordomus://adr/adr-0076
v Cockpitu
/cockpit/objects/adr/adr-0076

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.