Skip to content

test: avoid reusable Neo4j index ids#533

Merged
savasp merged 2 commits into
mainfrom
codex/fix-532-neo4j-index-id
Jul 23, 2026
Merged

test: avoid reusable Neo4j index ids#533
savasp merged 2 commits into
mainfrom
codex/fix-532-neo4j-index-id

Conversation

@savasp-agent

@savasp-agent savasp-agent Bot commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Summary

  • remove the nondeterministic assumption that every dropped Neo4j schema index receives a new internal ID
  • record and assert the exact DROP INDEX ... IF EXISTS command set for every configured managed index
  • retain coverage that rebuilt indexes are online and usable and that external indexes and constraints are preserved

Why

The final #393 certification run observed Neo4j 5.26.28 reuse one internal schema index ID after recreation. The same strict suite passed immediately beforehand, and the focused test passed six consecutive isolated reruns afterward. Internal schema IDs are not a stable behavioral oracle for replacement.

The replacement assertion observes the schema commands issued by RecreateManagedIndexesAsync, proving that every configured managed index is dropped before its stable postconditions are checked. This remains test-only: no provider behavior or public contract changes.

Validation

  • focused managed-index recreation test: 1 passed
  • strict Neo4j lane: 616 passed, 0 failed, 0 skipped
  • pre-push gate: Release warnings-as-errors build and format verification passed

Closes #532.

@savasp
savasp disabled auto-merge July 23, 2026 09:13
@savasp
savasp merged commit adea65e into main Jul 23, 2026
11 checks passed
@savasp
savasp deleted the codex/fix-532-neo4j-index-id branch July 23, 2026 09:13
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.

Neo4j test: make managed-index recreation proof independent of reusable schema IDs

1 participant