Skip to content

Patched build blocked: conflict on v0.1.4-nightly.20261027.3766 #12

Closed

Description

@github-actions

key: v0.1.4-nightly.20261027.3766@94058f16a7ceb89dd05bc59a9785a2d45d0d4c5c,f4dee53190b2eccf0caf0b705449159af23269c8
notified: v0.1.4-nightly.20261027.3766@94058f16a7ceb89dd05bc59a9785a2d45d0d4c5c,f4dee53190b2eccf0caf0b705449159af23269c8

Patched desktop build blocked: feat/claude-code-cloud does not apply to v0.1.4-nightly.20261027.3766.

  • Kind: conflict
  • Upstream: v0.1.4-nightly.20261027.3766 at e109dc8d89419ae8120110ab28a4c94c5a4f600b
  • Patch branches on u9g/t3code, in order:
    • feat/claude-code-cloud at 94058f16a7ceb89dd05bc59a9785a2d45d0d4c5c
    • feat/desktop-update-repository at f4dee53190b2eccf0caf0b705449159af23269c8
  • Failed commit: 94058f16a7ceb89dd05bc59a9785a2d45d0d4c5c feat(providers): run Claude Code cloud sessions as a provider
  • Conflicting files:
    • apps/mobile/src/lib/threadActivity.ts
    • apps/server/src/orchestration-v2/Orchestrator.ts
    • apps/web/src/components/settings/providerDriverMeta.ts
  • Run: https://github.com/u9g/t3code-patched/actions/runs/40489419980

Unblocking

Rebase the branch's own commits onto the nightly (not onto upstream main, which may be ahead of it), fix, and push:

git fetch https://github.com/pingdotgg/t3code.git main:refs/remotes/upstream/main tag v0.1.4-nightly.20261027.3766
git rebase --onto v0.1.4-nightly.20261027.3766 $(git merge-base feat/claude-code-cloud upstream/main) feat/claude-code-cloud
git push --force-with-lease <u9g/t3code remote> feat/claude-code-cloud

A push to any patch branch changes the key, so the next hourly run retries on its own. To retry now:
gh api repos/u9g/t3code-patched/dispatches -f event_type=patches-updated

