Skip to content

[GUI] Helper 64K window, chat layout, and the fork's 0.2.7 GUI work - #4606

Closed
xvcezrqpbxtpzblrt wants to merge 21 commits into
Niko1221:mainfrom
xvcezrqpbxtpzblrt:rb/027
Closed

xvcezrqpbxtpzblrt wants to merge 21 commits into
Niko1221:mainfrom
xvcezrqpbxtpzblrt:rb/027

Conversation

@xvcezrqpbxtpzblrt

@xvcezrqpbxtpzblrt xvcezrqpbxtpzblrt commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

This is the consolidated submission for the fork's 0.2.7 work. The 18 separate PRs are closed and point here, so the review has one place instead of nineteen overlapping branches. The branch is based on 5e8a4cca and carries:

  • Helper agents: a 64K working window measured through the existing context meter (strata-context). The session keeps its model route, because a route added later is rejected by every chat created before it (child LLM route ... is not allowed for this Session); the measured prompt is scaled by realWindow / 65536, so the Harness's 80% threshold is reached at 64K real tokens. Answers are capped at 19,660 tokens and the parent session is never scaled. The helper sheet has a task card, tool lines, pinned modes, queue and approval states, and opens a finished helper at the top.
  • Chat layout: answers are a document on the full 864px column (prose at 56ch, code/tables/pictures/file cards at the full width, the person's bubble right-aligned at 66ch). The composer's left edge lands on the answer column at 2560, 1440, 1024 and 800px. Metadata is on the 12px scale with 42px primary controls, hover and 2px focus rings.
  • Chat surface: the window opens maximized and restores where it was left; no white first frame; the preview column exists only when it holds something; reasoning tokens and time are shown; the models screen opens on what this computer already has; the installer speaks the app's nine languages.
  • Host and agent: the system proxy is followed and state survives a crash; an edit copies the exact text and says when it does not match; a tool call written as text is shown as not run; time-skip stop; helper rows are sealed when a turn ends ([GUI] Stopped background helper keeps its In progress row after a restart #4218).
  • Engine: the prompt loan is given back to the K/V for a 512K context, and the conversation cache is sized for one snapshot of the configured context.

Validation

Passed:

  • npm test in apps/host with the real Harness: 1317 tests, 1310 passed, 4 skipped.
  • npm run typecheck, npm run build, node scripts/audit-ui.mjs (clean).
  • Real Harness, 512K model, 6 rounds of ~35K characters: the helper compacted, its pressure after compaction was below 80K, and the next message was answered.
  • Manual, a 315,028-byte file read by a helper in 7 reads: it still returned the last line after the context compacted; the main chat re-read the file and confirmed it.
  • Manual, installed 0.2.7 build on Windows 11 (RTX 3080 Ti Laptop, 16GB, Swift IQ3_XXS, 512K): the window opens maximized at 2576x1408; a new chat answers; the helper sheet measured 844px for composer/task/messages and the person's bubble ended at 1695, the column's right edge.

Failed (known, not caused by this change):

  • agent-context.test.mjs: the Harness compaction case that still fails upstream.
  • chat-shell.test.mjs and model-directory.test.mjs: the tests cannot create a symlink on this Windows account (EPERM), so those two safety tests do not run here.

Not run:

  • macOS. The helper sheet's 18px right inset assumes the 14px scrollbar Chromium uses on Windows; overlay scrollbars would differ.

Limits

  • Hairline borders are 1.27:1 against the page, below the 3:1 non-text guideline. This is the app's existing line style and was not changed in one sheet only.
  • The upstream Harness compaction failure above remains.
  • A 64K helper keeps the last ~10K tokens verbatim and replaces older turns with a summary; the visible transcript stays, but the helper may forget early details.
  • The diff is large because this is the combined branch. If you would rather review it in pieces, say which area and I will split it; the closed PRs were those pieces.

local added 21 commits October 28, 2026 12:38
…tart, and an approval dot on the subagents button
… helper opens at the top, a long task folds, read rows carry their line range
@xvcezrqpbxtpzblrt

Copy link
Copy Markdown
Contributor Author

Hi @Niko1221 — a short note so this does not read as a duplicate.

I had 18 separate PRs open for this work (the engine loan release, window state, the helper panel, the nine languages, and the rest). None were merged. Rather than leave 19 overlapping branches in your queue, I closed those 18 — each one now points here — and put the combined work in this branch.

The only work that was not in those PRs is the last part: a helper's 64K working window measured through the context meter, and the chat layout (document answers, the composer aligned with the answer column, the helper sheet). The rest of the diff is what those PRs described.

If you would rather review this in the focused pieces the repo asks for, say so and I will reopen the 18 or split this branch along the same areas — whichever is less work for you. If the combined branch is acceptable, no action is needed.

@xvcezrqpbxtpzblrt

Copy link
Copy Markdown
Contributor Author

Closing this for now: I do not want to leave a large mixed branch in the queue. If I pick this up again I will come back with focused PRs, one problem each.

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