Skip to content

docs(knowledge): GraphRAG representations inventory — 7 papers × V3 substrate matrix#723

Merged
AdaWorldAPI merged 2 commits into
mainfrom
claude/happy-hamilton-0azlw4
Jul 18, 2026
Merged

docs(knowledge): GraphRAG representations inventory — 7 papers × V3 substrate matrix#723
AdaWorldAPI merged 2 commits into
mainfrom
claude/happy-hamilton-0azlw4

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented Jul 18, 2026

Copy link
Copy Markdown
Owner

What

Adds .claude/knowledge/graphrag-representations-inventory.md — a synthesis of 7 attached GraphRAG arxiv texts mapped onto the V3 substrate, answering a per-representation matrix (format / witness-ref / witness / context / basins / vertical-horizontal-vs-edges / time-series / NARS / causality-trajectory-candidate / what-to-wire) plus the "which probe considered all tenants in every SoA" question.

The 7 papers

AriGraph · PersonalAI (successor) · Document-GraphRAG (MDPI) · SAP Practical GraphRAG · StepChain · GraphRAG-FI · GraphRAG-under-Fire. Read by 6 background Opus readers + MDPI WebFetch; substrate rows source-verified against canonical_node.rs / class_view.rs / facet.rs / ocr.rs.

Key findings

  • The arigraph/ crate is "AriGraph in name, RAG in retrieval." The first-class episodic edge (Ee / the unwired EpisodicEdges64) and the chained semantic→episodic search (their Eq. 1) are missing; today it runs a parallel Hamming top-k — the baseline AriGraph beats.
  • The retrieval keystone (RRF fusion) is one free fn short. Every ranked leg (Bm25Index::rank, PersonalizedPageRank::ranked, CAM-PQ) exists; nothing fuses them.
  • Provenance→trust is unwiredWitnessCorpus.source_url never reaches TruthValue.confidence (the only defense that works vs GRAGPOISON, and load-bearing for OCR mixed-trust docs regardless of adversary).
  • GraphRAG-FI + PersonalAI independently re-derive the workspace's MUL/free-energy meta-uncertainty and preserve-contradictions stances — validation, not novelty.
  • "All tenants in every SoA" = PROBE preset-vs-dispatchValueSchema::Full ("every tenant", compile-proven canonical_node.rs:1127) + the ocr.rs:104-115 schema.has(tenant){write lane} dispatch.

Board hygiene (same commit)

EPIPHANIES.md E-GRAPHRAG-REPRESENTATIONS-INVENTORY-1 + AGENT_LOG.md entry.

Scope

Docs-only — one knowledge doc + two append-only board files. No code, no build surface. The wire deliverables it names (RRF, provenance→trust, episodic_search Eq.1, evidence-chain, thesis, decomposition, BeamSearch) are proposed follow-ups, gated on the graphrag plan's G0 verdict where applicable.

🤖 Generated with Claude Code

https://claude.ai/code/session_016b33swuXE23hKtqxsHu9p1


Generated by Claude Code

Summary by CodeRabbit

  • Documentation
    • Added a consolidated GraphRAG representations inventory covering seven research papers and their alignment with the platform’s representation model.
    • Documented supported representation types, retrieval and verification considerations, tenant handling, and prioritized areas for future development.
    • Added operational notes and a dated synthesis of findings, including identified capability gaps and follow-up opportunities.

…ubstrate matrix

Synthesis of 7 attached GraphRAG arxiv texts (AriGraph, PersonalAI,
Document-GraphRAG/MDPI, SAP-Practical, StepChain, GraphRAG-FI,
GraphRAG-under-Fire) mapped onto the V3 substrate: the facet ladder L1-L8,
the 13(+1) value tenants, and a per-representation matrix (format /
witness-ref / witness / context / basins / vertical-horizontal-vs-edges /
time / NARS / causality-trajectory-candidate / wire).

Key findings:
- The arigraph crate is "AriGraph in name, RAG in retrieval" — the
  first-class episodic edge + chained semantic->episodic search (their Eq.1)
  are missing; today it runs a parallel Hamming top-k (the RAG baseline).
