Skip to content

🐛 fix(edge): order exec input and add outbound backpressure to the tunnel#20

Merged
scttbnsn merged 2 commits into
mainfrom
quality/edge-tunnel-test-harness
Jun 16, 2026
Merged

🐛 fix(edge): order exec input and add outbound backpressure to the tunnel#20
scttbnsn merged 2 commits into
mainfrom
quality/edge-tunnel-test-harness

Conversation

@scttbnsn

Copy link
Copy Markdown
Contributor

Edge tunnel robustness fixes (SPEC §13).

  • fix(edge): order exec input and add outbound backpressure to the tunnel
  • docs: mark edge tunnel robustness shipped in ROADMAP and CHANGELOG

Branch was committed locally in a prior session; pushing + PRing so it isn't lost. CI validates on this PR.

scttbnsn added 2 commits June 16, 2026 15:12
…nnel

- 🐛 fix(edge): register exec sessions synchronously and buffer early input in
  arrival order via a single per-session writer goroutine, so keystrokes typed
  before the Docker exec is live are replayed in order instead of dropped
- 🐛 fix(edge): front all outbound writes with a single sendPump goroutine over a
  bounded queue with a per-frame write deadline; evict (and reconnect) a
  controller that can't keep up instead of head-of-line-blocking every session,
  stalling the read pump, or hanging the agent indefinitely
- 🔄 refactor(edge): add a consumer-side dockerAPI seam so exec and request
  fan-out are testable against a scripted fake daemon with no live socket
- 🧪 test(edge): add a dedicated tunnel test harness (in-memory WS pair, scripted
  fakeConn/fakeDocker) covering hello signing, request dispatch/backpressure,
  exec-session lifecycle, ordered input replay, and send-path eviction
All three sub-items (ordered exec I/O, outbound backpressure, dedicated test
harness) have landed, so flip the roadmap line to shipped and record the two
fixes plus the harness under [Unreleased].

@biggest-littlest biggest-littlest left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM — exec input ordering + outbound backpressure on the tunnel reads correctly.

@ALARGECOMPANY ALARGECOMPANY left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. Edge robustness fix is sound.

@scttbnsn scttbnsn merged commit a28adbb into main Jun 16, 2026
16 checks passed
@scttbnsn scttbnsn deleted the quality/edge-tunnel-test-harness branch June 16, 2026 19:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants