Shared homes + legacy sweep (review Phase 4)

Duplication that had to agree by luck now has ONE home each:
- PeerAddress (Core): the host[:port] split + resolve-preferring-IPv4 that lived as
  byte-identical private copies in MainForm and ServiceSendHost (plus an extra resolve
  copy). Both now delegate. (The unicast-hints path deliberately keeps its own loop -
  it collects ALL IPv4 records, a different behaviour, not a duplicate.)
- RemSoundCrypto.ForPlainPassword: key + fingerprint always derived together - the
  divergence that once got the service's audio silently rejected can't recur.
- AudioTransportRules.EffectiveOpusFrameSamples moved to Core; the headless service no
  longer reaches into the WinForms MainForm for a frame-size rule.
- ServiceAudioDefaults (Core): the service's fixed live-jamming transport numbers,
  referenced by BOTH the dialog that writes the profile and the host that re-forces
  them at runtime - they can no longer disagree.

Legacy sweep:
- HandleTypeProbe + its per-minute tick retired (the 2026-06 handle-leak investigation
  it was built for is closed; git history has it).
- RemSound.Harness project removed from the tree + solution (superseded by --selftest).
- Fixed the stale AppConfig claim that per-profile hotkeys are 'no longer read' (the
  one-time v4.4 import reads them once); Profile.AudioPort now carries an explicit
  DEAD FIELD / trap warning backed by the persistence tripwire test.

Gate 59/59.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Ednunp
2026-07-23 16:17:41 +01:00
co-authored by Claude Fable 5
parent 9f13ef3aae
commit 517a066923
12 changed files with 134 additions and 552 deletions
-1
View File
@@ -3,7 +3,6 @@
<Project Path="src/RemSound.Core/RemSound.Core.csproj" />
<Project Path="src/RemSound.Sender/RemSound.Sender.csproj" />
<Project Path="src/RemSound.Receiver/RemSound.Receiver.csproj" />
<Project Path="src/RemSound.Harness/RemSound.Harness.csproj" />
<Project Path="src/RemSound.App/RemSound.App.csproj" />
</Folder>
</Solution>