Skip to content

Align crossversion refusal assertions with the 0.9.0-dev naming - #387

Merged
aaltshuler merged 2 commits into
mainfrom
fix/crossversion-dev-release-strings
Jul 27, 2026
Merged

Align crossversion refusal assertions with the 0.9.0-dev naming#387
aaltshuler merged 2 commits into
mainfrom
fix/crossversion-dev-release-strings

Conversation

@aaltshuler

@aaltshuler aaltshuler commented Jul 26, 2026

Copy link
Copy Markdown
Collaborator

What & why

Main's Test Workspace is red (run 30180551717) at crossversion_upgrade.rs:891: the genuine-v8 cell asserts the v8 refusal contains 0.12.x, but the 0.9.0 release bump corrected the schema-to-release map — stamps v5–v8 never shipped in a published release, so their refusals now name 0.9.0-dev instead of fictional release lines.

Four cells asserted the old strings (v5/v6/v7/v8). Only the v8 cell runs in CI (it builds a genuine predecessor binary from 725793af; the others skip without their env seams), which is why every local gate stayed green while post-merge CI went red.

Backing issue / RFC

  • Trivial fast-lane — test-string alignment with an already-merged user-facing message correction; no behavior change.

Checklist

  • Change is focused (four assertions + two testing.md sentences)
  • Tests updated — this is the test fix
  • Public docs: N/A (upgrade.md and the release notes already document the 0.9.0-dev naming)
  • Reviewed against docs/dev/invariants.md — no invariant touched

Validation

CI cannot prove this pre-merge (Test Workspace is post-merge-only), so it was validated against the real boundary locally: built the genuine v8 binary from 725793af (reports omnigraph 0.8.1 / internal-schema 8) and ran the exact failing cell with OMNIGRAPH_V8_BIN set:

test current_v9_refuses_and_rebuilds_genuine_v8_and_v8_refuses_v9 ... ok

The v5/v6/v7 cells received the identical fix; they are env-gated and skip in CI by design.

Greptile Summary

Aligns storage-version guidance with the canonical schema-to-release mapping.

  • Updates genuine v5–v8 cross-version refusal assertions to expect 0.9.0-dev.
  • Corrects developer, RFC, and operator documentation to state that schemas v5–v8 were unpublished development formats and schema v9 maps to the 0.9.x release line.
  • Resolves the previously reported inconsistency between testing guidance, versioning policy, and the upgrade guide.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains; the revised assertions and documentation consistently match the implemented schema-to-release mapping, and the previous guidance inconsistency is resolved.

Important Files Changed

Filename Overview
crates/omnigraph-cli/tests/crossversion_upgrade.rs Updates all genuine v5–v8 refusal assertions to match the implementation’s canonical 0.9.0-dev label.
docs/dev/testing.md Corrects cross-version test guidance for the unpublished v5–v8 formats.
docs/dev/versioning.md Aligns the canonical storage-version policy with v5–v8 as development formats and v9 as the 0.9.x release format.
docs/dev/writes.md Corrects the documented release associations for internal schema versions v7 and v8.
docs/rfcs/0023-key-conflict-fencing.md Updates RFC history to identify schema v6 as an unpublished 0.9.0 development format.
docs/user/operations/upgrade.md Aligns operator-facing rebuild guidance and version tables with the implemented schema mapping.

Reviews (2): Last reviewed commit: "docs: retire the fictional 0.10.x–0.13.x..." | Re-trigger Greptile

The 0.9.0 release bump corrected the schema-to-release map: stamps
v5-v8 never shipped in a published release, so their refusals now name
`0.9.0-dev` instead of the fictional 0.9.x-0.12.x lines (whose latest
entry would have sent operators hunting for an omnigraph 0.13.x binary
that will never exist).

Four crossversion cells still asserted the old strings. The v8 cell is
the only one CI runs (it builds a genuine predecessor binary from
725793a; the v5/v6/v7 cells are gated on unset env seams and skip), so
main's post-merge Test Workspace went red at crossversion_upgrade.rs:891
— run 30180551717 — while every local gate stayed green, because the
cell skips without OMNIGRAPH_V8_BIN.

Update all four assertions to expect `0.9.0-dev`, with messages
explaining why no release line exists for those stamps, and fix the two
testing.md sentences that described the old guidance.

Validated against the real boundary, not just compilation: built the
genuine v8 binary from 725793a (`omnigraph 0.8.1 / internal-schema 8`)
and ran the exact failing cell with OMNIGRAPH_V8_BIN set — green.
Comment thread docs/dev/testing.md
The corrected release map (a2215f6) records v5–v8 as unreleased 0.9.0-dev
formats and v9 as the 0.9.x line, but versioning.md, writes.md, upgrade.md,
and RFC-023 still described the optimistic pre-0.9.0 numbering (v6→0.10.x …
v9→0.13.x) and told operators to run binaries that never existed. Rewrite the
mappings and the v5→v6/v6→v7/v7→v8 rebuild walkthroughs in terms of final
internal-vN source builds; RFC-023 keeps its history with a superseded note.
@aaltshuler
aaltshuler merged commit e889a1c into main Jul 27, 2026
7 checks passed
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