Repository navigation
Conversation
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: unavailable · PR result: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
…ter (pingdotgg#19964) (pingdotgg#22395) Co-authored-by: Julius Marminge <julius@marminge.se>
…tgg#22253) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…t fields (pingdotgg#22203) Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ingdotgg#22187) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
The windows-11-arm runner (4 vCPU) took 610-780s per release and was the critical path. Package and sign the Windows arm64 installer and CLI archive on a 32-vCPU Linux runner, and run only the arm64-native checks (packaged natives, bundle self-check, CLI smoke test) on windows-11-arm.
… verify script with knip A Windows host still self-checks a cross-architecture payload, as on main; only non-Windows hosts defer it to the verify job. knip cannot trace the esbuild invocation in release-desktop.yml, so list the verify script as an entry and esbuild as a used dependency.
jahands
force-pushed
the
ci/win-arm-linux-build-pr
branch
from
October 20, 2026 17:49
a5c036c to
14e41be
Compare
Author
|
Replaced by #4. This PR's branch also backs pingdotgg#22428 and was rebased onto upstream main. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Result: Windows arm64 release job 579s → 225–280s (−52% to −61%)
Wall-clock from "JS bundle ready" to "Windows arm64 done", measured on this fork in the same run as the unchanged baseline. Unsigned, because the fork has no Azure signing secrets:
windows-11-armbuilds everything)windows-11-arm)pnpm installUpstream production, for reference: this job took 610–780s signed on recent nightlies and was the last desktop job to finish, so
Publish GitHub Releasewaited on it. At ~225–280s it finishes before macOS arm64 (~344s) and the release test shards (~310–360s), so it is no longer the release's critical path.The Windows arm64 release job ran entirely on GitHub's
windows-11-arm(4 vCPU) and took 610–780s per nightly upstream, against ~234s for Windows x64. Almost none of that work needs Windows arm64: it packages a prebuilt JS bundle with prebuilt arm64 natives and signs it.This builds and signs the Windows arm64 installer and CLI archive on a 16-vCPU Blacksmith Linux x64 runner, and keeps only the checks that execute arm64 code on
windows-11-arm:release-desktop.ymlgainsverify_runner. When set, the build job skips everything that runs the packaged binaries, uploads the unpacked app plus esbuild-bundled verify scripts, and averifyjob on that runner loads the packaged natives (fff probe, bundle self-check) and smoke-tests the CLI zip. No checkout or install there.build-exe --target win-arm64, zip viazip, resource monitor viacargo xwin(cache miss only), signing via jsign (Azure Trusted Signing) through electron-builder'ssigntoolOptions.signhook and the CLI archive signer. The NSIS uninstaller is read out of the stub with electron-builder's ownUninstallerReader(its macOS path) via a one-lineapp-builder-libpatch, so no wine.Parity checks: CLI zip file list matches the upstream nightly's except
node-pty/build/Release/conpty/*, which node-pty's postinstall only creates on a Windows host and which nothing loads (natives load fromprebuilds/win32-arm64, which ships the same conpty files). Signed files match production's list (27 desktop files incl. uninstaller and installer, plust3.exe), verified with a self-signed certificate through the same hook.Implications:
AZURE_TENANT_ID/AZURE_CLIENT_ID/AZURE_CLIENT_SECRETitself. First real nightly is the proof.Alternative to #1, which keeps the build on
windows-11-armand gets ~37%.Built with Claude Opus 5.5 via Claude Code.