11 Commits
Author SHA1 Message Date
Neil e86cba888b build: reduce native dependency installs to the host platform (#20420)
* Reduce native dependency installs to the host platform

* Remove install policy documentation

* Guard cross-arch packaging and scope release installs to the runner

electron-builder only logs a warning for a missing extraResources source,
so a host-only install silently shipped a foreign-arch slice without its
natives — `pnpm build:mac` on Apple Silicon produced an x64 DMG with no
sherpa-onnx-darwin-x64 and no @parcel/watcher-darwin-x64. The previous
beforePack hook covered only win32.

- Add assertPackagedNativeVariantsInstalled, an arch-aware check over the
  target's sherpa-onnx, @parcel/watcher, and (on Windows) node-gyp addons.
  beforePack now runs it for every platform, with remedies split: another
  architecture comes from install:release, the os:win32 addons need a
  Windows host.
- Drop --os from the release installs. Every packaging job already runs on
  a runner whose OS matches its target, so only the macOS lanes need extra
  breadth, and only on CPU for their x64+arm64 config. Windows and Linux
  packaging return to a plain host-only install.
- Add --frozen-lockfile to install:release so a bare run cannot rewrite
  the lockfile.
- Restore the install policy reference doc and the CONTRIBUTING note, plus
  the rationale comments dropped from the runtime contract test.
- Gate the packaging-closure assertions on whether the Windows addons are
  installed rather than on the host OS, so a cross-arch install exercises
  them off Windows too.
- Make the workflow contract test read `run:` steps as well as retry-action
  commands, and enforce host-only scoping on the non-macOS packaging lanes.
- Remove the unreferenced install measurement script; its numbers live in
  the policy doc.

* Track the install policy doc and index it from AGENTS.md

docs/** is ignored behind a per-file allow-list, so the new reference doc
was only committed via git add -f and future edits would be skipped. Add
it to the allow-list and give it an AGENTS.md entry like every other
tracked reference doc, so the host-only install rule is discoverable
before someone packages a second architecture.

* Route Windows-lane removals through the retrying helper

Adding these four specs to the PR Windows lane pulled them into the
windows-lane-tree-removal-boundary ratchet, which failed on 20 raw
recursive removals. On Windows a bare rmSync races a handle the OS has
not released, throwing EPERM after the assertions already passed and
reporting a green test as a lane failure.

* Adapt the packaging guard to the vendored Windows registry addon

main vendored windows-native-registry as the workspace package
@orca/windows-registry (#20438). A workspace link resolves on every
host, so including it in the installed-Windows-addons checks proved
nothing. @vscode/windows-process-tree is the only os: win32 npm addon
left, so it alone decides whether the win32 resource plan resolves.
2026-09-12 21:25:03 -07:00
Jinjing c4b39295c1 style: format codebase (#16935)
* style: format codebase

* style: format codebase

* refactor: extract skill install dialog footer and content

Extract footer and content sections from SkillInstallDialog and
SkillInstallManagementDialog into separate components for improved
maintainability and clarity of component responsibilities.
2026-08-28 00:59:21 -07:00
Donghoon KangandJinwoo-H 2f41c286e2 fix(docs): replace stale preload typecheck reference (#14298)
* docs: fix stale preload typecheck reference

Signed-off-by: HoonDongKang <d159123@naver.com>

* docs: keep .d.ts guidance canonical

---------

Signed-off-by: HoonDongKang <d159123@naver.com>
Co-authored-by: Jinwoo-H <jinwoo0825@gmail.com>
2026-08-13 13:53:50 -07:00
Neil ebcb2b6a60 docs: expand PR template with ELI5, before/after screenshots, and X handle
Make the pull request template clearer for contributors: plain-language
ELI5, what/why, mandatory before/after UI proof, testing checklist, AI
disclosure, and an Author X field. Align CONTRIBUTING with the template.
2026-08-11 18:29:01 -07:00
Neil 87b2cadeef Update CONTRIBUTING.md 2026-06-01 23:38:15 -07:00
Neil 7eee8321b0 fix: keep RC release retries monotonic (#3985) 2026-05-30 21:46:13 -07:00
Neil ddbb6a1e7d Update oxlint and oxfmt 2026-05-30 13:09:17 -07:00
Jinjing f037e1c3d6 Strengthen contributing compatibility guidelines (#2899) 2026-05-26 22:36:07 -07:00
Neil c0884f5f21 Fix release-cut draft RC recovery (#1942)
* fix: recover stuck draft RC releases

* fix: address release recovery lint
2026-05-15 11:33:05 -07:00
NeilandOrca c58e06383c fix(release): filter desktop-only tags and consolidate release pipeline (#1386)
- release-cut.yml: require `^v[0-9]` tag shape when picking "latest
  stable" from GitHub releases. Previously only `-rc.*` was excluded, so
  publishing `mobile-v0.0.1` made it the latest stable, `strip_pre()`
  reduced it to `mobile`, `Number("mobile")` → NaN → 0, and a patch-bump
  produced `v0.0.1` (run 25304336767).
- homebrew-bump.yml: drop the blanket `release.published` trigger and
  add tag-shape guards. Any published release in this repo (including
  mobile) would otherwise fire the tap bump. Workflow_call from the
  desktop pipeline is the only intended path now.
- Inline create-release / build / publish-release / e2e / homebrew-bump
  jobs from release.yml into release-cut.yml, and delete release.yml.

Co-authored-by: Orca <help@stably.ai>
2026-05-04 00:21:21 -07:00
NeilandOrca 4318f3bfa7 chore: reduce root-directory clutter (#1275)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 00:09:46 -07:00