KeiSeiKit-1.0/docs
Parfii-bot 84319efcb6 feat(convergence/p3): Role expression (extends/relaxes) + DNA identity
Layer E + G. Role TOML gains extends/relaxes for parent-role
composition; agent spawn gets self-describing DNA identity alongside
UUID.

Role expression:
- _roles/*.toml gain optional `extends = "<parent>"` + `relaxes = [...]`
- compose.rs + verify.rs delegate to new role::resolve_role() with
  recursive extends-chain resolution + cycle detection
- explorer.toml: 28→18 LOC (extends read-only)
- edit-shared.toml: 31→23 LOC (extends edit-local, relaxes
  scope::files-whitelist for task-param override)

DNA identity:
- new dna.rs (159 LOC) — compose/render/parse round-trip
- AgentInvocation carries dna field (prepare.rs)
- Format: <role>::<caps-bitmap>::<sha4-scope>::<sha4-body>-<hex4-nonce>
- ≤ 80 chars total, greppable, parseable
- 11 capability codes in CAP_CODES table: NG, FW, FD, CP, CG, TG, ND,
  RF, SG, DT, BA

kei-ledger schema v2:
- ADD COLUMN dna TEXT + prefix index
- `kei-ledger fork --dna <string>` optional flag
- AgentRow.dna: Option<String>
- Backward compat: schema migration detects + applies on open

Docs: AGENT-SUBSTRATE-SCHEMA.md Layer E + Layer G sections + CAP_CODES table.

New deps: sha2 (workspace), rand 0.8.

Tests: kei-agent-runtime 50 (was 41, +9: 4 role + 5 DNA), kei-ledger
10 (was 9, +1 DNA roundtrip).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 04:46:48 +08:00
..
AGENT-ROLES.md feat(convergence/u2): capability renames + back-compat aliases 2026-04-23 03:43:40 +08:00
AGENT-SCHEMA-LOCKED.md feat(agent-substrate): LOCK schema — 8 decisions resolved, 3-phase parallel window opens 2026-04-23 02:05:21 +08:00
AGENT-SUBSTRATE-SCHEMA.md feat(convergence/p3): Role expression (extends/relaxes) + DNA identity 2026-04-23 04:46:48 +08:00
ARCHITECTURE.md docs(readme): split 89 KB monolith into hero-pitch + 6 docs/ files 2026-04-22 22:20:22 +08:00
CONVERGENCE-PLAN.md feat(convergence/u3): kei-provision Rust crate — unify hetzner+vultr provisioners 2026-04-23 03:43:40 +08:00
INSTALL.md docs(readme): split 89 KB monolith into hero-pitch + 6 docs/ files 2026-04-22 22:20:22 +08:00
REFERENCE.md docs(readme): split 89 KB monolith into hero-pitch + 6 docs/ files 2026-04-22 22:20:22 +08:00
SCHEMA-LOCKED.md feat(substrate): LOCK schema — 6-week parallel Stream A/B/C/D window opens 2026-04-23 00:00:33 +08:00
SCHEMA-UNLOCKED.md docs(schema): REVOKE both schema locks — calendar weeks ≠ actual velocity 2026-04-23 04:31:20 +08:00
SECURITY.md docs(readme): split 89 KB monolith into hero-pitch + 6 docs/ files 2026-04-22 22:20:22 +08:00
SLEEP-LAYER.md docs(readme): split 89 KB monolith into hero-pitch + 6 docs/ files 2026-04-22 22:20:22 +08:00
SUBSTRATE-SCHEMA.md fix(substrate): amendment A-1 (input/output required all kinds) + integration test + jsonschema 0.18 relative-$id bug 2026-04-23 00:56:27 +08:00
USB-BRAIN-GUIDE-linux.md feat(v0.22): FS warn + battle-test matrix + USB docs platform split (Track C) 2026-04-22 20:56:42 +08:00
USB-BRAIN-GUIDE-macos.md feat(v0.22): FS warn + battle-test matrix + USB docs platform split (Track C) 2026-04-22 20:56:42 +08:00
USB-BRAIN-GUIDE-windows.md feat(v0.22): FS warn + battle-test matrix + USB docs platform split (Track C) 2026-04-22 20:56:42 +08:00
USB-BRAIN-GUIDE.md feat(v0.22): FS warn + battle-test matrix + USB docs platform split (Track C) 2026-04-22 20:56:42 +08:00
WHY.md docs(readme): split 89 KB monolith into hero-pitch + 6 docs/ files 2026-04-22 22:20:22 +08:00