Skip to content

chore: cherry-pick 14 upstream commits#13

Merged
gabrielMalonso merged 15 commits intomainfrom
gabrielMalonso/fix-review-submit-flow
Mar 12, 2026
Merged

chore: cherry-pick 14 upstream commits#13
gabrielMalonso merged 15 commits intomainfrom
gabrielMalonso/fix-review-submit-flow

Conversation

@gabrielMalonso
Copy link
Copy Markdown
Owner

@gabrielMalonso gabrielMalonso commented Mar 12, 2026

What Changed

Integrated 14 upstream commits from pingdotgg/t3code including new-thread shortcuts with terminal focus handling, terminal split limits per group, GitHub Actions version updates, and various bug fixes.

Why

Syncs the fork with critical upstream improvements including terminal UI fixes, CI/CD updates, and keyboard shortcut enhancements while preserving fork-specific features (DEFAULT_ENV_MODE default, worktree sync, ChatView component split, Agent SDK integration).

Commits Integrated

  • dcd2e5c3 - fix: don't restart app on normal exits in dev runner
  • 1e276573 - feat: add fuzzy workspace entry search
  • 724f54c2 - fix: clean up timeout in PlanSidebar to prevent memory leaks
  • 85c174a6 - fix: Linux icon now shows up
  • db17ff33 - fix: syntax errors from bad merge
  • b6eba334 - fix: add logging for WebSocket errors
  • b496ae83 - fix: add error logging for code highlighting failures
  • 74c22628 - chore: update actions/checkout and actions/github-script versions
  • d9d0216e - fix: pr size workflow
  • ab0002f9 - update: project removal copy
  • fcbf3f3c - fix: new-thread shortcuts when terminal is focused
  • c52ad29b - fix: mod+N new thread flow and terminal split limits per group
  • 224acebb - fix: add pointer cursor to running stop-generation button

Note: Conflicts resolved with strategic decisions: accepted upstream CI workflows, merged keyboard handler into _chat.tsx route, preserved fork's DEFAULT_ENV_MODE customization in useHandleNewThread.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features

    • Fuzzy workspace search with improved ranking.
    • Global keyboard shortcuts for creating new chat threads.
    • Per-group terminal limits and improved terminal-focus detection.
  • Bug Fixes

    • Safer code-highlight fallback to plain text on errors.
    • Improved Electron handling for abnormal exits.
  • Improvements

    • "Delete" → "Remove" wording for projects.
    • Better cursor feedback and copy-to-clipboard UX.
  • Chores

    • CI/workflow action versions updated.

nmggithub and others added 14 commits March 12, 2026 18:34
)

Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…gg#949)

Co-authored-by: hobostay <hobostay@users.noreply.github.com>
Co-authored-by: hobostay <hobostay@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
- move chat-wide key handling into `_chat` route-level shortcut handler
- extract reusable `useHandleNewThread` hook and `isTerminalFocused` helper
- update browser WS fixture to support `terminalOpen` RPC shape
- ensure `chat.new` creates a fresh draft after a promoted draft thread
- enforce terminal cap per split group (4) while allowing additional terminal groups
- refine sidebar row selected/active styling via shared class-name logic and tests
…otgg#900)

Co-authored-by: Julius Marminge <julius0216@outlook.com>
The cherry-pick of WebSocket error logging (b6eba33) left a missing
closing brace for the connect() method, causing a TS compilation error.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@chatgpt-codex-connector
Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 12, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 824c4be8-0be5-4e7d-9901-606084710f33

📥 Commits

Reviewing files that changed from the base of the PR and between 2e4e7c7 and ccd12a0.

📒 Files selected for processing (1)
  • apps/web/src/routes/_chat.tsx

📝 Walkthrough

Walkthrough

GitHub Actions workflows updated; desktop resource resolution and abnormal-exit handling added; server workspace search refactored to scoring + fuzzy matches; web app terminal limits moved from per-thread to per-group; keyboard shortcuts and thread-creation extracted into a new hook and global shortcuts component.

Changes

