175. v1.0.0-alpha.1 deklaruje, co umí, a svá omezení, a každý řádek deklarace jmenuje svůj důkaz
Kontext
Příkaz vlastníka pro první pre-release zní: poznámky k release pro alfu deklarují přesně, co umí, a její omezení. Nic v repozitáři poznámky k release nepíše. Tělo release na GitHubu je vlastní seznam sloučených pull requestů GitHubu (gh release create --generate-notes, .github/workflows/release.yml); záznam release (.ai/repo/releases/<tag>.yaml) jsou důkazy přečtené z artefaktů s odkazem notes_url zpět na tuto stránku GitHubu; a release.changelog skládá záznamy, ADR datovaná uvnitř okna každého release a konvenční commity jeho rozsahu (ADR 0029). Jediný autorský text, který se dostane k tomu, co nástroj pro značku vypíše, je proto rozhodnutí datované uvnitř okna značky. To, že publikované tělo není changelogem nástroje, odporuje „každá plocha je odvozena“ z ADR 0029; vlastní to I2826 po alfě.
Rozhodnutí
Deklarací alfy je toto rozhodnutí. Je datováno uvnitř okna, které končí v v1.0.0-alpha.1, takže ho majordomus release changelog vypíše v sekci alfy. Každý řádek jmenuje funkci, tvrzení, případ nebo dokument, který jej dokazuje, a nic se netvrdí, co matice tvrzení (docs/CLAIMS.yaml) nebo případ nedrží. Tvrzení, které není guaranteed, je omezení, ne schopnost.
Co umí v1.0.0-alpha.1
- Nainstaluje a ověří sám sebe na macOS (aarch64, x86_64) a Linuxu (x86_64 a aarch64, glibc a musl), připnuto jménem, protože pre-release nikdy není nejnovějším releasem:
curl -fsSL https://majordomus.dev/install.sh | sh -s -- --version v1.0.0-alpha.1(docs/INSTALL.md). Podporované cíle jsou cíleshare/distribution.yaml; instalátor ověří každý archiv před instalací (installer-verifies-before-installing, případ85_installer.sh), release je úplný na každém povinném cíli, nebo chybí (release-is-complete-or-absent), a inzerovaný příkaz se odvozuje, nepíše (install-command-is-derived). Funkceinstall. - Dohlížet na AI vrstvu repozitáře pod
.ai/: úlohy s rozsahem, který se vynucuje při check a finish (scoped-task,scope-enforcement), kontrakt dokončení, který odmítne úlohu s nesplněnými závazky a zaznamená odmítnutí (finish-contract,finish-refusal-is-recorded), handovery bez přepisů (handover-record,no-transcripts) a kontextové dokumenty řešené podle cesty (context-documents). Funkcecoordination,finish-contract,continuity,context. - Deklarovat jednou a promítat všude: jeden registr schopností promítnutý do příkazové řádky, HTTP s OpenAPI, MCP a Cockpitu (
capability-registry,interfaces-are-projections,mcp-stdio-surface,cockpit-is-a-projection-of-the-registry). Celý povrch je vygenerovaná referencedocs/generated/capabilities.md. Funkcedeclare-once,interfaces,cockpit. - Držet práci u důkazů: důkaz je provedení, nikdy tvrzení (
evidence-proof-is-an-execution), aktuálnost důkazů se nesbalí do úspěchu (evidence-currency-is-not-collapsed), zpráva commitu je posuzována (commit-message-is-judged) a nový kód je pokryt (new-code-is-covered). Funkceevidence,commit,coverage,ci. - Plánovat a pamatovat si: milníky a úkoly s odvozeným stavem (
project-schema,project-status-derived), rozhodnutí a katalog ADR (decision-record,adr-catalogue), ledger jen pro připojování (ledger-integrity). Funkceplanning,knowledge,provenance. - Spolupracovat mezi relacemi a stroji: ověřená spojení mesh a nároky přesahující runtime (
mesh-cooperation-links,mesh-claims-cross-runtime), vypnuté, dokud je repozitář nezapne (mesh-off-by-default), a worktree s odvozenou topologií (worktree-topology-derived). Funkcemesh,worktrees. - Uvažovat bez závislosti na modelu: reasoning funguje bez poradce (
reasoning-works-with-no-advisor), poradci sdílejí jeden transportní kontrakt (advisor-transports-share-one-contract) a katalog modelů je jedna deklarace směrovaná s důvody (models-one-declaration,models-routing-explains-itself). Funkcereasoning,models. - Ukázat, co přečetlo: přehled UI cituje své zdroje (
ui-dashboard-cites-its-sources) a Observatoř nekreslí nic, co nepřečetla (observatory-draws-nothing-it-did-not-read). Funkceui,observatory.
Jeho omezení
- Je to pre-release. Nikdy nenahrazuje stabilní release: tag s příponou se publikuje jako pre-release na GitHubu a nikdy není stabilním ukazatelem, který nepřipnutý instalátor vyhodnotí (pull request #1313, případ
3179_a_prerelease_is_never_published_as_stable). Nainstalujte jej připnutím jeho verze.majordomus self updateje návrh vdocs/DISTRIBUTION.md, ne implementace, a neexistuje otestovaná cesta odinstalace. - Žádné sestavení pro Windows.
windows-x86_64je vshare/distribution.yamldeklarovánounavailables důvodem: příkaz, který člověk spouští, je POSIX shell. - Ne každé tvrzení je zárukou. Tvrzení, která matice označuje
advisory, jsou hlášena, nikoli vynucována:capability-class,checkpoint-interval,decision-attribution,effort-escalation,minimum-context,profile-axes. Ta, která označujeplanned, v tomto releasu nejsou:ci-verdict-is-required,cost-per-outcome,intent-closes-github-milestones,intent-command-deployment-evidence,routing,runtime-adapters,shared-policy,task-commit-attribution,telemetry,token-savings-measured. Dvě jsou zamítnuta rovnou:semantic-retrieval,task-dependencies. Zda je důkaz zaručeného tvrzení na daném stromu aktuální, je odpověďmajordomus evidence, ne této stránky. - Mesh zatím nekonverguje při každém selhání. Tvrzení uvolněné přes jeden runtime bylo pozorováno, jak zůstává držené na runtimu, jehož stream ho nese, přičemž spojení s restartovaným peerem byla odmítnuta jako jeho předchozí instance (I2825, milník
mesh-journal-converges). Výlučné tvrzení je lokální příjem s oznámenými konflikty, ne zámek (docs/MESH.md). - Upgrade huba meshe na macOS ho může vyřadit z tailnetu. Aplikační firewall macOS připouští program podle jeho cesty a upgrade instaluje spustitelný soubor pod novou verzovanou cestu, takže upgradovaný hub přestane odpovídat jiným strojům, dokud není nová binárka připuštěna. Pozorovalo se to při instalaci 0.28.0 na hub a upgrade na alpha dělá totéž. Nic po upgradu kontrolu nespouští, ale mezera je vidět:
majordomus mesh firewallčte novou binárku jakomissingamajordomus mesh doctorselže na kontrole firewallu. Krok, na onom Macu v checkoutu huba, jesudo ~/.local/bin/majordomus mesh firewall apply, pak restart huba, pak kontrola z jiného stroje, že endpoint meshe huba odpovídá novou verzí (docs/MESH.md). - Výpočet v prohlížeči v něm není. Přenosné jádro a znovu vypočtené výsledky prohlížeče (pull requesty #1309, #1343, #1345) jsou mimo alfu.
- Žádná lokální inference. Pozorování a směrování na lokální modelové runtimes je plánováno až po alfě; lokální dodavatelé katalogu nedeklarují žádný model (
share/models.yaml) a crate žádný model nevolá. - Nasazení jsou rozpracovaná funkce (
.ai/repo/features/deployments.md). - Některé moduly jsou experimentální. Registr schopností označuje moduly delivery, guard, integration, mcp, mesh, models, monitor a reasoning jako
experimental(docs/generated/registry.json): jejich schopnosti fungují a jsou testovány, ale jejich vstupy, výstupy a jména se mohou před stabilním releasem ještě změnit. - Spustitelný soubor používá síť tam, kde je o to požádán. Shellový nástroj neprovádí žádné síťové volání kromě deklarované sondy loopback peeru (
no-network); spustitelný soubor v Rustu je mimo tento sken.majordomus serveamcpbindují HTTP server, na loopbacku, pokud--hostneboMAJORDOMUS_HTTP_HOSTnejmenuje jiné rozhraní; mesh propojuje runtime, které politika zapsala; a příkazy integrace se při spuštění ptají forge přesgh. Nic z toho nevolá model ani neposílá telemetrii. - Server navázaný mimo loopback vystavuje vrstvu čtení. Se zapnutým mesh server naváže rozhraní, které mohou dosáhnout jiné hosty. Každý host, který se k němu dostane, pak může číst AI vrstvu repozitáře, jeho diagnostiku a jeho peery, bez autentizace a nešifrovaně. Zápis z jiného hosta je odmítnut (HTTP 403), pokud to není zpráva podepsaná propojeným uzlem mesh (ADR 0126). Server na to při startu upozorňuje. Navažte
127.0.0.1, pokud není zamýšlen dosažitelný server, a vzdálený server dosahujte přes privátní síť.
Zamítnuté alternativy
- Ruční úprava těla GitHub releasu. Žije mimo repozitář, nic ji nekontroluje a byl by to udržovaný changelog, který ADR 0029 odmítá.
- Soubor
CHANGELOG.mdnebo poznámek k release, který nic nečte. Autorský text, který nevypisuje žádný nástroj, je tatáž vada s cestou. - Přepnout
release.ymlna publikacimajordomus release changelogpřed alfou. Je to správný cílový stav a změna cesty releasu; je to I2826, po alfě.
Důsledky
majordomus release changelogvypíše tuto deklaraci v sekciv1.0.0-alpha.1, pokud její datum padne po datu předchozího releasu a nejpozději na datum alpha: když se alpha posune, posune se s ní toto datum.- Tělo releasu na GitHubu stále vypisuje pull requesty, dokud nepřistane I2826; do té doby se tato deklarace čte přes
majordomus release changeloga stránky ADR na webu. - Řádek zde, který pozdější změna učiní nepravdivým, je vada tohoto záznamu, opravená nadřazeným rozhodnutím, nikdy úpravou po tagu.