Release v0.0.285 — #717 Codex WS error hardening - #718
Merged
Conversation
Replay yxlyx's #717 onto current main: retire the socket on type:error, re-anchor only when the rejected body sent previous_response_id, and keep last_api_error on the bounded diagnostic path. agent.zig stays at the 600-line ceiling.
Release-cut bump after the #717 fold. Slack stays 25.
Enter during a live turn copied only the typed line. Chips live on Model.images, so the follow-up went out as text and the pixels stayed in the composer. Queueing now prefixes the same @[path] markers a normal send uses, and an image-only Enter queues the chip instead of treating empty text as force-interrupt.
Native chips and TUI live-reply landed on main after the 285 branch cut; they are now on the release line with the livetail split.
Listing used Io.Dir.cwd().realPath, which can lag posix.chdir, so a round-trip use reported the primary tree as active while bash was still in the secondary — and .already skipped the chdir. Star, already, and enter now read libc getcwd, compare realpaths (/tmp vs /private/tmp), and refuse to claim success unless getcwd matches the target. Co-Authored-By: Codegraff <blackfloofie@codegraff.com>
Every NDJSON line called setChats, which re-parsed markdown for every prior bubble: openPath/openChanges were new closures so memo could not stick, and settled rows still ran the typewriter effect. Coalesce patches to rAF, memo user/assistant rows, freeze typewriter on done/error, and tree-shake iconoir-react. Co-Authored-By: Codegraff <blackfloofie@codegraff.com>
The follow-tail pin treated a 240px near-bottom band as still following, so scrolling up during a turn was overwritten on the next token (#724). Pin only while the reader is at the tail; scrolling away pauses follow. While a turn is running, Enter queues the next prompt instead of no-op, and the composer stays usable. Queued lines drain in order when the turn ends.
284 stays published. Native scroll no longer yanks mid-stream (#724); follow-ups queue while a turn runs; workspace switch reports cwd.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Draft cut of v0.0.285 after v0.0.284. No merge to
mainand no GitHub tag until asked.Folded from
mainafter the branch cutmainmoved two commits past the 285 branch (7da4ff2). Both are now on this line via mergea01413a:0fb41c0— tools stream with the answer, not as a wall on top. Native: pin the thread scroller (no WKWebViewscrollIntoViewjitter), interleave tool chips at the text cursor, collapse a settled batch to “Explored N”, keep markdown list numbers. TUI: drop the Thinking row once tokens arrive and paint the live stream as the assistant reply;codedbfolds as “Looked up N items”.1632b0d— split live-stream helpers intoTUI/livetail.zigsoscrollback.zigstays under the 600-line ceiling. Behavior unchanged.Already on this cut
main). ImmediatecloseCodexWsontype:error,shouldReanchorRequestrequires a rejectedprevious_response_id, unparseable bodies usefailureDiagnostic./btwnow queue composer image chips (@[path]) with the text. Image-only Enter queues the chip instead of force-interrupt.Notes / tests
Related