Skip to content

[coil-sync] daily sync needs attention (conflict) #237

Closed

Description

@github-actions

Automated daily upstream sync could not complete.

Result: conflict
Recovery tag: coil/last-good-20261113-154752
Run: https://github.com/radroid/t3code/actions/runs/43455759155

status JSON
{
  "kind": "daily",
  "result": "conflict",
  "upstream_range": "f313d0a6cb fix(server): stop device daemon alongside slow hub shutdown (#33566)\n9a35ab0afe fix(mobile): iOS terminal font and theme changes no longer replay output (#36115)\n8610b31ee8 fix(server): Codex usage answering after three seconds is no longer dropped (#36189)\n095611d1b5 fix(mobile): a sub-agent opened from its parent on a narrow iPad keeps Back (#36175)\nc7a3f02e38 fix(desktop): Local environment off survives an unreadable value in desktop-settings.json (#36168)\n2d8a843e6b perf(server): shell reads of a worktree or family no longer parse every thread payload (#36146)\n4aec277f79 fix(server): t3_queue and handoff analytics no longer read a thread's whole history (#36130)\n08be7829df fix(server): a link forgotten mid-resolve says it is not linked (#36132)\n7903b487ba fix(acp): Copilot runs end when its reply is done, not when its async shells exit (#36122)\nfa9d85fad5 fix(web): a server updated with the app reconnects as soon as it is ready (#35327)\na044f0c0b3 fix(mobile): a final answer followed by more work in the same run stays visible (#36116)\ned7e5010ba fix(web): terminal \"Add to chat\" now adds to a queued message being edited (#36117)\n21b0b7a057 fix(composer): keep reviews from different Git hosts in suggestions (#36104)\n10fbff5ab6 fix(server): deferred-steer check and queued cancel no longer read a thread's whole history (#36100)\nbd7d264401 fix(server): a fresh-session scheduled run no longer takes over the thread's conversation (#36103)\ned05c0e43b fix(server): preview drag moves the mouse during the drag (#36096)\n74573fc29b fix(web): new project publish option tells screen readers whether it is on (#36090)\neb7e63a822 fix(server): thread reads preview linked PRs and list_thread_pull_requests pages (#35858)\n082a3e3c52 fix(web): narrow-window right panel dialog is named Workspace panel (#36085)\n5f69cac5c9 fix(web): turn diffs cut off at the size limit say changes are incomplete (#36079)\n6790f85f53 fix(web): point pairing copy at Sharing & access (#27692)\n290182dc83 fix(provider-core): Vite+ provider updates respect npm's release-age policy (#32340)\n7e1a05808a test(server): terminal checkout test waits for the refresh's last event (#36071)\n4225c9dfae fix(server): a message sent after a stopped worktree setup waits instead of running in the project checkout (#23618)\n84efa01f12 fix(desktop): AppImage quit no longer leaves zygotes running on an unmounted image (#36057)\n08544ba3e5 fix(web): open documents no longer reload after every agent command (#32693)\ne4025c8528 fix(server): reap recorded Linux Claude survivors before recovery (#22834)\n0902adcc03 fix(forgejo): tea API failures keep Gitea's reason (#32244)\ndd7918e1e2 fix(web,mobile): MCP app calls keep their tool row and result beside the app card (#33347)\nfb2e5a0128 fix(client-runtime): imported threads that never ran no longer sit in Working as Waiting (#33042)\n8cb55fa5a4 fix(web): provider rows select from anywhere in the row (#32537)\nc28c6acaf8 fix(server): a rejected non-fast-forward push explains itself under a translated Git (#35386)\n56e58a9866 fix(server): repository identity honors the gh default remote (#21574)\n31b5549f98 fix(web): pull request comment tooltips follow the Time format setting (#35396)\nb80531d6fb fix(web): PR Code tab previews images the host sends no patch for (#36056)\n38c3b56c68 docs: AGENTS.md and the FAQ list Pi, Muse Code, Kiro, and fx (#33906)\n60f70d98cd fix(scripts): scenarios reach the screen and say why they could not run (#36054)\n4596872940 perf(server): linked-thread counts update when links change instead of polling every 10s (#35865)\n5f85768394 fix(codex): image items identified by fileId are no longer dropped (#35883)\na2be070f30 fix(server): speech worker no longer segfaults when the backend dies mid-dictation (#33624)\n2dd207aabc fix(server): a decoded U+009C no longer ends an OSC string in terminal history (#36022)\nd63c0ec8eb ci: agent context budget runs are no longer cancelled by label bursts (#36049)\n3376c8da92 fix(desktop): AppImage t3 shim no longer grows the CLI compile cache on every call (#33885)\n6237824a2c fix(server): t3_thread_read results fit MCP clients' output limit (#33455)\n7179113617 fix(mobile): Android terminal resizes the engine when only the cell size changes (#36023)\n0af8be3bb1 fix(mobile): pasted images over the size limit attach instead of vanishing (#35845)\n73e49aa6cd fix(server): terminal history strips queries with embedded controls (#36027)\n1acee5b8be fix(web): terminal OSC 8 file URIs open the file they name (#36025)\n2432ee10c6 test(server): blocked pointer-file scan test waits for the unblocked read (#36031)\n431e53f322 fix(server): terminal history drops the ESC Z identity query (#36024)\nc29c26afeb fix(server): BEL inside a DCS no longer ends it in terminal history (#36020)\n2cb56cbf56 fix(web): terminal paste keeps a leading U+FEFF without bracketed paste (#36018)\n0b0a61a01f perf(server): reduce allocation while reading usage history (#36009)\nf9cadccadf fix(scripts): dev runner ignores the parent T3 server's port and host (#36019)\na32cdde062 ci: label issues from vouched and denounced authors, denounce coygeek (#36021)\n15d1ef5e09 fix(server): Stop waits for the turn to settle instead of polling (#35948)\nd06ba27166 fix(device): Simlock viewer stops retrying an ended lease and keeps its reason (#35994)\nee645553a9 test: drop Effect.scoped wrappers that @effect/vitest already applies (#35993)\ncc927400c7 fix(server): Simlock renewals no longer exceed the gateway's lease TTL cap (#35988)\n939b2884f9 fix(server): SSH device test rejects Node below agent-device's 22.12 floor (#35991)\n43ce39595b test: run clock-free live tests on TestClock (#35868)\ne018563669 fix(desktop): keep WSL distros whose names start or end with a dot or hyphen (#35971)\na621be8d15 fix(web): open code blocks and diffs follow a changed word wrap default (#35922)\nc54e5b31ce fix(cli): service.env updates keep quoted multiline values intact (#35976)\n8fe745d7af fix(server): Codex protocol records go to the log of the thread they belong to (#35975)\nb7a224c7dd perf(server): sending, editing and steering queued messages no longer read a long thread's whole history (#29521)\n0f5ecef914 fix(server): refuse a Linux service for a T3 home systemd cannot load (#35968)\n99224f098d fix(server): launcher repoints the unit the systemd manager loads (#35966)\nb2078c2d0a fix(server): service launcher keeps a T3 home that ends in a space (#35958)\n0b127678b1 fix(server): ACP threads accept a model change after their session detaches (#35951)\nff1eead6f4 fix(web): zoom shortcuts work while a desktop browser page has focus (#35947)\nec918277f0 fix(server): unchanged-worktree cleanup waits for the thread to settle or archive (#35941)\n67d91a0390 fix(server): preview_navigate returns the committed page when load is slow (#26127)\n0c4b1d8f27 fix(server): new turns wait for overlapping checkpoint file restores (#23671)\n97cfc07759 fix(preview): remote viewers recover from stalled first captures (#25381)\n0a333a69e7 fix(server): Codex shadow home shares the instance environment CODEX_HOME (#35912)\nb62e80e0a3 fix(web): copying an alert callout keeps its alert Markdown (#35932)\nbedc8658c3 fix(mobile): Files search no longer carries into another workspace (#35902)\n004f7a768f fix(server): interrupted SSH device bootstrap no longer leaks its forward (#35928)\ned5afae179 fix(acp): v2 tool updates clear nulled fields and replace raw input (#35869)\n5f7bfe565d fix(azure-devops): TF400733 throttling fails diffs as rate-limited (#35929)\n2e0bd97e86 fix(server): Force stop no longer tears down a queued follow-up that started during cleanup (#31038)\n7556047418 fix(web): copying an image with a spaced path keeps it an image (#35914)\n274474dd19 fix(server): refresh sync status after agent merges (#35919)\nafff0d3efe fix(clients): answer history no longer shows provider context from review comments (#35897)\nf5390209c2 test(server): windowed history pages are checked against the full index at the window edges (#35877)\nf39d38bcc1 fix(server): Codex question answers keep their native question id (#35886)\nbe03b93bac fix(desktop): one preview viewer or recording stopping no longer freezes the others (#31051)\n6bc3726eb3 fix(ssh): a slow reconnect no longer replaces a healthy port forward (#35874)\ne726a0898a fix(opencode): /goal clear with no goal set finishes as a no-op (#35893)\n6f108e8556 fix(codex): accept hook event names newer than the pinned protocol (#35885)\n025942d76a fix(desktop): an unreadable settings file is no longer overwritten by a bounds save (#35890)\n8a38c63706 fix(web): thread navigation shortcuts work from the terminal and macOS composer (#26433)\n496856d8d7 fix(server): migration 64 skips thread payloads that are not valid JSON (#35884)\nb23f94e4a1 fix(server): preview resize and status report the real size of desktop tabs (#32854)\n1e96606cb2 fix(client-runtime): reopened files show host edits instead of the first read (#29409)\n8a227eba4e fix(terminal): show recovery guidance when a project folder is missing (#35849)\nb1bc5ce20f fix(server): linking says why each address failed discovery (#30884)\n5e18314b88 fix(forgejo): fast-forward-only repositories can merge pull requests (#32738)\n15cf8b122c fix(acp): root tool content replacements replace streamed output (#35862)\n",
  "upstream_head": "f313d0a6cb843551fb60e57a454a71e71a3a8c04\n",
  "conflicted_files": "apps/server/src/sourceControl/SourceControlDiscovery.test.ts packages/source-control-core/src/server/discovery.ts pnpm-lock.yaml \n",
  "culprit_commits": "62647f4d24 fix(mobile): Android sheets scroll without per-feature platform checks (#34207)\n0ca50a6f1e fix(mobile): tall iOS code blocks with long lines show their code (#33243)\ncc97303381 fix(cursor): mcp.json servers using ${workspaceFolder} now start (#24505)\n4cc6bebbac fix(desktop): nightly updates no longer depend on GitHub's tag order (#35599)\nc544c27981 fix(server): a failed Git version probe no longer advises installing Git (#35638)\naa58dc6d22 chore(deps): bump the npm_and_yarn group across 2 directories with 1 update (#33945)\nad3d60f689 fix(desktop): Nightly update checks find the newest nightly past newer preview builds (#35470)\n7b17bdbcef fix(server): file index refreshes no longer block the server on fff's lock (#35460)\n",
  "failing_step": "\n",
  "patch_manifest": "d637fa07a4 fix(coil): upstream's slow-CLI discovery tests follow the fork's available status\nec8acc304b chore(coil): the PWA manifest uses upstream's web icons\nb27b88ada4 fix(coil): desktop heap headroom reads NODE_OPTIONS through HostProcess.Environment\n65bd4513cc build(coil): typecheck the update relay through effect-tsgo like upstream's infra\ne46d544a36 chore(coil): merge upstream/main 12ec17ce4c (494 commits) (#217)\nd6dbacdc7a test(coil): provide CoilUpdateDelivery to upstream's DesktopApp startup test\na7c4da6094 docs(coil): the discovery seam keeps only its status line after upstream #21606\n06d7231930 fix(coil): fork clone and Azure discovery tests follow the merged upstream\nde1789d3ba fix(coil): the daily sync installs before verify when a merge changes dependencies\nd0a53da1cb ci(coil): the daily sync's merge commit skips authoring hooks\n0d3d6e6844 fix(coil): knip:check passes on the fork\n844108a6f4 fix(coil): update toast effects use upstream's renamed effect lint rule\n0e8d251a02 ci(coil): skip the one upstream server test git 2.56 breaks\n1d2842182d fix(coil): the update toast says why each of its effects exists\n68c43cb522 fix(coil): fork comments fit upstream's four-line comment cap\n6667ba026b fix(coil): point fork clone code at upstream's forge definitions\n7085f2ca07 fix(coil): fork copy passes upstream's no-em-dash lint rule\n56d34883f2 fix(deps): pin eight security fixes upstream's ranges already allow (#194)\n5b57b1e473 ci(coil): desktop tests no longer race Electron's download (#195)\n5026317e6e fix(coil): a clone that fails over SSH and HTTPS says the shared cause once\n3ac51f7d99 chore(coil): the app is called T3 Code again\nb00ea1f567 ci(coil): each upstream sync lands as a PR that says what changed for users\ne9b1842e8d ci(coil): web tests get Chromium and upstream's release repository\n8aab919b0b docs(coil): repoint the seam ledger at 67c0fc0cda\nc94c9b29a6 fix(coil): upstream's new Linux URL handler test uses the fork's app name\n9338847968 fix(coil): hosted pages name and link the fork's desktop app\nc49a622173 fix(coil): install instructions follow upstream's Alpha to Beta rename\nf7a33471f2 fix(coil): fork code passes upstream's prefer-effect-fn lint rule\nf0f7bae650 fix(coil): fork code passes upstream's new comment and memo lint rules\ne1f1a870dd ci(coil): the daily sync re-resolves a lockfile-only conflict\nc16d3e35c3 chore(coil): prune security pins upstream already covers\n98cd4a0840 chore(coil): mount the update toast outside __root.tsx\n1ae2f5c7d5 chore(coil): use upstream's mobile composer Return handling\ne1db9a3d06 docs(coil): a start page for building on the fork\n1e3e9f6064 chore(coil): retire parked and absorbed fork features\na09120ded2 docs(coil): repoint the seam ledger at 7ac952c630\n941f9fdd9e docs(coil): repoint the seam ledger at 6002c5c68c\n4faec437bd docs(coil): repoint the seam ledger at 6524a8d437\n7fb9b0166e docs(coil): re-baseline the seam ledger at 58d253231d\n7a65e076d7 fix(coil): point fork source-control code at upstream's new packages\n48c28b09d8 ci(coil): run web tests alone in the single-runner sync verifies\n31846e0650 ci(coil): split the test gate like upstream so web tests get their own runner\ne99c8a3a07 docs(coil): repoint the seam ledger at the final merge-base\n91ec07ee86 ci(coil): give the test gate room for upstream's larger server suite\nf1cd9cf359 docs(coil): re-baseline the seam ledger at cdd331b6c3\n09609366fe docs(coil-home): drop parked features from the feature list\n8652ef2a4b fix(coil): bring fork code up to the merged upstream\n23779805a8 ci(coil): install Chromium for server tests; retire the release-workflow test\na1a141261c chore(coil): park fork features built on orchestration v1\nd1e974ffa3 docs(coil): repoint the seam ledger at the final merge-base\n77505136d4 test(coil): the toggle's timing assertions read its inline transition\nafbb22d520 docs(coil): re-baseline the seam ledger for the 2026-09-28 sync\nd60080285c fix(coil): the outbox drain waits for upstream's queue to send first\n80ba53d112 docs(coil-home): carry upstream's refreshed OpenAI and OpenCode logos\na32c48020d fix(coil): fork UI passes upstream's design-system lint gate\n2edd6909e6 docs(coil): repoint the seam ledger at the final merge-base\n85cc654807 docs(coil): re-baseline the seam ledger for the 2026-09-22 sync\n2041766bee fix(coil): the offline queue releases the attachment uploads it drops\n8df97aad19 fix(deps): patch Nanoid zero-size advisory\n5379a8e499 chore(coil): Dependabot runs go green: vendored repos excluded, 38 advisories re-resolved (#155)\nfecbf70d11 fix(coil): scripts typecheck passes on effect rc.115 (#154)\n2c426238be fix(coil): the bundle gate requires only each layer's native externals\n3acc43842c chore(coil): delete inherited upstream workflows instead of disabling th\n5d3360ccc5 test(coil): the doomed-turn replay waits for the reactor's verdict, not a turn count\ndc619218ed fix(coil): the bundle gate no longer fails a good release on regex quotes or JXA imports\n4b5c186a4f chore(deps): keep the astro 7.2.8 bump lock-only and inside the release-age policy\n3c3db729a4 chore(deps): resolve the lockfile for sharp 0.35.4 in /scripts\n4fae7d5d14 fix(coil): give http_ece a license notice so the desktop build passes\nfdada32d42 chore(deps): bump astro from 7.2.0 to 7.2.8\n0f95375822 chore(deps): bump sharp from 0.34.5 to 0.35.4 in /scripts\na068bb6de3 docs(coil): re-baseline the seam ledger for the 2026-09-12 sync\na81b3bd933 chore(coil): keep two seams additive after the merge\na0de8ee9db test(coil): the pre-ready desktop entry carries the fork's app name\nae3329145d ci(coil): install libsecret on Linux runners and the renamed Spectre component\nb8b4cb6130 fix(coil): crash recovery leaves prepared restart continuations alone\n2eec9cf7da fix(coil): read Claude rate-limit rejections from the runtime warning\ne0438aaec1 fix(coil): queued messages carry structured context like a normal send\nc2207685fe fix(coil): follow the Effect rc.112 and TypeScript 7 toolchain bumps\n89d522523d fix(coil): one failed auto-resume fire no longer aborts the tick\naefebcff3c test(coil): replay the #118 spend-limit payloads through the auto-resume classifier\nc48265fe4b test(coil): auto-resume tests wait on receipts, never on scheduler turns\n86054c7cb1 fix(server): classify Azure DevOps \"not authorized\" failures as authentication\n8391a6a32a fix(coil): the update toast's build age advances while the toast is visible\n8ed54891d1 test(coil): loops \u2014 tests wait on receipts, never on scheduler turns\n1c1af59ee0 feat(coil): loops \u2014 the supervisor announces what it did\n5c6b6f37aa perf(coil): loops \u2014 pruning happens when a run ends, not on every write\nb147969270 fix(coil): loops \u2014 the test harness never moves the clock on its own\naafdeed80f fix(coil): loops \u2014 one store read per tick, and a harness that waits for the answer\n8e998c5fbe fix(coil): loops \u2014 the console tells the truth about what it is showing\n588780000c fix(coil): loops \u2014 bound the state file and close the route and toolkit holes\n97de6179cf fix(coil): loops \u2014 install the adapter hooks in production and correct the decision table\n8f07eb7783 docs(coil): format the loops prototypes and rebuild the report\nabf29cfd75 fix(coil): loops \u2014 one store instance and loop_done wired across phases\n55dcd248e1 docs(coil): ledger totals for the loops seam row\n9397ad2d57 feat(coil): loops \u2014 the reactor, wired in (Phase 2)\n1ef7a6f929 feat(coil): loops \u2014 raise_blocker, loop_status and loop_done (Phase 5)\n3f15ffe717 docs(user): loops\nf16916d41d feat(coil): loops \u2014 Settings \u2192 Loops (Phase 4)\nb63e34b3e9 feat(coil): loops \u2014 the console overlay and the answer route (Phase 3)\ncc268cb685 docs(coil-home): the site no longer promises a daily rebase\n",
  "detail": "merge aborted; working tree restored\n"
}

▶ To fix: comment @claude resolve on this issue (or run the coil sync resolve (agent) workflow). An agent replays the merge, resolves the conflicts, runs typecheck/lint/test, and opens an ordinary PR for review — nothing is pushed to main. Runbook: docs/coil/sync-agent-runbook.md.

Activity

  1. radroid commented on Nov 13, 2026

    @radroid
    Owner

    Landed as a merge commit in #239 (f994014). The conflicts were in source-control discovery and the lockfile. The web test job now runs in two shards, because one headless Chromium kept dropping late in the run on these runners.

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

    coil-syncUpstream sync needs a human/agent

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions