Pillar A: GraphRAG + Zachman Filter Prompts¶
Seven prompts that exercise v1.5.0 Pillar A — GraphRAG with a Zachman-cell filter — end-to-end. The prompts cover discovery, filter composition, query augmentation, result evaluation, LYRA harmonic expansion, and failure-mode recovery.
Pillar A is the fulcrum for FCC's knowledge-layer story: it turns the 164-persona KG into a queryable, Zachman-structured substrate instead of a flat RAG index.
Context for Claude¶
GraphRAG combines knowledge-graph traversal with a semantic retriever. The Zachman filter narrows traversal to one or more cells of the 6x6 Zachman framework. LYRA's harmonic expansion adds SKOS broad-match chains when the filter returns too few results. Prompts exercise KGSE + ZCA + VDS together.
Prompt 1: First GraphRAG query¶
Run a GraphRAG query for "multi-user collaboration patterns" with
the Zachman filter locked to ARCHITECT/HOW.
Steps:
1. Load the full-FCC KG (build_full_fcc_graph).
2. Apply the Zachman cell filter.
3. Query with the semantic retriever.
4. Return the top 5 persona + action matches.
Report precision / recall in plain English against a 5-item gold
set provided by the reviewer.
Expected outcome: 5 matches + precision/recall narrative.
Prompt 2: Filter composition¶
Compose a Zachman filter that accepts a *region* (2 adjacent rows
x 2 adjacent columns). Run the query "event bus lane routing" and:
- Show filter before/after node counts
- Name the top 3 matches
- Report whether any result came from outside the filter (should
be zero)
Expected outcome: filter correctness evidence.
Prompt 3: LYRA harmonic expansion¶
The initial query returns only 2 matches. Invoke LYRA's harmonic
expansion (get_lyra_bridge()) to broaden via SKOS broad-match.
- Show pre-expansion set (2)
- Show post-expansion set (5-10)
- Label each post-expansion match with its broad-match hop count
- Note when expansion uses the mock vs live backend
Expected outcome: expansion report.
Prompt 4: Persona-aware query¶
Run the same query twice — once as BC (Blueprint Crafter) and once
as RC (Research Crafter). Show:
- How the retriever prompt differs
- How result ranking differs
- Whether result content differs (often it should not — the *rank*
should)
Expected outcome: persona-aware comparison.
Prompt 5: Evaluation against a gold set¶
Evaluate Pillar A on a 20-query gold set. For each query report:
- Precision@3
- Recall@10
- Mean reciprocal rank
- Any query where filter degraded quality
Expected outcome: evaluation table + failure cases.
Prompt 6: Failure mode — empty filter¶
The Zachman filter (EXECUTIVE/WHERE) is empty — no personas in
that cell. How does Pillar A behave?
- Expected fallback
- User-facing message
- Telemetry emitted
- Suggested recovery (expand filter, drop filter, query LYRA)
Expected outcome: failure-mode narrative.
Prompt 7: Customize the ontology¶
Add a new node type "Session" (representing a CRDT collaboration
session). For Pillar A:
- Register the node type
- Update the Zachman cell mapping
- Re-index the graph
- Re-run the "multi-user" query
- Verify the new node type surfaces
Expected outcome: ontology extension + query verification.
Related¶
- Tutorial:
docs/tutorials/advanced-capabilities/graphrag-deep-dive.md(Pool B) - Notebook:
notebooks/46_graphrag_advanced_patterns.ipynb(Pool F) - Personas: KGSE, ZCA, VDS
- ADR:
docs/decisions/ADR-011_graphrag_zachman.md(v1.5.1) - Bridge:
src/fcc/knowledge/lyra_bridge.py