You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(vortex-file): gate the file writer behind editions
The session is the source of truth for what a writer may emit:
EditionSession now stores the set of enabled editions alongside the
declarations — enable() (validated, at most one edition per family),
enabled(), and enabled_encodings(), the resolved union of the enabled
editions' encoding sets. register_default_editions declares the
editions and enables the default write editions: core2026.07.0, plus
the newest unstable draft under the `unstable_encodings` feature.
The writer resolves its allow set from the session at write time:
- The flat leaf writer's normalize-with-error validation fails the
write for any encoding outside the session's enabled editions.
- The writer's pre-populated ArrayContext is seeded from the same set.
- Compression is gated at scheme-selection time: the new required
Scheme::produced_encodings method declares the array encodings a
scheme may emit (empty means only canonical arrays), and
CascadingCompressor::with_enabled_editions_gating skips schemes
whose outputs are not all within the enabled editions, resolved
from the execution context per compression.
Sessions with no enabled editions fall back to the static
ALLOWED_ENCODINGS registry, and explicit with_allow_encodings sets
still override everything. Experimental patches remain a runtime
opt-out: Patched is only writable when the experimental environment
variable is set, mirroring when compression produces it.
Signed-off-by: Claude <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CK2nCuXnyd2g3mNHQC8Lz2
0 commit comments