Repository navigation
Commit a7bd967
committed
Report failed session notifications through the server configuration
## Motivation and Context
`ServerSession#notify_progress`, `#notify_log_message`, `#notify_resources_updated` and
`#notify_elicitation_complete` rescue a transport failure and pass it to `@server.report_exception`, which is
private, so the rescue itself raised `NoMethodError`. The failure meant to be reported and swallowed reached
the caller instead, typically a tool reporting progress or logging, whose call then answered Internal error.
The rescues now call `exception_reporter` of the server's configuration, which is what
`Server#report_exception` does, without making that method public.
## How Has This Been Tested?
`test/mcp/server_notification_test.rb`. Against the previous library the new test fails with
`NoMethodError: private method 'report_exception' called for an instance of MCP::Server`.
## Breaking Changes
None.1 parent 37270d6 commit a7bd967
2 files changed
Lines changed: 33 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
275 | 275 | | |
276 | 276 | | |
277 | 277 | | |
278 | | - | |
| 278 | + | |
279 | 279 | | |
280 | 280 | | |
281 | 281 | | |
282 | 282 | | |
283 | 283 | | |
284 | 284 | | |
285 | | - | |
| 285 | + | |
286 | 286 | | |
287 | 287 | | |
288 | 288 | | |
| |||
296 | 296 | | |
297 | 297 | | |
298 | 298 | | |
299 | | - | |
| 299 | + | |
300 | 300 | | |
301 | 301 | | |
302 | 302 | | |
| |||
320 | 320 | | |
321 | 321 | | |
322 | 322 | | |
323 | | - | |
| 323 | + | |
324 | 324 | | |
325 | 325 | | |
326 | 326 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
257 | 257 | | |
258 | 258 | | |
259 | 259 | | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
260 | 289 | | |
261 | 290 | | |
262 | 291 | | |
| |||
0 commit comments