orca/.github/workflows
Neil 484273844a
feat(updater): add an adhoc release channel for branch builds (#12051)
* feat(updater): add an adhoc release channel for branch builds

Hourly covers main. This covers everything that is not main yet: a
dispatchable macOS build of an unlanded branch, published to
stablyai/orca-adhoc, so the team can run an experimental feature for a
few days instead of reasoning about it from a diff.

Adhoc sits at the bottom of the version order — 'adhoc' < 'hourly' <
'rc' < stable — so no routine check can walk anyone onto somebody's
branch; only an explicit pinned jump reaches one. It gets its own repo
rather than sharing orca-hourly's, because a branch build must not
appear in the list a developer riding main is looking at.

Signed and notarized exactly like hourly, for the same reason: macOS
anchors a notarized app's TCC grants on identifier + team, so an
unnotarized build reads as a new client and silently loses file access
under Documents/Desktop/Downloads.

Tags stamp to the second rather than the minute. Hourly runs under a
concurrency group and cannot overlap itself; adhoc builds are dispatched
on demand, so two people cutting from different branches inside one
minute is ordinary — and a minute-resolution tag would collide and fail
the second build after its whole pack-and-notarize run.

Channel-specific behaviour now derives from one DEDICATED_REPO_CHANNELS
list: repo mapping, macOS-only support, and UpdateSource. The RPC schema
that validates releaseChannelOverride was a hand-copied enum missing the
new channel, which would have rejected the override on its way to the
main process; it reads the predicate now.

* fix(updater): merge the duplicated shared/types import

Co-authored-by: Orca <help@stably.ai>

* fix(ci): default the adhoc build ref to the dispatch branch

The Actions UI puts its own "Use workflow from" branch picker directly
above the ref field, and picking a branch there is what most people read
as "build this". Making the field optional means the obvious action is
also the correct one; naming a branch explicitly still wins, so main's
copy of the workflow runs rather than a stale one on an old branch.

Co-authored-by: Orca <help@stably.ai>

---------

Co-authored-by: Orca <help@stably.ai>
2026-08-02 01:46:51 -07:00
..
adhoc-mac-build.yml feat(updater): add an adhoc release channel for branch builds (#12051) 2026-08-02 01:46:51 -07:00
computer-e2e.yml ci: run only changed e2e specs on pull requests (#11834) 2026-07-31 16:25:13 -07:00
daemon-relocation-spike.yml chore: declutter top-level repo layout (#11890) 2026-08-01 00:25:35 -07:00
e2e.yml ci: run only changed e2e specs on pull requests (#11834) 2026-07-31 16:25:13 -07:00
golden-e2e-experiment.yml ci: run only changed e2e specs on pull requests (#11834) 2026-07-31 16:25:13 -07:00
homebrew-bump.yml release: add Homebrew RC cask channel (#3462) 2026-05-29 22:34:44 -07:00
hourly-mac-build.yml fix(updater): notarize hourly macOS builds so TCC grants survive updates (#12007) 2026-08-01 14:22:50 -07:00
issue-os-labeler.yaml
linux-wayland-gpu-sandbox.yml ci: run only changed e2e specs on pull requests (#11834) 2026-07-31 16:25:13 -07:00
mobile-android-release.yml fix(mobile): keep Android release versionCode committed (#7271) 2026-07-03 15:26:11 -07:00
mobile-ios-release.yml fix(mobile): unblock iOS releases (#10224) 2026-07-23 14:23:44 -07:00
mobile.yml fix(mobile): unblock iOS releases (#10224) 2026-07-23 14:23:44 -07:00
pr.yml ci: block new root-level entries (#11903) 2026-08-01 01:48:24 -07:00
pullfrog.yml Improve inactive workspace cleanup UX (#3600) 2026-06-28 11:38:23 -07:00
readme-downloads-badge.yml Use generated README downloads badge 2026-06-16 11:09:40 -07:00
release-cut.yml [P2] fix(release,settings): restore signing preflight portability, bootstrap diagnostics, and skill re-check (#11692) 2026-07-31 06:08:26 -07:00
release-mac-build.yml Fix ssh watcher isolation (#8463) 2026-07-12 21:34:59 -07:00
skill-update-roundtrip.yml Add safe skill freshness detection and update rail (#8637) 2026-07-16 14:47:28 -07:00
terminal-ime-e2e.yml ci: run only changed e2e specs on pull requests (#11834) 2026-07-31 16:25:13 -07:00
terminal-perf.yml Expose terminal perf workflow profile knobs (#4826) 2026-06-07 12:48:46 -07:00
track-community-prs.yaml
win-crash-survival-e2e.yml chore: declutter top-level repo layout (#11890) 2026-08-01 00:25:35 -07:00
win-update-e2e.yml chore: declutter top-level repo layout (#11890) 2026-08-01 00:25:35 -07:00
win-update-survival-e2e.yml chore: declutter top-level repo layout (#11890) 2026-08-01 00:25:35 -07:00
windows-signing-rehearsal.yml fix(release): survive PSGallery outages in the Windows signing preflight 2026-07-30 18:16:38 -07:00
windows-terminal-restart-e2e.yml ci: run only changed e2e specs on pull requests (#11834) 2026-07-31 16:25:13 -07:00