Spec-revision pass (architecture unchanged) converting the v0 implementation's provisional, golden-locked choices into ratified core_spec.tex text, so durable byte layouts are fixed before the next-phase build-outs. Worklist: spec/PASS11_WORKLIST.md; per-item dispositions: spec/PASS11_RATIFICATION_LOG.md. Adopt-and-pin (bytes): TypedObjectId 16-bit BE discriminant table 0..=27 (added the 5 variants the code carried); promoted-voice (MUSCSVCE), synthetic-pitch (MUSCSPCH, tuning always in identity), and integrity-anomaly (MUSCSANM, now a reserved built-in tag) derivations; ChunkKind/ProfileId/CompressionAlgorithm discriminants; ManifestId preimage (manifest_id excluded); RationalTime/scalar layouts + the codec convention baseline the Binary Format companion inherits. Decide-and-pin: tempo Linear interpolates speed (not bpm); StructuralFieldCollision tags the winner Conflicted; lifted the >2-way / partial-overlap voice-promotion rule to normative; pinned TransactionCategory and ObjectKind core vocabularies; added ResolutionAction::Dismiss so the Dismissed state is reachable by an authored op; pinned the (non-canonical) LayoutObjectId derivation (MUSCLOID). Fixes: blob hashing is bare MUSCBLOB||payload (deleted the contradictory "identically to chunks" phrasing); equal-generation superblock rule (DivergentSameGeneration); defined ProfileConstraints with the required RetentionPolicy + first-declared precedence; made the DVV zero-based floor normative; reconciled the invariant count to 19 and named the three construction-time MUSTs — TupletRatio now rejects degenerate ratios at construction (zero term or actual==notated), enforced by a checked constructor + codec decode validation. Code changes carry regression tests; byte-layout golden tests now cite their ratified requirements. Workspace green: cargo test, clippy -D warnings, fmt; spec builds (lualatex, 253pp). Per-crate DECISIONS files annotated with the ratification status. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011giSRaHCFCGm1Z2SWv6JHt |
||
|---|---|---|
| .. | ||
| block.rs | ||
| bundle.rs | ||
| chunk.rs | ||
| codec.rs | ||
| crc.rs | ||
| error.rs | ||
| fuzz.rs | ||
| header.rs | ||
| ids.rs | ||
| lib.rs | ||
| manifest.rs | ||
| store.rs | ||
| superblock.rs | ||