Commit Graph
189 Commits
Author SHA1 Message Date
Jinwoo-HandOrca b6bb3dd9a5 build(ssh): compose relay draft release verification
Co-authored-by: Orca <help@stably.ai>
2026-07-15 14:29:19 -04:00
Jinwoo-HandOrca b8c42f92ab build(ssh): execute verified relay runtime archives
Co-authored-by: Orca <help@stably.ai>
2026-07-15 13:51:33 -04:00
Jinwoo-HandOrca 0fbbac118e build(ssh): materialize verified relay draft assets
Co-authored-by: Orca <help@stably.ai>
2026-07-15 13:16:24 -04:00
Jinwoo-HandOrca 5460563ff4 build(ssh): add relay release asset gate
Co-authored-by: Orca <help@stably.ai>
2026-07-15 12:46:20 -04:00
Jinwoo-HandOrca 8d9013cd10 build(ssh): add bounded relay draft upload
Co-authored-by: Orca <help@stably.ai>
2026-07-15 12:06:02 -04:00
Jinwoo-HandOrca bb4b527e4e ci: probe Linux relay build prerequisites
Co-authored-by: Orca <help@stably.ai>
2026-07-15 11:35:26 -04:00
Jinwoo-HandOrca c9ffa26a90 ci: bound Linux relay runtime prerequisites
Co-authored-by: Orca <help@stably.ai>
2026-07-15 11:26:11 -04:00
Jinwoo-HandOrca 4979bc26c9 ci: add protected relay manifest workflow
Co-authored-by: Orca <help@stably.ai>
2026-07-15 11:00:10 -04:00
Jinwoo-HandOrca 8cf80a0228 ci: add fail-closed relay manifest aggregation
Co-authored-by: Orca <help@stably.ai>
2026-07-15 10:33:16 -04:00
Jinwoo-HandOrca 4180e04ac4 ci: add protected relay manifest seed signer
Co-authored-by: Orca <help@stably.ai>
2026-07-15 10:13:01 -04:00
Jinwoo-HandOrca 91f59d19e5 ci: finalize Linux relay artifacts for aggregation
Co-authored-by: Orca <help@stably.ai>
2026-07-15 09:34:18 -04:00
Jinwoo-HandOrca c2db2b62e5 ci: add manual relay runtime signing rehearsal
Co-authored-by: Orca <help@stably.ai>
2026-07-15 09:00:34 -04:00
Jinwoo-HandOrca 2a7083d278 ci(ssh): add disconnected native signing workflow
Co-authored-by: Orca <help@stably.ai>
2026-07-15 08:23:17 -04:00
Jinwoo-HandOrca 994daefabc ci(ssh): expose native runtime prerequisite
Co-authored-by: Orca <help@stably.ai>
2026-07-15 07:31:33 -04:00
Jinwoo-HandOrca 1989e801af build(ssh): verify post-sign runtime metadata
Co-authored-by: Orca <help@stably.ai>
2026-07-15 06:29:58 -04:00
Jinwoo-HandOrca cfea521c7c build(ssh): produce verified runtime manifest tuples
Co-authored-by: Orca <help@stably.ai>
2026-07-15 05:44:14 -04:00
Jinwoo-HandOrca 5e0c776d01 build(ssh): add fail-closed manifest aggregate
Co-authored-by: Orca <help@stably.ai>
2026-07-15 03:35:31 -04:00
Jinwoo-HandOrca 14355dfe05 build(ssh): add manifest signing handoff contracts
Co-authored-by: Orca <help@stably.ai>
2026-07-15 02:48:38 -04:00
Jinwoo-HandOrca 707a9da23e build(ssh): align Windows runtime manifest identity
Co-authored-by: Orca <help@stably.ai>
2026-07-15 02:00:46 -04:00
Jinwoo-HandOrca e995186545 build(ssh): verify runtime release bytes
Co-authored-by: Orca <help@stably.ai>
2026-07-15 01:30:16 -04:00
Jinwoo-HandOrca 6f13e94f8a build(ssh): gate runtime release stages
Co-authored-by: Orca <help@stably.ai>
2026-07-15 00:47:46 -04:00
Jinwoo-HandOrca 6ef2943ded build(ssh): verify preserved Windows signatures
Co-authored-by: Orca <help@stably.ai>
2026-07-15 00:18:03 -04:00
Jinwoo-HandOrca 072c0d434e build(ssh): verify Windows runtime signatures
Co-authored-by: Orca <help@stably.ai>
2026-07-14 23:53:56 -04:00
Jinwoo-HandOrca debb13f301 build(ssh): verify macOS runtime signatures
Co-authored-by: Orca <help@stably.ai>
2026-07-14 23:21:00 -04:00
Jinwoo-HandOrca 3eeea7bdb8 build(ssh): apply native signing returns safely
Co-authored-by: Orca <help@stably.ai>
2026-07-14 22:53:48 -04:00
Jinwoo-HandOrca 1a79e49214 build(ssh): assess native signing candidates
Co-authored-by: Orca <help@stably.ai>
2026-07-14 22:22:05 -04:00
Jinwoo-HandOrca c847c4a11d build(ssh): validate native signing payloads
Co-authored-by: Orca <help@stably.ai>
2026-07-14 21:51:45 -04:00
Jinwoo-HandOrca 9c03572358 ci(ssh): run native signing plan contracts
Co-authored-by: Orca <help@stably.ai>
2026-07-14 21:21:29 -04:00
Jinwoo-HandOrca 05b3a4b18a build(ssh): preserve Linux runner ownership
Co-authored-by: Orca <help@stably.ai>
2026-07-14 20:29:40 -04:00
Jinwoo-HandOrca 0cb3f7510b build(ssh): prove Linux runtime floor
Co-authored-by: Orca <help@stably.ai>
2026-07-14 20:00:11 -04:00
Jinwoo-HandOrca 26bbd7b67a build(ssh): complete runtime artifact provenance
Co-authored-by: Orca <help@stably.ai>
2026-07-14 17:06:44 -04:00
Jinwoo-HandOrca ec5461affb build(ssh): enforce exact relay runtime closure
Co-authored-by: Orca <help@stably.ai>
2026-07-14 16:52:32 -04:00
Jinwoo-HandOrca 0d3a0c9d3f test(ssh): diagnose generated arm64 build inputs
Co-authored-by: Orca <help@stably.ai>
2026-07-14 14:16:12 -04:00
Jinwoo-HandOrca 39ee3451b8 build(ssh): diagnose Windows PE reproducibility drift
Co-authored-by: Orca <help@stably.ai>
2026-07-14 13:19:46 -04:00
Jinwoo-HandOrca f864d3fa6d build(ssh): syntax-check runtime builder
Co-authored-by: Orca <help@stably.ai>
2026-07-14 12:52:15 -04:00
Jinwoo-HandOrca 3e433b3438 build(ssh): canonicalize native build path
Co-authored-by: Orca <help@stably.ai>
2026-07-14 12:36:14 -04:00
Jinwoo-HandOrca a09b02ec4e build(ssh): stabilize native runtime rebuilds
Co-authored-by: Orca <help@stably.ai>
2026-07-14 12:32:30 -04:00
Jinwoo-HandOrca e58913d1a5 test(ssh): improve native reproducibility diagnostics
Co-authored-by: Orca <help@stably.ai>
2026-07-14 12:05:53 -04:00
Jinwoo-HandOrca c70e96374c test(ssh): gate runtime clean-build identity
Co-authored-by: Orca <help@stably.ai>
2026-07-14 11:49:48 -04:00
Jinwoo-HandOrca c04b4f6300 fix(ssh): settle copied Windows ConPTY worker
Co-authored-by: Orca <help@stably.ai>
2026-07-14 11:20:42 -04:00
Jinwoo-HandOrca 6bba900209 test(ssh): classify lingering Windows smoke resources
Co-authored-by: Orca <help@stably.ai>
2026-07-14 11:05:09 -04:00
Jinwoo-HandOrca ddf28eb8db test(ssh): settle Windows runtime PTY smoke
Co-authored-by: Orca <help@stably.ai>
2026-07-14 10:52:54 -04:00
Jinwoo-HandOrca 922edb6ff2 build(ssh): add Windows relay runtime artifacts
Co-authored-by: Orca <help@stably.ai>
2026-07-14 09:58:21 -04:00
Jinwoo-HandOrca f2b387b21b build(ssh): assemble relay runtime artifacts
Co-authored-by: Orca <help@stably.ai>
2026-07-14 09:03:25 -04:00
Brennan Benson 31f643ca42 Add version-matched skill guides to the CLI (#8624)
* Add version-matched bundled skill guides

* Clarify skill freshness rollout PRs

* Add canonical skills show alias

* fix(skills): address guide review feedback

* fix(skills): make guide commands cross-platform

* fix(skills): apply the ORCA convention to the emulator guides

Review follow-up: the emulator guides still instructed literal
`orca emulator ...` in sh fences with no Linux disambiguation, so on
unmanaged Linux they could launch the GNOME screen reader — the exact
failure the executable-selection preamble prevents. Both emulator
guides now carry the preamble and ORCA placeholder across fences,
tables, and prose, and the cross-platform safety test covers all four
converted guides. Also replaces computer-use's "unless a block names a
shell" carve-out, which contradicted its own POSIX example, with the
unconditional placeholder rule.
2026-07-14 02:17:55 -07:00
Jinjing 302b97029a P2 windows cli hardening (#8638)
* fix(cli): harden Windows launcher transports

* Fix csc.exe compile failures on space-bearing Windows install paths

- Legacy csc.exe mangles absolute paths containing spaces, so the
  compile step now cd's into the bin directory and passes bare
  file names for /out and the source file instead of full paths
2026-07-13 18:58:21 -07:00
Jinjing b69c6043e3 Ssh watcher isolation e2e (#8494)
* Add a Docker SSH watcher-isolation E2E test to verify remote relay-watch

- Covers two scenarios: crashed watcher children are respawned under the
  same relay without dropping the terminal PTY or file-explorer view, and
  a missing deployed relay-watcher.js artifact is repaired on reconnect
- Extracts shared connect/disconnect/reconnect logic out of the perf spec
  into docker-ssh-relay-connection.ts, and adds docker-ssh-relay-processes.ts
  for inspecting/signaling remote relay and watcher PIDs
- Wires the new spec into a dedicated CI job and pnpm script

* Fix Windows and Linux-only issues in Docker SSH watcher-isolation E2E ha

- node-gyp override only applies on Linux runners now, since the CI job
  moved to ubuntu-latest but shares the workflow with non-Linux jobs
- spawn the e2e runner scripts through a shell on win32 to satisfy
  Node's CVE-2024-27980 restriction on unshelled .cmd spawns
- harden relay process row parsing against empty pid/ppid fields so a
  vanished /proc entry fails loudly instead of coercing to pid 0
- dedupe the reconnect helpers and export shellQuote for reuse across
  the docker-ssh-relay test helpers
2026-07-12 23:50:00 -07:00
Brennan Benson 43e481b1c3 Revert "Decouple feature copy from translated locale catalogs (#8488)" (#8500)
This reverts commit a5e9e139b1.
2026-07-12 23:43:07 -07:00
Brennan Benson a5e9e139b1 Decouple feature copy from translated locale catalogs (#8488)
* Decouple feature copy from locale catalogs

* Update PR workflow contract tests

* Address localization review findings

* Document localization cache context
2026-07-12 23:42:45 -07:00
Jinjing e3c47eff17 Fix ssh watcher isolation (#8463)
* fix(ssh): isolate relay filesystem watchers

* Fix relay watcher fault-harness pid file and in-process fallback isolati

- Use exclusive ('wx') creation for the fault-harness pid file so a leaked
  ORCA_WATCHER_CHILD_PID_FILE env var can't clobber an existing file, and
  have the harness remove the file after reading a replacement pid.
- Force useInProcessVitestFallback to false in the relay watcher pool so a
  leaked VITEST env var can never load the native watcher addon in-process
  on the relay; fail closed instead when the isolated child is missing.
- Thread an injectable RelayWatcherProcessPool into FsHandler/
  RelayFilesystemWatchRegistry for tests, and add coverage for both fixes.
2026-07-12 21:34:59 -07:00