Artifact 17f5d0bd3378af0e3f8320afbb397c4afa97b83a481df8726c7770c58ac9b0eb:
- File
internal/sync/receive_budget.go
-
2026-10-29 03:06:02
— part of check-in
[dd7401ad01]
on branch main
— feat(sync): return a receive-budget refusal to the host as *RefusedError
With HandleOpts.MaxStoredBytes set, a refused push rolls its request transaction back and replies with one error card. A host whose storage treats any rollback as an abort of the whole call (a Durable Object running the request in one transactionSync) discards that reply, so the client saw only "transaction rolled back".
HandleSyncWithOpts now returns the encoded reply together with a *RefusedError whose Message is the error card's text, matchable with errors.As. Such a host can report or render the refusal itself without parsing xfer; a host serving HTTP sends the reply as before. Only the budget refusal reports this way, so no released behaviour changes: the budget is unreleased and opt-in. (user: [email protected], size: 4277) [annotate] [blame] [check-ins using]
-
2026-10-29 03:30:01
— part of check-in
[0ffed7ff5f]
on branch main
— Merge pull request #526 from danmestas/perf/wasm-size-and-refusal
Return receive-budget refusals as *RefusedError; libfossil_nohttp tag cuts the TinyGo engine ~97 KB (user: [email protected], size: 4277) [annotate] [blame] [check-ins using]
- 2026-10-29 04:21:39 — part of check-in [fa65d2c2d5] on branch feat/horizon-peer-serving — Merge remote-tracking branch 'origin/main' into feat/horizon-peer-serving (user: [email protected], size: 4277) [annotate] [blame] [check-ins using]
-
2026-10-29 03:06:02
— part of check-in
[dd7401ad01]
on branch main
— feat(sync): return a receive-budget refusal to the host as *RefusedError