Fill the window without scrollback, sandbox startup drill-down, --rebuild#66
Merged
Conversation
…uild - Bare `agent` (and `session connect`) no longer scrolls the sandbox notes out of view: the app soft-clears to the top of a fresh window (prior content scrolls into scrollback), pads the top so terminal row quirks and the post-exit sign-off eat padding instead of the first line, and the "using config" preamble moved into the app notice so nothing prints before the first paint. - Sandbox startup renders as one header with a single current-phase line rewritten in place; ctrl+s opens the full step list, arrows drill into a step's logs (live 5-line tail while it runs, stored log once finished). Lifecycle records no longer render as transcript rows. - `agent session start --rebuild` (so also bare `agent --rebuild`) sends force_rebuild to skip the sandbox image cache on the initial provision. No-op until the backend field ships (unknown fields are ignored). - package.json version matches the released v1.1.0 tag, which was cut without the bump commit, so dev builds stop reporting v1.0.0.
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.
What
Four connect-UI/CLI improvements from an interactive debugging session:
1. Bare
agentowns the whole window, no more scrollback surprisesrunConnectsoft-clears before the first Ink paint: newlines push the existing screen into scrollback, the cursor homes to row 1, so the app never starts mid-screen and overflows the window.resume with:sign-off scrolls, so the sandbox startup notes always stay visible (during the run and after detach).using config "X" (repo default)line forstart --connectmoved into the app's opening notice instead of printing before the render (which would land in scrollback). Other modes still print it.resume with: agent session connect <id>line lost its leading newline and lands on a reserved row.2. Sandbox startup: one line, rewritten in place, with drill-down
✻ Starting sandbox…header shows a single current-phase line under it (Building image… · <latest output>→Ready!), replacing the stacked setup line +Sandbox ready · …transcript notice. Lifecycle records no longer render as transcript rows.deriveSandboxStatewith unit tests (accumulation across chunked records, reset on wake,--no-recordscursor).3.
agent session start --rebuildSends
force_rebuild: trueso the initial provision skips the sandbox image cache (fresh full build whose snapshot refreshes the cache). Works from a bareagent --rebuildtoo, since bare invocations forward tosession start --connect. Safe to ship ahead of the backend: unknown request fields are ignored, so the flag is a no-op until the server field lands (backend branchsession-force-rebuildin the monorepo).4. Version honesty
package.json bumped 1.0.0 → 1.1.0 to match the released v1.1.0 tag, which was cut without the bump commit. Dev builds (
bun run compile) stop reporting v1.0.0; released binaries were unaffected (the workflow stamps the tag version at build time).Testing
tsc --noEmitclean; 210 vitest tests pass (9 new)./v1server that replays the sandbox lifecycle, then emulating the captured bytes with pyte: first paint never scrolls, the header survives exit, ctrl+s/arrows produce the step list, running tail, and finished log views.