Skip to content

http: couple fetch() receive backpressure to JS body consumption (h1/h2/h3)#29831

Open
robobun wants to merge 46 commits into
mainfrom
farm/0a9cea98/h2-window-update-backpressure
Open

http: couple fetch() receive backpressure to JS body consumption (h1/h2/h3)#29831
robobun wants to merge 46 commits into
mainfrom
farm/0a9cea98/h2-window-update-backpressure

test: fetch().body.pipeThrough() propagates backpressure to socket (#…

aa454aa
Select commit
Loading
Failed to load commit list.
Claude / Claude Code Review completed May 8, 2026 in 20m 41s

Code review found 1 potential issue

Found 5 candidates, confirmed 1. See review comments for details.

Details

Severity Count
🔴 Important 0
🟡 Nit 1
🟣 Pre-existing 0
Severity File:Line Issue
🟡 Nit src/http/Signals.zig:14 Signals.isEmpty() omits new body_consumption_tracked field

Annotations

Check warning on line 14 in src/http/Signals.zig

See this annotation in the file changed.

@claude claude / Claude Code Review

Signals.isEmpty() omits new body_consumption_tracked field

nit: `isEmpty()` (line 19) wasn't updated to include the new `body_consumption_tracked` field — it still checks only the original five optional pointers. No runtime impact today (`isEmpty()` has no callers, and `Store.to()` populates all-or-nothing so the new field is never the sole non-null pointer), but for consistency with the established pattern consider adding `and this.body_consumption_tracked == null` (or just deleting `isEmpty()` as dead code).