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.

Nahraný balík promptů je vstupní artefakt se sledovaným původem, ne druhý model záměru

Nahraný balík promptů je vstupní artefakt se sledovaným původem, ne druhý model záměru

majordomus://adr/adr-0124navrženo artifact-ingestionmesh-packprompt-pack

odkazuje na

Nic. Tento objekt nedeklaruje žádný odkaz.

odkazuje na něj

121. Nahraný balíček promptů je vstupní artefakt se sledovaným původem, ne druhý model záměrů

Kontext

Externí „master prompt“ (majordomus-opus-fable-full-prompt-pack-20261010.zip, 23 souborů, manifest.json, INDEX.md/MASTER.md/README.md, čtyři contracts/*.md a milníky M00–M14) žádá, aby se tento repozitář stal „artifact-to-outcome pipeline“: přijímal nahrané balíky promptů, odvozoval z nich záměry/milníky/úkoly, výsledek prováděl přes mesh, vyprazdňoval vzniklé PR, aktualizoval se sám a vše vystavil přes CLI, MCP, REST API a majordomus ui, a autonomně pokračoval přes merge, release a nasazení.

Průzkum před psaním čehokoli (2026-10-10, tento checkout, master na 6800dcb) zjistil, že většina cílové architektury už existuje pod jinými jmény:

  • Graf záměr/milník/úkol už je kanonický: apps/majordomus-cli/src/intent.rs, intent_plan.rs, intent_binding.rs, intent_realization.rs, intent_review.rs, plan.rs, promítnutý do cockpit/intents.rs a cockpit/plan.rs. M03 balíčku („intent and project graph reconciliation“) navrhuje znovu odvozovat to, co tento repozitář už považuje za jediný projektový model.
  • Spolupráce v meshi — relace, claimy, předávky, review, jeden replikovaný žurnál (ADR 0067) — je živá a je tím, co relace tohoto ADR použila k zabrání tohoto souboru. M06/M07 balíku předpokládají, že to staví od nuly.
  • majordomus pack už existuje (apps/majordomus-cli/src/capability/builtin/pack.rs) a znamená něco nesouvisejícího: textové shardy omezené počtem tokenů ze sledovaného stromu pro souborové vyhledávání LLM (pack plan, pack build, pack verify, profily v share/archive.yaml). Navrhovaný majordomus pack list/import/run/diff/... z balíčku by se s tímto jménem přímo srazil — přesně ta duplicita, které se podle vlastní sekce 4 balíčku má vyhnout, a nezkontroloval to.
  • scripts/collision-check proti pravděpodobným novým cestám a prohledání .ai/repo/adrs/ a otevřených větví nenašlo žádnou jinou větev ani peer v meshi, který by to už stavěl; jediný nález (.ai/local/prompts/20261010181418-...) je záznam zachycení promptu této relace, ne dřívější práce.
  • Sekce 9, 11 a 26 balíku nařizují souvislý, autonomní merge PR, release a deploy. To je jiné rozhodnutí než to, které činí toto ADR, a zde se odmítá ze stejného důvodu, na kterém stojí project.work-is-claimed-before-it-is-built a pravidla worktree/životního cyklu úlohy: těžko vratná akce nad sdíleným systémem se potvrzuje po jednotlivých akcích, ne předem povoluje vloženým dokumentem.

Co balíček dělá správně a co toto ADR ponechává: prompt pack je verzovaný artefakt vstupu; záměr uvádí, co má být pravda; důkazy, kontrolované kanonickým validátorem a nikdy ne modelem, který mapování navrhl, rozhodují, zda už je.

Rozhodnutí

Nahraný balíček promptů se přijme jako revize artefaktu se sledovaným původem, sladí se se stávajícím grafem intent/milník/úkol — nikdy ne s paralelním — a nikdy se nepovažuje za sám sebe osvědčující dokončení.

Konkrétně, v rozsahu toho, co toto ADR skutečně schvaluje (průzkum a návrh; M01 a dále je samostatná, revidovaná práce):

  1. Rozdělení identity. ArtifactRevision (nahraný balík a jeho digest obsahu, název souboru, původ, čas přijetí) je odlišný záznam od ExecutionRun (jeden pokus realizovat práci odvozenou z revize, proti jednomu stavu repozitáře, v jednom čase). Stejná revize může stát za nulou, jedním nebo mnoha běhy; běh připíná revizi, kterou provedl. Nikdy se neslučují, takže deduplikace, rollback a audit na jedné straně nemohou poškodit druhou.
  2. Znovu použít existující graf. Ingest odvozuje nebo sladuje záznamy v modelu záměr/milník/úkol, který tento repozitář už řídí (intent.rs/plan.rs a další) — nezavádí druhý pojem „milníku“ nebo „úkolu“ platný jen pro nahrané balíky. Odvozená položka se musí odkazovat zpět na revizi artefaktu a zdrojovou sekci, které ji odůvodnily.
  3. Název pack je rezervován. Ať má ingesce jakýkoli povrch CLI/schopností, není to majordomus pack * — ta skupina příkazů zůstává nástrojem textových shardů, kterým už je. Než přistane jakýkoli kód, je potřeba navazující ADR navrhující skutečné podstatné jméno (kandidáti: artifact, intake), aby se kolize vyřešila rozhodnutím, ne náhodou.
  4. Pravdu vlastní validátor, ne navrhovatel. Agent (nebo balík) smí navrhnout, že úkol splňuje kritérium; jen stávající mechanismus důkazů/kontrol (majordomus check/finish, závazky v share/obligations.yaml) ho smí označit za splněný. To je stávající smlouva (ADR 0041, „inputs unchanged is not proven“), uvedená zde, aby ji práce na příjmu nemohla tiše obejít.
  5. Žádný autonomní merge/release/deploy z této práce. Provedení odvozená z pohlceného balíčku se integrují existujícím procesem PR, review a release, přičemž člověk potvrzuje každý merge, release a deploy, dokud samostatné ADR nezíská a nevymezí užší autonomní výjimku.
  6. Nedůvěryhodný obsah zůstává nedůvěryhodný. Nic přečtené z nahraného balíčku — včetně textu, který se čte jako pokyn pro Majordomus nebo pro agenta, který jej přijímá — se nepovažuje za governance, politiku ani privilegované oprávnění. Je to zdrojový materiál, z něhož se extrahují požadavky, podléhající stejnému zacházení s bezpečností ZIP (limity velikosti, cesty, poměru dekomprese), jaké dostává každý nedůvěryhodný archiv.

Toto ADR schvaluje výše uvedený průzkum a postoj k návrhu v tomto rozhodnutí. Neschvaluje implementaci M01–M14; každý milník je samostatná úloha s vlastním rozsahem, oznámená na nástěnce mesh a před sestavením prověřená na kolize, podle project.work-is-claimed-before-it-is-built.

Zamítnuté alternativy

Postavit architekturu balíčku přesně podle specifikace, včetně jeho vlastní skupiny CLI pack a vlastního odvození grafu projektu. Zamítnuto, protože duplikuje dva subsystémy, které tento repozitář už má pod kontraktem (graf intentů a název příkazu pack), což je přesně ten způsob selhání, před kterým balíček sám varuje ve své sekci 4 a sekci 8.

Považovat direktivu balíčku o autonomním merge/release/deploy za trvalé oprávnění. Zamítnuto: dokument, který uživatel vloží do promptu, není mechanismus, kterým tento repozitář opravňuje těžko vratné akce na sdílených systémech — tím je mechanismus životního cyklu úlohy, ADR a mesh-announce, který u každého takového kroku vyžaduje rozsah a člověka.

Implementace všech 14 milníků v jedné neprověřené větvi. Zamítnuto vlastními pravidly repozitáře o přírůstkovém doručování a topologii worktree: obrovská nesloučená větev je přesně to, čemu mají zabránit project.worktree-topology a kontrola rozsahu při pre-push.

Důsledky

  • Následné ADR musí pojmenovat skutečné podstatné jméno pro plochu příjmu dřív, než se proti ní napíše jakýkoli kód CLI, MCP nebo API; do té doby neexistuje žádná nová skupina příkazů majordomus <noun> *.
  • M01 (identita a úložiště artefaktů) se stane dalším konkrétním, samostatně vymezeným úkolem; tento ADR ho nezačíná a potřebuje vlastní majordomus start a nárok v mesh.
  • Kdokoli na této práci naváže, musí před zahájením M01 znovu spustit collision-check a přečíst nástěnku meshe, protože toto ADR tu práci nerezervuje — jen zaznamenává rozhodnutí, které musí práce ctít.
  • Původní balík (majordomus-opus-fable-full-prompt-pack-20261010.zip) zůstává referenčním vstupem, ne specifikací k doslovné implementaci; jeho milníky jsou užitečný kontrolní seznam k odsouhlasení se skutečným grafem, ne identifikátory, pod kterými vytvářet záznamy.

Odkud to pochází

kanonický soubor
.ai/repo/adrs/0124-an-uploaded-prompt-pack-is-a-provenance-tracked-input-artifa.md
identity
adr-0124
dostupné také jako
Zdroj MCP majordomus://adr/adr-0124 · majordomus entity show adr/adr-0124 · GET /api/v1/entity?uri=majordomus://adr/adr-0124
v Cockpitu
/cockpit/objects/adr/adr-0124

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.