@riddledc/riddle-proof-packs 0.4.6 → 0.4.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/README.md +51 -0
  2. package/bin/riddle-proof-durable-candidate-plan +4 -0
  3. package/dist/chunk-VFPSPQD7.js +219 -0
  4. package/dist/durableCandidatePlan-Dv2P33Wg.d.cts +77 -0
  5. package/dist/durableCandidatePlan-Dv2P33Wg.d.ts +77 -0
  6. package/dist/durableCandidatePlanCli.cjs +445 -0
  7. package/dist/durableCandidatePlanCli.d.cts +32 -0
  8. package/dist/durableCandidatePlanCli.d.ts +32 -0
  9. package/dist/durableCandidatePlanCli.js +177 -0
  10. package/dist/index.cjs +246 -7
  11. package/dist/index.d.cts +1 -0
  12. package/dist/index.d.ts +1 -0
  13. package/dist/index.js +38 -7
  14. package/package.json +3 -2
  15. package/packs/audio-mix/ratchet-method.md +12 -0
  16. package/packs/neon-step-sequencer/README.md +4 -0
  17. package/packs/neon-step-sequencer/case-study/findings.md +11 -0
  18. package/packs/neon-step-sequencer/case-study/ratchet-card.md +2 -1
  19. package/packs/neon-step-sequencer/case-study/ratchet-log.md +57 -0
  20. package/packs/neon-step-sequencer/examples/README.md +3 -1
  21. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/artifact-manifest.json +32 -0
  22. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/console.json +4 -0
  23. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/dom-summary.json +40 -0
  24. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/durable-candidate-patch-plan.json +69 -0
  25. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/durable-candidate-patch-plan.md +29 -0
  26. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/human-review-packet.json +801 -0
  27. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/human-review-packet.md +52 -0
  28. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/profile-result.json +5078 -0
  29. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/proof.json +5078 -0
  30. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/screenshots/lilarcade-neon-fast-mix-health-desktop-neon-fast-mix-health.png +0 -0
  31. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/screenshots/lilarcade-neon-fast-mix-health-desktop.png +0 -0
  32. package/packs/neon-step-sequencer/examples/run-008-durable-mix-patch-handoff/summary.md +39 -0
  33. package/packs/neon-step-sequencer/profiles/playback-sync.json +30 -7
@@ -0,0 +1,39 @@
1
+ # Run 008 - Durable mix patch handoff
2
+
3
+ - profile: `lilarcade-neon-fast-mix-health`
4
+ - runner: `local-playwright`
5
+ - evidence-role pattern: `current_target`
6
+ - target: `/games/drum-sequencer?song=monkberry-moon-delight-tab&mix=profile&view=trainer&instrument=bass`
7
+ - status: `passed`
8
+
9
+ ## Claim
10
+
11
+ After an explicitly applied human-review packet, Neon can turn the supported `chord -0.10` candidate into a scoped source-level mix override, then prove the running app sees that durable level without turning the packet into a taste verdict.
12
+
13
+ ## Handoff chain
14
+
15
+ 1. Run 007 produced `candidate_applied_for_listening_review`.
16
+ 2. The packet recorded `mixing_canon_surrogate`, `approvedCandidateApplied: true`, `candidateActionsAreTransient: false`, and `ranking.role: review_order_only`.
17
+ 3. The durable candidate patch plan targeted `src/Games/songs/neon-approved-mix-overrides.json`.
18
+ 4. The durable edit scoped `chord: 0.28` to `Monkberry Moon Delight (Tab)` and `monkberry-moon-delight-eq-lane-mix-v7`.
19
+ 5. This current-target proof reloaded Neon and verified the browser contract reported `chordLevel: 0.28`.
20
+
21
+ ## Objective receipts
22
+
23
+ | receipt | value |
24
+ | --- | --- |
25
+ | selected song | `Monkberry Moon Delight (Tab)` |
26
+ | durable chord level | `0.28` |
27
+ | mix RMS | `0.1234` |
28
+ | peak | `0.8303` |
29
+ | clipping | `false` |
30
+ | low-level window | `false` |
31
+ | active instruments | `6` |
32
+ | route | `/games/drum-sequencer` |
33
+ | fatal console count | `0` |
34
+
35
+ ## Verdict
36
+
37
+ Passed. The proof supports that the source-level durable override is visible to the running app and stays inside the current mix-health guardrails.
38
+
39
+ It does not prove subjective mix quality, listener preference, or that this is the best musical balance. It proves the handoff from approved candidate packet to scoped durable state and then verifies that durable state in the browser.
@@ -18,16 +18,16 @@
18
18
  "label": "capture-pre-playback-state",
