Skip to content

fix(editions): address PR #320 review findings - #322

Merged
dfa1 merged 1 commit into
mainfrom
fix/301-review-followup
Jul 27, 2026
Merged

fix(editions): address PR #320 review findings#322
dfa1 merged 1 commit into
mainfrom
fix/301-review-followup

Conversation

@dfa1

@dfa1 dfa1 commented Jul 27, 2026

Copy link
Copy Markdown
Owner

Summary

Follow-up to #320 (issue #301), addressing all 6 review comments left on that PR:

  • Drop Edition.minVortexVersion — it named the Rust reference's own release train, not vortex-java's, so it was never a meaningful value here.
  • Drop WriteOptions#withoutEditionGuard() — the only escape hatch was guard-wide and untracked. An unstable-family encoding is now reached by enabling that family's edition explicitly via withEdition(Editions.UNSTABLE_...), which is narrower and self-documenting. Updated the 9 test call sites that used the old escape hatch to reach fastlanes.delta/vortex.patched.
  • Implement ReadRegistry's edition-aware "no decoder registered" message — this was documented in the ADR/CHANGELOG/docs as shipped, but was never actually wired into decode()/decodeAsSegment() in the original PR. Added test coverage for the core-edition, unstable-edition, and unknown-to-all-editions message branches, plus decodeAsSegment's error path (previously untested either way).
  • java.util.Map.of()Map.of() (redundant qualification) across 11 files.
  • Updated ADR 0023 and CHANGELOG.md to match the final design; swept docs/reference.md/docs/compatibility.md for stale references to the removed API surface.

Test plan

  • ./mvnw verify -DskipTests (full reactor compile)
  • ./mvnw test (full unit suite)
  • ./mvnw verify -pl integration -am -Dit.test="JavaWritesRustReadsIntegrationTest,JavaRoundTripIntegrationTest"
  • ./mvnw -pl writer -am test -Dtest="WriterEditionGuardTest,DeltaEncodingTest,WriteOptionsTest"
  • ./mvnw javadoc:javadoc -pl core (zero output)
  • Repo-wide grep confirms no stray references to minVortexVersion/withoutEditionGuard/isDraft() outside the ADR's own historical narrative

🤖 Generated with Claude Code

- Drop Edition.minVortexVersion: it names the Rust reference's own
  release train, not vortex-java's, so it was never meaningful here.
- Drop WriteOptions#withoutEditionGuard(): the only escape hatch was
  guard-wide and untracked. Reaching an unstable-family encoding now
  requires enabling that family's edition explicitly via
  withEdition(Editions.UNSTABLE_...), which is both narrower and
  self-documenting. Updates the 9 test call sites that used the old
  escape hatch to reach fastlanes.delta/vortex.patched.
- Implement ReadRegistry's edition-aware "no decoder registered"
  message, which was documented in the ADR/CHANGELOG/docs but never
  actually wired into decode()/decodeAsSegment() in the original PR.
  Add coverage for the core-edition, unstable-edition, and
  unknown-to-all-editions message branches, plus decodeAsSegment's
  error path (previously untested).
- java.util.Map.of() -> Map.of() (redundant qualification) across 11
  files.
- Update ADR 0023 and CHANGELOG.md to match the final design; sweep
  docs/reference.md and docs/compatibility.md for stale references.

Addresses the 6 review comments left on #320 (issue #301).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@dfa1
dfa1 merged commit 13641da into main Jul 27, 2026
6 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