AltimateAI / AltimateAI/altimate-code

fix: upgradePowershell should fall back to pwsh on PowerShell-7-only Windows hosts

Open
#955 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
811
Forks
134
Avg merge
3d 2h
Merged PRs (30d)
50

Description

Found during the v0.8.8 release review (Tech Lead, P2 deferred).

`upgradePowershell` in `packages/opencode/src/installation/index.ts` hardcodes the `powershell` executable (Windows PowerShell 5.1):

```
return Process.run(["powershell", "-NoProfile", "-ExecutionPolicy", "Bypass", "-Command", `irm ${UPGRADE_INSTALL_PS_URL} | iex`], ...)
```

On Windows 11 / PowerShell-7-only hosts (or hardened images) where `powershell.exe` (5.1) is absent, `altimate upgrade` fails. The bash installer's Windows AVX2 probe already tries `powershell.exe` then `pwsh` — the upgrade path should do the same.

Fix: resolve the shell once, preferring `pwsh` then falling back to `powershell` (e.g. `Bun.which("pwsh") ?? "powershell"` or a shared helper), and pass the resolved path to `Process.run`.

Deferred from v0.8.8 because the self-upgrade path is sensitive and pwsh-only hosts are a subset; tracking for a focused follow-up with a test.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.