REC-098: delete unread DingsProtocol.MutexName constant

DingsProtocol.MutexName ("Local\GameCult.AquaSynthDings.Playback.v1")
had no in-repo reader. The runtime mutex the Dings host actually takes
is a separately hardcoded literal at tools/AquaSynthDingsHost/Program.cs:3
(same string value, duplicated rather than referencing the constant),
so the constant's own symbol and value were both confirmed dead before
deletion, not just the symbol.

Kill-attempt searches (all empty except the known duplicate):
- rg -n "MutexName" . (in AquaSynth)              -> only the declaration
- rg -n "GameCult.AquaSynthDings.Playback.v1" .   -> declaration + the
  hardcoded Program.cs duplicate + PipeName (a distinct, still-read
  constant using the same base string without the "Local\" prefix)
- rg in AquaSynth-rs, weksa                        -> no matches (exit 1)
- rg -n "GameCult\.AquaSynthDings\.Playback\.v1" --hidden across all of
  F:/Projects (exit 0)                             -> only the census
  doc's citation and the two AquaSynth source hits above; zero external
  consumers repo-wide

PipeName (the sibling constant, read by both DingsHostClient.cs and
DingsPlaybackHost.cs for the named pipe) is untouched.

Did NOT touch AquaSynth part of REC-019 (BirdSyrinxGolf): tools/BirdSyrinxGolf
is a real standalone research CLI (own .csproj, AquaSynth.sln entry),
documented as a live, human-run tool in state/map.yaml, state/evidence.jsonl,
and research/bird-syrinx-golf/README.md, and its runs drove two shipped
AquaSynth.Core patch-language features (tissue-valve acoustic source,
realtime control curves per evidence.jsonl 2026-05-28 entries). The census
recommendation's evidence class (no code-level caller) is the wrong test for
a tool whose only intended caller is a human running it directly; deleting
it would destroy a documented capability, not dead code. No sibling repo
(checked via `grep -rl AquaSynth --include=*.csproj` across all of
F:/Projects) references BirdSyrinxGolf either way, so this is not a
close call resolved by silence -- the in-repo evidence itself disqualifies
the recommendation.

Verification: dotnet build src/AquaSynth.Dings/AquaSynth.Dings.csproj
succeeds (0 errors). AquaSynth.Core has a pre-existing, unrelated
MessagePack-source-generator build failure (523 CS0246 errors) that
reproduces identically with this change stashed out, confirming it is
baseline and not caused by this edit; the wider tools/AquaSynthDingsHost
and tools/AquaSynthDingsMcp builds could not be exercised because they
transitively depend on AquaSynth.Core.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Meta Vens 2026-09-13 14:03:44 +02:00
commit 6c21e22292

View file

@ -6,7 +6,6 @@ public static class DingsProtocol
{
public const int Version = 1;
public const string PipeName = "GameCult.AquaSynthDings.Playback.v1";
public const string MutexName = "Local\\GameCult.AquaSynthDings.Playback.v1";
}
public enum DingsCommandKind { Ping, Play, StopAll, GetVolume, SetVolume, SetMuted }