The intent graph (SEI → requirement → goal)
A local traceability graph of intent. Leaves are code SEIs; interior nodes are requirements and strategic goals; edges mean "justified by / satisfies." A node with no upward edge is the reviewable question: a public capability with no requirement asks "why does this code exist?"; a requirement with no goal asks "what am I doing here?"
plainweave init · goal · req · bind · trace · catalog record Default trace altitude is modules + public/exported surfaces; private internals inherit their container's justification.
Intent coverage (the north-star)
A self-computed fact: the fraction of in-scope public surfaces that answer "why does this exist?" via SEI → requirement → goal. Honestly qualified in-band — namespace scoping, surface-class filter, denominator_complete, present_plugins, bounded evidence. Never a pass/fail verdict, and never a silent clean when the denominator is partial.
plainweave intent coverage [--exclude-namespace PREFIX] [--surface-class …] [--json] · MCP: plainweave_intent_coverage Coverage *completeness* is a documented roadmap item, not a 1.0 gate — the denominator is per-repo and language-partial.
Orphans · trace · corpus (three composable graph reads)
General graph queries built for unanticipated agent use, not canned reports. orphans(level) lists unlinked nodes at the code / requirement / goal altitude. trace(node) walks up to goals and down to code. corpus() is the readable dump of requirements with their links — the artifact a curator reads to spot "these three are the same."
plainweave intent orphans <level> | trace <level> <node> | corpus · MCP: plainweave_intent_orphans / _trace / _corpus Consolidation is agent-driven — Plainweave serves the readable substrate, not an automated dedup verdict.
Authoring-time binding (speak-SEI-at-entry)
When an agent creates or commits a module or public entity, Plainweave offers an inline bind: link this SEI to a requirement (existing or a freshly minted shell) and optionally ladder that requirement to a goal. Cheap, inline, attributed (who bound it, when). Code that skips the bind is exactly what surfaces as an orphan.
plainweave bind sei · req (draft / approve / supersede / deprecate) · goal · trace · actor Reuses the ADR-029 entity-association contract (SEI-keyed, content_hash_at_attach drift detection) — the same pattern Filigree uses to bind issues to code. No new link store.
Verification status, dossiers, and baselines
Derived verification status with reason codes and evidence freshness; a per-requirement dossier; immutable baselines and baseline-drift facts. The read path that lets a curator see what is satisfied, by what evidence, and how stale it is.
plainweave status · dossier · verify · criterion · baseline · MCP: plainweave_verification_status_get/list · _requirement_dossier_get · _baseline_list/get/diff Attributes, never gates: Plainweave does not decide a requirement is satisfied merely because work closed, and does not treat agent-authored bindings as accepted human truth.
Read-only MCP surface for agents
plainweave-mcp mirrors the intent reads for agents over MCP: project context, requirement search/get, trace links, orphans/trace/corpus, coverage, baselines, verification status, entity-intent-context for peer planning, and scoped preflight-facts for Legis. mutates:false, local_only:true, no peer side effects.
plainweave-mcp (console entry point) — 18 read tools incl. plainweave_entity_intent_context_get, plainweave_preflight_facts_get preflight-facts returns scoped facts for Legis preflight and NO governance verdict; entity-intent-context degrades to a local view when live Loomweave resolution is unavailable.
doctor + --fix (federation-parity health check)
Checks the project is configured properly — the local store/schema, the Loomweave catalog binding, and the MCP surface — with --root, --json, and a non-zero exit on unresolved problems. --fix applies idempotent in-place store repairs (init/migrate) then re-checks.
plainweave doctor [--root ROOT] [--fix] [--json] Diagnostic only; --fix repairs the local store, it touches no sibling.
Optional operator web UI
A read-and-author mirror of the intent graph for non-CLI operators: an intent dashboard (coverage, orphans, and an in-band no-silent-clean banner), corpus browse with filters, requirement detail + authoring with current-vs-draft side-by-side and two-step draft approval, goals, and a unified review queue for drafts + proposed trace links with a required-reason accept/reject. Local-first, single-operator, advisory — no release verdicts.
pip install 'plainweave[web]' · plainweave web --actor human:<you> Optional extra; ships in 1.1.0 (released on main, tag pending). Structural a11y contracts are tested, but screen-reader focus-management requires a manual AT pass.