Skip to content

feat: establish secure GraphRAG core - #20

Merged
kl3inIT merged 2 commits into
mainfrom
kl3inIT/secure-graph-rag-core
Jul 23, 2026
Merged

feat: establish secure GraphRAG core#20
kl3inIT merged 2 commits into
mainfrom
kl3inIT/secure-graph-rag-core

Conversation

@kl3inIT

@kl3inIT kl3inIT commented Jul 23, 2026

Copy link
Copy Markdown
Owner

What changed

  • add framework-neutral graph-rag-core and reusable graph-rag-testkit Gradle modules
  • model canonical entity/relation identity separately from immutable evidence contributions and provenance
  • require an AuthorizedGraphScope for every graph read contract
  • add internal retrieval strategies for chunk-only, entity-only, relation-only, secure-hybrid, and secure-mix composition
  • preserve LightRAG-inspired deterministic ranking, round-robin deduplication, and token-budget invariants
  • provide an in-memory permission-scoped reference projection with revision replacement/removal behavior
  • record the one-hop relational graph decision and supersede recursive CTEs on the V1 retrieval hot path

Why

OrgMemory needs a reusable GraphRAG semantic kernel before adding Spring AI or PostgreSQL adapters. The core must keep restricted contributions out of seed ranking, descriptions, adjacency, degree, weight, and citations instead of post-filtering globally merged graph data.

SECURE_MIX remains the default product plan, while trusted internal orchestration can select narrower strategies for evaluation or fallback without exposing LightRAG modes through Assistant or MCP APIs.

Validation

  • 13 focused component tests pass with zero failures
  • ./gradlew.bat --no-daemon compileJava
  • ./gradlew.bat --no-daemon clean test
  • runtime dependency reports confirm both new modules do not bring Spring onto their runtime classpaths
  • package, zero-byte source, Flyway naming, line-length, and git diff --check mechanical gates pass

Deliberately deferred

  • Spring AI structured extraction adapter
  • PostgreSQL/pgvector graph projection
  • worker indexing and runtime retrieval wiring
  • Assistant, MCP, and graph UI integration

Summary by CodeRabbit

  • New Features
    • Added a framework-neutral foundation for graph-based retrieval and entity/relation extraction.
    • Added authorization-scoped graph visibility, ensuring restricted information is excluded from search and related results.
    • Added deterministic ranking, multi-channel result blending, deduplication, and token-aware context budgeting.
    • Added configurable retrieval strategies, including secure hybrid and mixed approaches.
  • Documentation
    • Updated architecture documentation to reflect current graph retrieval capabilities and planned integrations.
  • Tests
    • Added coverage for validation, security boundaries, ranking, retrieval, and context budgeting.

@kl3inIT

kl3inIT commented Jul 23, 2026

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@kl3inIT
kl3inIT marked this pull request as ready for review July 23, 2026 07:31
@coderabbitai

coderabbitai Bot commented Jul 23, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

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

Next review available in: 47 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: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 5684391b-c27b-4232-8605-d5e266f80e11

📥 Commits

Reviewing files that changed from the base of the PR and between 29e839b and fcd652a.

📒 Files selected for processing (2)
  • components/graph-rag-testkit/src/main/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjection.java
  • components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/FrameworkNeutralityTests.java
📝 Walkthrough

Walkthrough

The PR adds framework-neutral GraphRAG core and testkit modules, validated extraction and graph contracts, deterministic retrieval and token-budget utilities, authorization-scoped in-memory projection behavior, JUnit coverage, and related Gradle and architecture updates.

Changes

GraphRAG foundation

