Skip to content

ModelContextProtocol.ConformanceTests.ClientConformanceTests.RunConformanceTest(scenario: "sse-retry") failed in CI #1334

@ericstj

Description

@ericstj

Describe the bug
Perhaps slower responsiveness in CI? The test is complaining of a reconnect that was half a second later than expected. Not sure we can count on such real-time responsiveness during CI.

[xUnit.net 00:01:19.72]     ModelContextProtocol.ConformanceTests.ClientConformanceTests.RunConformanceTest(scenario: "sse-retry") [FAIL]
  Failed ModelContextProtocol.ConformanceTests.ClientConformanceTests.RunConformanceTest(scenario: "sse-retry") [3 s]
  Error Message:
   Conformance test failed.

Stdout:


Stderr:
Starting scenario: sse-retry
Executing client: D:\a\csharp-sdk\csharp-sdk\artifacts\bin\ModelContextProtocol.ConformanceClient\Debug\net8.0\ModelContextProtocol.ConformanceClient.exe sse-retry http://localhost:54846
Checks:
2026-02-20T21:05:10.259Z [incoming-request             ] INFO    Received POST request for / (method: initialize)
2026-02-20T21:05:10.263Z [outgoing-response            ] INFO    Sent initialize response

2026-02-20T21:05:10.306Z [incoming-request             ] INFO    Received GET request for /
2026-02-20T21:05:10.306Z [outgoing-sse-event           ] INFO    Sent SSE priming event on GET stream (id: event-1, retry: 500ms)
2026-02-20T21:05:10.329Z [incoming-request             ] INFO    Received POST request for / (method: notifications/initialized)
2026-02-20T21:05:10.385Z [incoming-request             ] INFO    Received POST request for / (method: tools/list)
2026-02-20T21:05:10.386Z [outgoing-response            ] INFO    Sent tools/list response

2026-02-20T21:05:10.472Z [incoming-request             ] INFO    Received POST request for / (method: tools/call)
2026-02-20T21:05:10.473Z [outgoing-sse-event           ] INFO    Sent SSE priming event for tools/call (id: event-2, retry: 500ms)
2026-02-20T21:05:10.533Z [outgoing-stream-close        ] INFO    Closed tools/call SSE stream to trigger client reconnection
2026-02-20T21:05:11.701Z [incoming-request             ] INFO    Received GET request for / (Last-Event-ID: event-2)
2026-02-20T21:05:11.701Z [outgoing-sse-event           ] INFO    Sent SSE priming event on GET stream (id: event-3, retry: 500ms)
2026-02-20T21:05:11.701Z [outgoing-sse-event           ] INFO    Sent tool response on GET stream after reconnection (id: event-4)
2026-02-20T21:05:11.895Z [client-sse-graceful-reconnect] SUCCESS Client reconnects via GET after SSE stream is closed gracefully
2026-02-20T21:05:11.895Z [client-sse-retry-timing      ] FAILURE Client MUST respect the retry field, waiting the given number of milliseconds before attempting to reconnect
2026-02-20T21:05:11.895Z [client-sse-last-event-id     ] SUCCESS Client SHOULD send Last-Event-ID header on reconnection for resumability

Test Results:
Passed: 2/3, 1 failed, 0 warnings

Failed Checks:
  - ClientRespectsRetryField: Client MUST respect the retry field, waiting the given number of milliseconds before attempting to reconnect
    Error: Client reconnected very late (1168ms instead of 500ms). Client appears to be ignoring the retry field and using its own backoff strategy.

❌ OVERALL: FAILED

https://github.com/modelcontextprotocol/csharp-sdk/actions/runs/22240762968/job/64344123323?pr=1319

Metadata

Metadata

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions