Resolved per user review 2026-04-23: - Layout: declarative (capability.toml + text.md) + Rust modules in kei-agent-runtime (not 3 bash files — user pushed for Rust) - Gate: Rust via kei-capability binary, shell hook = 3-line exec glue - Verify: Rust same binary, subcommand verify - Config: TOML (user asked discount between TOML vs YAML — explained type-safety + Cargo-native parsing wins) - Capability ID: :: separator (confirmed) - Nested path layout - 200 words/capability text cap - Verify: worktree short-circuit → simulated-merge (catches E1-jsonschema-class integration regressions before main merge) Phase 3 revised up from 3-4 days to 5-6 due to Rust gate/verify logic + simulated-merge executor. Offset by phase 4 dropping from 1 day to 0.5 (shell hooks now thin glue). 3 phases parallelizable immediately after this lock: - Phase 1: 20 declarative files (capability.toml + text.md × 10) - Phase 2: 5 role TOML + docs/AGENT-ROLES.md - Phase 3: kei-agent-runtime + kei-capability binaries + 14 Rust capability modules Phase 4 + 5 sequential after. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
41 lines
1.6 KiB
Markdown
41 lines
1.6 KiB
Markdown
# Agent Substrate Schema — LOCKED
|
|
|
|
**Locked on:** 2026-04-23
|
|
**Locked from commit:** feat/agent-substrate-schema (decisions resolved)
|
|
**Schema SSoT:** [AGENT-SUBSTRATE-SCHEMA.md](./AGENT-SUBSTRATE-SCHEMA.md)
|
|
**Sibling SSoT:** [SUBSTRATE-SCHEMA.md](./SUBSTRATE-SCHEMA.md) (atoms, locked 2026-04-22)
|
|
|
|
## Lock scope
|
|
|
|
The capability triplet contract + role shape + task.toml shape + kei-agent-runtime Rust trait + CLI surface defined in `AGENT-SUBSTRATE-SCHEMA.md` are **immutable for 3 weeks** of parallel phase work (through ~2026-05-14).
|
|
|
|
## What "locked" means
|
|
|
|
**Non-breaking during lock** (allowed):
|
|
- New capability atoms beyond the initial 10
|
|
- New roles beyond the initial 5
|
|
- New optional fields on `capability.toml` / `role.toml` / `task.toml`
|
|
- New verify `run-mode` values
|
|
- New gate `severity` levels
|
|
|
|
**Breaking during lock** (requires revocation):
|
|
- Changing capability ID separator `::`
|
|
- Changing the Capability trait signature
|
|
- Switching capability definitions from Rust to another language
|
|
- Changing TOML → another config format
|
|
- Changing capability path layout `_capabilities/<category>/<slug>/`
|
|
- Changing the 8-decision values in §Decision log
|
|
|
|
## Phases under lock
|
|
|
|
| Phase | Branch | Start |
|
|
|---|---|---|
|
|
| 1 | `feat/phase-1-capability-library` | on lock |
|
|
| 2 | `feat/phase-2-role-matrix` | on lock |
|
|
| 3 | `feat/phase-3-kei-agent-runtime` | on lock |
|
|
| 4 | `feat/phase-4-hook-wiring` | after 1+3 |
|
|
| 5 | `feat/phase-5-agent-migration` | after 1+2+3+4 |
|
|
|
|
## Unlock
|
|
|
|
Automatic unlock on **2026-05-14** OR on `AGENT-SCHEMA-UNLOCKED.md` commit by user (whichever comes first). Post-unlock, schema v2 can iterate based on what the 5 phases learned.
|