TerminalCustomOscHandler
Handles complete OSC commands that the parser does not support.
The host owns this handler and its protocol, decoding, permissions, and resource cleanup. The parser retains the handler for its lifetime. It never closes it. Supported command numbers never reach this handler, including malformed or denied requests. Future parser versions can support more commands and thus remove them from this route.
The callback runs synchronously on the parser caller's thread, after preceding commands and before later bytes. With a session, it holds mutation serialization. It may read a session frame and update host metadata. It must return promptly, without waiting for UI work or calling mutating session APIs, including close. Reentry into any parser operation throws IllegalStateException before mutation. Exceptions, including cancellation, propagate unchanged and stop the current input call. The owner must stop that stream after failure. A session connector reports the failure through its listener, which closes the session and records the cause.