← back to v154 · fetch-api-forward-reason-from-abortcontroller-to-fetch-response
conformance · v154
v154 · fetch-api-forward-reason-from-abortcontroller-to-fetch-response — conformance probe
7 assertions drawn from the spec. Each is a single contract the spec text makes. Pass/fail reflects what this browser executed; blocked means the contract was not run because it needs user mediation, hardware, or another unavailable precondition. Open the page in Chrome stable / canary / Firefox / Safari to compare.
0
pass
0
fail
0
blocked
7
total
| id | contract | kind | verdict | detail |
|---|---|---|---|---|
abort-accepts-a-reason |
AbortController.abort() takes an arbitrary reason and stores it on the signal. This is the mechanism the whole feature forwards. spec ↗ | script | … | |
abort-without-a-reason-supplies-an-aborterror |
With no argument the platform supplies an AbortError DOMException, so signal.reason is never undefined on an aborted signal. spec ↗ | script | … | |
fetch-promise-rejects-with-the-reason |
The pre-existing behaviour: aborting an in-flight request rejects the fetch promise with the reason itself. spec ↗ | script | … | |
response-text-rejects-with-the-reason |
The change itself: after the Response exists, aborting must reject body-reading methods with the SAME reason rather than a substituted AbortError. Before Chrome 154 this rejected with a generic DOMException and the reason was lost. spec ↗ | script | … | |
body-stream-rejects-with-the-reason |
The body's ReadableStream must surface the reason too. A streaming reader is where long downloads spend their time, so this is the site that matters most in practice. spec ↗ | script | … | |
abortsignal-any-composes-signals |
AbortSignal.any() composes a user controller with a deadline, which is the wiring that makes distinguishing the two causes necessary in the first place. spec ↗ | script | … | |
timeout-signals-use-timeouterror |
AbortSignal.timeout() aborts with a TimeoutError DOMException, not an AbortError — which is what lets a handler tell a deadline from a cancellation by name alone. spec ↗ | script | … |