19
19
  "timeout_ms": 10000,
20
20
  "store_return_to": "__neonProof.prePlayback",
21
- "script": "const api=window.__NEON_MIX_PROOF__||window.__RIDDLE_SEQUENCER_PROOF__; const state=api?.getPlaybackState?.()||api?.getSummary?.()?.trainer||null; window.__neonProof={...(window.__neonProof||{}),prePlayback:{available:Boolean(api),state}}; return window.__neonProof.prePlayback;",
21
+ "script": "const api=window.__NEON_MIX_PROOF__||window.__RIDDLE_SEQUENCER_PROOF__; const raw=api?.getPlaybackState?.()||api?.getSummary?.()||null; const trainer=raw?.trainer||raw||{}; const out={available:Boolean(api),isPlaying:Boolean(raw?.isPlaying),currentStep:Number(trainer.currentStep??-1),selectedInstrument:trainer.selectedInstrument||null,state:raw}; window.__neonProof={...(window.__neonProof||{}),prePlayback:out}; return out;",
22
22
  "return_summary_fields": [
23
23
  {
24
24
  "path": "available"
25
25
  },
26
26
  {
27
- "path": "state.selectedInstrument"
27
+ "path": "selectedInstrument"
28
28
  },
29
29
  {
30
- "path": "state.currentStep"
30
+ "path": "currentStep"
31
31
  }
32
32
  ]
33
33
  },
@@ -42,6 +42,12 @@
42
42
  "selector": "button.drum-play",
43
43
  "timeout_ms": 10000
44
44
  },
45
+ {
46
+ "type": "wait_for_text",
47
+ "selector": "button.drum-play",
48
+ "text": "Stop",
49
+ "timeout_ms": 30000
50
+ },
45
51
  {
46
52
  "type": "wait",
47
53
  "ms": 900
@@ -51,16 +57,19 @@
51
57
  "label": "capture-post-playback-state",
52
58
  "timeout_ms": 10000,
53
59
  "store_return_to": "__neonProof.postPlayback",
54
- "script": "const api=window.__NEON_MIX_PROOF__||window.__RIDDLE_SEQUENCER_PROOF__; const state=api?.getPlaybackState?.()||api?.getSummary?.()?.trainer||null; const summary=api?.getState?.()||api?.getSummary?.()||{}; const out={available:Boolean(api),isPlaying:Boolean(summary.isPlaying),state}; window.__neonProof={...(window.__neonProof||{}),postPlayback:out}; return out;",
60
+ "script": "const api=window.__NEON_MIX_PROOF__||window.__RIDDLE_SEQUENCER_PROOF__; const raw=api?.getPlaybackState?.()||api?.getSummary?.()||null; const trainer=raw?.trainer||raw||{}; const pre=window.__neonProof?.prePlayback||{}; const currentStep=Number(trainer.currentStep??-1); const preStep=Number(pre.currentStep??-1); const out={available:Boolean(api),isPlaying:Boolean(raw?.isPlaying),currentStep,preStep,selectedInstrument:trainer.selectedInstrument||null,movedForward:currentStep>preStep,state:raw}; window.__neonProof={...(window.__neonProof||{}),postPlayback:out}; return out;",
55
61
  "return_summary_fields": [
56
62
  {
57
63
  "path": "isPlaying"
58
64
  },
59
65
  {
60
- "path": "state.currentStep"
66
+ "path": "currentStep"
67
+ },
68
+ {
69
+ "path": "selectedInstrument"
61
70
  },
62
71
  {
63
- "path": "state.selectedInstrument"
72
+ "path": "movedForward"
64
73
  }
65
74
  ]
66
75
  },
@@ -70,6 +79,18 @@
70
79
  "expected_value": true,
71
80
  "timeout_ms": 10000
72
81
  },
82
+ {
83
+ "type": "assert_window_value",
84
+ "path": "__neonProof.postPlayback.isPlaying",
85
+ "expected_value": true,
86
+ "timeout_ms": 10000
87
+ },
88
+ {
89
+ "type": "assert_window_value",
90
+ "path": "__neonProof.postPlayback.movedForward",
91
+ "expected_value": true,
92
+ "timeout_ms": 10000
93
+ },
73
94
  {
74
95
  "type": "screenshot",
75
96
  "label": "neon-playback-sync",
@@ -114,7 +135,9 @@
114
135
  "required_receipts": [
115
136
  "pre-action playback state",
116
137
  "play button interaction",
117
- "post-action playback state",
138
+ "visible Stop state after interaction",
139
+ "post-action playback state is playing",
140
+ "post-action trainer step moved forward",
118
141
  "screenshot after interaction"
119
142
  ],
120
143
  "does_not_prove": [