Dings: one play validation gate, Host enforces; bridge check deprecated (step 4) #45

Merged
aqua merged 2 commits from aqua/dings-migration-step4 into main 2026-11-12 10:57:21 +00:00
Member

Migration plan step 4 only. Both gates already read the same DingCatalog dictionaries, so the cut is the single rule: DingCatalog.PlayRejection(eventId, instrumentId, gain) returns the Host's exact rejection text (or null); DingsPlaybackHost.PlayAsync calls it. DingService.PlayAsync keeps its check unchanged, marked DEPRECATED with a pointer (its exception types and NaN pass-through are observable, so it cannot simply forward). No protocol, identity, or audible change; step-1 pins untouched.

Ran: Ding*/StoreFileName* focused tests, 79 passed, 0 failed; dotnet build tools/AquaSynthDingsHost clean; 4 mutations (message text, Host gate call removed, bridge exception/text changed, NaN check dropped) each failed a test.
Not run: full suite, Host over a live pipe (no Host test project), Windows build, nothing heard.
Rollback: revert.

🤖 Generated with Claude Code

Migration plan step 4 only. Both gates already read the same DingCatalog dictionaries, so the cut is the single rule: `DingCatalog.PlayRejection(eventId, instrumentId, gain)` returns the Host's exact rejection text (or null); `DingsPlaybackHost.PlayAsync` calls it. `DingService.PlayAsync` keeps its check unchanged, marked DEPRECATED with a pointer (its exception types and NaN pass-through are observable, so it cannot simply forward). No protocol, identity, or audible change; step-1 pins untouched. Ran: Ding*/StoreFileName* focused tests, 79 passed, 0 failed; `dotnet build tools/AquaSynthDingsHost` clean; 4 mutations (message text, Host gate call removed, bridge exception/text changed, NaN check dropped) each failed a test. Not run: full suite, Host over a live pipe (no Host test project), Windows build, nothing heard. Rollback: revert. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
aqua merged commit e188424244 into main 2026-11-12 10:57:21 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
GameCult/AquaSynth!45
No description provided.