Index protocol

Navigator page. Canonical spec in the repo.

Canonical: core/protocols/index-protocol.md

What the index is

local/index/ holds lightweight per-class summaries of every doc + code source ginee learned about during discovery. Roles read the index first; raw sources only when an index entry says “see source for full statement” or the role is authoring new content.

The win — measured on a real adopter (deployment-dashboard, ~470 KB raw docs):

Tier Before After (full stack: #9 + #10 + #11)
Per-dispatch baseline (devops trivial task) ~56 KB ~12 KB
Per-dispatch baseline (frontend trivial task) ~64 KB ~25 KB
Per-dispatch baseline (backend trivial task) ~43 KB ~12 KB

Sections

Topic Where in the spec
Why the index exists § Why
Where compression pays off § Where compression pays off
Source types (doc + code categories) § Source types
Manifest schema (sha256, byte-size, consumed-by) § Manifest shape
Consumer coupling § Consumer coupling
Dormant-index audit § Dormant-index audit
Lifecycle — initial extraction + staleness + re-extraction § Lifecycle
Lossless rule (coverage + compression floor + sample-and-check) § Lossless rule for index
Role consumption pattern (load triggers + reporting + overrides) § Role consumption pattern
Adopter-declared classes § Extension — adopter-declared classes

Recipes (in ai-engineer.details.md)

Source category Built-in recipes
Doc builtin:architecture · builtin:mockup · builtin:adr · builtin:cr · builtin:scenario
Code / config builtin:package-manifest · builtin:container-orchestration (+ builtin:iac) · builtin:commands · builtin:conventions · builtin:runtime-facts · builtin:repo-structure
Novel class Adopter-specific; ai-engineer authors the recipe per the novel-class recipe procedure

.idx DSL grammar

The compact flat-record format used by .idx index files. Canonical: core/protocols/index-syntax.md.

Migration notes

Migration When applied
D15-code-derived-index.md D13 extended to code/config sources
index-compression-floor.md Issue #9 — compression floor + inventory-only D15 recipes
novel-class-consumer-coupling.md Issue #10 — consumed-by field + dormant audit
index-load-triggers.md Issue #11 — per-file load triggers in role kernels
bindings-source-of-truth-rename.md Issue #7 — bindings.md heading rename + reframe