From ca07c28c82ea244ed8b0e37109ebe43f4e6f67d6 Mon Sep 17 00:00:00 2001 From: Levi Neuwirth Date: Thu, 25 Jun 2026 22:21:32 -0400 Subject: [PATCH] Agent K M2e: catalog expansion + DECISIONS for the M2 broad-K0 groups MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The documentation milestone deferred through M2a–M2d. Documentation only — no Rust changes; the d93baac code gates (cargo test --workspace 533/0, conformance_suite scale 1) are unchanged. operation_catalog (v0.1.0 -> v0.2.0): - Chapter K0 gains full six-part schema sections for every M2-implemented op: ModifyEvent; Identified-Pitch Operations (insert/delete/modify, with the note<->rest equivalence stated normatively); Transpose; DeleteCrossCutting; ModifyCrossCutting; Structural Containers (region/staff-instance/voice set-union mint + empty-only delete); Score Settings (advisory metadata, structural metric grid with the staff-based + live-time-signature preconditions, advisory page break under the resolved-position LWW key). - Chapter K1 cleanup: the implemented groups now cross-reference their K0 sections rather than sit in "MUST reject"; the stale Phase-3 listing of SetMetadata / SetMetricGrid / page-break advisory (implemented in M2d) is removed, and the remaining slots are split to the genuinely-unimplemented finer metric ops (time signature / tempo segment) and non-break layout. - Intro, conformance-profile, and version strings updated for the expansion. - PDF rebuilt with xelatex (18 pp, no undefined refs); .xdv removed, only tex+pdf tracked. epiphany-ops/DECISIONS.md: new M2c (Group 3 — empty-only structural-container delete; live-child indices; staff-extent maintenance) and M2d (Group 4 — the per-op disciplines as review-hardened in d93baac: advisory metadata, metric grid with both preconditions, resolved-position break key) entries, and a note that the dedicated 10K-envelope reducer micro-bench (criterion 5) is Agent F's worklist F1 — the M2 value-typed ops are already exercised at 10K*scale by the conformance reduction-determinism / convergence gates. The unrelated Agent-I working tree is left untouched; this commit stages only spec/ + ops DECISIONS. Co-Authored-By: Claude Opus 4.8 --- crates/epiphany-ops/DECISIONS.md | 66 +++++++ spec/operation_catalog.pdf | Bin 76427 -> 92140 bytes spec/operation_catalog.tex | 313 ++++++++++++++++++++++++++----- 3 files changed, 337 insertions(+), 42 deletions(-) diff --git a/crates/epiphany-ops/DECISIONS.md b/crates/epiphany-ops/DECISIONS.md index c03e6da..76da5f1 100644 --- a/crates/epiphany-ops/DECISIONS.md +++ b/crates/epiphany-ops/DECISIONS.md @@ -142,6 +142,72 @@ This consistency is what lets `graph_edit_session` create cross-cutting structur and delete their endpoints, giving the Group-2 CRUD ops (and slur re-anchoring) real at-scale coverage under criterion 1 + `check_invariants`. +## M2c (Group 3) — structural containers: empty-only delete + +The structural-container CRUD ops (`CreateRegion`/`DeleteRegion`, +`CreateStaffInstance`/`DeleteStaffInstance`, `CreateVoice`/`DeleteVoice`) mint an +**empty** container (set-union creation) and tombstone an **empty** one. Two +scoping calls the user made fixed the shape: the slice covers *structural +container* CRUD (not the document root / canvas / global staves — those stay K1), +and delete semantics are **empty-only (precondition)**. + +- **A delete of a non-empty container is a precondition no-op + (`ContainerNotEmpty`), not a cascade.** The caller deletes contents first. + *Rejected alternative:* a cascading delete that tombstones the live children + transitively — it conflates two intents (remove this container vs. remove its + contents), and a cascade's re-anchoring interactions (a deleted voice's events + feeding the cross-cutting re-anchoring table) are a strictly larger design than + the slice needs. The empty-only gate is the conservative floor a cascade could + later build on. Catalog §Structural Containers (M2e) states this normatively. +- **Live-child sets are tracked in the reducer, not re-derived from the graph.** + `region_instances: RegionId → {StaffInstanceId}` and `instance_voices: + StaffInstanceId → {VoiceId}` (a voice's live events are read from + `voice_occupancy`) are maintained by the create/delete materializers and seeded + by `seed_from_graph`, so the empty-only precondition is decided identically in + the base-free `reduce()` and graph-aware `reduce_onto()`. +- **Graph creation maintains the region staff extent.** An empty staff-based + region with a freshly-created staff instance would violate `RegionExtents` + (the staff extent must list exactly the manifested staves) unless the extent is + updated as instances are added/removed; the create/delete materializers do so, + and `valuegen::region` carries a far-future time extent so a fresh region does + not overlap an existing one once a staff instance lands. + +## M2d (Group 4) — score settings: per-op discipline (review-hardened) + +The score-settings ops (`SetMetadata`, `SetMetricGrid`, `SetUserPageBreak`) are +all field overwrites, but they do **not** share one discipline; the M2d review +(closed in commit `d93baac`) pinned each to the discipline its catalog +classification names. Recorded here because the review changed code/tests. + +- **`SetMetadata` is an advisory LWW — no conflict.** The catalog + (§set-user-system-break "LWW advisory") and core_spec already classified + metadata this way; the first implementation wrongly raised a + `StructuralFieldCollision` on a concurrent differing write, which could make a + clean concurrent metadata edit turn `MaterializedState::is_clean()` false. It + now silently last-writer-wins in canonical order (graph singleton overwrite, + always `Applied`, no working slot). *Direction chosen:* fix the implementation + to match the already-correct spec, not the reverse. +- **`SetMetricGrid` is a structural overwrite with two preconditions.** It keys a + `StructuralFieldCollision` (field `metric_grid`) on concurrent differing grids + (kept), *and* (a) preconditions the region live **and staff-based** — a + FreeGraphic region has no metric-grid slot — and (b) rejects a grid whose meter + sequence names a time signature that is not a live object (the Chapter-5 + invariant forbids installing such a grid). Both checks read only base-free + indices. +- **`SetUserPageBreak` mirrors `SetUserSystemBreak` exactly, under the canonical + LWW key.** Both now (i) share the live-and-staff-based precondition via a + `staff_based_regions` index, so `reduce()` and `reduce_onto()` agree on + missing / tombstoned / FreeGraphic targets, and (ii) materialize the graph break + under the anchor's **resolved musical position** (`apply_break_lww` + + `resolved_anchor_position`): any existing anchor resolving to the same position + is dropped before the new one is added, so the graph break list stays in lockstep + with the resolved-position-keyed ledger map. The system-break fix is a sibling + parity change, not new M2d scope. +- **Performance.** The dedicated 10K-envelope reducer micro-bench (criterion 5) + is Agent F's worklist F1; the M2 value-typed ops are already exercised at + 10K·scale by the conformance suite's reduction-determinism and convergence + gates, which emit every M2 kind. No criterion bench is added under Agent K. + ## Pass 11 candidates (ambiguities for the spec, not resolved in code) ### P11-C1 — operation payload schemas are deferred; we carry identifiers + fingerprints diff --git a/spec/operation_catalog.pdf b/spec/operation_catalog.pdf index 573c0a4e88c0af39615b5df6a862278ea45a4bec..d8534a8ca7fc2b46230da83bb45cdde515b18b99 100644 GIT binary patch delta 66376 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 F{U7>?Q(gc7 delta 50725 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 diff --git a/spec/operation_catalog.tex b/spec/operation_catalog.tex index db0dabf..f3b8ea2 100644 --- a/spec/operation_catalog.tex +++ b/spec/operation_catalog.tex @@ -226,7 +226,7 @@ {\Large\scshape\color{epiphanyslate}Operation Catalog}\\[6pt] {\large\itshape\color{epiphanyslate}A companion to the Core Specification}\\[14pt] {\color{epiphanygold}\rule{3in}{0.8pt}}\\[24pt] - {\normalsize\color{epiphanyink}Version 0.1.0 --- Phase 2 (K0 representative primitives)}\\[4pt] + {\normalsize\color{epiphanyink}Version 0.2.0 --- Phase 2 (K0 representative + broad-K0 M2 groups)}\\[4pt] {\small\color{epiphanyslate}Normative for the operation kinds it defines} \vfill \end{titlepage} @@ -243,9 +243,12 @@ It fulfils the open question the core specification raises in its \sectionsc{Semantic Operations and Concurrent Reduction}, the \texttt{sec:semops:catalog} open question), which states that the catalog ``is normative once published; this specification is non-final until the catalog -is delivered.'' This v0.1 release delivers the catalog \emph{framework} and the -\textbf{K0 representative primitive set} --- the operation kinds the Phase~2 -visible slice and binary format actually exercise. The remaining K0 and the full +is delivered.'' This release delivers the catalog \emph{framework}, the +\textbf{K0 representative primitive set}, and the \textbf{M2 broad-K0 groups} +(the event/pitch leaf-field, cross-cutting CRUD, structural-container, and +score-settings operations the Phase~2 slice exercises) --- the operation kinds +the Phase~2 visible slice and binary format actually exercise, each fully +specified in Chapter~\ref{ch:k0}. The remaining items of the full $60$--$80$-primitive catalog are drafted as framework slots (Chapter~\ref{ch:k1}) and completed in Phase~3. @@ -282,11 +285,12 @@ specification revision. The core specification changes only when the \section{Conformance Profiles} A \textbf{Phase-2 profile} implementation \MUST{} implement every primitive in -Chapter~\ref{ch:k0} with the schema, reduction rule, conflict cases, undo -semantics, and re-anchoring behaviour defined there. The K1 primitives of +Chapter~\ref{ch:k0} --- the representative set and the M2 broad-K0 groups --- with +the schema, reduction rule, conflict cases, undo semantics, and re-anchoring +behaviour defined there. The remaining (Phase-3) framework slots of Chapter~\ref{ch:k1} are \emph{unavailable} under the Phase-2 profile: an -implementation \MUST{} reject (not silently ignore) an operation whose kind is a -K1 primitive it does not implement. +implementation \MUST{} reject (not silently ignore) an operation whose kind is one +of those slots it does not implement. % =========================================================================== \chapter{The Catalog Framework} @@ -476,6 +480,103 @@ under migration; the disposition (whether a richer v0 corpus, or a documented read-only fallback, is the long-term answer) is a Pass-12 question. \end{openquestion} +\section{ModifyEvent} +\label{sec:k0:modify-event} + +\textbf{Payload schema.} \texttt{ModifyEventOp \{ event: Event \}} --- the full +replacement \texttt{Event} value (v1). The identity (and therefore the LWW key) +is read from the value. + +\textbf{Canonical encoding.} The length-framed canonical bytes of \texttt{event}. + +\textbf{Reduction rule.} A last-writer-wins field overwrite keyed by event id. +Precondition: the event is live. The resolved value is the one carried by the +operation latest in canonical order; two causally ordered modifications overwrite +intentionally, and two \emph{concurrent} modifications with \emph{equal} value +reduce idempotently. Graph-aware reduction overwrites the event in place. A +modification that \emph{moves} the event (a different region-local position or +duration) is recorded in the bookkeeping but its placement change is \emph{not} +applied to the graph: re-sorting a voice on a placement change is a deferred +refinement, and an in-place move would break \texttt{VoiceEventsSortedNonOverlap} +(Chapter~5 invariant~3). A malformed (empty pitched) replacement is likewise +recorded but not materialised. + +\textbf{Conflict cases.} Two concurrent modifications of one event with +\emph{differing} values produce a \texttt{StructuralFieldCollision} on the field +\texttt{event}, recording the winner (later in canonical order) and the loser. + +\textbf{Undo semantics.} Undo restores the pre-operation event value under the +active policy. + +\textbf{Re-anchoring.} If the target event is tombstoned, the modification is a +no-op (\texttt{TargetTombstoned}/\texttt{TargetMissing}). + +\section{Identified-Pitch Operations} +\label{sec:k0:identified-pitch} + +\textbf{Payload schema.} \texttt{InsertIdentifiedPitchOp \{ event: EventId, +pitch: IdentifiedPitch \}} mints a pitch into a live event; +\texttt{DeleteIdentifiedPitchOp \{ pitch: PitchId \}} tombstones one; +\texttt{ModifyIdentifiedPitchOp \{ pitch: PitchId, value: Pitch \}} overwrites a +pitch's acoustic / scale-position value (distinct from \texttt{RespellPitch}, +which overwrites only the \emph{spelling}). + +\textbf{Canonical encoding.} Insert: \texttt{event}, then the length-framed +\texttt{pitch} value. Delete: \texttt{pitch}. Modify: \texttt{pitch}, then the +length-framed \texttt{value}. + +\textbf{Reduction rule.} The pitch-level analogues of the event-level mint, +delete, and field overwrite, inheriting their disciplines +(Sections~\ref{sec:k0:insert-event}, \ref{sec:k0:delete-event}, and this +chapter's field-overwrite treatment). \textbf{A note and a rest are the same slot +under pitch add/remove} (normative): deleting the \emph{only} pitch of a +single-pitch note degrades the event to a \texttt{Rest} of the same +id/voice/position/duration rather than leaving an empty pitched event (Chapter~5 +forbids the empty chord, \texttt{ArenaError::EmptyPitchedEvent}); inserting a +pitch into a rest is the dual, promoting it to a one-pitch note. This preserves +the delete-wins / mint disciplines and keeps the graph consistent with the +bookkeeping, which tombstones or mints the pitch object either way. + +\textbf{Conflict cases.} Insert and delete: none (mint is set-union; delete-wins +is idempotent). Modify: two concurrent differing writes of one pitch produce a +\texttt{StructuralFieldCollision} on the field \texttt{pitch}. + +\textbf{Undo semantics.} Insert undoes by tombstoning the minted pitch (re-rest +if it was the only pitch); delete undoes by re-introducing the tombstoned pitch +(re-note from a degraded rest); modify restores the prior value --- each under +the active policy. + +\textbf{Re-anchoring.} An operation whose target event or pitch is tombstoned is +a no-op; tombstoning a pitch runs the cross-cutting re-anchoring table over any +structure that referenced it (see DeleteEvent). + +\section{Transpose} +\label{sec:k0:transpose} + +\textbf{Payload schema.} \texttt{TransposeOp \{ targets: Vec, +chromatic\_steps: i32 \}}. Pitch identifiers are preserved; only acoustic content +changes. + +\textbf{Canonical encoding.} The canonically-ordered \texttt{targets} set, then +\texttt{chromatic\_steps} as a little-endian \texttt{i32}. + +\textbf{Reduction rule.} An order-dependent content overwrite. Each live target +pitch is shifted by \texttt{chromatic\_steps}; reduction is order-dependent in the +general case (interval composition need not commute), so the resolved value is +the composition in canonical reduction order. In this prototype +\texttt{chromatic\_steps} is a minimal CMN alteration shift that commutes except +at the alteration's \texttt{i8} saturation bound; rich interval algebra is +deferred (Chapter~4 tuning catalog; P12-K2). + +\textbf{Conflict cases.} None --- composition is deterministic in canonical order +(a deterministic repair, not a conflict). + +\textbf{Undo semantics.} Undo applies the negated interval to the same targets +under the active policy. + +\textbf{Re-anchoring.} Tombstoned targets are skipped (the transpose applies only +to live pitches). + \section{CreateCrossCutting} \label{sec:k0:create-cross-cutting} @@ -509,6 +610,57 @@ event-reference projection; a \texttt{Spanner}-create is therefore reported unmigratable (read-only) under M1, alongside the respell case of P12-K1. A faithful spanner migration joins when the projection carries the anchors --- M2. +\section{DeleteCrossCutting} +\label{sec:k0:delete-cross-cutting} + +\textbf{Payload schema.} \texttt{DeleteCrossCuttingOp \{ structure: TypedObjectId +\}} --- the structure named by the same key the set-union creation and the +re-anchoring table use; it \MUST{} be a cross-cutting kind +(\texttt{Tie}/\texttt{Slur}/\texttt{Beam}/\texttt{Spanner}). + +\textbf{Canonical encoding.} The canonical bytes of \texttt{structure}. + +\textbf{Reduction rule.} Delete-wins: the structure is tombstoned (its identifier +retained). A second delete of the same structure is idempotent; deleting a +missing or non-cross-cutting id is a no-op precondition failure. Graph-aware +reduction removes the structure from the score. + +\textbf{Conflict cases.} None (delete-wins is idempotent). + +\textbf{Undo semantics.} Undo re-introduces the tombstoned structure under the +active policy. + +\textbf{Re-anchoring.} The deletion is direct (the structure is the target, not a +referenced endpoint); it does not itself trigger the endpoint re-anchoring table. + +\section{ModifyCrossCutting} +\label{sec:k0:modify-cross-cutting} + +\textbf{Payload schema.} \texttt{ModifyCrossCuttingOp \{ structure: +CrossCuttingValue \}} --- the full replacement value (v1). The replacement keeps +the structure's identity but may change its endpoints and per-kind fields; the +LWW key is the structure's \texttt{CrossCuttingValue::id}. + +\textbf{Canonical encoding.} The discriminant and length-framed bytes of the +\texttt{CrossCuttingValue} (as for CreateCrossCutting). + +\textbf{Reduction rule.} A last-writer-wins field overwrite keyed by structure +id. Precondition: the structure is live. The reduction re-derives the structure's +endpoints from the new value, so a later re-anchoring sees them. A malformed +replacement is a precondition no-op --- in particular a beam whose membership +falls below the two-member minimum is refused rather than materialised. +Graph-aware reduction overwrites the structure in place. + +\textbf{Conflict cases.} Two concurrent differing modifications of one structure +produce a \texttt{StructuralFieldCollision} on the field \texttt{cross\_cutting}. + +\textbf{Undo semantics.} Undo restores the prior structure value under the active +policy. + +\textbf{Re-anchoring.} If the target structure is tombstoned, the modification is +a no-op; re-deriving the endpoints lets a subsequent endpoint tombstone re-anchor +the structure through the standard table (see DeleteEvent). + \section{ChangeRegionTimeModel} \label{sec:k0:change-region-time-model} @@ -542,6 +694,44 @@ active policy. the catalog's to design when graph-aware migration is the only reduction path. \end{openquestion} +\section{Structural Containers} +\label{sec:k0:structural-containers} + +\textbf{Payload schema.} Three create/delete pairs over the region hierarchy: +\texttt{CreateRegionOp \{ region: Region \}} / +\texttt{DeleteRegionOp \{ region: RegionId \}}; +\texttt{CreateStaffInstanceOp \{ region: RegionId, instance: StaffInstance \}} / +\texttt{DeleteStaffInstanceOp \{ staff\_instance: StaffInstanceId \}}; +\texttt{CreateVoiceOp \{ staff\_instance: StaffInstanceId, voice: Voice \}} / +\texttt{DeleteVoiceOp \{ voice: VoiceId \}}. Each create carries the full +container value (v1); the reduction preconditions it carries no children (an +empty container). + +\textbf{Canonical encoding.} Create: the parent id (where the schema names one), +then the length-framed canonical bytes of the container value. Delete: the +container id. + +\textbf{Reduction rule.} Set-union creation of an \emph{empty} container, and an +\emph{empty-only} delete-wins tombstone. A create mints the container live if its +id is fresh and (for staff instance and voice) its parent is live; it +preconditions the carried value to have no live children, so contents are added +by subsequent operations. A delete is a delete-wins tombstone, but a +\emph{precondition no-op} (\texttt{ContainerNotEmpty}) unless the container has no +live children --- the caller deletes contents first. Graph-aware reduction adds +or removes the container and maintains the region's staff extent so +\texttt{RegionExtents} stays satisfied. + +\textbf{Conflict cases.} None at reduction time: creation is set-union (a repeat +create is idempotent), and the empty-only delete is a deterministic precondition +gate, not a conflict. + +\textbf{Undo semantics.} Undo of a create tombstones the minted container; undo +of a delete re-introduces it. \texttt{StrictInverse} conflicts if the target was +concurrently mutated; the policy treatment is as for InsertEvent. + +\textbf{Re-anchoring.} Not applicable (the containers are minted/tombstoned by id; +the empty-only precondition means a delete never strands live children). + \section{SetUserSystemBreak} \label{sec:k0:set-user-system-break} @@ -564,6 +754,48 @@ system-break list. \textbf{Re-anchoring.} Not applicable in the prototype (the advisory is keyed by resolved position; a tombstoned anchor target degrades to the region origin). +\section{Score Settings} +\label{sec:k0:score-settings} + +\textbf{Payload schema.} Three score-level field overwrites: +\texttt{SetMetadataOp \{ metadata: ScoreMetadata \}} overwrites the score +singleton; \texttt{SetMetricGridOp \{ region: RegionId, grid: Option +\}} overwrites (or clears) a region's default metric grid; +\texttt{SetUserPageBreakOp \{ region: RegionId, anchor: TimeAnchor, present: bool +\}} is the page-break sibling of SetUserSystemBreak. + +\textbf{Canonical encoding.} Metadata: the length-framed \texttt{metadata} value. +Metric grid: \texttt{region}, then an \texttt{Option} discriminant and (when +present) the length-framed \texttt{grid} value. Page break: \texttt{region}, the +length-framed \texttt{anchor} value, then the boolean. + +\textbf{Reduction rule.} Three field overwrites differing only in discipline. +\emph{SetMetadata} is an \textbf{advisory} last-writer-wins: the latest write in +canonical order silently wins and the operation always applies --- no working +state and no conflict (the same discipline as SetUserSystemBreak, on the score +singleton). \emph{SetMetricGrid} is a \textbf{structural} field overwrite keyed +by region: precondition the region is live and staff-based (a FreeGraphic region +has no metric-grid slot --- the op is a no-op there), and reject a grid whose +meter sequence names a time signature that is not live (the Chapter~5 invariant +forbids installing such a grid). \emph{SetUserPageBreak} is a canonical LWW +advisory keyed by the anchor's resolved musical position, with the same +staff-based precondition. Graph-aware reduction overwrites the metadata singleton, +sets the region's default metric grid, or adds/removes the page-break anchor +under its resolved-position key (so two anchors resolving to one position occupy a +single slot). + +\textbf{Conflict cases.} SetMetadata and SetUserPageBreak: none (advisory LWW). +SetMetricGrid: two concurrent differing grids for one region produce a +\texttt{StructuralFieldCollision} on the field \texttt{metric\_grid}. + +\textbf{Undo semantics.} Undo restores the prior metadata, the prior region grid, +or the prior \texttt{(region, resolved-position)} break preference, under the +active policy. + +\textbf{Re-anchoring.} The advisory breaks degrade as for SetUserSystemBreak; the +metric grid and metadata are keyed by region / singleton and do not re-anchor (a +deleted region's settings are no-ops --- \texttt{TargetMissing}). + \section{DeclareTransaction} \label{sec:k0:declare-transaction} @@ -652,35 +884,33 @@ plus a non-vacuity guard. \chapter{K1 --- Framework Slots (Phase 3)} \label{ch:k1} -This chapter drafted the remaining catalogue items as framework slots. Since the -Phase-2 \textbf{M2} expansion (the broad-K0 groups in \texttt{epiphany-ops}), -several have been \emph{implemented} and are available under the Phase-2 profile; -their per-primitive \S{}schema joins Chapter~\ref{ch:k0} with the M2e catalogue -expansion. The genuinely Phase-3 slots that remain \textbf{unavailable} are listed -second: an implementation \MUST{} reject an operation of one of \emph{those} kinds -(and \MUST{} \emph{not} reject the implemented kinds below). Each remaining slot is -a schema-fill against the template of Chapter~\ref{ch:framework}; adding one is not +This chapter drafted the remaining catalogue items as framework slots. The +Phase-2 \textbf{M2} expansion (the broad-K0 groups in \texttt{epiphany-ops}) +implemented four groups of them; with the \textbf{M2e} catalogue expansion their +full per-primitive schemas now appear in Chapter~\ref{ch:k0}, so they are +\emph{normative under the Phase-2 profile} and an implementation \MUST{} +\emph{not} reject them. They are cross-referenced first. The genuinely Phase-3 +slots that remain \textbf{unavailable} are listed second: an implementation +\MUST{} reject an operation of one of \emph{those} kinds. Each remaining slot is a +schema-fill against the template of Chapter~\ref{ch:framework}; adding one is not a fresh design. -\section*{Implemented since M2 (available under the Phase-2 profile)} +\section*{Implemented since M2 (now in Chapter~\ref{ch:k0})} \begin{description} - \item[Modify event; transpose] - Field overwrite on an event's non-identity fields, and an order-dependent - chromatic transpose (M2 Group~1). Discipline: last-writer-wins with - structural-field-collision (Section~\ref{sec:k0:respell-pitch}). - \item[Insert / delete / modify identified pitch] - Pitch-level mint, tombstone, and field overwrite within an event (M2 - Group~1). Disciplines as for the event-level analogues. - \item[Delete / update tie / slur / beam / spanner] - Cross-cutting tombstone and field overwrite (M2 Group~2). Disciplines: - delete-wins with re-anchoring (Section~\ref{sec:k0:delete-event}) and field - overwrite. + \item[Modify event; identified-pitch operations; transpose] + M2 Group~1 --- Sections~\ref{sec:k0:modify-event}, + \ref{sec:k0:identified-pitch}, and \ref{sec:k0:transpose}. + \item[Delete / modify cross-cutting] + M2 Group~2 --- Sections~\ref{sec:k0:delete-cross-cutting} and + \ref{sec:k0:modify-cross-cutting} (creation is + Section~\ref{sec:k0:create-cross-cutting}). \item[Create / delete region / staff instance / voice] - Structural container mint and \emph{empty-only} delete (M2 Group~3). - Disciplines: set-union creation (Section~\ref{sec:k0:create-cross-cutting}) - and a delete-wins tombstone that is a precondition no-op unless the container - has no live children. + M2 Group~3 --- Section~\ref{sec:k0:structural-containers} (set-union creation + and the empty-only delete). + \item[Set metadata / metric grid / user page break] + M2 Group~4 --- Section~\ref{sec:k0:score-settings} (advisory metadata, + structural metric grid, advisory page break). \end{description} \section*{Remaining framework slots (Phase 3 --- unavailable, MUST reject)} @@ -689,16 +919,15 @@ a fresh design. \item[Create score / canvas / staff] The remaining structural mints (the document root, the canvas, and global staves) the Phase-2 slice does not exercise. Discipline: set-union creation. - \item[Set metadata (title / composer / lyricist / copyright)] - Field overwrite on score metadata. Discipline: LWW advisory - (Section~\ref{sec:k0:set-user-system-break}). - \item[Set metric grid / time signature / tempo segment] - Structural field overwrite on a region's metric model. Discipline: - last-writer-wins, with a structural-field-collision on concurrent differing - grids. - \item[Set layout / system- and page-break advisory] - The page/layout advisory companion to - Section~\ref{sec:k0:set-user-system-break}. + \item[Set time signature / tempo segment] + The finer-grained metric-model overwrites beneath the whole-grid + \texttt{SetMetricGrid} (Section~\ref{sec:k0:score-settings}): a single meter + change or tempo segment rather than the region's entire grid. Discipline: + last-writer-wins structural overwrite. + \item[Set layout] + The non-break layout advisories (the page/system-break advisories themselves + are implemented --- Sections~\ref{sec:k0:set-user-system-break} and + \ref{sec:k0:score-settings}). Discipline: LWW advisory. \end{description} \begin{nongoal}