Artifact 362f724870b3578b10cb46803cb3cb91ac375a484a6b9cc16015bb14395530a8:
- File
internal/sync/handler.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: 101588) [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: 101588) [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