ci: canonical pair — hanzo.yml + forge caller

github.com has no runner for hanzo-build-linux-amd64, so a caller under
.github/workflows is a gate that can never be scheduled. This is the ~7-line
caller on the plane that can (git.hanzo.ai git-runner fleet), pinned @v1.

Co-authored-by: Hanzo Dev <[email protected]>
This commit is contained in:
2026-08-06 02:39:36 -07:00
co-authored by Hanzo Dev
parent 2f2f739aee
commit cddc7cda32
2 changed files with 39 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
# Canonical caller — every knob lives in /hanzo.yml, none here.
# Runs on the git-runner fleet at git.hanzo.ai, the only pool serving these
# labels. github.com resolves only .github/workflows and has no runner for
# them, so a caller placed there is a gate that cannot be scheduled.
name: CI/CD
on:
push:
branches: [master]
tags: ['v*']
pull_request:
workflow_dispatch:
jobs:
cicd:
uses: hanzoai/ci/.hanzo/workflows/build.yml@v1
secrets: inherit
+24
View File
@@ -0,0 +1,24 @@
# Canonical CI/CD config for hanzoai/Detox — read by the hanzoai/ci reusable
# workflow (.hanzo/workflows/cicd.yml) and by platform.hanzo.ai.
#
# LIBRARY: the Detox grey-box E2E runner for React Native, a yarn v4 workspace.
# No image, no deploy — the packages ship from a tag.
#
# The gate is the `detox` workspace's own lint + unit, which is what this
# repo's own CI runs on a Linux box and the most that HONESTLY runs there.
# Detox's job is to drive a simulator, so its own end-to-end suites
# (test:e2e:ios, test:e2e:android) need Xcode or an Android emulator and are
# macOS/Android-image lanes, not a merge gate — claiming them here would be
# claiming a coverage this runner cannot produce. What does run is the part
# that is plain Node: the device drivers' state machines, the matcher and
# expectation builders, the artifact plugins and the config resolver, all under
# jest.
#
# `--immutable` on the install: an E2E runner that floats its own dependency
# tree cannot tell you why a device suite broke.
test:
- name: lint-and-unit
run: |
yarn install --immutable
yarn workspace detox lint
yarn workspace detox unit