Drop the once-per-method dedup and its per-runner state: the client now
warns on every unbound notification (registering a binding, even a no-op
one, is the silence), and server-side inbound drops return to debug since
the peer is an arbitrary client and warning on its input floods the log.
Revert the ClientSession.send_notification widening: the 2026-07-28
transports do not agree on client-to-server custom notifications yet, so
the closed union stays the accurate type. Carve notifications/cancelled and
listen-owned acks out of the message_handler catch-all claim, add the
imports the notification example was missing, and note that a
json_response answer has no stream to carry request-scoped notifications.
Widen ClientSession.send_notification and ServerSession.send_notification
to accept any Notification subclass, mirroring send_request's open Request
arm, so extensions can emit their own methods without casts. Raise
dropped-notification logging from debug to a once-per-method warning that
names the remedy: on the client when no NotificationBinding observes the
method, on the server when a spec notification is not defined at the
negotiated version or a custom method has no registered handler (an
unserved spec notification stays at debug; repeat drops of a method log at
debug so a stream cannot flood the log). Document the message_handler
routing change and the binding channel in the migration guide, fix the
callbacks page's catch-all claim, and cover the vendor-notification round
trip with an interaction test, un-deferring its requirement.