I3157 — A scripted capability declared in an adopting repository's layer reaches its surfaces with no change to the tool, and says where it came from and what it may do
Prove I1801's kind from outside the tool's tree: a fixture adopter declares a scripted capability, it is discovered and projected, and capabilities explain shows its origin file, declared effect, exposure ceiling and the projections it reaches; a call above the ceiling from MCP or HTTP is refused.
BLOKOVÁNO wave 2 · p2 · implementation profile · parallel safe
Blokováno. Tento úkol nemůže začít, dokud není I1801 hotovo. Stav je z toho odvozen, ne deklarován.
Cíl
Prove I1801's kind from outside the tool's tree: a fixture adopter declares a scripted capability, it is discovered and projected, and capabilities explain shows its origin file, declared effect, exposure ceiling and the projections it reaches; a call above the ceiling from MCP or HTTP is refused.
Proč
Owner, 2026-10-13: pluggable, extensible from outside through plugins. ADR 0069 holds the effect and exposure ceilings; I1801 proves them inside this repository only. It extends milestone automation. Sources: chatgpt-majordomus:c110#4, chatgpt-majordomus:c230#2, chatgpt-majordomus:c244#6.
Aktuální stav
No scripted capability exists yet (I1801 BLOCKED).
Cílový stav
An adopter fixture case.
Rozsah
- apps/majordomus-cli/src/script
- docs/CAPABILITIES.md
- apps/majordomus-cli/src/capability/registry.rs
- apps/majordomus-cli/src/capability/model.rs
- apps/majordomus-cli/src/capability/executor.rs
- apps/majordomus-cli/src/capability/module.rs
- apps/majordomus-cli/src/capability/builtin/capabilities.rs
Mimo rozsah
- Native or WASM plugins
- A plugin marketplace
Závislosti
Co na tom čeká
- I3305BLOCKED A scripted capability installed from outside the repository registers like one inside it
- I3306BLOCKED An external scripted capability runs under default-deny grants, bounded, and leaves an audit record
Kritéria přijetí
- An adopter-declared scripted capability appears on CLI, MCP and OpenAPI
- explain names origin, effect and ceiling
- An over-ceiling call from MCP is refused
- Each new case named here takes its number from `scripts/case-numbers next` and is announced on the board before the file is written (ADR 0053); a case number written in this record before that is provisional
Validace
- cargo test --manifest-path apps/majordomus-cli/Cargo.toml --lib script::
Požadované důkazy
- case_adopter_scripted_capability
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
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.
Canonical record: .ai/repo/project/issues/I3157.yaml. Read it back with majordomus plan show I3157.