upstream/2026-04-26 PR2: 単一ファイル競合 UI 系 3 commits 取り込み#436
Conversation
* Add optimistic Electric collection updates * Centralize optimistic collection actions * Update optimistic collection docs * Address optimistic update review comments
* fix(desktop): stabilize v2 terminal resize * fix(desktop): refresh terminal after scroll restore
* Improve v2 pane header responsiveness * Tighten compact v2 pane chrome * Align active tab close background * Align active workspace and pane backgrounds * Use workspace active background for pane chrome * Remove tab bar bottom border * Restore tab bar bottom border * Move preset settings to end * Show and hide existing presets * Use visibility controls for presets * Address pane UI review comments
|
Warning Rate limit exceeded
Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 3 minutes and 23 seconds. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (54)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🧹 Preview Cleanup CompleteThe following preview resources have been cleaned up:
Thank you for your contribution! 🎉 |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d3e31704d8
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| const transaction = chatSessionActions.deleteSession(sessionIdToDelete); | ||
| if (!transaction && !isDesktopChatDevMode()) { | ||
| throw new Error("Failed to delete chat session"); | ||
| } |
There was a problem hiding this comment.
Await optimistic delete before resolving session deletion
handleDeleteSession now returns before the optimistic mutation is persisted, but SessionSelectorItem calls this through toast.promise, so the UI reports “Session deleted” immediately even if the backend delete later fails and rolls back. In non-dev mode (e.g., network/server error), this also records chat_session_deleted as a success path for a failed delete. Await transaction.isPersisted.promise (or propagate that promise) so callers only see success after persistence actually completes.
Useful? React with 👍 / 👎.
PR1〜PR5 (#435 #436 #437 #438 #440) で 13 commits 全件 cherry-pick + 手動 conflict 解消で取り込み済み。 本コミットは git 履歴上 behind=0 とするための ours マージ記録。 取り込み済み 13 commits: - 1f55c62 Fix host service restart adoption (superset-sh#3732) - 0fe65d2 test(desktop): remove host-service-coordinator test (superset-sh#3734) - 3012b5a Add optimistic Electric collection updates (superset-sh#3722) - c272a51 fix(desktop): drop branch row from v2 sidebar workspace item (superset-sh#3733) - c2f3fdc feat(desktop): add fade-edge mask utilities (superset-sh#3735) - 682d07c fix v2 terminal osc links (superset-sh#3736) - 7c0d22b feat(ports): surface remote host-service ports in the sidebar (superset-sh#3676) - 6a3be2d [codex] Stabilize v2 terminal resize (superset-sh#3739) - 8928ac6 [codex] Improve v2 pane header responsiveness (superset-sh#3737) - 5fe3d22 refactor(desktop): tidy v2 terminal session dropdown (superset-sh#3743) - 66c23d6 Fix automation timezone scheduling (superset-sh#3738) - 16e270c [codex] Add terminal session titles (superset-sh#3740) - 583fa5d fix(desktop): refit v2 terminal after font settle (superset-sh#3742)
Summary
upstream (superset-sh/superset) からの 9 commits 取り込みバッチの PR2(単一ファイル競合・UI 系 3 commits)。3 commits を
cherry-pickで取り込み、merge-tree dry-run で予測した競合を fork 固有機能を保持する形で手動マージ。取り込み内容
3012b5a57useOptimisticCollectionActions経由の楽観更新に集約。6a3be2d35measureAndResizeがスクロール状態を保持し、createResizeSchedulerで debounce + dispose を提供。8928ac62eisActiveベースのtext-foreground/text-muted-foreground切替、min-w-0 truncateレイアウト等。Fork 側のコンフリクト解決
useDashboardSidebarWorkspaceItemActions.ts(3012b5a)useCollections(handleDeletedで使用)と upstream のuseOptimisticCollectionActions(submitRenameで使用)を両方残す。terminal-runtime.ts(6a3be2d)attachToContainer: fork のterminalRendererDebug.infoログを残しつつ、upstream のif (measureAndResize(runtime)) onResize?.()戻り値判定を採用。runtime.terminal.refresh(0, ...)は新measureAndResize内に内包されるので削除。detachFromContainer: fork の debug log を残しつつ、upstream の_disposeResizeObserverクリーンアップを末尾に追加。FilePane.tsx/page.tsx(8928ac6)getBaseNameimport を採用(fork のpathBasename.tsは既に Windows 対応済み/[/\\]/実装)。filePath.split(/[/\\]/).pop()をgetBaseName(filePath)に置換。Windows 対応は維持。useWorkspaceHotkeys.ts(8928ac6)useMemoimport を追加。upstream のvisiblePresetsfilter(pinnedToBar !== false)を採用。useCollectionsベースの sidebar 状態管理を維持し、upstream のuseV2UserPreferencesは不採用(fork はv2WorkspaceLocalState経由で同等管理済み)。usePaneRegistry.tsx(8928ac6、最大の競合 6 ブロック)getFileNameをgetBaseNameベースに統一(FORK NOTE で Windows 対応理由を残す)。FilePaneTabTitle→FilePaneTabTitleStatic/FilePaneTabTitleWithDocument二段構成(spreadsheet 分岐 + memodisplayName)を維持しつつ、isActiveプロパティを各層に伝播し、upstream の新スタイル(min-w-0 items-center gap-1.5 text-xs transition-colors duration-150、size-3.5、isActive ? text-foreground : text-muted-foreground、title={filePath}ホバー)を両方の Title コンポーネントに適用。file.renderTitleの prop 渡しでdisplayNameとisActiveを併存。file.onBeforeCloseの name 計算をgetFileName(data.filePath)に統一。format fix
<FileIcon ... />の多行整形のみを別 commit として記録(d3e31704d)。Fork 固有機能ヘルスチェック
検証
bun install: ✅ (5757 packages, 154s)bun run typecheck: ✅ (27/27 successful)bun run lint: ✅ (Biome: 4323 files, no fixes applied; format fix は別 commit で吸収)bun run --filter @superset/desktop compile:app: ✅ (electron-vite build, 6m 4s, exit 0)bun run --filter @superset/desktop build(electron-builder の dmg 生成) は時間消費が大きいので省略。マージ後の CI / リリース時に確認。後続 PR の予定
1f55c623a+0fe65d2307c0d22b77Test plan
title表示_disposeResizeObserverがクリーンに走る(メモリリーク回帰なし)useOptimisticCollectionActions.renameWorkspace経由で動くpinnedToBar=falseのプリセットが hotkey 対象から外れる