Commit Graph
16 Commits
Author SHA1 Message Date
Neil cfbf3610d5 fix(linux): keep Wayland clipboard text current (#27772)
Publish Linux Wayland text copies with an independent clipboard owner, then clear Chromium's stale source only after publication succeeds. Use data control where available and GTK's clipboard bridge on GNOME. Keep macOS, Windows and X11 on their existing Electron writers.

Temporary workaround for https://github.com/electron/electron/issues/54645, with removal checks documented in the native README.

Verified full build, macOS arm64 packaging, Linux x64/arm64 library floors, clipboard/platform tests, real Wayland copy/paste and CI packaging.

Fixes #26917
Fixes #23229
2026-10-12 02:31:03 -07:00
Neil 16cd1e0c75 docs: remove stale internal reference documentation (#26328)
* docs: remove stale internal reference documentation

* test: avoid pooled relay hook sockets across fake clock advances

* test: remove checks for deleted headless server documentation
2026-10-07 15:43:39 -07:00
Neil 76d480f808 Fix unsafe test fixtures and the Bun version pin (#26051)
* Keep test interruption signals within owned processes

* Pin Bun and add optional unit runner shutdown diagnostics

* Unblock CI lint without changing session host runtime

* Avoid duplicating runtime import-check dependency bundles

* Leave unit runner diagnostics disabled by default

* test: keep runner incident follow-up focused on durable guards

* test: apply transcript replacements as authoritative snapshots
2026-10-06 21:42:02 -07:00
Neil 3ec38b8c6d Run Vitest on Bun with Node runtime contracts (#25840)
* Run Vitest on Bun while preserving Node runtime contracts

* Preserve runtime timing provenance and keep the Bun pin in config

* Scope builtin compatibility mocks to test-only lint exceptions

* Give capture retention fixtures distinct filesystem timestamps

* Await the copy button success state in the React fixture

* Bound Node test worker shutdown and tighten migration fixtures
2026-10-06 03:18:06 -07:00
PM 75344e5850 docs: align contributor guidance with the PR template (#25034) 2026-10-04 16:19:53 -07:00
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