Dings: DingCatalog.Identity owns patch identity derivation (step 1) + migration plan #42

Merged
aqua merged 2 commits from aqua/dingcatalog-owner-step1 into main 2026-11-12 10:41:58 +00:00
Member

Step 1 of consolidating Dings patch identity onto DingCatalog (owner RULED by the operator tier via Persona, 2026-11-12).

Route. Code step 1 plus a doc migration plan. The lowered-dings mirror is tied through AquaLower calling the new function (small, safe, already test-guarded). Earcon Workshop IDENTITIES is not tied: browser JS with its own voice model, so tying needs a generated file and a build step. It is marked deprecated with a pointer and planned as step 5 in the doc.

Changes.

  • DingCatalog.Identity(instrument) returns PatchId, FaustName, Revision (literal 1). AquaDaemonClient (Host) and AquaLower --dings call it. Wire fields, pipe protocol and Host behaviour unchanged.
  • DingCatalogTests: new IdentityPinsTheOldDerivedValuesForAllFourInstruments pins the old values for all four instruments; the guard test now uses independent literals instead of a private copy of the rule.
  • earcon.js: deprecation comment only.
  • Authority doc: owner marked RULED, end-state wording fix (revision is deferred), new section "Migration plan (ruled 2026-11-12: DingCatalog is the owner)" with steps, verification, deprecation window, rollback.

Ran. DingCatalogTests + StoreFileNameTests: 59 passed, 0 failed. Host project builds (0 errors). AquaLower --dings regeneration leaves tools/aqua-feel/lowered-dings byte-identical. tools/earcon-workshop/test.mjs: all 882 checks passed. aqua-feel native-diff.test.mjs + sync.test.mjs: 2 pass.
Mutation checks. revision 1 to 2: pin test fails. patch prefix dings. to ding.: pin test fails. FaustName _ to x: pin test fails. Wrong pinned literal in the test: pin and guard tests fail.
Did not run. Full suite; Host against a live daemon; anything on Windows/WASAPI. Nothing heard.

🤖 Generated with Claude Code

Step 1 of consolidating Dings patch identity onto DingCatalog (owner RULED by the operator tier via Persona, 2026-11-12). **Route.** Code step 1 plus a doc migration plan. The `lowered-dings` mirror is tied through `AquaLower` calling the new function (small, safe, already test-guarded). Earcon Workshop `IDENTITIES` is not tied: browser JS with its own voice model, so tying needs a generated file and a build step. It is marked deprecated with a pointer and planned as step 5 in the doc. **Changes.** - `DingCatalog.Identity(instrument)` returns `PatchId`, `FaustName`, `Revision` (literal 1). `AquaDaemonClient` (Host) and `AquaLower --dings` call it. Wire fields, pipe protocol and Host behaviour unchanged. - `DingCatalogTests`: new `IdentityPinsTheOldDerivedValuesForAllFourInstruments` pins the old values for all four instruments; the guard test now uses independent literals instead of a private copy of the rule. - `earcon.js`: deprecation comment only. - Authority doc: owner marked RULED, end-state wording fix (revision is deferred), new section "Migration plan (ruled 2026-11-12: DingCatalog is the owner)" with steps, verification, deprecation window, rollback. **Ran.** `DingCatalogTests` + `StoreFileNameTests`: 59 passed, 0 failed. Host project builds (0 errors). `AquaLower --dings` regeneration leaves `tools/aqua-feel/lowered-dings` byte-identical. `tools/earcon-workshop/test.mjs`: all 882 checks passed. `aqua-feel` `native-diff.test.mjs` + `sync.test.mjs`: 2 pass. **Mutation checks.** revision 1 to 2: pin test fails. patch prefix `dings.` to `ding.`: pin test fails. FaustName `_` to `x`: pin test fails. Wrong pinned literal in the test: pin and guard tests fail. **Did not run.** Full suite; Host against a live daemon; anything on Windows/WASAPI. Nothing heard. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
aqua merged commit 2e28f5699e into main 2026-11-12 10:41:58 +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!42
No description provided.