# archgate
## [0.61.0](v0.60.2...v0.61.0)
(2026-10-28)
### Features
* publish Intel macOS (darwin-x64) binaries
([#658](#658))
([3b9d851](3b9d851))
### Bug Fixes
* **upgrade:** discover installed Windows PowerShell for ZIP extraction
([#647](#647))
([f90760c](f90760c)),
closes [#621](#621), references
[#631](#631)
[#641](#641)
---
This PR was generated with
[simple-release](https://github.com/TrigenSoftware/simple-release).
<details>
<summary>📄 Cheatsheet</summary>
<br>
You can configure the bot's behavior through a pull request comment
using the `!simple-release/set-options` command.
### Command Format
````md
!simple-release/set-options
```json
{
"bump": {}
}
```
````
### Useful Parameters
The options shape the pull request generation, so the `bump` ones matter
here. Release-time options like `publish` belong in the config file.
| Parameter | Type | Description |
|-----------|------|-------------|
| `version` | `string` | Force set specific version |
| `as` | `'major' \| 'minor' \| 'patch' \| 'prerelease'` | Release type.
`prerelease` keeps the type derived from the commits and makes the
version a prerelease |
| `prerelease` | `string` | Pre-release identifier (e.g., "alpha",
"beta") |
| `firstRelease` | `boolean` | Whether this is the first release |
| `skip` | `boolean` | Skip version bump |
| `byProject` | `Record<string, object>` | Per-project bump options for
monorepos |
### Usage Examples
#### Force specific version
````md
!simple-release/set-options
```json
{
"bump": {
"version": "2.0.0"
}
}
```
````
#### Force major bump
````md
!simple-release/set-options
```json
{
"bump": {
"as": "major"
}
}
```
````
#### Create alpha pre-release
````md
!simple-release/set-options
```json
{
"bump": {
"prerelease": "alpha"
}
}
```
````
### Custom Changelog Preamble
You can add custom markdown to the top of the changelog (right after the
version header) using the `!simple-release/set-preamble` command. The
markdown after the command line becomes the preamble. Start its headings
at `###` — the level of the generated changelog sections like `###
Features`.
```md
!simple-release/set-preamble
### What's new?
- The website was completely redesigned
- The new API gives you awesome possibilities
```
In a monorepo, pass the full package name after the command to target a
single package's changelog. Wrap the name in backticks so GitHub keeps
it as text instead of a mention:
```md
!simple-release/set-preamble `@your-org/core`
### Core changes
- New plugin system
```
Use one comment per package, plus one without a name for the whole
release.
### Access Restrictions
The commands can only be used by users with permissions:
- repository owner
- organization member
- collaborator
### Notes
- The last comment with `!simple-release/set-options` command takes
priority
- The last `!simple-release/set-preamble` comment per package takes
priority
- JSON must be valid, otherwise the `set-options` command will be
ignored
- Parameters apply only to the current release execution
- The commands can be updated by editing the comment or adding a new one
</details>
<!--
Please do not edit this comment.
simple-release-pull-request: true
simple-release-branch-from: release
simple-release-branch-to: main
-->
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Problem and behavior
Windows binary upgrades can report Sentry CLI-D when
powershellis absent from PATH. ZIP extraction resolves Windows PowerShell on PATH, then%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe(falling back toC:\Windowsfor unusable SystemRoot). Missing PowerShell raises an actionableUserErrorbefore spawn. ZIP packaging, checksum verification, archive validation, replacement, cleanup, and unrelated internal-error handling are preserved. PowerShell Core support remains outside this change.CLI-C is verification only: deleted-cwd review-context exits 1 with an actionable message and no Sentry capture; an unrelated TypeError exits 2 and is captured. The production fix from #621 is already on main and was first published in v0.58.1.
Sentry references (unchanged): https://archgate.sentry.io/issues/155567289/ and https://archgate.sentry.io/issues/150086449/.
Scope
Two commits, three files:
src/helpers/binary-upgrade.ts,tests/helpers/binary-upgrade-archive.test.ts, andtests/commands/review-context-cwd.test.ts. No #631 Store/distribution work or #641 overlap.Base:
fd92933ccad95468772b1aec18cda0f959394450. Head:f44a5f2f92c58921f8a33af6b8f0ef263e0c8ba9, with first commitedc0cbc73a88c28fae6fdfdaeaaeb9494e8e11cf. Tree:55b2060a97c8dbc84d9f1404e7f75a8cc78c546d, identical to independently reviewed head327b2145118905e62e11efeb564fc42e3c7c0a61.Actual full CI
Marked ready for review to invoke the workflow's supported
ready_for_reviewevent. Draft conditions previously skipped validation/smoke jobs, causing the aggregate to fail. No workflow rules, required checks, test gates, or skips were changed.Full Validate run on the unchanged tree at f44a5f2 PASSED, including:
validate:coverage: 2,963 passed, 22 existing skips, zero failures; lint, typecheck, formatting, ADR checks (22 passed), Knip, compilation, dependency audit, and generated-doc verification passed.Additional verification and limitations
Test-first CLI-D regressions failed against the unchanged extractor and passed with the fix. Scoped suite: 104 passed, three platform skips, zero failures. Coverage includes PATH precedence, custom/unset/empty/literal-undefined SystemRoot, missing shell, extraction cleanup, and preservation of unrelated spawn errors. A real Windows ZIP probe with PowerShell excluded from PATH verified SHA256 and extracted payload. Independent ADR review found no code issues.
Prior local full
bun run validateruns FAILED and are not represented as passing. The bounded Windows comparison had patch 2,921 passed / 39 skipped / 23 failed, versus clean main 2,911 / 39 / 24. All 23 patch failure names also appeared on baseline: 18 Antigravity reader cases, one credential-helper case, and four startup budgets. Both standalone startup runs passed six tests, but differing host load leaves timing attribution inconclusive. CI's fresh full Linux and Windows coverage runs above passed without changing those unrelated suites or weakening gates.Ready for review; no approval or merge performed. Sentry issues remain unchanged.