sync(upstream): merge upstream/main b2ee17d7c into fork/dev - #377
Merged
Conversation
…te notice (pingdotgg#5595) Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: codex <codex@users.noreply.github.com>
…otgg#5593) Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Adopts the four upstream commits after #375: thread actions from the chat header title (pingdotgg#5592), per-turn runtime-mode recording (pingdotgg#5593), chat timeline positioning stabilization (pingdotgg#5449), and the background-work banner no longer hiding behind the update notice (pingdotgg#5595). The chat header gains upstream's inline rename and title-menu (shared threadActionMenu.logic) woven around the fork's remote-VS-Code open and usage-dot/host-resource chrome. SidebarV2 adopts the shared menu builder in place of the fork's buildSidebarV2ThreadContextMenuItems; the fork's copy-thread-id entry moves into the shared menu (and gains a handler in useThreadActionMenu) so both surfaces offer it. ChatView takes upstream's folded reconnect/version banner logic (pingdotgg#5595, a superset of the fork's resuming-update suppression) and the anchor-clearing rAF scroll (pingdotgg#5449), keeping the fork's unread-flag clearing and its unread-activity observer. Co-authored-by: Patrick Roza <42661+patroza@users.noreply.github.com>
omegent-app Bot
added a commit
that referenced
this pull request
Aug 7, 2026
Adopts the seven upstream commits after #377: iOS terminal clear no longer resets the session (pingdotgg#5440), Android scroll padding above the nav bar (pingdotgg#5415), Android composer opacity (pingdotgg#5582), Clerk auth navigation headers (pingdotgg#5140), the mobile app version bump to 1.0.2 (pingdotgg#5588), click-to-unpin (pingdotgg#5578), and the correct new-thread shortcut in the sidebar tooltip (pingdotgg#5594). Three resolutions: - ThreadComposer: pingdotgg#5582 moves the backdrop gradient off Animated.View, where Reanimated silently drops experimental_backgroundImage on Android — the very bug it fixes. The fork's gradient was on that Animated.View, so it is removed there and the fork's stronger lower-band stops (0.82/0.96 dark, 0.88/0.98 light) ride on upstream's plain-View backdrop instead. - app.config: upstream's 1.0.2 version bump with the fork's MOBILE_RUNTIME_VERSION_OVERRIDE escape hatch kept; its default policy is the same fingerprint upstream documents. - SidebarV2: upstream's pingdotgg#5594 label ordering (chat.new before chat.newLocal) adopted — the fork's button has exactly the semantics upstream describes, routing multi-project setups through the palette picker and creating immediately otherwise. The fork's board and command-palette labels stay. Upstream's two new react-mocking harness tests (pingdotgg#4479) are added to the fork's isolatedUnitTestFiles. The fork's unit project runs isolate: false to reuse each worker's module graph; upstream has no such config, so those tests assume full isolation. Under a shared registry the component graph can already be bound to the real react/compiler-runtime by an earlier file, the vi.mock("react") never applies, and the compiled component reports a memo-cache hit and skips the hooks the test asserts on. That is what made AddProviderInstanceDialog.environment fail this PR's CI while passing in isolation. Two other react-mocking tests were already in that list. Co-authored-by: Patrick Roza <42661+patroza@users.noreply.github.com>
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.
Adopts upstream through
b2ee17d7c— the four commits after #375.Important
Merge with a merge commit, not squash. Squashing collapses the second parent and discards
upstream's commits as ancestors — the thing that keeps "commits behind upstream" honest.
Upstream commits entering the product
b2ee17d7c7963cc70fb792ed9f72e66b1fdfResolutions
ChatHeader.tsxChatHeader.test.tspass)SidebarV2.tsxbuildSidebarV2ThreadContextMenuItemswith the sharedthreadActionMenu.logicbuilder used by the headeruseThreadActionMenu, so both surfaces offer itChatView.tsxbannersChatView.tsxscrollscrollToEndvs the fork's unread-flag clearing in the same callbackComposerBannerStack/ChatHeader.test.tsdefaultvariant +urgentflag; both test suites)Adversarial review
grok-4.5 and gpt-5.6-sol over the
git show --ccsurface with worktree access. Both independently converged on the same defect:!reconnectingThroughVersionSkewguard on the server-version banner, so idle-reconnect-through-skew would show both the folded calm line and the update offer — exactly the stacking pingdotgg#5595 removesbuildSidebarV2ThreadContextMenuItemsimport left in SidebarV2Clean per both: menu ids ↔ handlers across both consumers, rename focus/blur/escape paths, fork chrome reachability, timeline weave, and the updated test expectations (extended, not weakened).
Verification
CodexTextGenerationlaunch-args one,which reproduces on unmerged
fork/dev.pnpm-lock.yamlregenerated.Co-authored by @patroza
opened by Patrick Roza in chat thread Discord · Discord · T3