Skip to content

chore(sync): merge 519 upstream commits through 2026-11-14 - #437

Merged
shuv1337 merged 525 commits into
mainfrom
sync/upstream-2026-11-14
Nov 15, 2026
Merged

shuv1337 merged 525 commits into
mainfrom
sync/upstream-2026-11-14

Conversation

@shuv1337

@shuv1337 shuv1337 commented Nov 15, 2026 •

Copy link
Copy Markdown
Owner

Summary

Merge 519 upstream commits (6bc105f04e..3f1b132e970f698562b1a12749b94f8ac8fc1e0d) into fork main 686376d86aea03b6d2172ce8cd18e5af05de2525 on sync/upstream-2026-11-14, using merge commit 1cb5cea7801d56c189590d20ffd192ddf8c89007. Upstream advanced by one commit after the original 518-commit inventory. Final head after review fixes: c2900cee64b08d9e027cfef6edf9103a02f8ba8c.

Includes theme CSS up to 50,000 characters, published theme IDs during alias lookup, right-panel custom shortcuts, and custom-model draft/save fixes (pingdotgg#36656, pingdotgg#31318, pingdotgg#34081, pingdotgg#35176, pingdotgg#36906).

For review, not automatic merge. Local checks/build and web/mobile suites pass; eight previously documented OpenCode replay failures remain, and the primary still needs the integrated Appearance/agent-edit client pass. No rebase, release, installation, upstream write or PR merge.

Conflict resolution and protected fork behavior

63 conflicted paths. Shared implementations follow upstream conventions; fork-specific behavior is retained:

Area Resolution
MCP orchestration / delegated tasks 92 pre-merge declarations, 92 after; none missing. Combine upstream atomic first-message creation, queue ordering, manual continuations and remote starting-state reads with fork dispatch admission, local cross-project delegation, worktrees and completion delivery.
Pools / failover Preserve named placement, pool seats, spent-instance routing, failover-chain metadata and the no-second-placement override. Correct a real integration regression: quota failover carries continuation history but starts a new turn on the replacement account instead of requesting upstream's native resume. Existing failover suite: 11 failures before → all 29 pass after.
Shared MCP binding Retain registration, permission rules, provider integration and orchestration tools. Update fork OpenCode fixtures for upstream's background-shell instruction without changing runtime text.
Auto-settle (#435/#436) Preserve configure schema, handlers, service validation, projections, permissions and action wording. Adapt the fork-only not-found call to upstream's helper API without changing its error text.
Cursor SDK Combine upstream 1.3.1 resume/attribution/shell-stream changes with the fork retry guard/diagnostics. Keep the actual shell-output producer in CJS, ESM and bundled builds; installed-producer tests pass. Retain CLI/Keychain support.
Migrations / receipts Append upstream 92–94 after 91; retain the independent fork 1–7 ledger, reconciliation, ordering checks and fail-closed validation. Preserve upstream projection/snapshot behavior. Fix upstream's new rejected-fork path to retain fork payload fingerprint/principal and return the same receipt on replay; extended existing test fails before / passes after. No renumbering or live database writes.
Branding / launchers / ownership Keep fork identities, channel homes, aliases, release sources, ownership boundaries and channel isolation. Adopt upstream absolute-exec Unix launchers so Cursor resolves SDK helpers, retaining the canonical-to-legacy bridge and Windows forwarder fixes. Port new CLI fixtures to fork names/ownership.
Releases / Windows payload Retain fork release workflow, prepared-cache behavior and payload-cap fix (#434). No publishing/deploy jobs enabled or executed. No Windows installer build claimed on Linux.
Web / desktop / mobile Adopt upstream shared UI, draft/save, shortcut and theme behavior; retain fork settings, providers, palettes and branding. Desktop wraps web; mobile keeps native palette behavior. Arbitrary DOM CSS remains web/desktop only.
Marketing As in #429, retain the branded fork subtree instead of partially adopting upstream's incompatible localized routing.
Dependencies Union fork dependencies and upstream updates; regenerate the lockfile and combined Cursor patch. Generated Expo GraphQL files match upstream and pass generation checks.

Validation

  • PASS: final-source full typecheck 42/42 tasks, full lint (warnings only), knip 3/3, actionlint, and production build 7/7 tasks (web, server, desktop, marketing and dependencies).
  • PASS: complete web suite 6,698 tests / 613 files; mobile 3,595 / 312 files.
  • PASS: every other test-bearing workspace suite, including Cursor 188, desktop 1,281, client runtime 2,114, shared 1,912, contracts 202, OpenCode provider 302, Pi 227, scripts 544, relay 315, task-cache 41, lint plugin 396, and offline eval tests 1,016. Node workflow/release scripts 61/61. Non-web/server workspace tests ran with private HOME/XDG/product homes.
  • PASS: Linux Rust formatting/tests: resource-monitor 20, KDE 12, Hyprland 15. macOS native lint and native mobile/desktop installers are not claimed.
  • PASS: theme/custom-model checks 59 tests / 9 files, including real Chromium ThemeEditorPanel, ThemeImportDialog and CSS application; environment theme publication/selection, CLI theme edits, MCP theme handlers and CSS length validation. Offline mcp-tool-use --context also passes. No paid-model evaluation score is claimed.
  • PASS: local/remote delegation + CLI recheck 69 tests / 2 files; corrected OpenCode shared-MCP cases 4/4; final provider-start/failover/CLI/device correction pass 178/178; extended receipt regression 1/1. Failover has explicit before-fix failure and after-fix runtime evidence.
  • Full server sweep: eight shards selected 539 files / 8,990 tests. Initial result: 8,954 passed, 23 failed, 13 skipped. Fourteen failures were the quota-resume regression plus fork ownership/branding fixtures; both affected whole shards were rerun and pass (930 + 994 tests, 134 files). The additional receipt replay failure is fixed and passes its extended regression. The remaining eight failures in three OpenCode replay files are listed below. No fully green server-suite result is claimed. The superseded serial attempt was stopped by its captured PID before the eight-shard run.
  • Final-delta check:changed c5d468e284 --concurrency 2: lint, both knip passes, Expo GraphQL check, affected typechecks and 152 tests / 5 files pass. Only the local formatter wrapper fails: it resolves ancestor ~/node_modules/oxfmt and cannot import vite-plus (existing papercut pc_a14f73980ba6). Explicit installed oxfmt with exported repository config.fmt verifies 1,111 files; generated .graphql.ts files are excluded per repository policy. Hooks were bypassed only after explicit checks.
  • The earlier full-scope check:changed origin/main completed 13,334 tests passed / 4 failed. One was the corrected receipt regression; three Git URL assertions saw the user's global HTTPS→SSH rewrite because that invocation was not sandboxed. Their files pass in the isolated full server sweep. Its Expo generation error was formatting-only drift from explicitly formatting ignored generated files; regeneration restored upstream's bytes and the check now passes. This earlier broad run is not claimed green.

Remaining server replay failures

These are the same eight cases documented on fork main in #433. Their three test files are byte-identical to current fork main; this task did not rerun a fresh independent main/upstream dependency baseline, so it does not claim that stronger attribution.

  • OpenCode2OrchestratorV2.integration.test.ts: message/thread model switches, mode/rule rewrite, plan-directory restrictions, fork-from-earlier-turn, cancelled queued message (six cases).
  • testkit/OpenCode2PendingSnapshots.evidence.test.ts: R1 opencode2_nested_background.
  • testkit/OpenCodeReplayFixtures.integration.test.ts: opencode2_nested_background/opencode.

Client verification limit

As an implementation child, I did not start an independent dev server. The primary/orchestrator must perform the one integrated Settings > Appearance → agent theme edit client pass. The component-browser/service/CLI tests above are not a claim of that manual pass. No native-device verification, paid agent turn or PR screenshot evidence is claimed.

Agent context budget

No increase label is needed or applied. Claude append 5,930 → 5,930 B; Codex context 7,324 → 7,324 B; MCP tool-list JSON 51,897 → 51,814 B (−83 B). No fork tool was removed or description cut to fit the budget. The budget test and current-head budget CI pass.

CI / review

Final-head CI Full: https://github.com/shuv1337/s2code/actions/runs/43684054571 at c2900cee64b08d9e027cfef6edf9103a02f8ba8c. Test Web is green: 613/613 files, 6,698/6,698 tests, plus production-client boot. Required CI, Windows shim/archive, context budget and Socket checks pass. CI Full remains red only on server shards 6–8 (the eight OpenCode replay cases documented above) and its dependent Check gate. No formal GitHub reviews have been submitted. No merge or release was performed.

Concentrate review on migration-ledger coexistence and receipt identity, Cursor producer/retry/resume composition, atomic first messages and pool placement, delegated tasks/shared MCP, auto-settle, ownership and Windows packaging. The eight replay failures and pending integrated client pass remain explicit review limitations.

All 63 conflicted paths
.github/workflows/release.yml
apps/desktop/src/ipc/methods/window.ts
apps/desktop/src/main.ts
apps/desktop/src/shell/DesktopShellEnvironment.ts
apps/desktop/src/updates/DesktopRemoteUpdates.test.ts
apps/marketing/src/i18n/de.ts
apps/marketing/src/i18n/en.ts
apps/marketing/src/i18n/es.ts
apps/marketing/src/i18n/fr.ts
apps/marketing/src/i18n/ja.ts
apps/marketing/src/i18n/ko.ts
apps/marketing/src/i18n/pt-BR.ts
apps/marketing/src/i18n/ru.ts
apps/marketing/src/i18n/zh.ts
apps/marketing/src/layouts/Layout.astro
apps/marketing/src/pages/95.astro
apps/marketing/src/pages/index.astro
apps/server/src/auth/RpcAuthorization.ts
apps/server/src/cli/connect.ts
apps/server/src/cli/invocation.test.ts
apps/server/src/cli/invocation.ts
apps/server/src/cli/service.test.ts
apps/server/src/cli/service.ts
apps/server/src/cli/uninstall.test.ts
apps/server/src/cli/uninstall.ts
apps/server/src/cli/update.test.ts
apps/server/src/cli/update.ts
apps/server/src/cloud/bootService.ts
apps/server/src/desktopUpdate/DesktopAppUpdate.test.ts
apps/server/src/device/DeviceService.test.ts
apps/server/src/mcp/OrchestratorMcpService.ts
apps/server/src/mcp/toolkits/project/handlers.ts
apps/server/src/orchestration-v2/Adapters/OpenCode2AdapterV2.test.ts
apps/server/src/orchestration-v2/EffectWorker.ts
apps/server/src/orchestration-v2/Orchestrator.ts
apps/server/src/orchestration-v2/ThreadLaunchService.ts
apps/server/src/peer/RemoteDelegation.ts
apps/server/src/provider/agentContextBudget.json
apps/server/src/vcs/GitVcsDriverCore.test.ts
apps/web/src/components/settings/ProviderInstanceCard.tsx
apps/web/src/components/settings/SettingsPanels.tsx
apps/web/src/components/settings/UpdateTrackSwitchDialog.tsx
apps/web/src/components/sidebar/updateEverything.logic.test.ts
apps/web/src/components/sidebar/updateEverything.logic.ts
apps/web/src/composerDraftStore.test.ts
docs/user/install.md
docs/user/providers-pi.md
packages/contracts/src/environment.ts
packages/contracts/src/orchestrationV2.test.ts
packages/contracts/src/orchestrationV2.ts
packages/contracts/src/orchestratorMcp.ts
packages/provider-cursor/package.json
packages/provider-cursor/src/server/CursorAgentSdk.ts
packages/shared/package.json
packages/shared/src/promptLinks.test.ts
packages/shared/src/remote.ts
packages/shared/src/usageLimits.ts
patches/@cursor__sdk@1.3.1.patch
pnpm-lock.yaml
pnpm-workspace.yaml
scripts/install.sh
scripts/install.test.ts
scripts/release-smoke.ts

Local evidence: /home/shuv/.cache/agent-ws/sync-20261114/. No privileged/systemd containers, host device mounts, live state writes, app installs, paid turns or release actions.

Implementation: GPT-6.1 Sol (openai-codex), pi / shuvpi.

Review fixes

Changes

  • Service recovery: forward resolveHostCliHint("service uninstall", flags.baseDir) through the status formatter. The duplicate-service row was added to the existing CLI table: fails before / passes after, retaining the custom home.
  • Marketing: restore upstream fix(marketing): download page shows its Releases fallback when the GitHub API rejects the request pingdotgg/t3code#28339's fetchJson/response.ok guard and regression test. Both stable and nightly reject HTTP 403; tests also verify the fork's shuv1337/s2code API URLs. Fork channels and repository remain unchanged.
  • Browser stability: Vitest reuses Chromium tabs across isolated file iframes. Reducing concurrency to one did not fix the disconnect (reproduced in CI and locally); explicitly collecting retired iframe heaps between files completed all 613 files / 6,698 tests. The final fix uses Playwright's public page.requestGC() API once per file, bounds browser workers at two, and runs them after unit tests. The diagnostic GC environment override is not shipped. No specific leaking application test is claimed. An ACP keyboard test now awaits the selected option's actual focus before sending keys; it had failed by leaving Antigravity selected instead of Second.
  • Server CI startup: remove unsupported test-cached --report and its dependent cache-measurement artifact upload, matching upstream's current invocation. All eight shards now execute instead of dying at argument parsing.
  • Branding: service status headings use the fork's channel-aware CLI helper; desktop update dialogs use DesktopEnvironment's display name.
  • Shared release scripts: scripts/merge-*-manifests.ts remain byte-identical to upstream and are unused by the fork release workflow.

Final-head validation

Head: c2900cee64b08d9e027cfef6edf9103a02f8ba8c. Full CI: https://github.com/shuv1337/s2code/actions/runs/43684054571 .

Check Result
GitHub Test Web GREEN — 613/613 files, 6,698/6,698 tests, plus production-client boot. Job evidence.
Local final-source full web suite 613/613 files, 6,698/6,698 tests, no diagnostic GC override.
Affected CLI, invocation, boot-service, marketing and desktop suites 131/131 tests, five files.
Final-delta check:changed 77bba5a9 --concurrency 2 42/42 package typechecks, lint, both knip passes, GraphQL check, 56/56 focused tests pass. Only the known local formatter wrapper fails; the explicit installed-oxfmt check with exported repository config.fmt passes for all nine changed files. Existing papercut: pc_a14f73980ba6.
GitHub required CI / Windows archive and shim / context budget / Socket All pass.
GitHub CI Full other jobs Lint, build/typecheck, Test, Test Mobile, Rust, mobile native static analysis and release smoke all pass.
GitHub CI Full server shards All eight execute; 1–5 pass. Shard 6 fails the one pending-snapshots replay; shard 7 fails six OpenCode orchestrator scenarios; shard 8 fails the one nested-background replay. These are the same eight cases documented above, verified again in the final-head logs. The aggregate Check gate is therefore red. No fully green CI Full claim.
Formal GitHub reviews None submitted; no approval is inferred from the supplied review findings.

No merge, force push, upstream write, live-state write or release. Stacked t3/ocean-default-no-stars untouched. As an implementation child, no independent dev server or integrated visual client pass was started.

Local evidence: /home/shuv/.cache/agent-ws/pr437-*.log.

Implementation: GPT-6.1 Sol (openai-codex), pi / shuvpi.

Lucenx9 and others added 30 commits November 14, 2026 09:33
…ingdotgg#35479)

Co-authored-by: Simone <185146821+Lucenx9@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…atches load (pingdotgg#33310)

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

Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…rsation (pingdotgg#36839)

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

Co-authored-by: Julius Marminge <julius0216@outlook.com>
…old setting (pingdotgg#33822)

Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Grok 4.7 <noreply@x.ai>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
… none (pingdotgg#33640)

Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…anel tabs (pingdotgg#35255)

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

Co-authored-by: brkgzlsy <berke.guzelsoy@fabrite.ch>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…tgg#34975)

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

Co-authored-by: Emi Griffith <emi.g@jinemi.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…nd (pingdotgg#33774)

Co-authored-by: Julius Marminge <julius0216@outlook.com>
…moved (pingdotgg#29155)

Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…from an earlier hand-off (pingdotgg#35258)

Co-authored-by: Mika Hertler <mika@mikahertler.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…renamed or switched (pingdotgg#34984)

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

Co-authored-by: kumar-karan <kumar-karan@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…of failing (pingdotgg#34698)

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

Co-authored-by: Julius Marminge <julius0216@outlook.com>
geezoria and others added 23 commits November 14, 2026 20:06
…pingdotgg#31929)

Co-authored-by: Geezy <igor.licko@gloryck.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…tgg#32089)

Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: marcel <marcel@marcels-MacBook-Air.local>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…32177)

Co-authored-by: Julius Marminge <julius0216@outlook.com>
…ssions (pingdotgg#31870)

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

Co-authored-by: Julius Marminge <julius0216@outlook.com>
…loss (pingdotgg#32169)

Co-authored-by: Julius Marminge <julius0216@outlook.com>
…dvertised as LAN routes (pingdotgg#32140)

Co-authored-by: repparw <repparw@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…gg#32183)

Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…tgg#32188)

Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…res (pingdotgg#32122)

Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…URL (pingdotgg#29625)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…ards (pingdotgg#30695)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Jerry Wu <haoyuwu@andrew.cmu.edu>
Co-authored-by: sisyphus-dev-ai <sisyphus-dev-ai@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…t declined (pingdotgg#33575)

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

Co-authored-by: Julius Marminge <julius0216@outlook.com>
)

Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
@socket-security

socket-security Bot commented Nov 15, 2026 •

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatednpm/​@​pierre/​diffs@​1.7.0-beta.3 ⏵ 1.7.0-beta.499 +1100100 +1100 +1100

View full report

@shuv1337
shuv1337 merged commit 7a72a3f into main Nov 15, 2026
24 of 28 checks passed
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.