Summary
You now know how a query actually resolves against Core's canonical graph.
In this module, you:
- Named the three signals Cogitave Query fuses - lexical (BM25 over immutable segments), dense (HNSW over per-node embeddings), and graph structure - and why none of them alone is enough for technical or agent queries.
- Traced the fusion step: Reciprocal Rank Fusion, chosen over a weighted linear blend of scores because rank-based fusion sidesteps reconciling BM25's unbounded scores with cosine's bounded range, and lets retrievers change without recalibration.
- Saw what the graph-aware rerank adds once lexical and dense are already fused - a Personalized PageRank structural prior, plus ranking signals for moniker freshness, audience, prerequisite proximity, level fit, and authority - and that facets are graph traversals, not a second taxonomy to maintain.
- Read the bounded
query_graphcontract that lets an agent pattern-match the graph directly: read-only, allowlisted to the 9 edge labels, depth- and row-capped, timed out, and parameterized only - a hard, server-enforced contract rather than advisory guidance.
Next steps
- The native MCP interface to Core - the next module in this path, which takes the surfaces this one only named - the native MCP tools and
cogitave://resources - and teaches the interface itself. - Cogitave Query - reread the source directly; this module followed its section order.
- ADR-0002 - Hybrid retrieval - the decision record behind the fusion choice, with the options that were rejected and why.