Commit Graph

  • e6a118e1c6 CI: an MSRV that could not build, and a gate that floated Levi Neuwirth 2026-07-22 15:05:04 -0400
  • 5e465a1067 P13-S6: all twenty tuning systems now say what they mean Levi Neuwirth 2026-07-22 14:54:25 -0400
  • 80193855bb P13-S6 ratified: the lattice block, and an argument that did not survive arithmetic Levi Neuwirth 2026-07-22 14:26:08 -0400
  • 986b90aef3 P13-S6: the tuning constructions, drafted -- and why sourcing was not enough Levi Neuwirth 2026-07-22 11:50:06 -0400
  • 5dcaa58fd0 Push 4b Wave 1a: three ratified corrections, and a citation that pointed the wrong way Levi Neuwirth 2026-07-22 11:49:40 -0400
  • b3449256f9 P13-S5 and P13-S6: the two inherited claims were both true Levi Neuwirth 2026-07-22 09:03:39 -0400
  • e7ebd8ac9c P13-S2: the alteration is space-relative, and the core fails closed Levi Neuwirth 2026-07-22 09:00:09 -0400
  • 043c18cabf P13-S1: every requirement is named, and now it is also numbered Levi Neuwirth 2026-07-21 18:27:52 -0400
  • a9a57120e9 Text Projection: whole-document conformance, and a corpus with teeth Levi Neuwirth 2026-07-21 15:44:25 -0400
  • 244bd6bd96 Text Projection: the document layer, and the equation closes Levi Neuwirth 2026-07-21 15:05:28 -0400
  • 50ad97a31b Text Projection 0.7.0: single-version headers, and blob lines are rejected Levi Neuwirth 2026-07-21 15:04:43 -0400
  • fdb4a57885 Text Projection: the operation layer, and the tests that can see it fail Levi Neuwirth 2026-07-21 13:43:09 -0400
  • 4ded63a583 Text Projection 0.6.0: the operation vocabulary is grammar-directed Levi Neuwirth 2026-07-21 13:42:21 -0400
  • b6728da5c6 Text Projection: every graph id projects, because graph_id! says so Levi Neuwirth 2026-07-21 13:41:40 -0400
  • cf81074ca0 Text Projection: the Chapter-5 value layer, from one field list Levi Neuwirth 2026-07-21 12:17:49 -0400
  • 914143c6db Text Projection: the s-expression model and a reader that rejects Levi Neuwirth 2026-07-09 22:50:24 -0400
  • 7b96c2d131 Text Projection 0.5.0: the projection is schema-directed Levi Neuwirth 2026-07-09 22:40:27 -0400
  • 7face56ab4 Text Projection 0.4.0: two normative corrections, and a checker that can fail Levi Neuwirth 2026-07-09 22:27:32 -0400
  • 2868f8c4b3 Text Projection 0.3.0: every production expanded, and one rule for values Levi Neuwirth 2026-07-09 21:55:49 -0400
  • ee18b71aca Text Projection 0.2.0: the gate was lossy, and the cause was one missing rule Levi Neuwirth 2026-07-09 21:34:36 -0400
  • 0ba9bb2dd8 Text Projection design gate: the companion the core spec delegates to Levi Neuwirth 2026-07-09 21:13:40 -0400
  • 3baf8d050d Push 5 / P5: the missing inverse -- bytes back to an operation envelope Levi Neuwirth 2026-07-09 20:59:43 -0400
  • 567e8214a4 One tag vocabulary the compiler owns, and ratify the corpus in the companion Levi Neuwirth 2026-07-09 20:32:35 -0400
  • a41596d329 Push 5 / P4: the decode conformance corpus, and the tag it could not read back Levi Neuwirth 2026-07-09 20:16:15 -0400
  • 09a7f62802 Make the exhaustive tests exhaustive, and stop the record overclaiming Levi Neuwirth 2026-07-09 19:39:30 -0400
  • 7de9e479c4 Push 5 / P3: fuzz the bundle wire, and find a lenient codec hiding behind a guard Levi Neuwirth 2026-07-09 19:12:34 -0400
  • 9596d1e824 Push 5 / P2: fuzz the ops decode surface, and find the guard's blind spot Levi Neuwirth 2026-07-09 18:43:21 -0400
  • 958fffad4e The pitch/spelling undo unit is broader than the transpose, on purpose Levi Neuwirth 2026-07-09 18:15:43 -0400
  • 23521b4bcf P13-S3: the engraved spelling set is a shared undo key, not the transpose's Levi Neuwirth 2026-07-09 17:29:05 -0400
  • 655cf8ef5b TransposeInterval becomes undoable; the frozen Transpose stays un-undoable Levi Neuwirth 2026-07-09 16:45:57 -0400
  • 6369d331f1 A transposition moves the authored spelling; recording Propagated is not enough Levi Neuwirth 2026-07-09 16:40:06 -0400
  • 4228320f88 Transposition must refuse an extreme interval, not panic on it Levi Neuwirth 2026-07-09 16:33:42 -0400
  • 582b0ca234 File what Push 4a found and did not fix Levi Neuwirth 2026-07-09 15:51:24 -0400
  • 91a99b2093 Stop the conformance suite from authoring the frozen operation Levi Neuwirth 2026-07-09 15:50:22 -0400
  • 2740a6c53c TransposeInterval: the faithful transpose, and the frozen one it replaces Levi Neuwirth 2026-07-09 15:46:43 -0400
  • 27c80a0d83 Pin the interval algebra on the type that already carried it Levi Neuwirth 2026-07-09 15:29:44 -0400
  • 357e8b9eeb Push 4a design gate: pin the transpose algebra, freeze the old operation Levi Neuwirth 2026-07-09 15:25:27 -0400
  • beb61fca2f P13-I3: delete the hand-written notehead anchors; teach the extractor Levi Neuwirth 2026-07-09 14:53:47 -0400
  • afb487c24d P13-I2: Staff::default_clef is the fallback, not decoration Levi Neuwirth 2026-07-09 14:47:42 -0400
  • b7dab0fd44 Pass 13 reopens; P13-I1: complete the ConstrainedLayoutIR listing Levi Neuwirth 2026-07-09 14:42:32 -0400
  • 24b6a34db9 Slurs: side from the stems, endpoints on the notes, apex clear of both Levi Neuwirth 2026-07-09 13:58:56 -0400
  • 7aa0b938e2 Stems point away from the middle line, and reach it Levi Neuwirth 2026-07-09 13:47:47 -0400
  • 86635e43e1 Two-sided inter-staff renegotiation, and the cascade defect it uncovered Levi Neuwirth 2026-07-09 13:32:37 -0400
  • 029039bf35 Straighten the QMC version story in the docs that assert it Levi Neuwirth 2026-07-09 11:54:25 -0400
  • 5b016f33b7 Two more glyph-members assumptions in the vertical-density axis (QMC 0.3.0) Levi Neuwirth 2026-07-09 11:39:28 -0400
  • 43215c7d67 The inter-staff gap band becomes a height model; fix a non-conforming metric Levi Neuwirth 2026-07-09 11:16:31 -0400
  • ab411f4cae Reconcile a process claim: park the listing gap, do not fake a Pass-13 row Levi Neuwirth 2026-07-09 11:02:20 -0400
  • ced4b7255e Rescope the band-ownership MUST to the constrained stage; ratify it Levi Neuwirth 2026-07-09 11:00:09 -0400
  • fc411ea7ac Ratify primitive band ownership in Chapter 7; scope canonical_bytes' doc Levi Neuwirth 2026-07-09 10:50:10 -0400
  • efaebb9acd Let the band model carry staff attribution instead of inferring it Levi Neuwirth 2026-07-09 10:37:27 -0400
  • f7350362a3 Close the inter-staff residual risk: a three-staff cascade fixture Levi Neuwirth 2026-07-09 10:20:35 -0400
  • b1bfe04d6c Inter-staff review fix: attribute a curve by its arc, not its nearest glyph Levi Neuwirth 2026-07-09 10:05:14 -0400
  • 4132a7ac05 Inter-staff review fix: make staff attribution y-aware (stems tore off) Levi Neuwirth 2026-07-09 09:42:51 -0400
  • 3978225e06 Inter-staff slice 2/2: renegotiate the gaps between a system's staves Levi Neuwirth 2026-07-08 23:04:25 -0400
  • f103641013 Inter-staff slice 1/2: a two-staff pressure fixture Levi Neuwirth 2026-07-08 22:48:39 -0400
  • 177bcdb43b Optimal-break review fix: restore an overflow safety net in walk_region Levi Neuwirth 2026-07-08 21:48:31 -0400
  • c818992835 Push 3 Standard-tier: optimal break search (replace greedy first-fit) Levi Neuwirth 2026-07-08 21:29:08 -0400
  • 0db005db9a Vertical justification review follow-up: document + test the metric trade-off Levi Neuwirth 2026-07-08 20:50:17 -0400
  • 69e0430062 Push 3 Standard-tier: vertical justification (fill non-final pages) Levi Neuwirth 2026-07-08 20:36:18 -0400
  • fea446a182 Justification review fix: keep stems attached to their noteheads Levi Neuwirth 2026-07-08 19:54:18 -0400
  • 7c038721d7 Push 3 Standard-tier: per-system justification (fill the content width) Levi Neuwirth 2026-07-08 19:21:46 -0400
  • ca687d8e7e Push 3 audit follow-up: modify anchor validation, spaced slur_shape, stale docs Levi Neuwirth 2026-07-08 18:54:39 -0400
  • 430214d619 Pass 13 — P13-D2: tombstone before the graph delete, closing the cue-cascade trail Levi Neuwirth 2026-07-08 18:25:37 -0400
  • 79c8e1da2e Pass 13 — P13-D1: run the ledger re-anchor for undo-driven event tombstones Levi Neuwirth 2026-07-08 18:17:51 -0400
  • 382aff23a2 Pass 13 — P13-K1: reject a ModifyEvent introducing a never-minted system pitch Levi Neuwirth 2026-07-08 18:08:48 -0400
  • cd998142f5 Pass 13 — P13-D3: reject spanners anchored to a missing region/measure Levi Neuwirth 2026-07-08 18:01:08 -0400
  • e6308371d5 Push 3 slur review fix: measure slur_shape on whole slurs, not split fragments Levi Neuwirth 2026-07-08 17:56:11 -0400
  • 449dd2ef8e Push 3 ratify: extend the slur-rendering requirement + refresh slur_shape Levi Neuwirth 2026-07-08 17:33:11 -0400
  • 7d61271069 Push 3 (slur quality) 3/3: measure slur_shape_penalty (off the 0.0 placeholder) Levi Neuwirth 2026-07-08 17:28:28 -0400
  • 586969125e Push 3 (slur quality) 2/3: split break-spanning slur curves (de Casteljau) Levi Neuwirth 2026-07-08 17:21:19 -0400
  • c5173d275e Push 3 (slur quality) 1/3: render dashed/dotted slurs faithfully Levi Neuwirth 2026-07-08 17:13:32 -0400
  • 693150e43e Schema major 2 Phase F: ratify repeat + slur rendering into Chapter 7 Levi Neuwirth 2026-07-08 16:23:12 -0400
  • 28f210e16f E2 follow-up: surface slur style deferral, conservative curve hit capsule Levi Neuwirth 2026-07-08 16:07:13 -0400
  • 81b7f42f0a Schema major 2 Phase E2: slur curves + cubic-bézier primitive Levi Neuwirth 2026-07-08 15:33:00 -0400
  • 6651ae5fce E1 follow-up: slot-relative glyph remap (same-slot spacing preserved) Levi Neuwirth 2026-07-07 22:16:54 -0400
  • 7a9bf42119 Schema major 2 Phase E1: repeat barlines + volta brackets render Levi Neuwirth 2026-07-07 21:51:11 -0400
  • 58eef41c7e Phase D follow-up: anchor-site liveness and containment, all object kinds Levi Neuwirth 2026-07-07 20:18:29 -0400
  • 9b5339f8f3 Schema major 2 Phase D: the repeat-authoring pair (code tranche) Levi Neuwirth 2026-07-07 20:06:18 -0400
  • b816144a43 Schema major 2 Phase D: ratify the repeat-authoring pair (spec tranche) Levi Neuwirth 2026-07-07 17:31:51 -0400
  • 437e0758a0 Phase B follow-up: real acceleration-snapshot path + base role bound Levi Neuwirth 2026-07-07 16:54:06 -0400
  • 794400c4c7 Schema major 2 Phase B: snapshot side + honest stamps (data-model fills) Levi Neuwirth 2026-07-07 16:30:07 -0400
  • 7c9d1c40aa Schema major 2 Phase A: ratify the v2 data-model wire form (spec only) Levi Neuwirth 2026-07-07 15:05:48 -0400
  • 93f3dfde93 G-pass follow-up: unsupported pre-pass algorithm ids error Levi Neuwirth 2026-07-07 11:32:05 -0400
  • e4edea6a3e Pass 12 G-pass: code tranche (K3/K9/C4/H7) + review fixes Levi Neuwirth 2026-07-07 11:21:22 -0400
  • aff1809421 Pass 12 G-pass: ratify the full batch (28 rows) — spec tranche Levi Neuwirth 2026-07-07 10:23:30 -0400
  • 7e7a43b050 Fuzzer P1: adversarial decode fuzz + strict-canonical decode + bounded counts Levi Neuwirth 2026-07-07 09:42:04 -0400
  • 7045a13a18 Schema major 1 Phase F: ratify engrave I8/I9/I10 + process trail Levi Neuwirth 2026-07-06 17:40:38 -0400
  • 64de92605f Schema major 1 Phase E: resolved-layout length prefixes u64 -> u32 Levi Neuwirth 2026-07-06 13:20:40 -0400
  • 4598f30ddd Schema major 1 Phase D2: CreateRegion op-block major + cross-major read-only Levi Neuwirth 2026-07-06 12:09:30 -0400
  • 03758bbae0 Schema major 1 Phase D1: Instrument.range + Region flag (snapshot side) Levi Neuwirth 2026-07-06 11:14:52 -0400
  • e199fabe3f Schema major 1 Phase C: Canvas.layout_defaults + real migrate-on-read Levi Neuwirth 2026-07-05 20:37:36 -0400
  • 9f688cc592 Schema major 1 Phase B: the dispatch seam + version infrastructure (no-op) Levi Neuwirth 2026-07-05 19:21:11 -0400
  • f4a2f1fdf0 Schema major 1 Phase A: ratify the v1 wire form + migration (spec only) Levi Neuwirth 2026-07-05 18:05:38 -0400
  • 9d28dd6615 Clear P12-I12: scope spacing_distortion to rhythmic columns (QMC 0.2.0) Levi Neuwirth 2026-07-05 13:57:10 -0400
  • bc9fb27d36 Clear P12-I11: casting-off widow-rebalance evens the stub last system Levi Neuwirth 2026-07-03 19:09:51 -0400
  • b9a9921d50 Phase 3 tranche 2: quality conformance companions, real metrics, multi-system click fix Levi Neuwirth 2026-07-03 10:39:05 -0400
  • 0316160395 Phase 3 tranche 1: casting-off, K1 schema-fill, value-restoring undo Levi Neuwirth 2026-07-02 21:55:26 -0400
  • 3e91a8302a Push 4: Binary Format companion, F1 benches, subquadratic reduction order Levi Neuwirth 2026-07-02 19:02:07 -0400
  • 92aaccf7e2 Pushes 1+3: fix the MUST-level violations, wire the types-only machinery Levi Neuwirth 2026-07-02 17:10:50 -0400
  • 80e3fed99c spec: Pass 12 tranche 1 — align spec text with ratified dispositions Levi Neuwirth 2026-07-02 17:04:14 -0400