Skip to content

fix(update): run incremental graph rebuild, drop stale "not implemented" warning#310

Merged
HumanBean17 merged 1 commit into
masterfrom
fix/update-stale-graph-warning
Jun 13, 2026
Merged

fix(update): run incremental graph rebuild, drop stale "not implemented" warning#310
HumanBean17 merged 1 commit into
masterfrom
fix/update-stale-graph-warning

Conversation

@HumanBean17

Copy link
Copy Markdown
Owner

What

java-codebase-rag update ran a Lance-only catch-up and then unconditionally printed:

WARNING: AST graph (LadybugDB) incremental rebuild is not yet implemented.

…even though incremental graph rebuild shipped in #284 (67a76de) and increment already calls run_incremental_graph. The two commands share the word "update" but live in different code paths, and only the increment path (cli.py:_cmd_increment) was rewired — the installer's run_update index step (installer.py) was never updated.

So the warning was a lie of omission on the update path: the feature it claims is missing sits one function call away and update could have used it. The warning is truthful only on increment --vectors-only, where the graph step is deliberately skipped.

Change

installer.run_update now mirrors increment:

  1. run_cocoindex_update → Lance catch-up (unchanged)
  2. run_incremental_graph(...) → graph rebuild (the call that was missing)
  3. No warning on success. If the graph step fails, prints a truthful, actionable message (…failed (exit N). Run java-codebase-rag reprocess) instead of claiming the feature is unimplemented.

_INCREMENT_WARNING_LINES stays in cli.py — still the correct message for increment --vectors-only and pinned by test_cli_quiet_parity.py.

Refs: completed proposal propose/completed/INCREMENTAL-GRAPH-PROPOSE.md, tracking issue #73.

User-visible behaviour changes

  • java-codebase-rag update now prints Updating index (Lance + graph)... and no longer emits the "graph incremental rebuild is not yet implemented" warning on success.
  • update does slightly more work than before (graph catch-up, not just Lance) — the intended outcome; matches increment.
  • update --help, README, and docs/JAVA-CODEBASE-RAG-CLI.md updated to describe update as artifact refresh + incremental Lance/graph catch-up, and drop the false "prints graph staleness warning" line.

No reindex / ontology / env-var impact

None. This only rewires which existing pipeline function update calls. No schema, ontology, or embedding change.

Tests

  • tests/test_installer.py::TestRunUpdate — added run_incremental_graph mock to test_install_then_update_cycle (update now invokes that step).
  • .venv/bin/ruff check . — clean.
  • .venv/bin/python -m pytest tests/test_installer.py::TestRunUpdate tests/test_cli_quiet_parity.py -q7 passed, 1 skipped (skip is cocoindex/bank-chat-gated).

🤖 Generated with Claude Code

…ed" warning

`java-codebase-rag update` did a Lance-only catch-up then unconditionally
printed "AST graph (LadybugDB) incremental rebuild is not yet implemented",
even though incremental graph shipped (67a76de) and `increment` already calls
run_incremental_graph. The two commands share the word "update" but use
different code paths; only the `increment` path (cli.py) was rewired — the
installer's run_update index step was never updated.

Now run_update mirrors `increment`: after run_cocoindex_update it calls
run_incremental_graph, so both index layers stay current. The stale warning
is removed entirely; on graph-step failure it prints a truthful, actionable
message instead of claiming the feature is missing. The warning constant
stays in cli.py for the legitimate `increment --vectors-only` opt-out path.

Docs/help (cli --help, README, JAVA-CODEBASE-RAG-CLI.md) updated to describe
update as artifact refresh + incremental Lance/graph catch-up, and to drop the
false "prints graph staleness warning" line.

Co-Authored-By: Claude <noreply@anthropic.com>
@HumanBean17 HumanBean17 merged commit b8c349b into master Jun 13, 2026
1 check failed
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