You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Maka can already build and launch its CLI and Electron desktop app on Windows, and the codebase includes Windows-specific paths for named pipes, PowerShell/cmd shell detection, ConPTY, process-tree termination, and filesystem behavior. However, Windows is not currently a supported platform because these paths are not continuously tested or released, and several product guarantees remain platform-specific.
A local Windows baseline on Node 22 found:
the full repository build succeeds;
script tests can pass after removing POSIX-only assumptions from macOS development helper tests;
managed workspace tests require Git for Windows long-path support (core.longpaths=true);
the storage suite currently reports 514 pass / 100 fail / 40 skip;
most remaining storage failures are EBUSY cleanup failures caused by SQLite handles still owning runtime.sqlite or runtime.sqlite-shm, which POSIX permits unlinking but Windows does not;
restricted sandbox profiles fail closed on Windows;
computer-use has no Windows backend.
Being able to open the app is therefore not the same as having a tested, secure, releasable Windows product.
Desired outcome
Define and deliver an explicit Windows support tier for Maka. At minimum, supported CLI and desktop workflows should build, test, install, update, recover from crashes, and fail safely on every release. Features that cannot initially be supported, especially sandboxing and computer-use, must be clearly surfaced rather than silently degraded.
Current support status (2026-08-21)
Windows 11 x64 is an active preview target, not a fully supported Maka platform. Phase 0-2 build, baseline, crash-recovery, process-cleanup, and durability evidence are in place. Preview installer/ZIP artifacts, checksum/install documentation, closed-app upgrade/uninstall, automatic update, and the Runtime Host update-handoff fix (#3382, closing #3340) are complete. #3265 has exact-head CI, audit, and Windows rollback evidence green and is waiting for independent human review. Full support still requires signed artifacts, a clean/authoritative Windows baseline, the remaining sandbox security gates, and explicit handling of deferred capabilities such as computer-use.
The packaged AppContainer backend (#2961), production-identity readiness probe, and private-desktop placement/RFC alignment (#3174, including #3161) are on main. They complete the shipped-preview alignment milestone, not the Windows support declaration. The remaining Phase 4 lifecycle evidence promotion, adversarial matrix, and independent human security-review gates below are still open.
Current status (2026-08-08): the combined Node 24 main Windows storage baseline is 703 pass / 6 fail / 47 skip, improved from the original 514 / 100 / 40. The non-blocking baseline lane retains complete diagnostics as artifacts.
Completed Phase 1 failure groups include project-catalog and usage-store SQLite shutdown, portable Codex/sandbox path handling, and deterministic Git worktree retirement on Windows. Current implementation focus is grouped by root cause rather than individual failing tests:
Ensure test and production process trees leave no orphaned host, CLI fixture, shell, or Git processes. Windows ConPTY, cancellation, descendant cleanup, and taskkill behavior were completed by test(runtime): validate Windows process lifecycle #2465; the baseline retains a residual-process audit.
Define dedicated Windows recovery evidence. ci(windows): require crash recovery evidence #2562 adds the windows_recovery lane and validates SQLite, Runtime continuation, Runtime Host owner-death, and managed-workspace crash recovery on every pull request and main push.
Repository administration follow-up:
Configure windows_recovery as a required check in the effective GitHub ruleset. The workflow is green on the ci(windows): require crash recovery evidence #2562 merge commit, but the current token cannot verify or modify organization-level rulesets.
Phase 3: distribution
Current status (2026-08-21): Windows x64 preview packaging, checksum verification, installation documentation, closed-app upgrade/uninstall, CI-verified automatic updates (#3240), and safe Runtime Host update handoff (#3382) are complete. #3265 now has exact-head CI/audit/Windows rollback evidence green but remains open for independent human review. Signing is still blocked on an Authenticode certificate decision, so the preview is not a signed release channel.
Add Authenticode signing and verify signatures in the release workflow.
Land and independently review Abort-path rollback with backup retention. feat(win): Abort-path installer rollback with backup retention #3265 exact head 68520adc has CI/audit/Windows L3 green: 607 entries restored with 0 diffs; registry-mismatch 103 + recovery; stale and incomplete backup 101 refusals; hookless Quit retention/adoption; and registration-less 101. The PR remains open pending independent human review.
Decide the formal-support boundary for hookless template Quit, hard-kill, and power-loss failures: either add stronger automatic recovery or explicitly accept the documented exact-identity rerun/manual-recovery boundary. feat(win): Abort-path installer rollback with backup retention #3265 intentionally does not claim automatic rollback for those paths.
Integrate and verify automatic updates. Completed by feat(release): verify Windows automatic updates end to end #3240: the packaged electron-updater path (check, background download, NSIS handoff, relaunch, full packaged smoke) is verified end to end in CI against a loopback feed; the production GitHub feed configuration is pinned by unit tests. fix(desktop): drain untracked Runtime Host before update #3382 closes the Runtime Host update-handoff process-drain defect exposed by that gate. Updates remain unsigned until Authenticode lands.
Phase 4: sandbox security
Current status (2026-08-21): #2961 provides the Maka-owned packaged AppContainer backend. #3174 merged the production-identity readiness probe, per-launch private-desktop placement, and EN/zh RFC alignment (fully containing the earlier #3161 work). The supported claim remains limited to a Windows 11 x64 preview with packaged fail-closed enforcement and initial private-desktop placement; it does not claim escape-proof GUI/window-station isolation or make Windows generally supported.
Mechanism-level cancellation, parent-death, concurrency, Job drain, and ACL-ledger recovery evidence exists, but the lifecycle checkbox remains open until that evidence is promoted to a required packaged/per-release gate and the cross-boundary/soak gaps below are covered.
Align the RFC's implemented guarantees with the shipped slice. Completed by feat(windows-sandbox): place sandboxed children on a private desktop #3174: production-identity readiness and initial private-desktop placement are enforced; no-Win32k, dedicated window station/clipboard isolation, token boundary, in-child GUI proof, durable unsettled-identity quarantine, and active running-host recovery remain explicit later gates.
Promote cancellation, parent-death, concurrency, process-drain, and residual ACL/state release evidence to a required packaged/per-release gate; add Runtime-Host-dies-mid-launch coverage, explicit client-cancel coverage, sustained concurrency soak, and the documented unsettled-state recovery cases.
Complete the adversarial escape matrix across filesystem aliases/reparse points, network channels, IPC, descendants, environment, credentials, registry, and lifecycle failures.
Complete independent human security review and resolve every high/critical finding before advertising restricted profiles as supported.
Windows sandbox support remains preview-only until the remaining lifecycle, adversarial, documentation-alignment, and independent-review gates are complete.
Phase 5: computer-use
Define a Windows backend using UI Automation plus an appropriate capture API.
Design consent, secure-desktop, elevation, multi-monitor, scaling, and session-lock behavior.
Reuse the platform-neutral computer-use host event contract.
Add Windows-specific integration and end-to-end evidence.
Support criteria
Windows should be advertised as supported only when:
the supported CLI and desktop workflows pass on a clean Windows CI runner;
no required feature silently falls back to an unenforced security boundary;
crash recovery and process cleanup have release evidence;
signed install and update artifacts are published;
unsupported or deferred capabilities are explicit in-product and in documentation.
Alternatives or workarounds
Today, developers can run the CLI directly and launch the Electron desktop app in development mode on Windows. WSL2 can provide a Linux execution environment for some workflows. Neither workaround supplies a native Windows release, Windows sandbox enforcement, Windows computer-use, or release-level regression coverage.
This umbrella issue is intentionally phased. CI, storage lifecycle correctness, and distribution can proceed before the sandbox and computer-use projects, while the support criteria prevent partial availability from being mistaken for full platform support.
Problem
Maka can already build and launch its CLI and Electron desktop app on Windows, and the codebase includes Windows-specific paths for named pipes, PowerShell/cmd shell detection, ConPTY, process-tree termination, and filesystem behavior. However, Windows is not currently a supported platform because these paths are not continuously tested or released, and several product guarantees remain platform-specific.
A local Windows baseline on Node 22 found:
core.longpaths=true);514 pass / 100 fail / 40 skip;EBUSYcleanup failures caused by SQLite handles still owningruntime.sqliteorruntime.sqlite-shm, which POSIX permits unlinking but Windows does not;Being able to open the app is therefore not the same as having a tested, secure, releasable Windows product.
Desired outcome
Define and deliver an explicit Windows support tier for Maka. At minimum, supported CLI and desktop workflows should build, test, install, update, recover from crashes, and fail safely on every release. Features that cannot initially be supported, especially sandboxing and computer-use, must be clearly surfaced rather than silently degraded.
Current support status (2026-08-21)
Windows 11 x64 is an active preview target, not a fully supported Maka platform. Phase 0-2 build, baseline, crash-recovery, process-cleanup, and durability evidence are in place. Preview installer/ZIP artifacts, checksum/install documentation, closed-app upgrade/uninstall, automatic update, and the Runtime Host update-handoff fix (#3382, closing #3340) are complete. #3265 has exact-head CI, audit, and Windows rollback evidence green and is waiting for independent human review. Full support still requires signed artifacts, a clean/authoritative Windows baseline, the remaining sandbox security gates, and explicit handling of deferred capabilities such as computer-use.
The packaged AppContainer backend (#2961), production-identity readiness probe, and private-desktop placement/RFC alignment (#3174, including #3161) are on
main. They complete the shipped-preview alignment milestone, not the Windows support declaration. The remaining Phase 4 lifecycle evidence promotion, adversarial matrix, and independent human security-review gates below are still open.Phase 0: establish the baseline
Tracking PR: #2156
windows-latestand publish pass/fail/skip results.process.platform === 'win32'skip and classify it as POSIX-only, portable, or missing Windows implementation.Phase 1: continuous Windows correctness
Tracking PR: #2173
Current status (2026-08-08): the combined Node 24
mainWindows storage baseline is 703 pass / 6 fail / 47 skip, improved from the original 514 / 100 / 40. The non-blocking baseline lane retains complete diagnostics as artifacts.Completed Phase 1 failure groups include project-catalog and usage-store SQLite shutdown, portable Codex/sandbox path handling, and deterministic Git worktree retirement on Windows. Current implementation focus is grouped by root cause rather than individual failing tests:
root-authority file identity, replacement, lock, and initialization races: completed by fix(storage): serialize root marker repair on Windows #2438;
session-bundle deterministic metadata and atomic hydration semantics: completed by test(storage): cover Windows session bundle metadata #2449;
managed Git head-ref long-path fixture: completed by test(storage): enable long paths for bare Git fixtures #2435;
Windows skip inventory refresh: completed by docs(windows): refresh test skip inventory #2434.
Add a required or explicitly non-blocking
windows-latestCI lane while the backlog is being burned down. Completed by ci(windows): add non-blocking baseline lane #2173.Enable Git for Windows long-path handling in managed workspace operations. Completed by test(windows): establish support baseline #2156.
Close SQLite stores, owners, and leases deterministically before temporary-root cleanup; do not mask open-handle bugs with broad retry loops. Completed across test(storage): close project catalogs before cleanup #2339, test(storage): close agent run stores before cleanup #2341, fix(runtime): classify expired probe budget as timeout #2344, test(computer-use): synchronize session cancellation #2345, and fix(storage): close usage stores after lease revocation #2365.
Validate named-pipe endpoint lifecycle and two-client runtime-host flows on Windows. Completed by test(runtime-host): validate Windows named-pipe clients #2464.
Validate ConPTY, cancellation,
taskkill /T, and descendant cleanup behavior. Completed by test(runtime): validate Windows process lifecycle #2465.Unskip portable tests and retain narrowly explained skips only for genuinely POSIX-specific contracts. Completed by test(windows): resolve portable skip inventory #2470.
Phase 2: crash and recovery guarantees
windows_recoverylane and validates SQLite, Runtime continuation, Runtime Host owner-death, and managed-workspace crash recovery on every pull request andmainpush.Repository administration follow-up:
windows_recoveryas a required check in the effective GitHub ruleset. The workflow is green on the ci(windows): require crash recovery evidence #2562 merge commit, but the current token cannot verify or modify organization-level rulesets.Phase 3: distribution
Current status (2026-08-21): Windows x64 preview packaging, checksum verification, installation documentation, closed-app upgrade/uninstall, CI-verified automatic updates (#3240), and safe Runtime Host update handoff (#3382) are complete. #3265 now has exact-head CI/audit/Windows rollback evidence green but remains open for independent human review. Signing is still blocked on an Authenticode certificate decision, so the preview is not a signed release channel.
68520adchas CI/audit/Windows L3 green: 607 entries restored with 0 diffs; registry-mismatch 103 + recovery; stale and incomplete backup 101 refusals; hookless Quit retention/adoption; and registration-less 101. The PR remains open pending independent human review.Quit, hard-kill, and power-loss failures: either add stronger automatic recovery or explicitly accept the documented exact-identity rerun/manual-recovery boundary. feat(win): Abort-path installer rollback with backup retention #3265 intentionally does not claim automatic rollback for those paths.Phase 4: sandbox security
Current status (2026-08-21): #2961 provides the Maka-owned packaged AppContainer backend. #3174 merged the production-identity readiness probe, per-launch private-desktop placement, and EN/zh RFC alignment (fully containing the earlier #3161 work). The supported claim remains limited to a Windows 11 x64 preview with packaged fail-closed enforcement and initial private-desktop placement; it does not claim escape-proof GUI/window-station isolation or make Windows generally supported.
Mechanism-level cancellation, parent-death, concurrency, Job drain, and ACL-ledger recovery evidence exists, but the lifecycle checkbox remains open until that evidence is promoted to a required packaged/per-release gate and the cross-boundary/soak gaps below are covered.
Windows sandbox support remains preview-only until the remaining lifecycle, adversarial, documentation-alignment, and independent-review gates are complete.
Phase 5: computer-use
Support criteria
Windows should be advertised as supported only when:
Alternatives or workarounds
Today, developers can run the CLI directly and launch the Electron desktop app in development mode on Windows. WSL2 can provide a Linux execution environment for some workflows. Neither workaround supplies a native Windows release, Windows sandbox enforcement, Windows computer-use, or release-level regression coverage.
This umbrella issue is intentionally phased. CI, storage lifecycle correctness, and distribution can proceed before the sandbox and computer-use projects, while the support criteria prevent partial availability from being mistaken for full platform support.