Skip to content

relayPublisher never checks the HTTP response, so every failed publish is silent #575

Description

@suleimansh

relayPublisher (relay.ts:236) documents itself as "a failed POST is reported via onError but never interrupts the run". It only does the second half: the fetch result is discarded, so only a thrown fetch reaches onError. Every error status resolves and is dropped.

Probed against a real relay:

scenario onError fires?
413, event over the 256KiB cap no
--share https://example.com (not a relay) no
connection refused (control) yes

So --share https://example.com prints ◆ shared run: <url> and then silently reports nothing, forever. The relay's own tests already assert it answers 400 and 405, and the publisher ignores all of it.

Fix: check res.ok and pass a non-2xx to onError. Best-effort stays the contract, the run must not fail.

Metadata

Metadata

Assignees

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions