Repository navigation
refactor(web): the pull request header's crumbs, title editor and base branch live in their own components - #22672
Conversation
…e branch live in their own components Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — This PR mechanically extracts the existing pull-request header crumbs, base-branch display, and title editor into focused components while preserving their existing callbacks and interactions. It introduces no new capability, schema, deployment, product-default, or static-analysis configuration behavior. You can add or adjust custom eligibility rules. Learn more. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
* revert: "fix(desktop): saved connections survive the Beta rename on macOS and Linux" (pingdotgg#20907) (pingdotgg#22219) Co-authored-by: Julius Marminge <julius@marminge.se> * revert: "fix(web): pinned thread marker stays put when hovering the row" (pingdotgg#11122) (pingdotgg#22223) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: fourteen unverified desktop fixes from the takeover campaign (pingdotgg#22222) Co-authored-by: Julius Marminge <julius@marminge.se> * revert: "fix(web): worktree threads warn when the checkout branch changes" (pingdotgg#14883) (pingdotgg#22225) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(ci): recover from transient download and stale report failures (pingdotgg#22232) * revert: "fix(clients): show question option previews" (pingdotgg#21933) (pingdotgg#22229) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): stop composer banner glass overlap" (pingdotgg#8034) (pingdotgg#22227) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): keep subagent links visible in long background-work banners" (pingdotgg#20054) (pingdotgg#22228) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(scheduler): label fixed-time tasks with the server timezone" (pingdotgg#18653) (pingdotgg#22230) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): preserve snapshot thumbnail context and detail" (pingdotgg#18440) (pingdotgg#22231) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): show idle server updates on environment controls" (pingdotgg#21950) (pingdotgg#22233) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(client): a frozen host no longer shows a heartbeat as slow or blames your DNS (pingdotgg#22212) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(server,web,mobile): a host that drops because it froze now says why (pingdotgg#22213) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert(web): restore grouped projects in the new thread selector (pingdotgg#22242) * test(ssh): wait for server exit during handover (pingdotgg#22252) * fix(web,server): adding a project to another machine takes you there, with no toasts and the right favicon (pingdotgg#22254) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(clients): every PR +/- shows its code, tests, and docs split, without the hover wait (pingdotgg#22255) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): isolate diff worker idle clock (pingdotgg#22259) * ci(release): build macOS desktop on GitHub macos-26-xlarge runners (pingdotgg#22264) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): macOS release signing works on macOS 26.6 runners (pingdotgg#22277) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): pinned threads' pin icon stays put on hover (pingdotgg#22303) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): show pointer cursors on changed-file controls (pingdotgg#22266) * fix(web): use the shared markdown scrollbar width (pingdotgg#22200) * revert: limit bars with many accounts no longer clip names to one letter (pingdotgg#19964) (pingdotgg#22395) Co-authored-by: Julius Marminge <julius@marminge.se> * fix(mobile): pin expo-modules-core so the release smoke patch stays in use (pingdotgg#22343) * fix(server): updates no longer keep every old runtime on disk (pingdotgg#22253) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): chat chips match desktop and the composer again (pingdotgg#22169) * fix(web): normalize disabled terminal button opacity (pingdotgg#22389) * fix(contracts): settings save again when the writing style has default fields (pingdotgg#22203) Co-authored-by: Claude Code <noreply@anthropic.com> * fix(relay): run the relay Worker next to its database (pingdotgg#22065) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): disposable render helper and lint rule for browser tests (pingdotgg#22187) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): use native sheet headers and toolbar filters (pingdotgg#22390) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(ssh): unreaped-server test no longer loses its zombie fixture (pingdotgg#22427) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): require-disposable-render is now an error (pingdotgg#22410) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): migrate the last .ts browser tests and stop wrapping userEvent in act (pingdotgg#22424) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web,mobile): Limits bars show the even-pace mark as a tick in a gap (pingdotgg#22408) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): pooled Limits segments narrower than 6px draw no pace mark; fixture README (pingdotgg#22453) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): the composer stays one row until the draft wraps (pingdotgg#20812) Co-authored-by: Pixel Perfect <me@pixp.cc> Co-authored-by: Theo Browne <me@t3.gg> Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * fix(web): restore left-aligned markdown table cells (pingdotgg#22482) Co-authored-by: Utkarsh Patil <73941998+UtkarshUsername@users.noreply.github.com> * feat(scheduled-tasks): event filters for webhook deliveries (pingdotgg#22194) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): prevent update checker from crashing iOS at launch (pingdotgg#22488) * feat(scheduled-tasks): replay dedupe and coalescing for webhook deliveries (pingdotgg#22234) * ci(release): Make Windows arm64 CI job 50% faster (pingdotgg#22428) * ci(release): Windows arm64 verify no longer runs the crashing ARM PowerShell (pingdotgg#22494) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(source-control): GitCafe creates repositories and pull requests over REST (pingdotgg#22495) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): fix release browser test failures (pingdotgg#22508) * fix(mobile): connecting an environment no longer crashes the header (pingdotgg#22521) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): folded Back clears the detail route before the next selection (pingdotgg#22526) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * ci(release): release tests stop timing out and finish in about 5 minutes (pingdotgg#22524) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): Claude steer test no longer hangs for 120s under CI load (pingdotgg#22533) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: remove the timing races behind recurring CI and release failures (pingdotgg#22523) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): render Mermaid diagrams with pele (pingdotgg#21472) Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com> * fix(mobile): keep home brand visible during secondary retries (pingdotgg#21388) * fix(mobile): collapse pull request repository errors (pingdotgg#21389) * fix(mobile): show terminal arrow keys before secondary controls (pingdotgg#21398) * fix(mobile): update outdated servers and respect provider permissions (pingdotgg#21402) * fix(mobile): live activity tracks thread status and settlement (pingdotgg#21405) * fix(mobile): use current checkout for non-git projects (pingdotgg#21404) * fix(mobile): add project and checkout removal (pingdotgg#21409) * fix(mobile): show plans and fold settled progress notes (pingdotgg#21393) * fix(mobile): open transcript file links at the resolved path (pingdotgg#21403) * fix(mobile): lock the composer while queued edits save (pingdotgg#21390) * fix(mobile): bring model controls in line with web (pingdotgg#21406) * fix(mobile): restore archive and thread action undo (pingdotgg#21401) * fix(mobile): expose background work and thread status actions (pingdotgg#21395) * fix(web): keep approval menu actions compact (pingdotgg#22566) * fix(web): main typecheck passes again after the Mermaid switch to pele (pingdotgg#22570) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: delete 11k low-signal tests so CI runs faster and flakes less (pingdotgg#22557) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): thread rows show wake status and elapsed time (pingdotgg#21394) * fix(web,mobile): list database space for all machines in one notice (pingdotgg#22575) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(lint): ban per-test timeouts and unreasoned skips (pingdotgg#22560) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): ban frame and transition waits in browser tests (pingdotgg#22561) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: ban wall-clock readings in tests (pingdotgg#22562) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): ban real-clock waits in tests (pingdotgg#22564) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: warn on polling loops in tests and make adapter test harnesses event-driven (pingdotgg#22565) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): iOS new-thread skill picker stops shifting the screen (pingdotgg#22121) * fix(web): dialogs keep their content while they close (pingdotgg#21960) * ci(release): build Windows x64 on Linux like arm64 (pingdotgg#22584) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): idle orphaned follow-ups can be cancelled without a running parent (pingdotgg#22581) Co-authored-by: syberia <n.kuhtin@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * chore(web): remove "use client" directives (pingdotgg#22587) * test(mobile): prune low-value tests in mobile (second pass) (pingdotgg#22588) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(desktop): prune low-value tests in desktop (second pass) (pingdotgg#22589) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): prune low-value tests in apps/web (second pass) (pingdotgg#22591) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): prune low-value tests in apps/server (second pass) (pingdotgg#22592) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(packages): prune low-value tests in packages (second pass) (pingdotgg#22593) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): prune low-value tests in orchestration-v2 (second pass) (pingdotgg#22599) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): every browser test starts with the mouse off the page (pingdotgg#22556) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * chore(tailscale): drop parseTailscaleMagicDnsName, which nothing imports (pingdotgg#22602) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * fix(server): make the remaining flaky server tests deterministic (pingdotgg#22559) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): composer chips match chat chips (pingdotgg#22518) * fix(mobile): show each turn's diffstat on its work row (pingdotgg#21392) * chore(release): prepare v0.1.1 * fix(web): silence notifications when stopping a watch (pingdotgg#22615) * ci(release): build macOS desktop on Blacksmith runners again (pingdotgg#22613) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(usage): Codex compaction and resumed sessions no longer show skipped-usage warnings (pingdotgg#22558) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): thread search shows the same PR badge as the sidebar (pingdotgg#22627) * Delete .github/workflows/cursor-hygiene-webhook.yml * fix(desktop): bump Electron to 44.9.3 to block compromised eMudhra CA keys (pingdotgg#22645) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): ChatView's React Compiler check no longer times out on slow CI runners (pingdotgg#22649) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): thread links render as chips, and thread chips show the project icon (pingdotgg#22621) * fix(server): Stop on a delegate always clears it, even when it is stuck (pingdotgg#22653) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): composer stays usable during approvals, and sending declines and redirects (pingdotgg#21503) * docs(agents): name the fast commands and stop polling (pingdotgg#22711) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): new worktrees install Electron from the local download cache (pingdotgg#22712) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): split replay fixtures into per-provider files (pingdotgg#22717) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): delegates finish when their leftover work settles, and Grok commands stop holding runs open (pingdotgg#22709) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Fuksss <fuxik12345@gmail.com> * fix(server): storage cleanup no longer counts pnpm clones as freed space (pingdotgg#22713) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * build: upgrade Vite+ to 1.3 and cache typecheck (pingdotgg#22716) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: local test runs use package configs and a clean env (pingdotgg#22714) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): restore low-latency decoding for simulator streams (pingdotgg#22733) * fix(marketing): typecheck cache no longer misses when the shell env changes (pingdotgg#22735) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * build(setup): leaner installs on Mac and Linux, cross-device store warning, setup-done marker (pingdotgg#22718) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * build: upgrade pnpm to 12 for 4x faster installs (pingdotgg#22738) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the timeline minimap lives in its own file (pingdotgg#22662) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline work entry rows and tool icons live in their own files (pingdotgg#22674) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline work group and live activity rows live in their own file (pingdotgg#22675) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline user message rows and context chips live in their own files (pingdotgg#22676) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline assistant and orchestration event rows live in their own files (pingdotgg#22677) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline row derivation, position restore and find reader live in hooks (pingdotgg#22682) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's theme items live in their own file (pingdotgg#22679) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's thread items come from their own hook (pingdotgg#22687) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's project items and pure helpers live in their own files (pingdotgg#22699) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's add-project views are components (pingdotgg#22707) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(cli): start, message, and read threads from the terminal with t3 thread (pingdotgg#22732) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): composer attachment tiles live in their own component (pingdotgg#22689) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): resting image previews and queued attachments are their own components (pingdotgg#22719) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): composer mode controls and footer actions live in ComposerFooterControls (pingdotgg#22720) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): typing no longer re-renders the composer model picker (pingdotgg#22721) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): composer suggestion lists are built by useComposerMenuItems (pingdotgg#22722) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the sidebar's thread rows live in their own file (pingdotgg#22696) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): sidebar list markers and draft rows live in their own files (pingdotgg#22729) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(dev): first dev start seeds real data and warms deps (pingdotgg#22744) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull requests column lives in its own component (pingdotgg#22671) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request header's crumbs, title editor and base branch live in their own components (pingdotgg#22672) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request header's actions live in their own components (pingdotgg#22702) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request detail loader lives in its own hook (pingdotgg#22703) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request list's rows read the speed-mode modifier themselves (pingdotgg#22704) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull requests page's scope and grouping hooks live in their own module (pingdotgg#22705) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull requests route only validates its search; the page lives under components (pingdotgg#22706) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * perf(web): Shift re-renders only each row's quick-action group (pingdotgg#22726) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request list's grouping helper lives in a logic module (pingdotgg#22727) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown code blocks live in their own module (pingdotgg#22690) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the Mermaid code block lives in its own component file (pingdotgg#22691) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown tables and details live in their own components (pingdotgg#22692) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown links and file chips live in their own modules (pingdotgg#22693) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown images and videos live in their own module (pingdotgg#22694) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Julius Marminge <julius0216@outlook.com> Co-authored-by: Julius Marminge <julius@marminge.se> Co-authored-by: Theo Browne <me@t3.gg> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Utkarsh Patil <73941998+UtkarshUsername@users.noreply.github.com> Co-authored-by: project516 <138796702+Project516@users.noreply.github.com> Co-authored-by: oliver <97427849+flamboh@users.noreply.github.com> Co-authored-by: MatiasGadeberg <57716018+MatiasGadeberg@users.noreply.github.com> Co-authored-by: Pixel Perfect <me@pixp.cc> Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com> Co-authored-by: Jacob Hands <jacob@jacobhands.com> Co-authored-by: maria <maria@kuuro.net> Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com> Co-authored-by: Yash Singh <saiansh2525@gmail.com> Co-authored-by: syberia <n.kuhtin@gmail.com> Co-authored-by: Fuksss <fuxik12345@gmail.com>
* fix(server): include thread context in generated pull requests (pingdotgg#18291) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(desktop): let lifecycle shutdown finish before exiting (pingdotgg#20303) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): subagent task updates reach Claude task lists (pingdotgg#20985) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): pull requests load for credentials that cannot read /user (pingdotgg#18780) Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(gitlab): show authentication and rate-limit errors from activity reads (pingdotgg#18817) Co-authored-by: SAPHID <saphid@users.noreply.github.com> Co-authored-by: GPT-6.1 Sol <noreply@openai.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(provider-muse): workflow child approvals no longer flash in full access (pingdotgg#19306) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * feat(server): compact idle Claude threads before the prompt cache expires (beta) (pingdotgg#21682) Co-authored-by: maria-rcks <maria@kuuro.net> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): diff panel keeps collapsed files when switching right-panel tabs (pingdotgg#19533) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): remember the pull request tab when switching threads (pingdotgg#18823) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(desktop): avoid temporary icon copies on Linux launches (pingdotgg#19589) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * test(server): skip the flaky viewport capture test added by pingdotgg#19913 (pingdotgg#22150) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * feat(server): let MCP agents inspect thread diffs and respond to approvals (pingdotgg#15464) Co-authored-by: Julius Marminge <51714798+juliusmarminge@users.noreply.github.com> Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(mobile): don't send or paste attached threads a machine can't read (pingdotgg#18322) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(acp): Droid answers no longer cancel AskUser (pingdotgg#20417) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): Claude append-system-prompt launch arguments reach the model (pingdotgg#20413) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <51714798+juliusmarminge@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(claude): discover enabled installed plugin skills (pingdotgg#15662) Co-authored-by: Julius Marminge <julius0216@outlook.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: pingdotgg#15464 (MCP agents respond to approvals) (pingdotgg#22152) Co-authored-by: Julius Marminge <julius@marminge.se> Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * fix(web): keep review thread replies with their finding in pull request comments (pingdotgg#20894) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(vcs): stop Check out here from discarding local pull request work (pingdotgg#15036) Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Co-authored-by: SAPHID <saphid@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(acp): Antigravity html_render pages show in the thread (pingdotgg#19796) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(composer): drafts follow model changes made on other clients (pingdotgg#20886) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): Claude task lists stay in the composer between turns (pingdotgg#18392) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): coalesce queued shell updates for slow clients (pingdotgg#14859) Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): viewport capture test waits for the requested size, not any resize (pingdotgg#22154) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): OpenCode 2 turns show provider retries instead of silently running (pingdotgg#15672) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): persist run failures after storage recovers (pingdotgg#19646) Co-authored-by: GPT-6.1-Sol at high effort <noreply@openai.com> Co-authored-by: Claude Opus 5.5, independent investigation and sanity review <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): align composer chip cleanup with undo history (pingdotgg#18466) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(clients): copy filesystem paths with native separators (pingdotgg#19201) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): constrain minimap highlights to visible rows (pingdotgg#16191) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): SnapShots taken during a question attach to that question (pingdotgg#15538) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(acp): explain rejected model selections (pingdotgg#19699) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): release orphaned diff comment drafts (pingdotgg#18430) Co-authored-by: SAPHID <saphid@users.noreply.github.com> Co-authored-by: GPT-6.1 Sol <noreply@openai.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): re-read stack layers for every member when the stack grows (pingdotgg#20415) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <51714798+juliusmarminge@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): Homebrew installs no longer run brew info with update checks off (pingdotgg#19581) Co-authored-by: Julius Marminge <julius0216@outlook.com> * test(server): skip the viewport capture test again, still flaky after pingdotgg#22154 (pingdotgg#22175) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * test(web): make the favicon picker offscreen-preview test deterministic (pingdotgg#22174) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): VCS status refresh no longer trips the slow-request toast (pingdotgg#22159) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): grant camera and microphone entitlements to the signed macOS app (pingdotgg#22170) Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> * fix(server): deliver subagent results without history handoffs (pingdotgg#22117) * chore(mobile): upgrade Uniwind to 1.13.0 (pingdotgg#22173) * fix(web): keep draft project names readable (pingdotgg#22177) * fix(server): verify the native display viewport capture without a window resize (pingdotgg#22176) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(connect): show which part of a T3 Connect connection failed and how to fix it (pingdotgg#22171) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(server): analytics records a stable install id and who owns each install (pingdotgg#21506) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): Android no longer freezes when you go back from a running thread (pingdotgg#19292) Co-authored-by: PR Batch Tester <agent@local.test> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web,server): add a project to another machine from Run on, .env files included (pingdotgg#22180) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): thread links long-press to Open thread or Copy link (pingdotgg#22153) * refactor(server): device hosts own their device operations (pingdotgg#21835) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(device): stream iOS devices that serve WebRTC only (pingdotgg#21841) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(contracts): device hosts as a tagged union with EAS hosts (pingdotgg#21842) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(server): Expo credentials, EAS Simulator API, and EAS project lookup (pingdotgg#21843) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(server): EAS Simulator device hosts (pingdotgg#21844) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): set up EAS Simulator hosts in Settings (pingdotgg#21846) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): show how much of a PR is code vs tests, mocks, and generated files (pingdotgg#22189) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): HTML visualizations show their full height instead of cropping and scrolling (pingdotgg#22131) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): skill chips in messages open their instructions (pingdotgg#22120) * fix(server): preview downloads no longer echo data: URL contents (pingdotgg#22156) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * perf(web): pre-bundle startup chunks when a shared dev server starts (pingdotgg#22210) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(connect): t3 connect checks that other devices can reach this machine (pingdotgg#22172) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(threads): snoozed threads stay hidden through background wakes (pingdotgg#22202) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(desktop): saved connections survive the Beta rename on macOS and Linux" (pingdotgg#20907) (pingdotgg#22219) Co-authored-by: Julius Marminge <julius@marminge.se> * revert: "fix(web): pinned thread marker stays put when hovering the row" (pingdotgg#11122) (pingdotgg#22223) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: fourteen unverified desktop fixes from the takeover campaign (pingdotgg#22222) Co-authored-by: Julius Marminge <julius@marminge.se> * revert: "fix(web): worktree threads warn when the checkout branch changes" (pingdotgg#14883) (pingdotgg#22225) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(ci): recover from transient download and stale report failures (pingdotgg#22232) * revert: "fix(clients): show question option previews" (pingdotgg#21933) (pingdotgg#22229) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): stop composer banner glass overlap" (pingdotgg#8034) (pingdotgg#22227) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): keep subagent links visible in long background-work banners" (pingdotgg#20054) (pingdotgg#22228) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(scheduler): label fixed-time tasks with the server timezone" (pingdotgg#18653) (pingdotgg#22230) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): preserve snapshot thumbnail context and detail" (pingdotgg#18440) (pingdotgg#22231) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): show idle server updates on environment controls" (pingdotgg#21950) (pingdotgg#22233) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(client): a frozen host no longer shows a heartbeat as slow or blames your DNS (pingdotgg#22212) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(server,web,mobile): a host that drops because it froze now says why (pingdotgg#22213) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert(web): restore grouped projects in the new thread selector (pingdotgg#22242) * test(ssh): wait for server exit during handover (pingdotgg#22252) * fix(web,server): adding a project to another machine takes you there, with no toasts and the right favicon (pingdotgg#22254) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(clients): every PR +/- shows its code, tests, and docs split, without the hover wait (pingdotgg#22255) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): isolate diff worker idle clock (pingdotgg#22259) * ci(release): build macOS desktop on GitHub macos-26-xlarge runners (pingdotgg#22264) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): macOS release signing works on macOS 26.6 runners (pingdotgg#22277) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): pinned threads' pin icon stays put on hover (pingdotgg#22303) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): show pointer cursors on changed-file controls (pingdotgg#22266) * fix(web): use the shared markdown scrollbar width (pingdotgg#22200) * revert: limit bars with many accounts no longer clip names to one letter (pingdotgg#19964) (pingdotgg#22395) Co-authored-by: Julius Marminge <julius@marminge.se> * fix(mobile): pin expo-modules-core so the release smoke patch stays in use (pingdotgg#22343) * fix(server): updates no longer keep every old runtime on disk (pingdotgg#22253) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): chat chips match desktop and the composer again (pingdotgg#22169) * fix(web): normalize disabled terminal button opacity (pingdotgg#22389) * fix(contracts): settings save again when the writing style has default fields (pingdotgg#22203) Co-authored-by: Claude Code <noreply@anthropic.com> * fix(relay): run the relay Worker next to its database (pingdotgg#22065) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): disposable render helper and lint rule for browser tests (pingdotgg#22187) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): use native sheet headers and toolbar filters (pingdotgg#22390) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(ssh): unreaped-server test no longer loses its zombie fixture (pingdotgg#22427) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): require-disposable-render is now an error (pingdotgg#22410) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): migrate the last .ts browser tests and stop wrapping userEvent in act (pingdotgg#22424) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web,mobile): Limits bars show the even-pace mark as a tick in a gap (pingdotgg#22408) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): pooled Limits segments narrower than 6px draw no pace mark; fixture README (pingdotgg#22453) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): the composer stays one row until the draft wraps (pingdotgg#20812) Co-authored-by: Pixel Perfect <me@pixp.cc> Co-authored-by: Theo Browne <me@t3.gg> Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * fix(web): restore left-aligned markdown table cells (pingdotgg#22482) Co-authored-by: Utkarsh Patil <73941998+UtkarshUsername@users.noreply.github.com> * feat(scheduled-tasks): event filters for webhook deliveries (pingdotgg#22194) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): prevent update checker from crashing iOS at launch (pingdotgg#22488) * feat(scheduled-tasks): replay dedupe and coalescing for webhook deliveries (pingdotgg#22234) * ci(release): Make Windows arm64 CI job 50% faster (pingdotgg#22428) * ci(release): Windows arm64 verify no longer runs the crashing ARM PowerShell (pingdotgg#22494) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(source-control): GitCafe creates repositories and pull requests over REST (pingdotgg#22495) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): fix release browser test failures (pingdotgg#22508) * fix(mobile): connecting an environment no longer crashes the header (pingdotgg#22521) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): folded Back clears the detail route before the next selection (pingdotgg#22526) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * ci(release): release tests stop timing out and finish in about 5 minutes (pingdotgg#22524) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): Claude steer test no longer hangs for 120s under CI load (pingdotgg#22533) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: remove the timing races behind recurring CI and release failures (pingdotgg#22523) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): render Mermaid diagrams with pele (pingdotgg#21472) Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com> * fix(mobile): keep home brand visible during secondary retries (pingdotgg#21388) * fix(mobile): collapse pull request repository errors (pingdotgg#21389) * fix(mobile): show terminal arrow keys before secondary controls (pingdotgg#21398) * fix(mobile): update outdated servers and respect provider permissions (pingdotgg#21402) * fix(mobile): live activity tracks thread status and settlement (pingdotgg#21405) * fix(mobile): use current checkout for non-git projects (pingdotgg#21404) * fix(mobile): add project and checkout removal (pingdotgg#21409) * fix(mobile): show plans and fold settled progress notes (pingdotgg#21393) * fix(mobile): open transcript file links at the resolved path (pingdotgg#21403) * fix(mobile): lock the composer while queued edits save (pingdotgg#21390) * fix(mobile): bring model controls in line with web (pingdotgg#21406) * fix(mobile): restore archive and thread action undo (pingdotgg#21401) * fix(mobile): expose background work and thread status actions (pingdotgg#21395) * fix(web): keep approval menu actions compact (pingdotgg#22566) * fix(web): main typecheck passes again after the Mermaid switch to pele (pingdotgg#22570) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: delete 11k low-signal tests so CI runs faster and flakes less (pingdotgg#22557) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): thread rows show wake status and elapsed time (pingdotgg#21394) * fix(web,mobile): list database space for all machines in one notice (pingdotgg#22575) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(lint): ban per-test timeouts and unreasoned skips (pingdotgg#22560) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): ban frame and transition waits in browser tests (pingdotgg#22561) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: ban wall-clock readings in tests (pingdotgg#22562) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): ban real-clock waits in tests (pingdotgg#22564) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: warn on polling loops in tests and make adapter test harnesses event-driven (pingdotgg#22565) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): iOS new-thread skill picker stops shifting the screen (pingdotgg#22121) * fix(web): dialogs keep their content while they close (pingdotgg#21960) * ci(release): build Windows x64 on Linux like arm64 (pingdotgg#22584) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): idle orphaned follow-ups can be cancelled without a running parent (pingdotgg#22581) Co-authored-by: syberia <n.kuhtin@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * chore(web): remove "use client" directives (pingdotgg#22587) * test(mobile): prune low-value tests in mobile (second pass) (pingdotgg#22588) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(desktop): prune low-value tests in desktop (second pass) (pingdotgg#22589) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): prune low-value tests in apps/web (second pass) (pingdotgg#22591) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): prune low-value tests in apps/server (second pass) (pingdotgg#22592) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(packages): prune low-value tests in packages (second pass) (pingdotgg#22593) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): prune low-value tests in orchestration-v2 (second pass) (pingdotgg#22599) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): every browser test starts with the mouse off the page (pingdotgg#22556) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * chore(tailscale): drop parseTailscaleMagicDnsName, which nothing imports (pingdotgg#22602) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * fix(server): make the remaining flaky server tests deterministic (pingdotgg#22559) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): composer chips match chat chips (pingdotgg#22518) * fix(mobile): show each turn's diffstat on its work row (pingdotgg#21392) * chore(release): prepare v0.1.1 * fix(web): silence notifications when stopping a watch (pingdotgg#22615) * ci(release): build macOS desktop on Blacksmith runners again (pingdotgg#22613) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(usage): Codex compaction and resumed sessions no longer show skipped-usage warnings (pingdotgg#22558) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): thread search shows the same PR badge as the sidebar (pingdotgg#22627) * Delete .github/workflows/cursor-hygiene-webhook.yml * fix(desktop): bump Electron to 44.9.3 to block compromised eMudhra CA keys (pingdotgg#22645) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): ChatView's React Compiler check no longer times out on slow CI runners (pingdotgg#22649) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): thread links render as chips, and thread chips show the project icon (pingdotgg#22621) * fix(server): Stop on a delegate always clears it, even when it is stuck (pingdotgg#22653) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): composer stays usable during approvals, and sending declines and redirects (pingdotgg#21503) * docs(agents): name the fast commands and stop polling (pingdotgg#22711) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): new worktrees install Electron from the local download cache (pingdotgg#22712) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): split replay fixtures into per-provider files (pingdotgg#22717) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): delegates finish when their leftover work settles, and Grok commands stop holding runs open (pingdotgg#22709) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Fuksss <fuxik12345@gmail.com> * fix(server): storage cleanup no longer counts pnpm clones as freed space (pingdotgg#22713) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * build: upgrade Vite+ to 1.3 and cache typecheck (pingdotgg#22716) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: local test runs use package configs and a clean env (pingdotgg#22714) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): restore low-latency decoding for simulator streams (pingdotgg#22733) * fix(marketing): typecheck cache no longer misses when the shell env changes (pingdotgg#22735) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * build(setup): leaner installs on Mac and Linux, cross-device store warning, setup-done marker (pingdotgg#22718) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * build: upgrade pnpm to 12 for 4x faster installs (pingdotgg#22738) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the timeline minimap lives in its own file (pingdotgg#22662) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline work entry rows and tool icons live in their own files (pingdotgg#22674) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline work group and live activity rows live in their own file (pingdotgg#22675) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline user message rows and context chips live in their own files (pingdotgg#22676) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline assistant and orchestration event rows live in their own files (pingdotgg#22677) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline row derivation, position restore and find reader live in hooks (pingdotgg#22682) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's theme items live in their own file (pingdotgg#22679) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's thread items come from their own hook (pingdotgg#22687) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's project items and pure helpers live in their own files (pingdotgg#22699) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's add-project views are components (pingdotgg#22707) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(cli): start, message, and read threads from the terminal with t3 thread (pingdotgg#22732) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): composer attachment tiles live in their own component (pingdotgg#22689) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): resting image previews and queued attachments are their own components (pingdotgg#22719) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): composer mode controls and footer actions live in ComposerFooterControls (pingdotgg#22720) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): typing no longer re-renders the composer model picker (pingdotgg#22721) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): composer suggestion lists are built by useComposerMenuItems (pingdotgg#22722) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the sidebar's thread rows live in their own file (pingdotgg#22696) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): sidebar list markers and draft rows live in their own files (pingdotgg#22729) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(dev): first dev start seeds real data and warms deps (pingdotgg#22744) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull requests column lives in its own component (pingdotgg#22671) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request header's crumbs, title editor and base branch live in their own components (pingdotgg#22672) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request header's actions live in their own components (pingdotgg#22702) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request detail loader lives in its own hook (pingdotgg#22703) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request list's rows read the speed-mode modifier themselves (pingdotgg#22704) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull requests page's scope and grouping hooks live in their own module (pingdotgg#22705) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull requests route only validates its search; the page lives under components (pingdotgg#22706) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * perf(web): Shift re-renders only each row's quick-action group (pingdotgg#22726) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request list's grouping helper lives in a logic module (pingdotgg#22727) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown code blocks live in their own module (pingdotgg#22690) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the Mermaid code block lives in its own component file (pingdotgg#22691) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown tables and details live in their own components (pingdotgg#22692) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown links and file chips live in their own modules (pingdotgg#22693) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown images and videos live in their own module (pingdotgg#22694) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's module-level helpers live in their own files (pingdotgg#22665) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's persistent terminal drawers live in their own component (pingdotgg#22680) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's right panel lives in its own component (pingdotgg#22700) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's timeline follow and anchoring lives in useTimelineFollow (pingdotgg#22701) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's machine and server-update banners live in useSystemComposerBanners (pingdotgg#22710) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's subagent, goal, background-work and branch banners are built in ThreadActivityBanners (pingdotgg#22725) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's draft machine routing lives in useDraftEnvironmentRouting (pingdotgg#22728) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's send preparation is pure functions in ChatView.logic (pingdotgg#22734) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the archived threads settings page lives in its own file (pingdotgg#22666) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the typography settings section lives in its own file (pingdotgg#22667) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the appearance settings page lives in its own file (pingdotgg#22668) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the background activity setting and its dialog live in their own file (pingdotgg#22669) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the connections page's pure helpers live in ConnectionsSettings.logic (pingdotgg#22683) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): authorized clients and endpoint rows live in their own file (pingdotgg#22684) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): saved and T3 Connect environment rows live in their own file (pingdotgg#22685) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * perf(server): skip the macOS xcrun git shim (pingdotgg#22759) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * docs(agents): read vendored .repos with git show when sparse-excluded (pingdotgg#22764) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): ⌘Z undoes a settle even when the composer has focus (pingdotgg#22607) Co-authored-by: ishaanko <ishaanko.mail@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(scripts): one command checks what the branch changed (pingdotgg#22767) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(scripts): check:changed no longer skips knip after a removed import (pingdotgg#22784) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * perf(dev): faster first load for shared dev servers (pingdotgg#22776) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): stalled clones say "Stalled" instead of a frozen speed (pingdotgg#22780) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): steers split a finished turn's work instead of stacking under it (pingdotgg#22783) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): images on their own line no longer sit beside their label (pingdotgg#22787) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(release): include pnpm hook in Vercel uploads (pingdotgg#22813) * fix(release): keep Vercel warnings out of deployment URLs (pingdotgg#22817) * fix(queue): send selected held messages when a thread is stopped (pingdotgg#22790) * fix(server): delegated Claude children follow your subagent cache TTL setting (pingdotgg#22841) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): t3 pair in a worktree no longer falls back to the live install (pingdotgg#22855) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): avoid expensive diff minimization in status refreshes (pingdotgg#21872) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(codex): keep every path of a multi-file patch (pingdotgg#22541) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: GPT-6.1 Sol <noreply@openai.com> * fix(gitlab): merge request diffs page 30 files at a time so GitLab 15.7 to 17.10 answer (pingdotgg#21909) * fix(server): keep Antigravity question options and no-custom-answer flag in V2 (pingdotgg#22019) * fix(server): commit prompts no longer repeat CLAUDE.md when it matches AGENTS.md (pingdotgg#22848) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mcp): point a bare thread uuid at its mcp: thread in thread_not_found (pingdotgg#22452) * fix(opencode): out-of-funds failures show OpenCode's message instead of a usage limit (pingdotgg#22596) * fix(shared): accept a pasted ChatGPT callback URL that is missing http:// (pingdotgg#21750) * fix(server): the background service picks up JAVA_HOME from the login shell (pingdotgg#22856) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): answered questions say "already answered" instead of "not found" (pingdotgg#22850) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): an abandoned browser sign-in no longer blocks T3 Connect for 3 minutes (pingdotgg#22903) On desktop, an abandoned browser sign-in blocked every T3 Connect sign-in for 3 minutes. A new attempt now replaces the stale Clerk flow, and a Cancel bar resets the sheet. Takeover of pingdotgg#22708. Co-authored-by: steve-ai-vibe <steve.ai.vibe@gmail.com> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): agents get a short, current model list instead of a 55k-character catalog dump (pingdotgg#22889) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix: preserve fork release jobs and upgrade coverage --------- Co-authored-by: Luca Hagel <luca@luhagel.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> Co-authored-by: ObliviousObserver <96266208+spencermorris04@users.noreply.github.com> Co-authored-by: Antony <97451137+TonybynMp4@users.noreply.github.com> Co-authored-by: Lanny Bose <landric@gmail.com> Co-authored-by: Alex Southwell <saphid@gmail.com> Co-authored-by: SAPHID <saphid@users.noreply.github.com> Co-authored-by: GPT-6.1 Sol <noreply@openai.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Scott Norteman <snorteman@gmail.com> Co-authored-by: Theo Browne <me@t3.gg> Co-authored-by: maria-rcks <maria@kuuro.net> Co-authored-by: Jair Meza <jair3202@gmail.com> Co-authored-by: SamuelBarnholdt <33251499+SamuelBarnholdt@users.noreply.github.com> Co-authored-by: Victor Vogel <thevictorvogel@gmail.com> Co-authored-by: Julius Marminge <51714798+juliusmarminge@users.noreply.github.com> Co-authored-by: Nikita Maximilian Grimm <github@nikitagrimm.de> Co-authored-by: travelvector <96337328+travelvector@users.noreply.github.com> Co-authored-by: Julius Marminge <julius@marminge.se> Co-authored-by: Marcus Hof <13001502+MarconLP@users.noreply.github.com> Co-authored-by: Jorge Cervantes <jcervantes@grupoesquimal.mx> Co-authored-by: Nick Anisimov <n.anisimov.23@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com> Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com> Co-authored-by: Alb11747 <albertli_042@hotmail.com> Co-authored-by: Guillermo Casanova <75276669+Gigioxx@users.noreply.github.com> Co-authored-by: TONY JOSEPH SEBASTIAN <37629628+tonyjosephsebastians@users.noreply.github.com> Co-authored-by: Utkarsh Patil <73941998+UtkarshUsername@users.noreply.github.com> Co-authored-by: tiliakoos <73005126+tiliakoos@users.noreply.github.com> Co-authored-by: Wout Stiens <71498452+StiensWout@users.noreply.github.com> Co-authored-by: Tristan Knight <admin@snappeh.com> Co-authored-by: Hubert Bieszczad <48803618+Brentlok@users.noreply.github.com> Co-authored-by: Yash Singh <saiansh2525@gmail.com> Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com> Co-authored-by: PR Batch Tester <agent@local.test> Co-authored-by: oliver <97427849+flamboh@users.noreply.github.com> Co-authored-by: project516 <138796702+Project516@users.noreply.github.com> Co-authored-by: MatiasGadeberg <57716018+MatiasGadeberg@users.noreply.github.com> Co-authored-by: Pixel Perfect <me@pixp.cc> Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com> Co-authored-by: Jacob Hands <jacob@jacobhands.com> Co-authored-by: syberia <n.kuhtin@gmail.com> Co-authored-by: Fuksss <fuxik12345@gmail.com> Co-authored-by: ishaanko <ishaanko.mail@gmail.com> Co-authored-by: Lakshmi Tanmay <lakshmi@voltcrash.com> Co-authored-by: Victor Vogel <satsdev@only21mil.xyz> Co-authored-by: Igor Makowski <56691628+Mnigos@users.noreply.github.com> Co-authored-by: fixfon <12512757+fixfon@users.noreply.github.com> Co-authored-by: steve-ai-vibe <steve.ai.vibe@gmail.com>
* feat(server): compact idle Claude threads before the prompt cache expires (beta) (pingdotgg#21682) Co-authored-by: maria-rcks <maria@kuuro.net> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): diff panel keeps collapsed files when switching right-panel tabs (pingdotgg#19533) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): remember the pull request tab when switching threads (pingdotgg#18823) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(desktop): avoid temporary icon copies on Linux launches (pingdotgg#19589) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * test(server): skip the flaky viewport capture test added by pingdotgg#19913 (pingdotgg#22150) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * feat(server): let MCP agents inspect thread diffs and respond to approvals (pingdotgg#15464) Co-authored-by: Julius Marminge <51714798+juliusmarminge@users.noreply.github.com> Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(mobile): don't send or paste attached threads a machine can't read (pingdotgg#18322) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(acp): Droid answers no longer cancel AskUser (pingdotgg#20417) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): Claude append-system-prompt launch arguments reach the model (pingdotgg#20413) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <51714798+juliusmarminge@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(claude): discover enabled installed plugin skills (pingdotgg#15662) Co-authored-by: Julius Marminge <julius0216@outlook.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: pingdotgg#15464 (MCP agents respond to approvals) (pingdotgg#22152) Co-authored-by: Julius Marminge <julius@marminge.se> Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * fix(web): keep review thread replies with their finding in pull request comments (pingdotgg#20894) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(vcs): stop Check out here from discarding local pull request work (pingdotgg#15036) Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Co-authored-by: SAPHID <saphid@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(acp): Antigravity html_render pages show in the thread (pingdotgg#19796) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(composer): drafts follow model changes made on other clients (pingdotgg#20886) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): Claude task lists stay in the composer between turns (pingdotgg#18392) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): coalesce queued shell updates for slow clients (pingdotgg#14859) Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): viewport capture test waits for the requested size, not any resize (pingdotgg#22154) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): OpenCode 2 turns show provider retries instead of silently running (pingdotgg#15672) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): persist run failures after storage recovers (pingdotgg#19646) Co-authored-by: GPT-6.1-Sol at high effort <noreply@openai.com> Co-authored-by: Claude Opus 5.5, independent investigation and sanity review <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): align composer chip cleanup with undo history (pingdotgg#18466) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(clients): copy filesystem paths with native separators (pingdotgg#19201) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): constrain minimap highlights to visible rows (pingdotgg#16191) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): SnapShots taken during a question attach to that question (pingdotgg#15538) Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(acp): explain rejected model selections (pingdotgg#19699) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(web): release orphaned diff comment drafts (pingdotgg#18430) Co-authored-by: SAPHID <saphid@users.noreply.github.com> Co-authored-by: GPT-6.1 Sol <noreply@openai.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): re-read stack layers for every member when the stack grows (pingdotgg#20415) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <51714798+juliusmarminge@users.noreply.github.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * fix(server): Homebrew installs no longer run brew info with update checks off (pingdotgg#19581) Co-authored-by: Julius Marminge <julius0216@outlook.com> * test(server): skip the viewport capture test again, still flaky after pingdotgg#22154 (pingdotgg#22175) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * test(web): make the favicon picker offscreen-preview test deterministic (pingdotgg#22174) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): VCS status refresh no longer trips the slow-request toast (pingdotgg#22159) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): grant camera and microphone entitlements to the signed macOS app (pingdotgg#22170) Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> * fix(server): deliver subagent results without history handoffs (pingdotgg#22117) * chore(mobile): upgrade Uniwind to 1.13.0 (pingdotgg#22173) * fix(web): keep draft project names readable (pingdotgg#22177) * fix(server): verify the native display viewport capture without a window resize (pingdotgg#22176) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(connect): show which part of a T3 Connect connection failed and how to fix it (pingdotgg#22171) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(server): analytics records a stable install id and who owns each install (pingdotgg#21506) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): Android no longer freezes when you go back from a running thread (pingdotgg#19292) Co-authored-by: PR Batch Tester <agent@local.test> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web,server): add a project to another machine from Run on, .env files included (pingdotgg#22180) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): thread links long-press to Open thread or Copy link (pingdotgg#22153) * refactor(server): device hosts own their device operations (pingdotgg#21835) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(device): stream iOS devices that serve WebRTC only (pingdotgg#21841) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(contracts): device hosts as a tagged union with EAS hosts (pingdotgg#21842) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(server): Expo credentials, EAS Simulator API, and EAS project lookup (pingdotgg#21843) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(server): EAS Simulator device hosts (pingdotgg#21844) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): set up EAS Simulator hosts in Settings (pingdotgg#21846) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): show how much of a PR is code vs tests, mocks, and generated files (pingdotgg#22189) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): HTML visualizations show their full height instead of cropping and scrolling (pingdotgg#22131) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): skill chips in messages open their instructions (pingdotgg#22120) * fix(server): preview downloads no longer echo data: URL contents (pingdotgg#22156) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * perf(web): pre-bundle startup chunks when a shared dev server starts (pingdotgg#22210) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(connect): t3 connect checks that other devices can reach this machine (pingdotgg#22172) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(threads): snoozed threads stay hidden through background wakes (pingdotgg#22202) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(desktop): saved connections survive the Beta rename on macOS and Linux" (pingdotgg#20907) (pingdotgg#22219) Co-authored-by: Julius Marminge <julius@marminge.se> * revert: "fix(web): pinned thread marker stays put when hovering the row" (pingdotgg#11122) (pingdotgg#22223) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: fourteen unverified desktop fixes from the takeover campaign (pingdotgg#22222) Co-authored-by: Julius Marminge <julius@marminge.se> * revert: "fix(web): worktree threads warn when the checkout branch changes" (pingdotgg#14883) (pingdotgg#22225) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(ci): recover from transient download and stale report failures (pingdotgg#22232) * revert: "fix(clients): show question option previews" (pingdotgg#21933) (pingdotgg#22229) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): stop composer banner glass overlap" (pingdotgg#8034) (pingdotgg#22227) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): keep subagent links visible in long background-work banners" (pingdotgg#20054) (pingdotgg#22228) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(scheduler): label fixed-time tasks with the server timezone" (pingdotgg#18653) (pingdotgg#22230) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): preserve snapshot thumbnail context and detail" (pingdotgg#18440) (pingdotgg#22231) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert: "fix(web): show idle server updates on environment controls" (pingdotgg#21950) (pingdotgg#22233) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(client): a frozen host no longer shows a heartbeat as slow or blames your DNS (pingdotgg#22212) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(server,web,mobile): a host that drops because it froze now says why (pingdotgg#22213) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * revert(web): restore grouped projects in the new thread selector (pingdotgg#22242) * test(ssh): wait for server exit during handover (pingdotgg#22252) * fix(web,server): adding a project to another machine takes you there, with no toasts and the right favicon (pingdotgg#22254) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(clients): every PR +/- shows its code, tests, and docs split, without the hover wait (pingdotgg#22255) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): isolate diff worker idle clock (pingdotgg#22259) * ci(release): build macOS desktop on GitHub macos-26-xlarge runners (pingdotgg#22264) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): macOS release signing works on macOS 26.6 runners (pingdotgg#22277) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): pinned threads' pin icon stays put on hover (pingdotgg#22303) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): show pointer cursors on changed-file controls (pingdotgg#22266) * fix(web): use the shared markdown scrollbar width (pingdotgg#22200) * revert: limit bars with many accounts no longer clip names to one letter (pingdotgg#19964) (pingdotgg#22395) Co-authored-by: Julius Marminge <julius@marminge.se> * fix(mobile): pin expo-modules-core so the release smoke patch stays in use (pingdotgg#22343) * fix(server): updates no longer keep every old runtime on disk (pingdotgg#22253) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): chat chips match desktop and the composer again (pingdotgg#22169) * fix(web): normalize disabled terminal button opacity (pingdotgg#22389) * fix(contracts): settings save again when the writing style has default fields (pingdotgg#22203) Co-authored-by: Claude Code <noreply@anthropic.com> * fix(relay): run the relay Worker next to its database (pingdotgg#22065) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): disposable render helper and lint rule for browser tests (pingdotgg#22187) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): use native sheet headers and toolbar filters (pingdotgg#22390) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(ssh): unreaped-server test no longer loses its zombie fixture (pingdotgg#22427) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): require-disposable-render is now an error (pingdotgg#22410) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): migrate the last .ts browser tests and stop wrapping userEvent in act (pingdotgg#22424) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web,mobile): Limits bars show the even-pace mark as a tick in a gap (pingdotgg#22408) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): pooled Limits segments narrower than 6px draw no pace mark; fixture README (pingdotgg#22453) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): the composer stays one row until the draft wraps (pingdotgg#20812) Co-authored-by: Pixel Perfect <me@pixp.cc> Co-authored-by: Theo Browne <me@t3.gg> Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * fix(web): restore left-aligned markdown table cells (pingdotgg#22482) Co-authored-by: Utkarsh Patil <73941998+UtkarshUsername@users.noreply.github.com> * feat(scheduled-tasks): event filters for webhook deliveries (pingdotgg#22194) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): prevent update checker from crashing iOS at launch (pingdotgg#22488) * feat(scheduled-tasks): replay dedupe and coalescing for webhook deliveries (pingdotgg#22234) * ci(release): Make Windows arm64 CI job 50% faster (pingdotgg#22428) * ci(release): Windows arm64 verify no longer runs the crashing ARM PowerShell (pingdotgg#22494) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(source-control): GitCafe creates repositories and pull requests over REST (pingdotgg#22495) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): fix release browser test failures (pingdotgg#22508) * fix(mobile): connecting an environment no longer crashes the header (pingdotgg#22521) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): folded Back clears the detail route before the next selection (pingdotgg#22526) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * ci(release): release tests stop timing out and finish in about 5 minutes (pingdotgg#22524) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): Claude steer test no longer hangs for 120s under CI load (pingdotgg#22533) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: remove the timing races behind recurring CI and release failures (pingdotgg#22523) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): render Mermaid diagrams with pele (pingdotgg#21472) Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com> * fix(mobile): keep home brand visible during secondary retries (pingdotgg#21388) * fix(mobile): collapse pull request repository errors (pingdotgg#21389) * fix(mobile): show terminal arrow keys before secondary controls (pingdotgg#21398) * fix(mobile): update outdated servers and respect provider permissions (pingdotgg#21402) * fix(mobile): live activity tracks thread status and settlement (pingdotgg#21405) * fix(mobile): use current checkout for non-git projects (pingdotgg#21404) * fix(mobile): add project and checkout removal (pingdotgg#21409) * fix(mobile): show plans and fold settled progress notes (pingdotgg#21393) * fix(mobile): open transcript file links at the resolved path (pingdotgg#21403) * fix(mobile): lock the composer while queued edits save (pingdotgg#21390) * fix(mobile): bring model controls in line with web (pingdotgg#21406) * fix(mobile): restore archive and thread action undo (pingdotgg#21401) * fix(mobile): expose background work and thread status actions (pingdotgg#21395) * fix(web): keep approval menu actions compact (pingdotgg#22566) * fix(web): main typecheck passes again after the Mermaid switch to pele (pingdotgg#22570) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: delete 11k low-signal tests so CI runs faster and flakes less (pingdotgg#22557) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): thread rows show wake status and elapsed time (pingdotgg#21394) * fix(web,mobile): list database space for all machines in one notice (pingdotgg#22575) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(lint): ban per-test timeouts and unreasoned skips (pingdotgg#22560) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): ban frame and transition waits in browser tests (pingdotgg#22561) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: ban wall-clock readings in tests (pingdotgg#22562) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): ban real-clock waits in tests (pingdotgg#22564) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: warn on polling loops in tests and make adapter test harnesses event-driven (pingdotgg#22565) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): iOS new-thread skill picker stops shifting the screen (pingdotgg#22121) * fix(web): dialogs keep their content while they close (pingdotgg#21960) * ci(release): build Windows x64 on Linux like arm64 (pingdotgg#22584) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): idle orphaned follow-ups can be cancelled without a running parent (pingdotgg#22581) Co-authored-by: syberia <n.kuhtin@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * chore(web): remove "use client" directives (pingdotgg#22587) * test(mobile): prune low-value tests in mobile (second pass) (pingdotgg#22588) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(desktop): prune low-value tests in desktop (second pass) (pingdotgg#22589) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): prune low-value tests in apps/web (second pass) (pingdotgg#22591) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): prune low-value tests in apps/server (second pass) (pingdotgg#22592) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(packages): prune low-value tests in packages (second pass) (pingdotgg#22593) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): prune low-value tests in orchestration-v2 (second pass) (pingdotgg#22599) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): every browser test starts with the mouse off the page (pingdotgg#22556) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * chore(tailscale): drop parseTailscaleMagicDnsName, which nothing imports (pingdotgg#22602) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * fix(server): make the remaining flaky server tests deterministic (pingdotgg#22559) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): composer chips match chat chips (pingdotgg#22518) * fix(mobile): show each turn's diffstat on its work row (pingdotgg#21392) * chore(release): prepare v0.1.1 * fix(web): silence notifications when stopping a watch (pingdotgg#22615) * ci(release): build macOS desktop on Blacksmith runners again (pingdotgg#22613) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(usage): Codex compaction and resumed sessions no longer show skipped-usage warnings (pingdotgg#22558) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): thread search shows the same PR badge as the sidebar (pingdotgg#22627) * Delete .github/workflows/cursor-hygiene-webhook.yml * fix(desktop): bump Electron to 44.9.3 to block compromised eMudhra CA keys (pingdotgg#22645) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(web): ChatView's React Compiler check no longer times out on slow CI runners (pingdotgg#22649) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): thread links render as chips, and thread chips show the project icon (pingdotgg#22621) * fix(server): Stop on a delegate always clears it, even when it is stuck (pingdotgg#22653) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(web): composer stays usable during approvals, and sending declines and redirects (pingdotgg#21503) * docs(agents): name the fast commands and stop polling (pingdotgg#22711) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): new worktrees install Electron from the local download cache (pingdotgg#22712) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test(server): split replay fixtures into per-provider files (pingdotgg#22717) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): delegates finish when their leftover work settles, and Grok commands stop holding runs open (pingdotgg#22709) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Fuksss <fuxik12345@gmail.com> * fix(server): storage cleanup no longer counts pnpm clones as freed space (pingdotgg#22713) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * build: upgrade Vite+ to 1.3 and cache typecheck (pingdotgg#22716) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * test: local test runs use package configs and a clean env (pingdotgg#22714) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mobile): restore low-latency decoding for simulator streams (pingdotgg#22733) * fix(marketing): typecheck cache no longer misses when the shell env changes (pingdotgg#22735) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * build(setup): leaner installs on Mac and Linux, cross-device store warning, setup-done marker (pingdotgg#22718) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * build: upgrade pnpm to 12 for 4x faster installs (pingdotgg#22738) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the timeline minimap lives in its own file (pingdotgg#22662) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline work entry rows and tool icons live in their own files (pingdotgg#22674) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline work group and live activity rows live in their own file (pingdotgg#22675) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline user message rows and context chips live in their own files (pingdotgg#22676) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline assistant and orchestration event rows live in their own files (pingdotgg#22677) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): timeline row derivation, position restore and find reader live in hooks (pingdotgg#22682) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's theme items live in their own file (pingdotgg#22679) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's thread items come from their own hook (pingdotgg#22687) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's project items and pure helpers live in their own files (pingdotgg#22699) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the command palette's add-project views are components (pingdotgg#22707) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(cli): start, message, and read threads from the terminal with t3 thread (pingdotgg#22732) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): composer attachment tiles live in their own component (pingdotgg#22689) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): resting image previews and queued attachments are their own components (pingdotgg#22719) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): composer mode controls and footer actions live in ComposerFooterControls (pingdotgg#22720) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): typing no longer re-renders the composer model picker (pingdotgg#22721) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): composer suggestion lists are built by useComposerMenuItems (pingdotgg#22722) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the sidebar's thread rows live in their own file (pingdotgg#22696) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): sidebar list markers and draft rows live in their own files (pingdotgg#22729) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(dev): first dev start seeds real data and warms deps (pingdotgg#22744) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull requests column lives in its own component (pingdotgg#22671) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request header's crumbs, title editor and base branch live in their own components (pingdotgg#22672) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request header's actions live in their own components (pingdotgg#22702) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request detail loader lives in its own hook (pingdotgg#22703) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request list's rows read the speed-mode modifier themselves (pingdotgg#22704) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull requests page's scope and grouping hooks live in their own module (pingdotgg#22705) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull requests route only validates its search; the page lives under components (pingdotgg#22706) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * perf(web): Shift re-renders only each row's quick-action group (pingdotgg#22726) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the pull request list's grouping helper lives in a logic module (pingdotgg#22727) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown code blocks live in their own module (pingdotgg#22690) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the Mermaid code block lives in its own component file (pingdotgg#22691) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown tables and details live in their own components (pingdotgg#22692) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown links and file chips live in their own modules (pingdotgg#22693) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): chat markdown images and videos live in their own module (pingdotgg#22694) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's module-level helpers live in their own files (pingdotgg#22665) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's persistent terminal drawers live in their own component (pingdotgg#22680) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's right panel lives in its own component (pingdotgg#22700) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's timeline follow and anchoring lives in useTimelineFollow (pingdotgg#22701) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's machine and server-update banners live in useSystemComposerBanners (pingdotgg#22710) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's subagent, goal, background-work and branch banners are built in ThreadActivityBanners (pingdotgg#22725) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's draft machine routing lives in useDraftEnvironmentRouting (pingdotgg#22728) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): ChatView's send preparation is pure functions in ChatView.logic (pingdotgg#22734) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the archived threads settings page lives in its own file (pingdotgg#22666) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the typography settings section lives in its own file (pingdotgg#22667) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the appearance settings page lives in its own file (pingdotgg#22668) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the background activity setting and its dialog live in their own file (pingdotgg#22669) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the connections page's pure helpers live in ConnectionsSettings.logic (pingdotgg#22683) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): authorized clients and endpoint rows live in their own file (pingdotgg#22684) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): saved and T3 Connect environment rows live in their own file (pingdotgg#22685) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * perf(server): skip the macOS xcrun git shim (pingdotgg#22759) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * docs(agents): read vendored .repos with git show when sparse-excluded (pingdotgg#22764) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): ⌘Z undoes a settle even when the composer has focus (pingdotgg#22607) Co-authored-by: ishaanko <ishaanko.mail@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * feat(scripts): one command checks what the branch changed (pingdotgg#22767) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(scripts): check:changed no longer skips knip after a removed import (pingdotgg#22784) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * perf(dev): faster first load for shared dev servers (pingdotgg#22776) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): stalled clones say "Stalled" instead of a frozen speed (pingdotgg#22780) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): steers split a finished turn's work instead of stacking under it (pingdotgg#22783) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(web): images on their own line no longer sit beside their label (pingdotgg#22787) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(release): include pnpm hook in Vercel uploads (pingdotgg#22813) * fix(release): keep Vercel warnings out of deployment URLs (pingdotgg#22817) * fix(queue): send selected held messages when a thread is stopped (pingdotgg#22790) * fix(server): delegated Claude children follow your subagent cache TTL setting (pingdotgg#22841) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): t3 pair in a worktree no longer falls back to the live install (pingdotgg#22855) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): avoid expensive diff minimization in status refreshes (pingdotgg#21872) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(codex): keep every path of a multi-file patch (pingdotgg#22541) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: GPT-6.1 Sol <noreply@openai.com> * fix(gitlab): merge request diffs page 30 files at a time so GitLab 15.7 to 17.10 answer (pingdotgg#21909) * fix(server): keep Antigravity question options and no-custom-answer flag in V2 (pingdotgg#22019) * fix(server): commit prompts no longer repeat CLAUDE.md when it matches AGENTS.md (pingdotgg#22848) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(mcp): point a bare thread uuid at its mcp: thread in thread_not_found (pingdotgg#22452) * fix(opencode): out-of-funds failures show OpenCode's message instead of a usage limit (pingdotgg#22596) * fix(shared): accept a pasted ChatGPT callback URL that is missing http:// (pingdotgg#21750) * fix(server): the background service picks up JAVA_HOME from the login shell (pingdotgg#22856) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): answered questions say "already answered" instead of "not found" (pingdotgg#22850) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): an abandoned browser sign-in no longer blocks T3 Connect for 3 minutes (pingdotgg#22903) On desktop, an abandoned browser sign-in blocked every T3 Connect sign-in for 3 minutes. A new attempt now replaces the stale Clerk flow, and a Cancel bar resets the sheet. Takeover of pingdotgg#22708. Co-authored-by: steve-ai-vibe <steve.ai.vibe@gmail.com> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * fix(server): agents get a short, current model list instead of a 55k-character catalog dump (pingdotgg#22889) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * docs(agents): proof for a bug fix depends on the bug (pingdotgg#23008) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> * fix(server): removing a worktree on Windows no longer deletes what its junctions point to (pingdotgg#21099) Co-authored-by: sheehanmunim <80079528+sheehanmunim@users.noreply.github.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> * perf(web): a streaming thread re-renders only its own sidebar row (pingdotgg#22730) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * refactor(web): the add environment dialog owns its form state (pingdotgg#22686) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(desktop): use Clerk's upstream fix for abandoned browser sign-ins (pingdotgg#23038) * feat: show automation messages as compact timeline rows (pingdotgg#22638) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(shared): the mobile client's release reads stay on upstream's repository apps/mobile is upstream's client and checks upstream's releases, so the release page and index it shares with the CLI default to upstream. Satellite's own CLI update passes RELEASE_REPOSITORY. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * fix(satellite): reject retired migration id 100 and split the release index helper runSatelliteMigrations now refuses Revdoc's retired id 100, so the rule no longer lives only in a comment. Satellite's CLI calls releaseIndexPageUrl with its repository; cliReleaseIndexPageUrl remains the upstream wrapper the unmodified mobile client imports. Comment fixes from the review. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Theo Browne <me@t3.gg> Co-authored-by: maria-rcks <maria@kuuro.net> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Jair Meza <jair3202@gmail.com> Co-authored-by: Julius Marminge <julius0216@outlook.com> Co-authored-by: SamuelBarnholdt <33251499+SamuelBarnholdt@users.noreply.github.com> Co-authored-by: Victor Vogel <thevictorvogel@gmail.com> Co-authored-by: Julius Marminge <51714798+juliusmarminge@users.noreply.github.com> Co-authored-by: Nikita Maximilian Grimm <github@nikitagrimm.de> Co-authored-by: travelvector <96337328+travelvector@users.noreply.github.com> Co-authored-by: Julius Marminge <julius@marminge.se> Co-authored-by: Marcus Hof <13001502+MarconLP@users.noreply.github.com> Co-authored-by: Alex Southwell <saphid@gmail.com> Co-authored-by: SAPHID <saphid@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Jorge Cervantes <jcervantes@grupoesquimal.mx> Co-authored-by: Nick Anisimov <n.anisimov.23@gmail.com> Co-authored-by: Antony <97451137+TonybynMp4@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com> Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com> Co-authored-by: Alb11747 <albertli_042@hotmail.com> Co-authored-by: GPT-6.1-Sol at high effort <noreply@openai.com> Co-authored-by: Guillermo Casanova <75276669+Gigioxx@users.noreply.github.com> Co-authored-by: TONY JOSEPH SEBASTIAN <37629628+tonyjosephsebastians@users.noreply.github.com> Co-authored-by: Utkarsh Patil <73941998+UtkarshUsername@users.noreply.github.com> Co-authored-by: tiliakoos <73005126+tiliakoos@users.noreply.github.com> Co-authored-by: Wout Stiens <71498452+StiensWout@users.noreply.github.com> Co-authored-by: Tristan Knight <admin@snappeh.com> Co-authored-by: Hubert Bieszczad <48803618+Brentlok@users.noreply.github.com> Co-authored-by: Yash Singh <saiansh2525@gmail.com> Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com> Co-authored-by: PR Batch Tester <agent@local.test> Co-authored-by: oliver <97427849+flamboh@users.noreply.github.com> Co-authored-by: project516 <138796702+Project516@users.noreply.github.com> Co-authored-by: MatiasGadeberg <57716018+MatiasGadeberg@users.noreply.github.com> Co-authored-by: Pixel Perfect <me@pixp.cc> Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com> Co-authored-by: Jacob Hands <jacob@jacobhands.com> Co-authored-by: syberia <n.kuhtin@gmail.com> Co-authored-by: Fuksss <fuxik12345@gmail.com> Co-authored-by: ishaanko <ishaanko.mail@gmail.com> Co-authored-by: Lakshmi Tanmay <lakshmi@voltcrash.com> Co-authored-by: Victor Vogel <satsdev@only21mil.xyz> Co-authored-by: Igor Makowski <56691628+Mnigos@users.noreply.github.com> Co-authored-by: fixfon <12512757+fixfon@users.noreply.github.com> Co-authored-by: steve-ai-vibe <steve.ai.vibe@gmail.com> Co-authored-by: Dara Adedeji <76637177+SunkenInTime@users.noreply.github.com> Co-authored-by: sheehanmunim <80079528+sheehanmunim@users.noreply.github.com> Co-authored-by: Robert Soriano <sorianorobertc@gmail.com>
PullRequestDetailPanel.tsxwas 2,934 lines and rendered the repository/number crumbs, the title editor and the base branch (twice, condensed and expanded) inline.PullRequestDetailCrumbs.tsx: the repo and number row and its condensed twin.PullRequestTitleEditor.tsx: owns the title draft, saving state and the update command, so typing a new title re-renders the editor instead of the whole panel.PullRequestBaseBranch.tsx: the base branch label with its out-of-date warning, written once instead of twice.Part of the pull request page split stack: #22671 → #22672 → #22702 → #22703 → #22704 → #22705 → #22706.
Measured with the rc-init render counter against a dev server seeded from real data (136 pull requests listed), fresh browser per side, main
6a6c84f990vs the stack top. Opening a PR detail: 6482 / 947 / 1249 renders on main vs 6331 / 1187 / 956 on the stack (noise, the first open includes data arriving). Switching Summary/Timeline/Code: 2-13 renders per switch on both sides. Holding Shift 3 times on the list: 14952 vs 14937 renders; the page and column no longer re-render (6 + 6 before, 0 after), the rows still do because their speed-mode prop really changes.Tests run on this layer:
tsc --noEmitfor apps/web,vp linton the changed files,vp test run src/reactCompilerCoverage.test.ts -t pullRequest(every new file compiles with 0 bailouts),vp test run src/components/pullRequest/pullRequestsRouteSearch.test.ts.🤖 Generated with Claude Code