Skip to content

[fix] RAG index generation stuck - #256

Merged
rostilos merged 1 commit into
mainfrom
1.8.2-rc
Aug 21, 2026
Merged

[fix] RAG index generation stuck#256
rostilos merged 1 commit into
mainfrom
1.8.2-rc

Conversation

@rostilos

@rostilos rostilos commented Aug 21, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

  • New Features
    • Added detailed progress reporting during repository analysis, including plugin status, file counts, paths, timing, and completion updates.
    • Improved detection of embedded GraphQL content across supported source files.
  • Bug Fixes
    • Prevented Java text blocks from being incorrectly interpreted as GraphQL documents.
    • Improved GraphQL parsing performance for large or complex files.
    • Preserved accurate indexing timestamps when reconciling existing generations.
  • Tests
    • Added coverage for GraphQL filtering, progress events, and indexing timestamp preservation.

@rostilos
rostilos merged commit a5c495f into main Aug 21, 2026
1 of 2 checks passed
@coderabbitai

coderabbitai Bot commented Aug 21, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 95150834-331d-4ad8-a54f-5c8c5937beea

📥 Commits

Reviewing files that changed from the base of the PR and between 60fed00 and 3c63913.

📒 Files selected for processing (13)
  • analysis-plugins/contracts/python/codecrow_plugins/graphql.py
  • analysis-plugins/contracts/python/codecrow_plugins/runtime.py
  • analysis-plugins/contracts/python/tests/test_data_contracts_repository_analysis.py
  • analysis-plugins/contracts/python/tests/test_repository_runtime_resilience.py
  • analysis-plugins/domains/data-contracts/python/codecrow_plugin_data_contracts/__init__.py
  • java-ecosystem/libs/core/src/main/java/org/rostilos/codecrow/core/persistence/repository/rag/RagBranchIndexRepository.java
  • java-ecosystem/libs/rag-engine/src/main/java/org/rostilos/codecrow/ragengine/branch/BranchIndexBuildAdmissionService.java
  • java-ecosystem/libs/rag-engine/src/main/java/org/rostilos/codecrow/ragengine/service/RagIndexTrackingService.java
  • java-ecosystem/libs/rag-engine/src/main/java/org/rostilos/codecrow/ragengine/service/RagOperationsServiceImpl.java
  • java-ecosystem/libs/rag-engine/src/test/java/org/rostilos/codecrow/ragengine/branch/BranchIndexBuildAdmissionServiceTest.java
  • java-ecosystem/libs/rag-engine/src/test/java/org/rostilos/codecrow/ragengine/service/RagIndexTrackingServiceTest.java
  • java-ecosystem/libs/rag-engine/src/test/java/org/rostilos/codecrow/ragengine/service/RagOperationsServiceImplTest.java
  • python-ecosystem/rag-pipeline/src/rag_pipeline/core/index_manager/indexer.py

📝 Walkthrough

Walkthrough

The pull request optimizes GraphQL block tokenization, filters embedded GraphQL parsing, adds plugin ingest progress events, and propagates RAG generation activation timestamps into checkpoint updates.

Changes

Embedded GraphQL parsing

Layer / File(s) Summary
GraphQL detection and parsing regression
analysis-plugins/contracts/python/codecrow_plugins/graphql.py, analysis-plugins/domains/data-contracts/python/codecrow_plugin_data_contracts/__init__.py, analysis-plugins/contracts/python/tests/test_data_contracts_repository_analysis.py
The tokenizer removes redundant newline matching. Data-contract extraction detects embedded GraphQL content and ignores Java SQL text blocks. Regression coverage validates the resulting snapshot.

Repository plugin ingest progress

Layer / File(s) Summary
Ingest progress callback flow
analysis-plugins/contracts/python/codecrow_plugins/runtime.py, python-ecosystem/rag-pipeline/src/rag_pipeline/core/index_manager/indexer.py, analysis-plugins/contracts/python/tests/test_repository_runtime_resilience.py
RepositoryAnalysisHandle.ingest reports plugin start and completion events. The index manager logs and forwards progress metadata. Tests verify event contents.

RAG activation timestamp propagation

Layer / File(s) Summary
Active generation timestamp contract
java-ecosystem/libs/core/src/main/java/org/rostilos/codecrow/core/persistence/repository/rag/RagBranchIndexRepository.java, java-ecosystem/libs/rag-engine/src/main/java/org/rostilos/codecrow/ragengine/branch/BranchIndexBuildAdmissionService.java, java-ecosystem/libs/rag-engine/src/test/java/org/rostilos/codecrow/ragengine/branch/BranchIndexBuildAdmissionServiceTest.java
The active-generation projection exposes activatedAt. Branch admission passes the timestamp to published generation update preparation. Tests update the interaction checks.
Checkpoint timestamp update
java-ecosystem/libs/rag-engine/src/main/java/org/rostilos/codecrow/ragengine/service/RagIndexTrackingService.java, java-ecosystem/libs/rag-engine/src/test/java/org/rostilos/codecrow/ragengine/service/RagIndexTrackingServiceTest.java
preparePublishedGenerationForUpdate uses the supplied activation timestamp for lastIndexedAt. It preserves existing timestamps when no timestamp is supplied.
Exact-generation reconciliation
java-ecosystem/libs/rag-engine/src/main/java/org/rostilos/codecrow/ragengine/service/RagOperationsServiceImpl.java, java-ecosystem/libs/rag-engine/src/test/java/org/rostilos/codecrow/ragengine/service/RagOperationsServiceImplTest.java
Exact-generation checkpoint repair passes activatedAt. Tests stub and verify the additional argument.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Sequence Diagram(s)

sequenceDiagram
  participant IndexManager
  participant RepositoryAnalysisHandle
  participant RepositoryPlugin
  participant ProgressReporter
  IndexManager->>RepositoryAnalysisHandle: ingest artifacts with progress callback
  RepositoryAnalysisHandle->>IndexManager: report started event
  RepositoryAnalysisHandle->>RepositoryPlugin: ingest plugin files
  RepositoryAnalysisHandle->>IndexManager: report completed event
  IndexManager->>ProgressReporter: forward ingest progress
Loading
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch 1.8.2-rc

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.

@codecrow-local

codecrow-local Bot commented Aug 21, 2026

Copy link
Copy Markdown

✅ Code Analysis - No Issues Found

Quality Gate Default Quality Gate: ✅ PASSED

Summary

Pull Request Review: [fix] RAG index generation stuck

Status PASS
Risk Level LOW
Review Coverage 13 files analyzed in depth
Confidence MEDIUM

Executive Summary

This PR addresses RAG index generation progress and completion handling across the Python ingestion pipeline, GraphQL and data-contract extraction, and Java persistence and admission services. The reviewed changes also update related tests covering runtime resilience, generation tracking, and branch admission behavior. No task-management context was provided; overall review findings indicate low risk, with no cross-file issues identified.

Recommendation

Decision: PASS

The PR is suitable for merge based on the current review. Confidence is medium because the assessment spans the full changed surface but does not include additional task-specific acceptance criteria.


Analysis completed on 2026-08-21 09:45:59 | View Full Report | Pull Request

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