Activity

  1. u9g commented on Oct 27, 2026

    @u9g
    Owner

    Unblocked. Both patch branches are rebased onto v0.1.4-nightly.20261027.3766 (e109dc8d89) and pushed.

    Upstream has since withdrawn the 3766 release. The tag is still there, but the release is gone. So the dispatch with upstream_tag=v0.1.4-nightly.20261027.3766 (run 40493519260) stopped in pick-build.sh with "is not a release in pingdotgg/t3code".

    I dispatched again with no tag, so it builds the newest published nightly: v0.1.4-nightly.20261027.3770 (7c3b3b3605). That is 4 commits past e109dc8d89, and the only file they share with the patches is apps/server/package.json, which merges cleanly. In run 40493703467, "Apply patch branches" succeeded with picked=3 and patched_sha=39b902a8fe. The Windows build is running.

    Branch Before After
    feat/claude-code-cloud 581a494ea4 + 94058f16a7 b160a5a834 + 54d3c2d7a4 (2 commits)
    feat/desktop-update-repository f4dee53190 da47cc28a8 (1 commit)

    The commit messages are unchanged. I kept the cloud branch as 2 commits, with thread MCP as its own first commit, the same as #11.

    feat/claude-code-cloud

    Conflicts. All three were in the cloud commit. I read the upstream commits that touched each one, and each resolution keeps both sides:

    One fix beyond the conflicts. pingdotgg/t3code#25785 added AgentContextBudget.test.ts, which requires the MCP tool list size to equal the committed budget exactly, and pingdotgg/t3code#25790 set it to 42328 bytes. The patch adds mcpServers and providerInstanceId to t3_thread_launch, so the test failed at 42770. Each commit now carries its own value, so each passes on its own:

    • 42731 in the thread MCP commit
    • 42770 in the cloud commit

    claudeSystemAppendBytes and codexAdditionalContextBytes did not change. If either commit goes upstream, it will need the agent-context-increase label.

    Upstream and the patch both changed 15 other files, and those merged on their own. I compared each one's old base, upstream and rebased versions: nothing from either side is missing. git range-diff shows no patch change lost; the only differences are the registry entry's new location (plus modelFamilies) and the budget values.

    feat/desktop-update-repository

    It rebased with no conflicts, and git range-diff shows the change is identical. The only file it shares with upstream is docs/operations/release.md, where upstream's linux-arm64 line merged cleanly.

    Verification

    I ran everything on Windows with Node v26.12.0 and ./node_modules/.bin/vp. Upstream changed pnpm-lock.yaml and several package.json files, so I ran setup-worktree.ts in both worktrees first. For each failure I ran the same test file in a clean worktree at e109dc8d89 and compared failing tests by name. Every test that fails also fails there, mostly on Windows paths, temp folders and spawned processes.

    feat/claude-code-cloud:

    • Targeted tests: vp test run apps/server/src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts apps/server/src/orchestration-v2/Adapters/ClaudeCloudQueryRunner.test.ts apps/server/src/provider/claudeCloud/ packages/provider-core/src/server/failure.test.ts gives 390 passed and 13 failed. The same 13 fail at e109dc8d89: 12 ClaudeAdapterV2 attachments tests and "pins tool search on when the user's Claude settings choose auto".
    • Claude Cloud replays: OrchestratorReplayFixtures.integration.test.ts no longer exists. vp test run apps/server/src/orchestration-v2/testkit/ClaudeCloudReplayFixtures.integration.test.ts -t claudeCloud passes 6/6.
    • Local Claude replays: ClaudeReplayFixtures.integration.test.ts gives 36 passed and 2 failed (command_output_streaming/claudeAgent and "streams a subagent's foreground Bash output live"). The same 2 fail at e109dc8d89.
    • Code near the conflicts: ClaudeAdapterV2.remote.test.ts, mobile threadActivity.test.ts, packages/client-runtime/src/, modelShortName.test.ts and ContextWindowMeter.logic.test.ts pass 1493/1493.
    • Budget tests: AgentContextBudget.test.ts passes after the fix, and transferBudgetV2.integration.test.ts passes.
    • Typecheck: cd apps/server && npx --no-install tsc-rs --noEmit is clean, and so is the same command in apps/web, apps/mobile and packages/client-runtime.
    • vp run check:changed (125 files) passes format, lint, knip 1/2 and 2/2, graphql, unused patches, and typecheck of 36 packages. Its tests (96 files) have 44 failures in 4 files, and the same 44 fail at e109dc8d89:
      • ClaudeAdapterV2.test.ts: the same 13 as above
      • storageCleanup.test.ts: 24
      • ProviderTurnStartService.test.ts: 4
      • userInputAttachments.test.ts: 3

    feat/desktop-update-repository:

    • Update tests: vp test run apps/desktop/src/updates/ gives 65 passed and 1 failed: "updates Linux .deb installs and leaves other non-AppImage installs off" (expected 'disabled' to equal 'idle'). It fails the same way at e109dc8d89.
    • Typecheck: cd apps/desktop && npx --no-install tsc-rs --noEmit is clean.
    • vp run check:changed passes format, lint, knip and typecheck of 32 packages. Its tests fail 12: the .deb test above and 11 in scripts/build-desktop-artifact.test.ts (e.g. BundleNotSelfContainedError). The same 12 fail at e109dc8d89.

    Both branches together:

    • Combined: the two branches share no files. git merge-tree --write-tree of the two tips is clean, and so is applying each commit onto 3770 (7c3b3b3605).

    check:changed spawns vp and, on Windows, only finds a vp.exe, while the worktree has only vp.cmd. So I ran node scripts/check-changed.ts with a small preload that sends those spawns to the worktree's own node_modules/vite-plus/bin/vp.

    Review. I also ran a separate read-only review with five reviewers:

    • the conflict resolutions
    • the effects of the provider registry move on web and mobile
    • the server-side merges
    • the other files both sides changed
    • the desktop branch and the combined build

    Two skeptics then checked each finding. The only finding was the agent context budget, which is now fixed. The review also confirmed that claudeAgent paths are unchanged from upstream and that upstream added no new per-driver list that needs claudeCloud.

  2. github-actions commented on Oct 27, 2026

    @github-actions
    ContributorAuthor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    patch-conflictPatched build blocked: patch conflict or build failure

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions