Skip to content

Agree MSP when sound can play (TelnetNegotiationCore 4.5.3) - #94

Merged
HarryCordewener merged 1 commit into
mainfrom
claude/project-thread-hgawpe
Oct 26, 2026
Merged

HarryCordewener merged 1 commit into
mainfrom
claude/project-thread-hgawpe

Conversation

@HarryCordewener

Copy link
Copy Markdown
Member

Requested by Grave · project thread

Follow-up to #78. TelnetNegotiationCore 4.5.3 on nuget.org ships MSPProtocol (TNC #171).

  • Bumps TelnetNegotiationCore from 4.5.2 to 4.5.3.
  • TelnetSessionOptions.PlaysMsp is off by default and set from WorldSession.PlaysMedia. When it is on, TelnetSession registers MSPProtocol and raises MspChanged from its enabled and disabled callbacks. The MspTrigger path from Read MSP sound triggers on connections that agreed MSP #78 then reads !!SOUND/!!MUSIC lines on a connection that agreed option 90.
  • With no device, or with game sound off, the plugin is left unregistered and the server's WILL MSP is refused. Registering the plugin is how the library says the client plays sound.
  • MspNegotiationTests covers two cases: a session that plays sound answers DO, then DONT when the server withdraws, and raises true then false; a session that doesn't play sound answers DONT and raises nothing.
  • CLAUDE.md drops its "inert until" note, and there is a changelog line.

Tests: Graphics 99, Scripting 68, Web 37, Tui 2088 and Avalonia 211 all pass. Core passes 1346 of 1347; the one failure is AReadOnlyCacheDirectory_DegradesToMemoryOnly, which always fails when the tests run as root, as they do in this sandbox.


Generated by Claude Code

4.5.3 ships MSPProtocol. TelnetSession registers it only when the session
plays media (TelnetSessionOptions.PlaysMsp, set from WorldSession.PlaysMedia)
and raises MspChanged from its enabled and disabled callbacks, so MSP
!!SOUND/!!MUSIC lines are read as sound requests on a connection that agreed
option 90. Without a device the server's WILL MSP is still refused.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01WXyHEoxwX8GurTHxwPinQY
@coderabbitai

coderabbitai Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Caution

Review failed

The pull request is closed.

Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@HarryCordewener HarryCordewener self-assigned this Oct 26, 2026
@HarryCordewener
HarryCordewener marked this pull request as ready for review October 26, 2026 21:18
@HarryCordewener
HarryCordewener merged commit 0d2e209 into main Oct 26, 2026
3 of 4 checks passed
@HarryCordewener
HarryCordewener deleted the claude/project-thread-hgawpe branch October 26, 2026 21:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants