Commit ba63349
authored
feat(federation): activate verified corpus graphs (#464)
## Stack
1. #462 — ratify graph decisions
2. #463 — graph foundation
3. **This PR — activate the verified graph engine**
4. #465 — profile guidance and DecisionGrounding evidence
## What this implements
- manifest v2 with multiple direct parents and bounded recursive DAG
composition
- independently verified physical routes, cycle/divergent-pin detection,
and diamond deduplication
- global `corpus.source::canonical-id` resolution with source-contextual
aliases
- equal cross-source IDs as deterministic ambiguity rather than
precedence
- explicit Decision-backed override chains and diamond convergence
- one catalog/effective/root-local model across validation, resolution,
retrieval, routing, gate, Sentry, exports, MCP, and audit
- closure generation v3 and isolated `store/v3` persistence with
fail-closed freshness and corruption repair
- complete source/layer/pin, override-chain, and topology-route
provenance
- read-only enforcement across every direct, transitive, and duplicate
materialisation route
- additive viewer/documents/graph exports and source-aware Portal
navigation
- exact v1 and no-manifest compatibility paths
## Hardening
The implementation uses stable captured bytes throughout digesting,
parsing, validation, composition, persistence, and serving. It rejects
unsafe YAML, symlink/reparse traversal, hard-linked inherited files,
mount boundaries, path escapes, stale pins, invalid topology, and unsafe
output/cache targets.
## Validation
- `cargo test --workspace --all-targets --locked --no-fail-fast` —
passed
- `cargo clippy --workspace --all-targets --locked -- -D warnings` —
passed
- graph CLI contract — 9/9
- graph MCP contract — 5/5
- v1 federation CLI — 14/14
- v1 federation MCP — 8/8
- `decided validate decisions/` — 468 valid, 0 invalid, 12 skipped
- `decided relationships decisions/ --validate` — 3,055 checked, 0
issues
- `decided gate decisions/ --json` — 0 blocking, 134 existing advisories
- `decided review decisions/ --json` — 508 non-blocking issues, health
96
- agent-rules drift check — in sync
- Linux, Windows, and macOS cross-platform certification — passed
Review and merge after #462 and #463.
Closes #270
Closes #2721 parent 508b664 commit ba63349
44 files changed
Lines changed: 9159 additions & 504 deletions
File tree
- rust
- decided-mcp
- src
- tests
- decided
- tests
- federation_graph_support
- rac-engine
- assets/schemas
- src
- tests
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
146 | 146 | | |
147 | 147 | | |
148 | 148 | | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
149 | 157 | | |
150 | 158 | | |
151 | 159 | | |
| |||
703 | 711 | | |
704 | 712 | | |
705 | 713 | | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
706 | 742 | | |
707 | 743 | | |
708 | 744 | | |
| |||
0 commit comments