Repository navigation
perf: reduce chat and page stalls with on-demand agent details - #3834
Merged
Merged
Conversation
Scope GenUI sibling spacing and agent-row child sizing to reduce layout invalidation during transcript updates.
…layout Memoize retained scene content and pause overview sizing observers while inactive, refreshing dimensions on reveal.
…iewports Coalesce mutation and resize measurements into one frame and retain interaction leases while inactive, refreshing them on reveal.
Resolve editor and inlay fonts after asynchronous configuration loading and before model and view writes to reduce forced layouts.
Canonicalize staged bundle paths and publish with backup and rollback, allowing cross-volume AppData installations and reusing complete manifests.
Share failed or partial discovery results among readers of the same load while allowing later requests to retry.
…shots Resolve mode skill counts from one discovery and policy snapshot, expose optional summaries through desktop and CLI hosts, and retain legacy response support.
Calculate manageable subagent counts with the mode catalog and expose optional count fields through desktop, CLI and frontend adapters.
Publish agent cards before summaries and defer complete tool, skill and subagent data until details open. Coalesce detail requests and retain pending selections and dialog state during refresh.
Refresh retained pages without replacing content with loading skeletons. Preserve loaded skill-market pages and isolate asynchronous results by workspace and device surface.
Accept omitted first-attempt metadata only when a single settled attempt is explicit. Retain display section identities across blank-line restoration while preserving raw content and canonical bookmark coordinates.
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.
Summary
Long chats and retained pages repeatedly recalculated styles, layout and derived data, while the agent catalog waited for complete capability data before displaying cards. This change reduces that work and shows the catalog before loading complete details.
Type and Areas
Type: Performance improvement and bug fixes.
Areas: Web UI, design-system styles, Rust core, desktop and CLI host adapters.
Motivation / Impact
Reduce stalls during long-session updates, page switching, first editor initialization and agent catalog entry while preserving scrolling, reading position, editor models, unsaved content and undo history. Optional summary fields retain legacy-host fallback behavior.
At 1463 x 823 CSS pixels / DPR 1.75, three Windows native runs measured medians of 0.408 s for the agent list, 0.678 s for summaries, 0.580 s for first details, and 0.164 s for returning to the list. Deferring complete capability reads moves some work into first detail opening.
Verification
pnpm run capabilities:generate,pnpm run capabilities:check,pnpm run capabilities:test(16 tests),pnpm run website:test(9 tests), andpnpm run website:buildpassed. The generated Tauri command map includes the optional skill summary parameter.pnpm run check:webpassed, including appearance/theme checks and TypeScript checking.git diff --checkpassed. A merge-tree check against current upstream/main found no conflicts.Reviewer Notes
Native verification covers local Windows only. Live SSH workspaces, Peer Device Mode, remote control and detached dispatch were not exercised; mocked remote/surface tests are not live transport evidence. Occasional long frames during generation/navigation remain.
Checklist