Layer / File(s) Summary
Module and build foundation
ARCHITECTURE.md, build-logic/..., components/graph-rag-*/build.gradle.kts, gradle/libs.versions.toml, settings.gradle.kts
Registers the new modules, applies Java library conventions, adds JUnit dependencies, and documents the framework-neutral GraphRAG boundaries.
Extraction and graph contracts
components/graph-rag-core/src/main/java/com/orgmemory/graphrag/{authorization,model,port}/*
Adds validated records, enums, extraction ports, authorization-scoped projection ports, provenance contracts, and revision contribution integrity checks.
Deterministic retrieval and budgeting
components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/*, components/graph-rag-core/src/test/java/...
Adds retrieval strategies and plans, deterministic ranking and merging, token budgets, whole-item allocation, and tests for these behaviors.
Authorization-aware in-memory projection
components/graph-rag-testkit/src/main/java/..., components/graph-rag-testkit/src/test/java/...
Implements revision replacement/removal, authorization-filtered reads and searches, derived visibility metrics, collision handling, security tests, and Spring runtime-classpath checks.

Estimated code review effort: 4 (Complex) | ~60 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 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 main change: introducing a secure, framework-neutral GraphRAG core.
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.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch kl3inIT/secure-graph-rag-core

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.

@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: 2

🤖 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
`@components/graph-rag-testkit/src/main/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjection.java`:
- Around line 40-78: Remove the redundant collidesAcrossContributionTypes
calculation and its use in the collision guard. Keep
collidesWithAnotherRevision, which already checks replacementIds against both
entityContributions and relationContributions, as the sole condition before
throwing the existing IllegalArgumentException.

In
`@components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/FrameworkNeutralityTests.java`:
- Around line 10-13: Update
graphCoreAndTestkitDoNotBringSpringOntoTheRuntimeClasspath to enforce the full
no-Spring runtime contract by checking for Spring package availability rooted at
org.springframework, not only org.springframework.context.ApplicationContext.
Preserve the existing ClassNotFoundException assertion behavior while covering
transitive spring-core and spring-beans classes.
🪄 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: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: b0915b87-b2e9-4908-9def-b6b2a23ebae7

📥 Commits

Reviewing files that changed from the base of the PR and between 200e1ea and 29e839b.

⛔ Files ignored due to path filters (5)
  • docs/decisions/0005-secure-java-graph-kernel.md is excluded by !docs/**
  • docs/decisions/0010-internal-retrieval-strategies-one-hop-graph.md is excluded by !docs/**
  • docs/increments/completed/2026-07-23-secure-graph-rag-core/design.md is excluded by !docs/**
  • docs/increments/completed/2026-07-23-secure-graph-rag-core/plan.md is excluded by !docs/**
  • docs/vision.md is excluded by !docs/**
📒 Files selected for processing (39)
  • ARCHITECTURE.md
  • build-logic/src/main/kotlin/orgmemory.java-library-conventions.gradle.kts
  • components/graph-rag-core/build.gradle.kts
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/authorization/AuthorizedGraphScope.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalEntity.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalRelation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EntityContribution.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EvidenceProvenance.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedEntity.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedRelation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionProfile.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionRequest.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionResult.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationContribution.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationOrientation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/EntityRelationExtractor.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionReader.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionWriter.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphRevisionContributions.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphSeedIndex.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/ContextTokenUsage.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/DeterministicRanker.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RankedItem.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalChannel.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalPlan.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalStrategy.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RoundRobinInterleaver.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/SecureContextBudget.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/TokenAllocation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/WholeItemBudgetAllocator.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/model/ExtractionResultTests.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/DeterministicRetrievalAlgorithmsTests.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/RetrievalPlanTests.java
  • components/graph-rag-testkit/build.gradle.kts
  • components/graph-rag-testkit/src/main/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjection.java
  • components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/FrameworkNeutralityTests.java
  • components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjectionSecurityTests.java
  • gradle/libs.versions.toml
  • settings.gradle.kts
📜 Review details
🧰 Additional context used
📓 Path-based instructions (3)
**/*

📄 CodeRabbit inference engine (CLAUDE.md)

**/*: Before changing unfamiliar Spring Boot 4, Spring Modulith 2, Spring AI 2, Gradle, React, Vite, Tailwind, or TypeScript APIs, consult Context7/current official documentation and the project orgmemory-* verification skills.
Read docs/guidelines/agent-safety.md before retrieval, AI, MCP, permission, upload, graph, or export work.
Never commit .env files, provider keys, tokens, or customer data.
Run the relevant gates from docs/guidelines/testing-harness.md; use a terminating clean test as the context gate, and do not treat bootRun as verification.
Current behavior belongs in architecture/specs only after it exists in code; intent belongs in vision, roadmap, or an active increment, and repository state must not be duplicated across documents.

Files:

  • components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/FrameworkNeutralityTests.java
  • settings.gradle.kts
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationOrientation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/TokenAllocation.java
  • components/graph-rag-core/build.gradle.kts
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionWriter.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RankedItem.java
  • build-logic/src/main/kotlin/orgmemory.java-library-conventions.gradle.kts
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationContribution.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphSeedIndex.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/EntityRelationExtractor.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionResult.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalEntity.java
  • components/graph-rag-testkit/build.gradle.kts
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/ContextTokenUsage.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionProfile.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EntityContribution.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/DeterministicRetrievalAlgorithmsTests.java
  • gradle/libs.versions.toml
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/authorization/AuthorizedGraphScope.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/DeterministicRanker.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/SecureContextBudget.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionRequest.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/model/ExtractionResultTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionReader.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphRevisionContributions.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalStrategy.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalRelation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EvidenceProvenance.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedEntity.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedRelation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalPlan.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/WholeItemBudgetAllocator.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/RetrievalPlanTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalChannel.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RoundRobinInterleaver.java
  • components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjectionSecurityTests.java
  • ARCHITECTURE.md
  • components/graph-rag-testkit/src/main/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjection.java
**/*.{java,sql}

📄 CodeRabbit inference engine (CLAUDE.md)

Pair JPA schema changes with a Flyway migration.

