129 KiB
Evidence — P13-S26 execution
Not part of the candidate's normative content. Touch row 8 of
spec/CONTRACT_P13S26_INVARIANT10_SURFACE.md. This file is the destination
gates 6 and 7 require: every mutation transcript and boundary-gate output,
recorded verbatim rather than summarised.
Contract ratified at 01c621d; amendment 1 at f9170b0; amendment 2 at
86bf7c6. Executed 2026-08-11.
§1. Structural baseline
After pins 3, 4, 5, 6, 7, 8 and 10, before any mutation:
suites=43 passed=1586 failed=0 ignored=0
The pre-rung baseline was 42 suites / 1583. This rung adds one suite
(invariant_ten_surface) carrying three tests. Pin 8 narrowed and renamed
t12; it was not deleted, so no test was removed.
Pin 4's count movement was measured, never predicted. First run after the requirement was added:
assertion `left == right` failed
left: 286
right: 285
CORE_REQUIREMENT_COUNT 214 → 215; SUITE_REQUIREMENT_COUNT 285 → 286;
SUITE_LABEL_COUNT 285 → 286.
§2. Expected-versus-observed matrix
Every mutation ran against the full workspace with --no-fail-fast, was
restored by writing back the captured original bytes (never git), and the
baseline was re-verified. §3's "Must fail" cells are exhaustive; a mismatch is a
finding.
| M | # | Expected | Observed | Verdict |
|---|---|---|---|---|
| M1-A | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M1-B | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M1-C | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M1-D | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M1-E | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M1-F | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M1b | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M1c | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M1d | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M2 | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M7 | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M8 | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M9 | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M14 | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M18 | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M19 | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M20 | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M21 | 1 | specification_item_ten_names_exactly_the_derived_surface |
specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M4-A | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M4-B | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M4-C | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M4-D | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M4-E | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M4-F | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M4b | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M4c | 2 | implementation_doc_names_exactly_the_derived_surface, invariants::g3a_tests::t12_invariant_10_doc_block_slices_and_is_non_empty |
implementation_doc_names_exactly_the_derived_surface, invariants::g3a_tests::t12_invariant_10_doc_block_slices_and_is_non_empty |
MATCH |
| M4d | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M4e | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M10 | 1 | implementation_doc_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface |
MATCH |
| M5 | 5 | aleatoric_reference_locality_states_both_referents_and_locality, every_requirement_block_has_one_label, every_requirement_citation_is_defined, requirement_labels_are_unique_across_the_suite, requirement_labels_follow_the_grammar |
aleatoric_reference_locality_states_both_referents_and_locality, every_requirement_block_has_one_label, every_requirement_citation_is_defined, requirement_labels_are_unique_across_the_suite, requirement_labels_follow_the_grammar |
MATCH |
| M6 | 3 | aleatoric_reference_locality_states_both_referents_and_locality, every_requirement_citation_is_defined, requirement_label_areas_match_their_chapters |
aleatoric_reference_locality_states_both_referents_and_locality, every_requirement_citation_is_defined, requirement_label_areas_match_their_chapters |
MATCH |
| M11 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
aleatoric_reference_locality_states_both_referents_and_locality |
MATCH |
| M12 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
aleatoric_reference_locality_states_both_referents_and_locality |
MATCH |
| M13 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
aleatoric_reference_locality_states_both_referents_and_locality |
MATCH |
| M16 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
aleatoric_reference_locality_states_both_referents_and_locality |
MATCH |
| M15 | 2 | implementation_doc_names_exactly_the_derived_surface, specification_item_ten_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface, specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M17 | 2 | implementation_doc_names_exactly_the_derived_surface, specification_item_ten_names_exactly_the_derived_surface |
implementation_doc_names_exactly_the_derived_surface, specification_item_ten_names_exactly_the_derived_surface |
MATCH |
| M3 | — | passing control: M1-B stops failing | no failures; 1586 passed, 0 failed | MATCH |
38 mutations, 38 matches. No listed test passed unexpectedly; no unlisted test failed.
§3. Mutation transcripts
Each entry carries the complete --no-fail-fast failure set and the failing
assertion verbatim, untruncated.
M1-A
Mutation. delete RepeatStructure.voltas from item 10's nested itemize (group A)
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1834491) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M1-B
Mutation. delete StaffInstance.instrument_override (group B)
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1836196) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M1-C
Mutation. delete StaffBasedContent.default_metric_grid (group C)
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1837920) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M1-D
Mutation. delete NotatedComponent.tuplet (group D)
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1839618) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M1-E
Mutation. delete IndeterminacyHints.alternatives (group E)
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1844537) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M1-F
Mutation. delete TempoSegment.end (group F)
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1846695) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M1b
Mutation. add a token not in INVARIANT_TEN_SURFACE
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1848415) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("Bogus.token", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M1c
Mutation. change one target to a different vocabulary term (Slur.start_event → declared staff)
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1850117) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "declared staff"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M1d
Mutation. change one target to a term outside pin 1a's vocabulary
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1852414) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:187:13:
core_spec.tex item 10: target for Slur.start_event uses "nonexistent target", outside pin 1a's vocabulary. Ordering cannot catch this -- a bad term sorts fine
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M2
Mutation. restore item 10 to its pre-rung sentence in full
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1854242) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:229:5:
assertion `left == right` failed: item 10's opening sentence must occur exactly once inside req:graph:score-graph-invariants; found 0
left: 0
right: 1
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M7
Mutation. move one row into a second nested itemize inside item 10
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1855925) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M8
Mutation. narrow test 1's slice so it drops the final nested \item
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1857779) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:267:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M9
Mutation. duplicate one \item inside the nested itemize
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1859584) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:174:5:
core_spec.tex item 10 lists ["Marker.anchor"] more than once; set comparison cannot see a duplicate, so it is checked here
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M14
Mutation. permute a complete existing target (set unchanged, order wrong)
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1861255) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:181:9:
assertion `left == right` failed: core_spec.tex item 10: target for AnalyticalAnnotation.anchor is not in pin 1a's canonical order
left: "live event, extant region, anchor target"
right: "anchor target, extant region, live event"
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M18
Mutation. add \label {tmp:m18} — spaced, non-req: — inside item 10's outer slice
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1862920) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:244:5:
item 10 must contain no \label: pin 3 adds no label and no requirement block.
Slice was:
\item Except where the re-anchoring rules of Chapter~\ref{ch:semops} explicitly permit transient dangling states during edits, every graph reference resolves to an extant object. \label {tmp:m18} Every cross-cutting structure's references resolve to extant objects in the graph, except where explicit re-anchoring rules permit transient dangling states during edits (see Chapter~\ref{ch:semops}). Tempo-map conditions that are not reference resolution --- segment ordering and non-overlap --- are governed by Requirement~\ref{req:time:tempo-segment-order}, not by this invariant. The complete reference surface is: \begin{itemize} \item \texttt{Slur.start\_event} --- live event. \item \texttt{Slur.end\_event} --- live event. \item \texttt{Tie.start\_event} --- live event. \item \texttt{Tie.end\_event} --- live event. \item \texttt{Beam.events} --- live event. \item \texttt{SubBeam.events} --- live event. \item \texttt{Tuplet.members} --- live event. \item \texttt{Tuplet.parent} --- extant tuplet. \item \texttt{Spanner.staves} --- declared staff. \item \texttt{Spanner.start} --- anchor target. \item \texttt{Spanner.end} --- anchor target. \item \texttt{Marker.anchor} --- anchor target. \item \texttt{RepeatStructure.start} --- anchor target. \item \texttt{RepeatStructure.end} --- anchor target. \item \texttt{RepeatStructure.kind} --- anchor target. \item \texttt{RepeatStructure.voltas} --- anchor target. \item \texttt{ChordSymbol.anchor} --- anchor target. \item \texttt{AnalyticalAnnotation.anchor} --- anchor target, extant region, live event. \item \texttt{AnalyticalAnnotation.layer} --- declared analysis layer. \item \texttt{Comment.anchor} --- anchor target, extant region, live event. \item \texttt{GraphicGesture.objects} --- stored graphic object. \item \texttt{GraphicGesture.anchoring} --- anchor target, declared staff, live event. \item \texttt{LyricLine.events} --- live event. \item \texttt{Staff.instrument} --- declared instrument. \item \texttt{StaffInstance.instrument\_override} --- declared instrument. \item \texttt{Staff.group} --- declared staff group. \item \texttt{StaffGroup.members} --- declared staff. \item \texttt{PartDefinition.staves} --- declared staff. \item \texttt{ViewDefinition.active\_layers} --- declared analysis layer. \item \texttt{MetricTimeModel.meters} --- declared time signature. \item \texttt{StaffBasedContent.default\_metric\_grid} --- declared time signature. \item \texttt{Measure.time\_signature} --- declared time signature. \item \texttt{StaffInstance.local\_metric\_grid} --- declared time signature. \item \texttt{NotatedComponent.tuplet} --- extant tuplet. \item \texttt{IndeterminacyHints.alternatives} --- live event. \item \texttt{TrajectoryEvent.start} --- live pitch. \item \texttt{TrajectoryEvent.end} --- live pitch. \item \texttt{GraphicEvent.graphics} --- stored graphic object. \item \texttt{CueEvent.source} --- live event. \item \texttt{TempoSegment.start} --- anchor target. \item \texttt{TempoSegment.end} --- anchor target. \end{itemize}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M19
Mutation. truncate the real opening and place one complete anchor after the nested list
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1864612) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:229:5:
assertion `left == right` failed: item 10's opening sentence must occur exactly once inside req:graph:score-graph-invariants; found 0
left: 0
right: 1
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M20
Mutation. add a spaced, additive, label-free \begin {requirement} inside item 10
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1866299) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:249:5:
item 10 must contain no requirement block.
Slice was:
\item Except where the re-anchoring rules of Chapter~\ref{ch:semops} explicitly permit transient dangling states during edits, every graph reference resolves to an extant object. \begin {requirement} Probe. \end {requirement} Every cross-cutting structure's references resolve to extant objects in the graph, except where explicit re-anchoring rules permit transient dangling states during edits (see Chapter~\ref{ch:semops}). Tempo-map conditions that are not reference resolution --- segment ordering and non-overlap --- are governed by Requirement~\ref{req:time:tempo-segment-order}, not by this invariant. The complete reference surface is: \begin{itemize} \item \texttt{Slur.start\_event} --- live event. \item \texttt{Slur.end\_event} --- live event. \item \texttt{Tie.start\_event} --- live event. \item \texttt{Tie.end\_event} --- live event. \item \texttt{Beam.events} --- live event. \item \texttt{SubBeam.events} --- live event. \item \texttt{Tuplet.members} --- live event. \item \texttt{Tuplet.parent} --- extant tuplet. \item \texttt{Spanner.staves} --- declared staff. \item \texttt{Spanner.start} --- anchor target. \item \texttt{Spanner.end} --- anchor target. \item \texttt{Marker.anchor} --- anchor target. \item \texttt{RepeatStructure.start} --- anchor target. \item \texttt{RepeatStructure.end} --- anchor target. \item \texttt{RepeatStructure.kind} --- anchor target. \item \texttt{RepeatStructure.voltas} --- anchor target. \item \texttt{ChordSymbol.anchor} --- anchor target. \item \texttt{AnalyticalAnnotation.anchor} --- anchor target, extant region, live event. \item \texttt{AnalyticalAnnotation.layer} --- declared analysis layer. \item \texttt{Comment.anchor} --- anchor target, extant region, live event. \item \texttt{GraphicGesture.objects} --- stored graphic object. \item \texttt{GraphicGesture.anchoring} --- anchor target, declared staff, live event. \item \texttt{LyricLine.events} --- live event. \item \texttt{Staff.instrument} --- declared instrument. \item \texttt{StaffInstance.instrument\_override} --- declared instrument. \item \texttt{Staff.group} --- declared staff group. \item \texttt{StaffGroup.members} --- declared staff. \item \texttt{PartDefinition.staves} --- declared staff. \item \texttt{ViewDefinition.active\_layers} --- declared analysis layer. \item \texttt{MetricTimeModel.meters} --- declared time signature. \item \texttt{StaffBasedContent.default\_metric\_grid} --- declared time signature. \item \texttt{Measure.time\_signature} --- declared time signature. \item \texttt{StaffInstance.local\_metric\_grid} --- declared time signature. \item \texttt{NotatedComponent.tuplet} --- extant tuplet. \item \texttt{IndeterminacyHints.alternatives} --- live event. \item \texttt{TrajectoryEvent.start} --- live pitch. \item \texttt{TrajectoryEvent.end} --- live pitch. \item \texttt{GraphicEvent.graphics} --- stored graphic object. \item \texttt{CueEvent.source} --- live event. \item \texttt{TempoSegment.start} --- anchor target. \item \texttt{TempoSegment.end} --- anchor target. \end{itemize}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M21
Mutation. duplicate the complete anchor elsewhere inside req:graph:score-graph-invariants
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1867965) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:229:5:
assertion `left == right` failed: item 10's opening sentence must occur exactly once inside req:graph:score-graph-invariants; found 2
left: 2
right: 1
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4-A
Mutation. delete RepeatStructure.voltas from the /// 10. block
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1874775) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:382:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4-B
Mutation. delete StaffInstance.instrument_override
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1881551) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:382:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4-C
Mutation. delete StaffBasedContent.default_metric_grid
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1888357) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:382:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4-D
Mutation. delete NotatedComponent.tuplet
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1895125) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:382:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4-E
Mutation. delete IndeterminacyHints.alternatives
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1901908) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:382:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4-F
Mutation. delete TempoSegment.end
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1908718) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:382:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4b
Mutation. add a token not in the inventory to the doc block
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1915525) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:382:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("Bogus.token", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4c
Mutation. destroy the /// 10. block entirely
Complete --no-fail-fast failure set (full workspace, 1584 passed / 2 failed):
implementation_doc_names_exactly_the_derived_surface
invariants::g3a_tests::t12_invariant_10_doc_block_slices_and_is_non_empty
Failing assertion, verbatim:
---- invariants::g3a_tests::t12_invariant_10_doc_block_slices_and_is_non_empty stdout ----
thread 'invariants::g3a_tests::t12_invariant_10_doc_block_slices_and_is_non_empty' (1921013) panicked at crates/epiphany-core/src/invariants.rs:4646:14:
invariant 10's doc comment is present
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1922314) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:382:5:
assertion `left == right` failed
left: {}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4d
Mutation. change one doc-block target to a different vocabulary term
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1929083) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:382:5:
assertion `left == right` failed
left: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "declared staff"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
right: {("AnalyticalAnnotation.anchor", "anchor target, extant region, live event"), ("AnalyticalAnnotation.layer", "declared analysis layer"), ("Beam.events", "live event"), ("ChordSymbol.anchor", "anchor target"), ("Comment.anchor", "anchor target, extant region, live event"), ("CueEvent.source", "live event"), ("GraphicEvent.graphics", "stored graphic object"), ("GraphicGesture.anchoring", "anchor target, declared staff, live event"), ("GraphicGesture.objects", "stored graphic object"), ("IndeterminacyHints.alternatives", "live event"), ("LyricLine.events", "live event"), ("Marker.anchor", "anchor target"), ("Measure.time_signature", "declared time signature"), ("MetricTimeModel.meters", "declared time signature"), ("NotatedComponent.tuplet", "extant tuplet"), ("PartDefinition.staves", "declared staff"), ("RepeatStructure.end", "anchor target"), ("RepeatStructure.kind", "anchor target"), ("RepeatStructure.start", "anchor target"), ("RepeatStructure.voltas", "anchor target"), ("Slur.end_event", "live event"), ("Slur.start_event", "live event"), ("Spanner.end", "anchor target"), ("Spanner.start", "anchor target"), ("Spanner.staves", "declared staff"), ("Staff.group", "declared staff group"), ("Staff.instrument", "declared instrument"), ("StaffBasedContent.default_metric_grid", "declared time signature"), ("StaffGroup.members", "declared staff"), ("StaffInstance.instrument_override", "declared instrument"), ("StaffInstance.local_metric_grid", "declared time signature"), ("SubBeam.events", "live event"), ("TempoSegment.end", "anchor target"), ("TempoSegment.start", "anchor target"), ("Tie.end_event", "live event"), ("Tie.start_event", "live event"), ("TrajectoryEvent.end", "live pitch"), ("TrajectoryEvent.start", "live pitch"), ("Tuplet.members", "live event"), ("Tuplet.parent", "extant tuplet"), ("ViewDefinition.active_layers", "declared analysis layer")}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M4e
Mutation. change one doc-block target to a term outside the vocabulary
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1935871) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:187:13:
invariants.rs invariant-10 doc block: target for Slur.start_event uses "nonexistent target", outside pin 1a's vocabulary. Ordering cannot catch this -- a bad term sorts fine
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M10
Mutation. duplicate one line in the doc block
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
implementation_doc_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1942674) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:174:5:
invariants.rs invariant-10 doc block lists ["Marker.anchor"] more than once; set comparison cannot see a duplicate, so it is checked here
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M5
Mutation. delete pin 4's requirement from core_spec.tex
Complete --no-fail-fast failure set (full workspace, 1581 passed / 5 failed):
aleatoric_reference_locality_states_both_referents_and_locality
every_requirement_block_has_one_label
every_requirement_citation_is_defined
requirement_labels_are_unique_across_the_suite
requirement_labels_follow_the_grammar
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (1953135) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:395:10:
core_spec.tex declares req:time:aleatoric-reference-locality
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
---- every_requirement_block_has_one_label stdout ----
thread 'every_requirement_block_has_one_label' (1953158) panicked at crates/epiphany-testkit/tests/requirement_labels.rs:264:5:
assertion `left == right` failed
left: 214
right: 215
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
---- requirement_labels_follow_the_grammar stdout ----
thread 'requirement_labels_follow_the_grammar' (1953163) panicked at crates/epiphany-testkit/tests/requirement_labels.rs:299:5:
assertion `left == right` failed
left: 285
right: 286
---- every_requirement_citation_is_defined stdout ----
thread 'every_requirement_citation_is_defined' (1953159) panicked at crates/epiphany-testkit/tests/requirement_labels.rs:459:5:
assertion `left == right` failed
left: 285
right: 286
---- requirement_labels_are_unique_across_the_suite stdout ----
thread 'requirement_labels_are_unique_across_the_suite' (1953162) panicked at crates/epiphany-testkit/tests/requirement_labels.rs:369:5:
assertion `left == right` failed
left: 285
right: 286
M6
Mutation. relabel pin 4's requirement into the req:graph: area
Complete --no-fail-fast failure set (full workspace, 1583 passed / 3 failed):
aleatoric_reference_locality_states_both_referents_and_locality
every_requirement_citation_is_defined
requirement_label_areas_match_their_chapters
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (1954840) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:395:10:
core_spec.tex declares req:time:aleatoric-reference-locality
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
---- requirement_label_areas_match_their_chapters stdout ----
thread 'requirement_label_areas_match_their_chapters' (1954867) panicked at crates/epiphany-testkit/tests/requirement_labels.rs:345:5:
core_spec.tex:2761 chapter "Time and Duration" requires area "time", found req:graph:aleatoric-reference-locality
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
---- every_requirement_citation_is_defined stdout ----
thread 'every_requirement_citation_is_defined' (1954865) panicked at crates/epiphany-testkit/tests/requirement_labels.rs:500:5:
req:time:aleatoric-reference-locality: crates/epiphany-core/src/invariants.rs, crates/epiphany-testkit/tests/invariant_ten_surface.rs, crates/epiphany-testkit/tests/requirement_labels.rs, spec/CONTRACT_P13S26_INVARIANT10_SURFACE.md, spec/core_spec.tex
M11
Mutation. replace “same region” with “any region”
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (1956581) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:406:9:
req:time:aleatoric-reference-locality must state "same region"; block was:
\begin{requirement} \label{req:time:aleatoric-reference-locality} Every event referenced by an aleatoric region's \texttt{ordering} DAG, and every event used as a key in its \texttt{bounds} map, \MUST{} be an event of any region. Naming an event that does not exist is a dangling reference, governed by graph invariant~10; naming an event that exists in a \emph{different} region is a distinct defect, and this requirement is what forbids it. Neither the ordering DAG nor the bounds map may reach outside the region whose time model declares them.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M12
Mutation. delete the ordering referent from pin 4's requirement
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (1959790) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:406:9:
req:time:aleatoric-reference-locality must state "ordering"; block was:
\begin{requirement} \label{req:time:aleatoric-reference-locality} Every event used as a key in its \texttt{bounds} map, \MUST{} be an event of that same region. Naming an event that does not exist is a dangling reference, governed by graph invariant~10; naming an event that exists in a \emph{different} region is a distinct defect, and this requirement is what forbids it. The bounds map may not reach outside the region whose time model declares them.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M13
Mutation. delete the bounds referent from pin 4's requirement
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (1962090) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:406:9:
req:time:aleatoric-reference-locality must state "bounds"; block was:
\begin{requirement} \label{req:time:aleatoric-reference-locality} Every event referenced by an aleatoric region's \texttt{ordering} DAG \MUST{} be an event of that same region. Naming an event that does not exist is a dangling reference, governed by graph invariant~10; naming an event that exists in a \emph{different} region is a distinct defect, and this requirement is what forbids it. The ordering DAG may not reach outside the region whose time model declares them.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M16
Mutation. weaken \MUST{} to \SHOULD{}
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (1964856) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:406:9:
req:time:aleatoric-reference-locality must state "\\MUST{}"; block was:
\begin{requirement} \label{req:time:aleatoric-reference-locality} Every event referenced by an aleatoric region's \texttt{ordering} DAG, and every event used as a key in its \texttt{bounds} map, \SHOULD{} be an event of that same region. Naming an event that does not exist is a dangling reference, governed by graph invariant~10; naming an event that exists in a \emph{different} region is a distinct defect, and this requirement is what forbids it. Neither the ordering DAG nor the bounds map may reach outside the region whose time model declares them.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M15
Mutation. duplicate one entry inside INVARIANT_TEN_SURFACE
Complete --no-fail-fast failure set (full workspace, 1584 passed / 2 failed):
implementation_doc_names_exactly_the_derived_surface
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1949443) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:136:5:
INVARIANT_TEN_SURFACE repeats ["Marker.anchor"]; a repeat collapses silently into the expected set and would let both documents drop a class
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1949444) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:136:5:
INVARIANT_TEN_SURFACE repeats ["Marker.anchor"]; a repeat collapses silently into the expected set and would let both documents drop a class
M17
Mutation. put an out-of-vocabulary target on one INVARIANT_TEN_SURFACE entry
Complete --no-fail-fast failure set (full workspace, 1584 passed / 2 failed):
implementation_doc_names_exactly_the_derived_surface
specification_item_ten_names_exactly_the_derived_surface
Failing assertion, verbatim:
---- implementation_doc_names_exactly_the_derived_surface stdout ----
thread 'implementation_doc_names_exactly_the_derived_surface' (1951281) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:143:13:
INVARIANT_TEN_SURFACE target "nonexistent target" for Marker.anchor uses "nonexistent target", which is outside pin 1a's vocabulary
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
---- specification_item_ten_names_exactly_the_derived_surface stdout ----
thread 'specification_item_ten_names_exactly_the_derived_surface' (1951282) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:143:13:
INVARIANT_TEN_SURFACE target "nonexistent target" for Marker.anchor uses "nonexistent target", which is outside pin 1a's vocabulary
§4. M3 — the passing control
The rung's only mutation whose required outcome is success.
Applied together: test 1's comparison weakened from assert_eq!(actual, expected) to assert!(actual.is_subset(&expected)) — that direction
specifically, since expected.is_subset(&actual) still fails after a
deletion — and M1-B (delete StaffInstance.instrument_override from item
10's nested list).
observed failures: none
suites=43 passed=1586 failed=0 ignored=0
M1-B stopped failing. Equality is load-bearing: without this control, nothing distinguishes an exact inventory from a spot-check. There is no assertion diagnostic to quote, and that absence is the evidence.
§5. Gate 6 — pin 9's boundary check, verbatim
git diff --cached -U0 -- crates/epiphany-core/src/invariants.rs:
diff --git a/crates/epiphany-core/src/invariants.rs b/crates/epiphany-core/src/invariants.rs
index 80c8a79..9d739ad 100644
--- a/crates/epiphany-core/src/invariants.rs
+++ b/crates/epiphany-core/src/invariants.rs
@@ -69,12 +69,61 @@ pub enum GraphInvariant {
- /// 10. Every graph reference resolves to an extant object: cross-cutting
- /// structures (incl. anchor targets, annotation layers, tuplet parents,
- /// graphic objects) and event-internal references (indeterminate
- /// alternatives, trajectory event-pitches, graphic objects, cue sources);
- /// structural top-level references (a staff's declared instrument, a
- /// staff's group, a staff group's members, a part's staves, a view's
- /// active layers — genesis tranche G3a repairs this prose to name what
- /// the check body already enforced); and meter/time-signature
- /// references at every level a `MeterChange` can appear (a region's
- /// time-model meter changes, a region's default metric grid, a
- /// measure's declared time signature, a staff instance's local metric
- /// grid).
+ /// 10. Every graph reference resolves to an extant object, except where
+ /// the re-anchoring rules explicitly permit transient dangling states
+ /// during edits. This surface is **derived from the check bodies**, not
+ /// copied from prose: `spec/CONTRACT_P13S26_INVARIANT10_SURFACE.md`
+ /// pin 1 is the sole origin for both this list and `core_spec.tex`'s
+ /// item 10, because the two were incomplete in different places and
+ /// neither could be repaired from the other (P13-S26).
+ ///
+ /// - Slur.start_event — live event.
+ /// - Slur.end_event — live event.
+ /// - Tie.start_event — live event.
+ /// - Tie.end_event — live event.
+ /// - Beam.events — live event.
+ /// - SubBeam.events — live event.
+ /// - Tuplet.members — live event.
+ /// - Tuplet.parent — extant tuplet.
+ /// - Spanner.staves — declared staff.
+ /// - Spanner.start — anchor target.
+ /// - Spanner.end — anchor target.
+ /// - Marker.anchor — anchor target.
+ /// - RepeatStructure.start — anchor target.
+ /// - RepeatStructure.end — anchor target.
+ /// - RepeatStructure.kind — anchor target.
+ /// - RepeatStructure.voltas — anchor target.
+ /// - ChordSymbol.anchor — anchor target.
+ /// - AnalyticalAnnotation.anchor — anchor target, extant region, live event.
+ /// - AnalyticalAnnotation.layer — declared analysis layer.
+ /// - Comment.anchor — anchor target, extant region, live event.
+ /// - GraphicGesture.objects — stored graphic object.
+ /// - GraphicGesture.anchoring — anchor target, declared staff, live event.
+ /// - LyricLine.events — live event.
+ /// - Staff.instrument — declared instrument.
+ /// - StaffInstance.instrument_override — declared instrument.
+ /// - Staff.group — declared staff group.
+ /// - StaffGroup.members — declared staff.
+ /// - PartDefinition.staves — declared staff.
+ /// - ViewDefinition.active_layers — declared analysis layer.
+ /// - MetricTimeModel.meters — declared time signature.
+ /// - StaffBasedContent.default_metric_grid — declared time signature.
+ /// - Measure.time_signature — declared time signature.
+ /// - StaffInstance.local_metric_grid — declared time signature.
+ /// - NotatedComponent.tuplet — extant tuplet.
+ /// - IndeterminacyHints.alternatives — live event.
+ /// - TrajectoryEvent.start — live pitch.
+ /// - TrajectoryEvent.end — live pitch.
+ /// - GraphicEvent.graphics — stored graphic object.
+ /// - CueEvent.source — live event.
+ /// - TempoSegment.start — anchor target.
+ /// - TempoSegment.end — anchor target.
+ ///
+ /// Beyond that surface, further checks are reported under this same tag
+ /// and are NOT part of the normative invariant 10: tempo-map segment
+ /// shape, ordering and non-overlap (Chapter 3,
+ /// `req:time:tempo-segment-order`); aleatoric ordering and bounds
+ /// region locality (Chapter 3,
+ /// `req:time:aleatoric-reference-locality`); and accidental
+ /// modification expressibility (Chapter 4,
+ /// `req:tuning:accidental-modification-compatibility`). That
+ /// multiplexing is filed as P13-S29 — the public `check_invariant`
+ /// filter and this violation's `Display` attribute those failures to
+ /// invariant 10. Repairing it is a behaviour change, out of scope here.
@@ -4648 +4697,6 @@ mod g3a_tests {
- fn t12_invariant_10_doc_comment_names_the_four_reference_classes() {
+ fn t12_invariant_10_doc_block_slices_and_is_non_empty() {
+ // Narrowed by P13-S26 pin 8. The exact (token, target) comparison lives
+ // in epiphany-testkit's `invariant_ten_surface` guard, which reads both
+ // this block and `core_spec.tex`. This one stays because
+ // `cargo test -p epiphany-core` must still fail when the block is
+ // destroyed, and testkit is a different crate.
@@ -4659,11 +4713,12 @@ mod g3a_tests {
- for needle in [
- "staff's group",
- "group's members",
- "part's staves",
- "active layers",
- ] {
- assert!(
- doc_block.contains(needle),
- "invariant 10's doc comment must name `{needle}`; block was:\n{doc_block}"
- );
- }
+ let tokens: Vec<&str> = doc_block
+ .lines()
+ .filter_map(|line| line.trim_start().strip_prefix("/// "))
+ .filter_map(|rest| rest.trim_start().strip_prefix("- "))
+ .filter_map(|rest| rest.split_whitespace().next())
+ .collect();
+
+ assert!(
+ !tokens.is_empty(),
+ "invariant 10's doc block must list its reference surface, one \
+ `- Token — target.` line per class; block was:\n{doc_block}"
+ );
Forbidden-pattern scan over that diff's added and removed lines —
InvariantViolation::new, fn check_, GraphInvariant:::
$ git diff --cached -U0 -- crates/epiphany-core/src/invariants.rs \
| grep -E "^[+-]" | grep -v "^[+-][+-]" \
| grep -E "InvariantViolation::new|fn check_|GraphInvariant::"
$ echo $?
1
No output; exit status 1. Every hunk falls inside the /// 10. doc block or
inside mod g3a_tests. No check body was touched, no emission retagged.
§6. Two harness faults
Neither is a contract finding. Both are recorded because each halted the run under the owner's stop rule, and an unexplained halt reads as a suppressed mismatch.
(a) t12's module path. The harness expected invariants::tests::t12_…;
the test lives in mod g3a_tests (invariants.rs:4668), so the real path is
invariants::g3a_tests::t12_…. M4c's radius was correct on the first run —
exactly test 2 and t12 failed — and only the expectation string was wrong.
(b) M12 applied partially, and it exposed a real weakness. The first M12
deleted the ordering referent from the requirement's normative clause and
left the closing recap sentence, which still contains the word. Test 3 stayed
green. M12 and M13 were re-applied as full referent deletions and both then
fail as pinned.
Finding against pin 4a — reported, not patched. Pin 4a says test 3 buys that "neither referent … can silently leave". Measured, it buys less: a referent can leave the sentence carrying the normative force while surviving in prose that does not. Pin 4a's framing that test 3 is "weaker than tests 1 and 2, and stated as such" is correct; this specific claim overstates by one step. A pin change is its own amendment with its own review round, so the pin is untouched.
§7. Restoration
After all 38 mutations:
suites=43 passed=1586 failed=0 ignored=0
cargo +1.95.0 fmt -p epiphany-core -p epiphany-testkit --check: clean
Exactly the structural baseline of §1. Every restoration was a hand write-back
of captured bytes; git checkout, git restore and git stash were never used
against the working tree.
Amendment 3 evidence — test 3's clause scope
Appended, not merged. Everything above is the historical record of the
rung's own execution and is unchanged, including its 38/38 matrix. This section
records amendment 3 (7c8a30d), whose execution touches touch rows 4, 6, 7 and
8 only. spec/core_spec.tex is not modified: the requirement's text was always
correct, and only the guard was weak.
A3.§1 What changed
Test 3 previously asserted phrase presence over the whole requirement block.
It now selects the normative clause — the sentence carrying the sole
\MUST{} — and runs all four assertions on that slice alone.
The selector, per amendment 3 §8.3: assert exactly one \MUST{} in the
normalised block; start the clause after the last ". " at or before that
occurrence, falling back to just after the \label{…} only when there is
none; end after the first ". " at or after it.
A3.§2 Expected-versus-observed
| M | # | Expected | Observed | Verdict |
|---|---|---|---|---|
| M22 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
same | MATCH |
| M23 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
same | MATCH |
| M24 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
same | MATCH |
| M25 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
same | MATCH |
| M26 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
same | MATCH |
| M27 | 1 | aleatoric_reference_locality_states_both_referents_and_locality |
same | MATCH |
Six mutations, six matches, each with test 3 as its sole radius. No listed test passed unexpectedly; no unlisted test failed.
Each signs a different step, which is the point of there being six. M22 and
M23 sign the referents' clause scope; M24 the locality phrase; M25 the
last-period rule — it moves \MUST{} into a later sentence, and an
implementation anchoring unconditionally after the label would return one slice
from label to recap containing every needle, and pass; M26 the fallback anchor,
via a period-free decoy that a correct fallback excludes and a block-start
fallback includes; M27 the exactly-one assertion.
Each attacks a different layer, and this is the taxonomy the annex uses:
| Mutation | What it varies |
|---|---|
| M22, M23, M24 | what the selected clause contains |
| M25 | which sentence is selected |
| M26 | the fallback boundary — starting after the label versus widening before it |
| M27 | whether selection is unambiguous, and therefore permitted at all |
One sentence in ratified §8 is inconsistent with that, and this annex does not repeat it. §8.4's M27 entry closes by saying M27 "varies which clause is chosen". It does not: M25 varies which clause is chosen, and a correct implementation rejects M27 before selecting any clause, on the exactly-one assertion. (§8.6 is unaffected — it says only that M27 was the step no mutation had reached, which is true.)
The sentence is frozen in a ratified section, so it is corrected through the amendment lifecycle, not silently rewritten. That correction is open as of this commit and is not part of it.
A3.§3 Mutation transcripts
M22
Mutation. ordering leaves the normative clause, survives in the recap
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (2099485) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:445:9:
req:time:aleatoric-reference-locality's normative clause must state "ordering"; the clause is the sentence carrying \MUST{}, and a phrase surviving elsewhere in the block does not count.
Clause was:
Every event used as a key in an aleatoric region's \texttt{bounds} map \MUST{} be an event of that same region.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M23
Mutation. bounds leaves the clause, survives in the recap
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (2101173) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:445:9:
req:time:aleatoric-reference-locality's normative clause must state "bounds"; the clause is the sentence carrying \MUST{}, and a phrase surviving elsewhere in the block does not count.
Clause was:
Every event referenced by an aleatoric region's \texttt{ordering} DAG \MUST{} be an event of that same region.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M24
Mutation. the locality phrase leaves the clause, appears in the recap
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (2102882) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:445:9:
req:time:aleatoric-reference-locality's normative clause must state "same region"; the clause is the sentence carrying \MUST{}, and a phrase surviving elsewhere in the block does not count.
Clause was:
Every event referenced by an aleatoric region's \texttt{ordering} DAG, and every event used as a key in its \texttt{bounds} map, \MUST{} be an event of that region.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M25
Mutation. \MUST{} moves to the recap, taking the clause with it
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (2104554) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:445:9:
req:time:aleatoric-reference-locality's normative clause must state "same region"; the clause is the sentence carrying \MUST{}, and a phrase surviving elsewhere in the block does not count.
Clause was:
Neither the ordering DAG nor the bounds map \MUST{} reach outside the region whose time model declares them.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M26
Mutation. M22's replacement plus a period-free ordering decoy before the label
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (2106230) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:445:9:
req:time:aleatoric-reference-locality's normative clause must state "ordering"; the clause is the sentence carrying \MUST{}, and a phrase surviving elsewhere in the block does not count.
Clause was:
Every event used as a key in an aleatoric region's \texttt{bounds} map \MUST{} be an event of that same region.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
M27
Mutation. the normative sentence unchanged; the recap gains a second \MUST{}
Complete --no-fail-fast failure set (full workspace, 1585 passed / 1 failed):
aleatoric_reference_locality_states_both_referents_and_locality
Failing assertion, verbatim:
---- aleatoric_reference_locality_states_both_referents_and_locality stdout ----
thread 'aleatoric_reference_locality_states_both_referents_and_locality' (2107954) panicked at crates/epiphany-testkit/tests/invariant_ten_surface.rs:397:5:
assertion `left == right` failed: the requirement must carry exactly one \MUST{}; found 2. More than one leaves the normative clause ambiguous, and an implementation that silently took the first would scope every other assertion to whichever sentence happened to come first.
Block was:
\begin{requirement} \label{req:time:aleatoric-reference-locality} Every event referenced by an aleatoric region's \texttt{ordering} DAG, and every event used as a key in its \texttt{bounds} map, \MUST{} be an event of that same region. Naming an event that does not exist is a dangling reference, governed by graph invariant~10; naming an event that exists in a \emph{different} region is a distinct defect, and this requirement is what forbids it. Neither the ordering DAG nor the bounds map \MUST{} reach outside the region whose time model declares them.
left: 2
right: 1
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
A3.§4 Restoration
suites=43 passed=1586 failed=0 ignored=0
Unchanged from the rung's own structural baseline: amendment 3 alters an existing test's scope and adds none. Every restoration was a hand write-back of captured bytes.
A3.§5 The finding this closes
eddf6e9 recorded, in §6(b) above, that pin 4a claimed test 3 buys that
"neither referent … can silently leave", and that measurement showed
otherwise. That finding is now closed by strengthening the guard rather than
softening the claim — pin 4a's sentence is true of the clause-scoped test.
Pin 4a itself is frozen and unedited; amendment 3 is an additive override and
governs from its ratification.