Skip to content

review: signature-only refactor flagged as [index-breaking-change] symbol removal (stale-index FP) #533

Description

@ajianaz

Observed

While landing PR #531, the pre-commit hook (`cora review --staged`, cora 0.13.0 static stage) reported:

`[MAJOR] src/engine/llm.rs:795: [index-breaking-change] Removing `build_review_prompt` breaks 2 caller(s)`

But the commit did not remove anything — it only changed the function's visibility and added a parameter. The finding disappeared after rebuilding the index with the fresh binary.

Root cause hypothesis

The breaking-change scanner compares symbol sets against the global index built before the change; a signature-only edit looks like removed + re-added, and an out-of-date index turns it into a phantom removal. Same staleness class as #522/#519.

Suggested directions

  • Detect same-name symbols in the new snapshot before reporting a removal (signature drift ≠ removal)
  • Or refresh/incrementally update the index immediately before the scan stage inside the review pipeline
  • Optionally downgrade confidence when `index_status` reports older `last_indexed` than the diff base

Acceptance

  • Fixture: rename-only/signature-drift diff against a stale index produces no `index-breaking-change` finding

Related: #522, #519

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions