Skip to content

Merge upstream/main 15fe283272 into coder-only - #297

Merged
henrychu04 merged 111 commits into
coder-onlyfrom
t3code/sync-upstream-15fe283272
Oct 31, 2026
Merged

henrychu04 merged 111 commits into
coder-onlyfrom
t3code/sync-upstream-15fe283272

Conversation

@henrychu04

Copy link
Copy Markdown
Owner

Merges upstream/main at 15fe283 (105 commits since the 80a2351 sync base) into coder-only in one stage: 38 content conflicts and 166 modify/delete conflicts. It then merges coder-only three more times to pick up #293–#296.

Carried

Cut

  • Surfaces cut as before: mobile, desktop, relay, T3 Connect, hosted web, CLI and install, telemetry, other providers and hosts, usage dashboards, process diagnostics. The 21 modify/deletes the resolver left for a human are added to DELETED_PATHS. Upstream additions under cut paths are removed.
  • fix(acp): Copilot threads get T3's tools pingdotgg/t3code#26968 HTTP MCP servers. No carried flavor sets mcpOverHttp; only Copilot's uncarried flavor did. The provider-acp adapter therefore has no mcpOverHttp, httpServers or httpMcpServers, and AcpSessionRuntime has no HTTP branch, each marked Coder:. Kilo never sets it, and no MCP server reaches an agent. Upstream's Copilot HTTP-MCP adapter test is not carried. acp-mock-agent.ts stays upstream's verbatim; it already keeps options only uncarried tests use.
  • DPoP renewal in the client-runtime connection driver, and the auth or pairing edits in ws.ts and PeerLinks.ts.
  • Prompt-link button in TimelineUserMessageRow's new message action row.

Adapted

  • perf(web): pull request comments reuse their markdown parse pingdotgg/t3code#27808's per-repository cached remark plugins: pullRequestAutolinkPlugins adds remarkGitLabUploads, and the context keeps repositoryUrl for body splitting.
  • RightPanelTabs: the fork's tab strip is inline, so a small RightPanelTabContent reads the side chat's shell where upstream's memoized RightPanelTab does.
  • useRightPanelActions has no embedded flag; upstream used it only for the cut preview action bus.
  • /side text-only check: reads no preview annotations, but does read machine contexts (Restore @-mentioning a machine, listing linked Coder workspaces #293 restored them).
  • Fork-only ProjectSettingsPanel.test.tsx: mocks useServerConfigs and readEnvironment, which feat: pin favorite projects and archive old ones pingdotgg/t3code#26154's group update now reads.
  • Docs: keep the fork's text with upstream's new facts (Shift+Tab, permissions in the model picker, pin and archive, side chats, context window).
  • Bookkeeping: SYNC_BASE is now 15fe283. GitLabCli's "checked against" line moves to 15fe283 (upstream did not change GitLabCli.ts in the range). sync.md gains two lessons: carried features can live in cut files, and full-suite browser load flakes.

Coder-only merges

Checks

  • node scripts/sync-check.mjs: markers, lost and both-sides were all reviewed. Every lost line is a cut surface or a listed seam; the three "both sides" lines are upstream moves. unused-locals prints nothing.
  • node scripts/seams-check.mjs: passes against 15fe283. No staged .orig/.rej files.
  • Every typecheck in AGENTS.md passes, including typecheck:helper.
  • pnpm knip:check and pnpm test:knip pass.
  • vp fmt --check on changed files passes.
  • pnpm build passes.
  • Tests, after the Restore port discovery and the thread Servers section with Forward #295 merge (Node 24.21.0, TMPDIR=/private/tmp/...): server 3666 passed; gateway, helper and coder-cli pass; contracts, providers, source-control, client-runtime and shared pass.
  • Web: 4320 of 4321 pass. The one failure, localApi.test.ts, is a hook timeout under load and passes alone.
  • Earlier full runs hit many browser timeouts and ClaudeAdapterV2's "persists a todo_list…" 60-second timeout. All of them pass when rerun alone (37 browser files, the whole ClaudeAdapterV2 file). This is now noted in sync.md §7.
  • After the Restore Kilo Code native session list and import #296 merge: its server tests, the AcpRegistry adapter test, providers, contracts, client-runtime, its web browser test, the typechecks and the build pass.
  • Live check with the local Coder harness: every check passes except the expected ProjectConflictError on "project created" (the project persists). Covered: helper install over coder ssh, server config, file search and read, asset streaming, a 1 MiB upload, thread search, MR filters, socket reattach.

Unsure

  • Context window default: upstream defaults it from the retired Labs usage flag. The fork never offered that flag, so it starts hidden.
  • /side in ChatView: the "update this server" reason for side chats can only show against an older helper. The gateway installs the matching helper, so in practice it should never appear.

🤖 Generated with Claude Code

juliusmarminge and others added 30 commits October 30, 2026 22:02
…viewport (pingdotgg#27795)

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

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…em as Redacted (pingdotgg#27986)

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

Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…arted ports (pingdotgg#27893)

Co-authored-by: PR Batch Tester <agent@local.test>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ook (pingdotgg#26978)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: cdxker <fdenzell@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…#27998)

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

t3 up asks one question (T3 Connect and/or the local network) or takes flags, then runs T3 Code as the background service, restarting only when a setting it reads at start changed. t3 status (and --json) shows the setup; t3 connect is t3 up --connect. A new background service listens on this machine only until you choose the local network (T3CODE_LAN); older installs keep their LAN access.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…gdotgg#22236)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
…3784)

Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…s removed (pingdotgg#23888)

Co-authored-by: PR Batch Tester <agent@local.test>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
…tgg#23468)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Simone <185146821+Lucenx9@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: maria-rcks <maria@kuuro.net>
…exts (pingdotgg#24251)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
…28041)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
saphid and others added 27 commits October 31, 2026 08:47
…tgg#24744)

Co-authored-by: SAPHID <saphid@users.noreply.github.com>
…ingdotgg#24689)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
… of asking to install it (pingdotgg#21606)

Co-authored-by: maria-rcks <maria@kuuro.net>
…otgg#25200)

Co-authored-by: Aditya Garud <153842990+yashranaway@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
…28057)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…otgg#26633)

Co-authored-by: PR Batch Tester <agent@local.test>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ck (pingdotgg#24688)

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

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

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

Gemini quota buckets are now returned, and Argon weekly quota keeps its own label.

Co-authored-by: whoisaldo <whois.younes@gmail.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…22442)

Co-authored-by: PR Batch Tester <agent@local.test>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ingdotgg#28162)

Co-authored-by: PR Batch Tester <agent@local.test>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Upstream brings 105 commits since 80a2351: side chats (pingdotgg#26901), pinned and
archived projects with migration 076 (pingdotgg#26154), the combined model and effort
picker with Show more (pingdotgg#28057, pingdotgg#28076), the thread details context meter
(pingdotgg#27892), Claude fixes (pingdotgg#28044, pingdotgg#22272, pingdotgg#25200, pingdotgg#24254), Codex fixes (pingdotgg#24257,
pingdotgg#23284, pingdotgg#24982, pingdotgg#24978), Pi transcript home paths (pingdotgg#28061), ACP robustness
(pingdotgg#21323, pingdotgg#24024, pingdotgg#24479, pingdotgg#23834), GitLab pipeline states (pingdotgg#24688, pingdotgg#25195),
commit hook exit codes (pingdotgg#22939), merge ancestry on selected-file commits
(pingdotgg#24744), PR watch deadlines (pingdotgg#25437), missed thread alerts on reconnect
(pingdotgg#24493), thread families (pingdotgg#26762), the shared server-internal path check
(pingdotgg#28041), and the app version copy button (pingdotgg#24788).

Conflicts:
- 166 modify/delete conflicts on cut surfaces (mobile, desktop, relay, CLI,
  auth, other providers and hosts, usage dashboards) stay deleted; the 21 the
  resolver left for a human are added to DELETED_PATHS. Upstream additions
  under cut paths are removed, except apps/server/src/auth/serverInternalPaths.ts,
  which AssetAccess, GitVcsDriverCore, and WorkspaceFileSystem import.
- ws.ts, serverRuntimeStartup.ts, PeerLinks.ts, client-runtime connection
  driver: upstream's edits sit in cut auth, pairing, and startup regions; the
  fork's versions stay.
- GitVcsDriverCore.ts: upstream's hook exit-code and trace fixes without span
  events.
- provider-acp: pingdotgg#26968's HTTP MCP servers are cut (only Copilot's uncarried
  flavor set mcpOverHttp); the rest of upstream's ACP changes merge.
- Web: side chats wired through ChatView, RightPanelTabs (a small
  RightPanelTabContent replaces upstream's memoized tab), RightPanelSurface-
  Content, useRightPanelSurfaceClose, useComposerSend, and ChatComposer,
  minus preview, device, desktop, and usage pieces. pingdotgg#27808's cached remark
  plugins carry the GitLab uploads plugin. The context meter keeps only
  ThreadDetailsContext from ThreadDetailsUsage.tsx. Prompt links stay cut
  from the new message action row.
- Docs keep the fork's text with upstream's new facts (pin and archive,
  Shift+Tab, permissions in the model picker, context window).

coderEnvironment advertises sideChats and projectOrganization.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Carries #293 (machine @-mentions) and #294 (attachment toolkit). The /side
text-only check reads machine contexts again, as upstream does.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ProjectSettingsPanel.test.tsx (fork-only) mocked entities and environments
without useServerConfigs and readEnvironment, which pingdotgg#26154's
useProjectGroupUpdate now calls.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Carries #295 (port discovery and the Servers section). Its PortScanner was
upstream's 80a2351 copy, so it takes 15fe283's pingdotgg#27893 rewrite (no HTTP
or TLS requests to unconfigured listeners); ThreadServersPanel and the
thread sidebar guide take upstream's local-server wording.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Carries #296 (Kilo Code native session list and import); upstream did not
change its files in this range.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@henrychu04

Copy link
Copy Markdown
Owner Author

Reviewed and live-checked the merged sync on the local Coder 2.34.5 / 2.25.3 harness (fresh install + build): drive.mjs passes except the known persisted-project conflict; gateway checks (immutable static caching, helper coder stat, traffic counters, 9 MiB frame closes only that socket, disconnect cancels an in-flight connect, reconnect); port discovery with upstream's rewritten scanner (pingdotgg#27893) — terminal server discovered and attributed, Forward ready, laptop port serves the page, stop, rule kept; attachment toolkit over the real bridge (stage, relative path refused, discard); Kilo native sessions (list, import, re-import, turn resumes the native session); helper exits when the gateway stops. No new listeners or outbound calls in shipped code (fetch additions are test-only). SYNC_BASE bumped to 15fe283.

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.