* test(desktop): stress long agent sessions in the multitab perf scenario --tools seeds every transcript with settled tool rounds and drives the live stream as a working agent turn (tool calls opened and completed between text chunks), and each tile reveal is timed to next paint (reveal_max_ms) so deep transcripts report their mount cost. * perf(desktop): hold the transcript window cut steady while streaming A fresh weight-walk per store flush slid the cut forward one message at a time, ~30x/s, and every slide re-indexed the whole windowed transcript — each row rendered a different message and the runtime repository took its O(window) rebuild path instead of the one-message update. advanceTranscriptWindow anchors the cut to a message id and re-cuts once per ~half page of new content instead of once per flush. * perf(desktop): stable rows, stepped backfill, pane-shared render budget Three thread-list fixes for long streaming sessions: memoize the visible- groups slice and each turn row so a budget-cut advance no longer re-renders every mounted turn per streamed token; raise the first-paint backfill in BACKFILL_STEP slices (one bounded commit per frame) instead of a single 20-to-600 transition whose commit landed as a 780ms freeze mid-stream; and share RENDER_BUDGET across mounted panes so a 4-way grid mounts a quarter page per pane instead of 4x the fibers. |
||
|---|---|---|
| .. | ||
| perf | ||
| .gitignore | ||
| after-pack.mjs | ||
| assert-dist-built.mjs | ||
| assert-dist-built.test.mjs | ||
| assert-root-install.mjs | ||
| before-build.mjs | ||
| before-pack.mjs | ||
| before-pack.test.mjs | ||
| bundle-electron-main.mjs | ||
| click-session.mjs | ||
| dev-mock.mjs | ||
| dev-no-hmr.mjs | ||
| diag-code-live.mjs | ||
| diag-drag-churn.mjs | ||
| diag-drag-trace.mjs | ||
| diag-jump.mjs | ||
| diag-key-latency.mjs | ||
| diag-live-state.mjs | ||
| diag-overlay-ab.mjs | ||
| diag-overlay-churn.mjs | ||
| diag-overlay-full.mjs | ||
| diag-overlay-sweep.mjs | ||
| diag-real-loop.mjs | ||
| diag-ro-storm.mjs | ||
| diag-scroll-reset.mjs | ||
| diag-sidebar-dom.mjs | ||
| diag-switch-autopsy.mjs | ||
| diag-switch-trace.mjs | ||
| eval.mjs | ||
| gen-share-codes.ts | ||
| live-drive.mjs | ||
| notarize-artifact.mjs | ||
| notarize.mjs | ||
| patch-electron-builder-mac-binary.mjs | ||
| probe-command-palette.mjs | ||
| probe-model-picker.mjs | ||
| probe-renderer.mjs | ||
| probe-thread.mjs | ||
| profile-model-picker.mjs | ||
| profile-typing-lag.md | ||
| rebuild-native.mjs | ||
| reload-renderer.mjs | ||
| reload.mjs | ||
| run-electron-builder.mjs | ||
| set-exe-identity.mjs | ||
| stage-native-deps.mjs | ||
| stage-native-deps.test.mjs | ||
| test-desktop.mjs | ||
| utils.mjs | ||
| write-build-stamp.mjs | ||
| write-build-stamp.test.mjs | ||