- The retrieval keystone (RRF fusion) is one free fn short; every ranked
  leg exists but nothing fuses them.
- Provenance->trust is unwired (source_url never reaches TruthValue.confidence).
- GraphRAG-FI + PersonalAI independently re-derive the MUL/free-energy and
  preserve-contradictions stances (validation, not novelty).
- "All tenants in every SoA" = PROBE preset-vs-dispatch -> ValueSchema::Full
  + the ocr.rs write-path-as-function-of-live-tenants dispatch.

Board hygiene: EPIPHANIES E-GRAPHRAG-REPRESENTATIONS-INVENTORY-1 + AGENT_LOG.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016b33swuXE23hKtqxsHu9p1
@cursor

cursor Bot commented Jul 18, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_162e57b7-2511-4b25-85aa-a4adb57f6668)

@coderabbitai

coderabbitai Bot commented Jul 18, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@AdaWorldAPI, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 52 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 43b39999-4d94-4e44-b645-0e8647671d74

📥 Commits

Reviewing files that changed from the base of the PR and between 36327b0 and ebaf2d9.

📒 Files selected for processing (2)
  • .claude/board/AGENT_LOG.md
  • .claude/knowledge/graphrag-representations-inventory.md
📝 Walkthrough

Walkthrough

Adds documentation for a GraphRAG representations inventory, mapping seven papers and identified gaps onto the V3 SoA, facets, value tenants, trajectory criteria, and retrieval priorities.

Changes

GraphRAG inventory documentation

Layer / File(s) Summary
Inventory scope and evidence
.claude/board/AGENT_LOG.md, .claude/board/EPIPHANIES.md, .claude/knowledge/graphrag-representations-inventory.md
Records the inventory workstream, grounding sources, seven-paper representation mapping, and honesty flags.
V3 substrate mapping
.claude/board/EPIPHANIES.md, .claude/knowledge/graphrag-representations-inventory.md
Defines the shared ValueSchema::Full SoA probe, facet ladder, value tenants, and schema presets.
Gaps and retrieval plan
.claude/board/EPIPHANIES.md, .claude/knowledge/graphrag-representations-inventory.md
Classifies trajectory candidates, documents unbuilt components, states the all-tenants verdict, and orders proposed wiring priorities.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested reviewers: claude

Poem

I’m a rabbit with a map in my paw,
Hopping through tenants, facets, and law.
Seven papers now neatly align,
While future wires wait in a line.
V3’s burrow records what we saw.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the docs-only GraphRAG inventory and V3 substrate matrix changes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review July 18, 2026 18:31

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.claude/board/AGENT_LOG.md:
- Around line 1-7: Update the 2026-07-18 entry in AGENT_LOG.md to add explicit
Commit, Tests, and Outcome fields. Record the exact commit identifier, list the
checks performed for this documentation-only change, and summarize the resulting
outcome without altering the existing inventory content.
- Around line 3-4: Align the corpus wording across both inventory references:
update the task description in .claude/board/AGENT_LOG.md at lines 3-4 and the
inventory heading in .claude/knowledge/graphrag-representations-inventory.md at
line 34 to consistently state “7 papers (6 arXiv + MDPI),” replacing the
inaccurate seven-arXiv wording.

In @.claude/knowledge/graphrag-representations-inventory.md:
- Line 39: Update the PersonalAI row in the representations inventory so
`EpisodicBasins` is labeled as a derived/partial co-occurrence partition rather
than the episodic hyper-edge. Mark the first-class episodic hyper-edge as
MISSING, matching the `EpisodicEdges64` status; apply the same correction to the
100-100 entry.
- Line 108: Update the RRF fusion row in the representations inventory matrix to
include the missing wire-column cell before the “free fn in retrieval.rs” entry,
preserving the existing values and column alignment.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 9754f37a-911e-4356-b452-4b57c5d3f732

📥 Commits

Reviewing files that changed from the base of the PR and between b525d98 and 36327b0.

📒 Files selected for processing (3)
  • .claude/board/AGENT_LOG.md
  • .claude/board/EPIPHANIES.md
  • .claude/knowledge/graphrag-representations-inventory.md

