Repository navigation
fix(web): app UI ports from upstream (2026-10-21) - #284
Merged
Merged
Conversation
Bucket assistant/user row types by text length so LegendList's per-type size average stays close to the rows it estimates. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…nger read as failed connections (pingdotgg#18469, pingdotgg#14518) A lost live session clears the last failure instead of reporting its close as one, and reaching the synchronizing stage adds a 75 second budget for the first config snapshot on top of the 15 second setup budget. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ves (pingdotgg#19312) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… run (pingdotgg#20996) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ery custom model (pingdotgg#19722, pingdotgg#14961) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…gg#21069) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Backslash relative paths, quoted paths with spaces, and home-relative Windows paths now link in the terminal. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ers (pingdotgg#19627) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…pingdotgg#19201) Ports the clipboard formatter into apps/web (the fork has no shared media actions module) and applies it to chat file links and the files panel. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…21195) SidebarV2's WorkingDuration called Date.now() in render with a tick state it never read, so the React Compiler could cache the label and freeze it. The label now reads a shared useSyncExternalStore second clock in render. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…onnects (pingdotgg#20852, pingdotgg#20380) ChatMarkdown subscribed to the whole server config, and the fresh availableEditors array from each push rebuilt openInPreferredEditor and with it every markdown renderer. An atom now keeps the editor list stable while it is equal, and the prepared connection is read at click time. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… draft (pingdotgg#18672) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…nment (pingdotgg#20183) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ingdotgg#17886) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ingdotgg#18341) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… VCS refreshes (pingdotgg#5570, pingdotgg#22159) Provider and server updates and VCS status refreshes get a 120 second threshold, and the untracked-method check now sees the bare method instead of the environment-suffixed display tag. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…retries it (pingdotgg#20737) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ks (pingdotgg#17658) The stored height stays the user's preference and the window only caps what renders, so the drawer grows back when the window does. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…nu (pingdotgg#19671) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…tokens (pingdotgg#17539) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…#19923) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ns (pingdotgg#16026) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…es (pingdotgg#14745) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…g#15738) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ies (pingdotgg#18387) The file-link prescan regex backtracked over every suffix of an unclosed label or destination (270 to 850 ms on 32k character adversarial text). A linear scanner with the same grammar replaces it. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This was referenced Oct 26, 2026
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.
Upstream t3code shipped a batch of app UI fixes since the last sync that the fork's renderer was missing. This hand-ports them against the fork's own code (Lexical composer, smaller timeline, no right-panel split), one commit per upstream PR.
Ported
latestTurn.state === "error").~\), keeps Unicode paths whole, and resolves~/when the home folder casing differs.\on Windows hosts (chat file links, files panel). Fork has no shared media-actions module, so the formatter lives inapps/web/src/lib/clipboardPath.ts.WorkingDurationcalledDate.now()in render with a tick state it never read, so the React Compiler could cache it and freeze the label; it now reads the shared clock value in render.settleComposerAttachmentUploads)./src/foo.tsat line start no longer opens the slash menu (both parser copies).extractMarkdownLinkHrefsregex was quadratic (270 to 850 ms on 32k char adversarial text, run on every streamed delta). Replaced with a linear scanner that keeps the fork's exact grammar, tested against the old regex.Skipped
🤖 Generated with Claude Code