Files:

  • components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/FrameworkNeutralityTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationOrientation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/TokenAllocation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionWriter.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RankedItem.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationContribution.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphSeedIndex.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/EntityRelationExtractor.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionResult.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalEntity.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/ContextTokenUsage.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionProfile.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EntityContribution.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/DeterministicRetrievalAlgorithmsTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/authorization/AuthorizedGraphScope.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/DeterministicRanker.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/SecureContextBudget.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionRequest.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/model/ExtractionResultTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionReader.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphRevisionContributions.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalStrategy.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalRelation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EvidenceProvenance.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedEntity.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedRelation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalPlan.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/WholeItemBudgetAllocator.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/RetrievalPlanTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalChannel.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RoundRobinInterleaver.java
  • components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjectionSecurityTests.java
  • components/graph-rag-testkit/src/main/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjection.java
**/*.java

📄 CodeRabbit inference engine (CLAUDE.md)

JetBrains IDE inspection is a Java-backend gate only.

Files:

  • components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/FrameworkNeutralityTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationOrientation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/TokenAllocation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionWriter.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RankedItem.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationContribution.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphSeedIndex.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/EntityRelationExtractor.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionResult.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalEntity.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/ContextTokenUsage.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionProfile.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EntityContribution.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/DeterministicRetrievalAlgorithmsTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/authorization/AuthorizedGraphScope.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/DeterministicRanker.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/SecureContextBudget.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionRequest.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/model/ExtractionResultTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionReader.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphRevisionContributions.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalStrategy.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalRelation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EvidenceProvenance.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedEntity.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedRelation.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalPlan.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/WholeItemBudgetAllocator.java
  • components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/RetrievalPlanTests.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalChannel.java
  • components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RoundRobinInterleaver.java
  • components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjectionSecurityTests.java
  • components/graph-rag-testkit/src/main/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjection.java
🪛 LanguageTool
ARCHITECTURE.md

[grammar] ~149-~149: Ensure spelling is correct
Context: ... exposed as a public request option. Its testkit provides a permission-scoped in-memory ...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

🔇 Additional comments (38)
ARCHITECTURE.md (1)

4-5: LGTM!

Also applies to: 23-27, 143-156

build-logic/src/main/kotlin/orgmemory.java-library-conventions.gradle.kts (1)

1-4: LGTM!

components/graph-rag-core/build.gradle.kts (1)

1-9: LGTM!

components/graph-rag-testkit/build.gradle.kts (1)

1-11: LGTM!

gradle/libs.versions.toml (1)

11-11: LGTM!

Also applies to: 24-26

settings.gradle.kts (1)

22-23: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationOrientation.java (1)

1-6: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EvidenceProvenance.java (1)

7-50: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/EntityContribution.java (1)

6-27: LGTM!

components/graph-rag-testkit/src/test/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjectionSecurityTests.java (1)

57-116: LGTM!

Also applies to: 118-154, 156-228, 230-293

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/authorization/AuthorizedGraphScope.java (1)

1-32: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalEntity.java (1)

1-22: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/CanonicalRelation.java (1)

1-43: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionWriter.java (1)

1-11: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/DeterministicRanker.java (1)

1-27: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalStrategy.java (1)

1-31: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalPlan.java (1)

1-42: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/SecureContextBudget.java (1)

1-40: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RoundRobinInterleaver.java (1)

1-50: LGTM!

components/graph-rag-testkit/src/main/java/com/orgmemory/graphrag/testkit/InMemoryGraphProjection.java (1)

86-330: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/RelationContribution.java (1)

7-32: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedEntity.java (1)

5-33: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RankedItem.java (1)

5-16: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/RetrievalChannel.java (1)

3-7: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/TokenAllocation.java (1)

6-13: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/WholeItemBudgetAllocator.java (1)

13-36: LGTM!

components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/DeterministicRetrievalAlgorithmsTests.java (1)

12-55: LGTM!

components/graph-rag-core/src/test/java/com/orgmemory/graphrag/query/RetrievalPlanTests.java (1)

11-60: LGTM!

components/graph-rag-core/src/test/java/com/orgmemory/graphrag/model/ExtractionResultTests.java (1)

11-68: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractedRelation.java (1)

1-38: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionProfile.java (1)

1-29: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionRequest.java (1)

1-34: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/model/ExtractionResult.java (1)

1-33: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/EntityRelationExtractor.java (1)

1-10: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphProjectionReader.java (1)

1-34: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphRevisionContributions.java (1)

1-61: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/port/GraphSeedIndex.java (1)

1-20: LGTM!

components/graph-rag-core/src/main/java/com/orgmemory/graphrag/query/ContextTokenUsage.java (1)

1-14: LGTM!

@coderabbitai

coderabbitai Bot commented Jul 23, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

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.

1 participant