Comment thread .claude/board/AGENT_LOG.md Outdated
Comment on lines +1 to +7
## 2026-07-18 — GraphRAG representations inventory — 7 papers × V3 substrate matrix (6 Opus paper-readers + 1 Opus v3-harvest; main-thread synthesis)

- **Task:** operator asked for an inventory of 7 attached GraphRAG arxiv texts + MDPI, formulate 8 representations plus the v3 "should-have-built" set, and answer a matrix per representation (format / witness-ref / witness / context / basins / vertical-horizontal-vs-edges / time / NARS / causality-trajectory-candidate / wire) + "which probe considered all tenants in every SoA."
- **Fleet:** 6 background Opus readers (SAP-Practical, AriGraph fidelity-audit, PersonalAI, GraphRAG-under-Fire, GraphRAG-FI, StepChain) + MDPI WebFetch + 1 Opus v3-harvest (facet ladder L1-L8, 13-tenant catalogue, ValueSchema, should-have-built backlog). Main thread synthesized.
- **Deliverable:** `.claude/knowledge/graphrag-representations-inventory.md` — the 7-paper inventory, the facet ladder, the 13(+1) tenants, THE MATRIX (16 representations), the causality-trajectory subset, the all-tenants-in-one-SoA verdict, priority wire order.
- **Probe answer:** "all tenants in every SoA" = `PROBE preset-vs-dispatch` (EPIPHANIES:1184) → `ValueSchema::Full` ("every tenant", compile-proven `canonical_node.rs:1127`) + the `ocr.rs:104-115` write-path-as-function-of-live-tenants dispatch.
- **Headline gaps (paper-surfaced, unbuilt):** RRF fusion (keystone), provenance→trust wire, chained episodic_search (Eq.1 — the crate is "AriGraph in name, RAG in retrieval"), evidence-chain `Πsᵤ`, thesis partition, sub-question decomposition, BeamSearch. GraphRAG-FI + PersonalAI independently re-derive the MUL/free-energy + preserve-contradictions stances. Branch `claude/happy-hamilton-0azlw4` (restarted from clean post-#722 main).

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Include the required board-hygiene metadata.

This entry has no explicit Commit, Tests, or Outcome fields. Add those fields, including the exact commit identifier and the checks performed for this docs-only change.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/board/AGENT_LOG.md around lines 1 - 7, Update the 2026-07-18 entry
in AGENT_LOG.md to add explicit Commit, Tests, and Outcome fields. Record the
exact commit identifier, list the checks performed for this documentation-only
change, and summarize the resulting outcome without altering the existing
inventory content.

Source: Coding guidelines

Comment thread .claude/board/AGENT_LOG.md Outdated
Comment on lines +3 to +4
- **Task:** operator asked for an inventory of 7 attached GraphRAG arxiv texts + MDPI, formulate 8 representations plus the v3 "should-have-built" set, and answer a matrix per representation (format / witness-ref / witness / context / basins / vertical-horizontal-vs-edges / time / NARS / causality-trajectory-candidate / wire) + "which probe considered all tenants in every SoA."
- **Fleet:** 6 background Opus readers (SAP-Practical, AriGraph fidelity-audit, PersonalAI, GraphRAG-under-Fire, GraphRAG-FI, StepChain) + MDPI WebFetch + 1 Opus v3-harvest (facet ladder L1-L8, 13-tenant catalogue, ValueSchema, should-have-built backlog). Main thread synthesized.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Align the corpus count across the inventory documents.

The supplied fleet and paper table describe six arXiv papers plus one MDPI source, so both references should use the same “7 papers (6 arXiv + MDPI)” wording.

  • .claude/board/AGENT_LOG.md#L3-L4: replace “7 attached GraphRAG arxiv texts + MDPI” with the six-arXiv-plus-MDPI description.
  • .claude/knowledge/graphrag-representations-inventory.md#L34-L34: replace “Inventory of the 7 arxiv texts” with the same corrected wording.
📍 Affects 2 files
  • .claude/board/AGENT_LOG.md#L3-L4 (this comment)
  • .claude/knowledge/graphrag-representations-inventory.md#L34-L34
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/board/AGENT_LOG.md around lines 3 - 4, Align the corpus wording
across both inventory references: update the task description in
.claude/board/AGENT_LOG.md at lines 3-4 and the inventory heading in
.claude/knowledge/graphrag-representations-inventory.md at line 34 to
consistently state “7 papers (6 arXiv + MDPI),” replacing the inaccurate
seven-arXiv wording.

| Paper | Native representation | Format | Witness reference | In workspace? |
|---|---|---|---|---|
| **AriGraph** 2407.04363 | semantic SPO + **episodic edge** (episode → all its triplets) | triplet + episodic incidence | episode vertex `vₑᵗ=oᵗ` | SPO ✓ · episodic edge **MISSING** (string copy) |
| **PersonalAI** 2506.17001 | object SPO + **thesis** hyper-edge (semantic) + **episodic** hyper-edge (temporal) | 3 vertex types + 2 hyper-edges | passage node `vᵢₑ=dᵢ` | object ✓ · thesis **MISSING** · episodic=basins()✓ · temporal=Lance versions |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Do not equate EpisodicBasins with the episodic hyper-edge.

EpisodicBasins is documented as a co-occurrence partition over entities, while PersonalAI’s episodic hyper-edge preserves episode-to-triplet membership. Mark the basin partition as derived/partial and keep the first-class episodic edge as missing, consistent with the matrix’s EpisodicEdges64 status.

Also applies to: 100-100

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/knowledge/graphrag-representations-inventory.md at line 39, Update
the PersonalAI row in the representations inventory so `EpisodicBasins` is
labeled as a derived/partial co-occurrence partition rather than the episodic
hyper-edge. Mark the first-class episodic hyper-edge as MISSING, matching the
`EpisodicEdges64` status; apply the same correction to the 100-100 entry.

Comment thread .claude/knowledge/graphrag-representations-inventory.md Outdated
…y fixes

- Corpus wording: "7 arxiv texts" -> "7 papers (6 arXiv + MDPI)" (AGENT_LOG + inventory heading).
- AGENT_LOG entry: add explicit Commit/Tests/Outcome board-hygiene fields.
- PersonalAI row + Episodic-witness matrix row: stop equating basins() (a
  derived co-occurrence partition) with the first-class episodic hyper-edge;
  mark the hyper-edge MISSING/unwired, consistent with the AriGraph audit.
- RRF fusion matrix row: restore the missing 11th cell (MD056 alignment).

No content beyond the flagged inconsistencies changed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016b33swuXE23hKtqxsHu9p1
@AdaWorldAPI
AdaWorldAPI merged commit 9c62289 into main Jul 18, 2026
1 check passed
AdaWorldAPI pushed a commit that referenced this pull request Jul 18, 2026
Reciprocal Rank Fusion (Cormack, Clarke & Büttcher 2009): fuse N ranked
lists into one ranking by Σ 1/(k+rank), k=60. Named as the D-GR-2 retrieval
keystone in the representations inventory (#723) — every ranked leg exists
(Bm25Index::rank, PersonalizedPageRank::ranked, CAM-PQ) but nothing fused
them.

- `arigraph/rrf.rs`: `reciprocal_rank_fusion(&[&[ScoredId]], k) -> Vec<ScoredId>`
  + `DEFAULT_RRF_K = 60`. Fuses by RANK, so the per-list scores need not be
  commensurable (the reason it combines BM25 f64 / PPR probability / CAM-PQ i8).
  Deterministic (BTreeMap id-asc + stable score-desc sort); shallowest depth
  wins; returns the contract `ScoredId`.
- Re-exported from `arigraph/mod.rs`.

Pure, reversible capability landed ahead of G0 (like Bm25Index /
PersonalizedPageRank / Communities). The WIRING into OsintRetriever::retrieve
stays gated on the G0 load-bearing verdict.

Tests: 7 unit + 1 doctest green; clippy clean (`-p lance-graph --lib`).
Board: STATUS_BOARD D-GR-2a + AGENT_LOG.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016b33swuXE23hKtqxsHu9p1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants