You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: improve SSE conformance test validation (SEP-1699)
Enhance timing validation and event ordering checks:
Client test (sse-retry):
- Add "very late" threshold (>2x retry value) as FAILURE
- Distinguish between slightly late (WARNING) and very late (FAILURE)
Server test (sse-polling):
- Check that priming event is sent immediately (first event)
- Warn if server disconnects without sending event ID first
@@ -247,10 +250,14 @@ export class SSERetryScenario implements Scenario {
247
250
// Client reconnected too soon - MUST violation
248
251
status='FAILURE';
249
252
errorMessage=`Client reconnected too early (${actualDelay.toFixed(0)}ms instead of ${this.retryValue}ms). Client MUST respect the retry field and wait the specified time.`;
250
-
}elseif(tooLate){
251
-
// Client reconnected too late - not a spec violation but suspicious
253
+
}elseif(veryLate){
254
+
// Client reconnected way too late - likely ignoring retry field entirely
255
+
status='FAILURE';
256
+
errorMessage=`Client reconnected very late (${actualDelay.toFixed(0)}ms instead of ${this.retryValue}ms). Client appears to be ignoring the retry field and using its own backoff strategy.`;
257
+
}elseif(slightlyLate){
258
+
// Client reconnected slightly late - not a spec violation but suspicious
252
259
status='WARNING';
253
-
errorMessage=`Client reconnected late (${actualDelay.toFixed(0)}ms instead of ${this.retryValue}ms). This is acceptable but may indicate the client is ignoring the retry field and using its own backoff.`;
260
+
errorMessage=`Client reconnected slightly late (${actualDelay.toFixed(0)}ms instead of ${this.retryValue}ms). This is acceptable but may indicate network delays.`;
254
261
}
255
262
256
263
this.checks.push({
@@ -272,11 +279,13 @@ export class SSERetryScenario implements Scenario {
0 commit comments