Cohort / File(s) Summary
GitHub Actions Workflow Updates
.github/workflows/ci.yml, .github/workflows/pr-vouch.yml, .github/workflows/release.yml
Action version bumps (checkout, setup-node, cache, upload/download-artifact, github-script). No control-flow changes.
PR Size Workflow
.github/workflows/pr-size.yml
Refactored into prepare-config + sync-label-definitions + label job; uses outputs, changes event gating (pull_request_target) and simplifies permission error handling.
Desktop: exit handling & resources
apps/desktop/scripts/dev-electron.mjs, apps/desktop/src/main.ts, scripts/build-desktop-artifact.ts
Exit handler records code/signal and only restarts on abnormal exits; resource resolution adds prod-resources path; build copies resources to prod-resources.
Server: workspace search refactor
apps/server/src/workspaceEntries.ts, apps/server/src/workspaceEntries.test.ts
Adds SearchableWorkspaceEntry, fuzzy subsequence scoring, multi-tier scoring (direct/prefix/contains/fuzzy), ranking utilities, streaming top-N insertion, and tests for fuzzy matching and truncation. WorkspaceIndex.entries type updated.
Web: terminal limits → per-group
apps/web/src/types.ts, apps/web/src/terminalStateStore.ts, apps/web/src/terminalStateStore.test.ts, apps/web/src/components/ThreadTerminalDrawer.tsx, apps/web/src/components/ChatView.tsx
Renamed MAX_THREAD_TERMINAL_COUNT → MAX_TERMINALS_PER_GROUP; enforce per-group cap when adding terminals; removed global hard cap slices; updated guards, labels, and tests.
Web: shortcuts & thread creation hook
apps/web/src/hooks/useHandleNewThread.ts, apps/web/src/routes/_chat.tsx, apps/web/src/lib/terminalFocus.ts
Introduces useHandleNewThread hook for draft/thread creation and navigation; ChatRouteGlobalShortcuts wires global shortcut handling (chat.new, chat.newLocal) and uses isTerminalFocused for context.
Web: components & misc utilities
apps/web/src/components/ChatView.browser.tsx, apps/web/src/components/ChatMarkdown.tsx, apps/web/src/components/PlanSidebar.tsx, apps/web/src/components/Sidebar.tsx, apps/web/src/components/Sidebar.logic.ts, apps/web/src/components/Sidebar.logic.test.ts, apps/web/src/components/Sidebar.tsx, apps/web/src/wsTransport.ts
ChatView.browser: sessionStatus and WS RPC updates; ChatMarkdown: import style + improved error logging; PlanSidebar: copy feedback timer; Sidebar: extract resolveThreadRowClassName, replace inline styles, rename "Delete"→"Remove" in project flows; wsTransport: added error-event logging.
Scripts / CI ancillary
scripts/build-desktop-artifact.ts, .github/workflows/*
Minor build script copy step for prod-resources and various CI workflow version bumps.

Sequence Diagrams

sequenceDiagram
    participant User as User Input
    participant CRS as ChatRouteGlobalShortcuts
    participant CMD as resolveShortcutCommand
    participant HTN as useHandleNewThread
    participant Store as Draft/Thread Store
    participant Nav as Navigation

    User->>CRS: Press shortcut (e.g., chat.new)
    CRS->>CMD: resolveShortcutCommand(keybinding, context)
    CMD->>HTN: handleNewThread(projectId, options)
    HTN->>Store: Read/create draft & thread metadata
    Store-->>HTN: Return draft/thread info
    HTN->>Nav: Navigate to thread view (new or existing)
    Nav-->>User: Thread UI displayed
Loading
sequenceDiagram
    participant Query as Search Query
    participant Converter as toSearchableWorkspaceEntry
    participant Scorer as scoreEntry / scoreSubsequenceMatch
    participant Ranker as insertRankedEntry
    participant Result as searchWorkspaceEntries result

    Query->>Converter: Normalize entries to searchable form
    loop for each entry
        Query->>Scorer: scoreEntry(normalizedEntry, query)
        Scorer->>Scorer: Check direct/prefix/contains/fuzzy subsequence
        Scorer-->>Ranker: Return score or null
        Ranker->>Ranker: Maintain top-N insertion (sorted)
    end
    Ranker-->>Result: Return entries[] and truncated flag
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Poem

🐰 I hopped through diffs with a twitchy nose,

Workflows leapt forward, resources in rows,
Terminals grouped like carrots in a patch,
Fuzzy searches find paths with a scratch,
Shortcuts now guide me — hop, click, compose!

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title 'chore: cherry-pick 14 upstream commits' accurately describes the main objective of the PR, which is to integrate 14 upstream commits from the original repository.
Description check ✅ Passed The PR description provides comprehensive coverage with 'What Changed', 'Why', and a detailed list of 14 integrated commits with brief summations, exceeding the required template sections. Note indicates conflicts resolved with strategic decisions.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch gabrielMalonso/fix-review-submit-flow
📝 Coding Plan
  • Generate coding plan for human review comments

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

You can get early access to new features in CodeRabbit.

Enable the early_access setting to enable early access features such as new models, tools, and more.

@github-actions github-actions bot added the vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. label Mar 12, 2026
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@gabrielMalonso gabrielMalonso merged commit b684518 into main Mar 12, 2026
4 checks passed
@gabrielMalonso gabrielMalonso deleted the gabrielMalonso/fix-review-submit-flow branch March 24, 2026 15:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants