Skip to content

Fix automation HTTP reads across peer shutdown on macOS - #55

Merged
mskutin merged 1 commit into
mainfrom
codex/automation-socket-deadline
Oct 19, 2026
Merged

mskutin merged 1 commit into
mainfrom
codex/automation-socket-deadline

Conversation

@mskutin

@mskutin mskutin commented Oct 19, 2026

Copy link
Copy Markdown
Owner

The production release run exposed an intermittent macOS HTTP error when the peer closed before the client finished reading: changing socket timeouts during reads could fail with EINVAL despite a buffered response. Accepted sockets also have platform-dependent nonblocking inheritance.

Configure every connection as nonblocking once before exchanging bytes, then enforce absolute read/write deadlines while handling WouldBlock and Interrupted. This preserves bounded requests without changing socket options after peer shutdown.

Validation: protocol/CLI tests and Clippy pass, including immediate peer shutdown, delayed request bodies and stalled headers. The isolated native Windows app + CLI integration test passes. The full platform matrix will validate macOS/Linux before the unpublished 0.10.0 release proceeds.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-19T08:09:30.630898Z 2f87529 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@mskutin
mskutin merged commit a0a4cec into main Oct 19, 2026
9 checks passed
@mskutin
mskutin deleted the codex/automation-socket-deadline branch October 19, 2026 08: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.

1 participant