docs(governance): CI/CD Runner Architecture doctrine — local Mac Act runner
Ports the runner-migration doctrine (authored by the Gemini session against a stale checkout; grafted here onto current main so the #40-era Local-First protocol section is preserved, not clobbered): - CI jobs dispatch to a local Act runner on the primary developer's Mac (label ubuntu-latest:host = native macOS host execution; the ubuntu name is a fiction — no Linux-only steps). - The GCP e2-micro server-side runner was REMOVED 2026-07-16; never re-provision it (1GB RAM, OOM class). A waiting queue while the Mac is asleep is intentional — pre-push local gates are the real discipline. - Workflows remain canonical and install the locked universe (uv sync --locked, committed uv.lock). GitHub mirror Actions are billing-locked dead signals. - CLAUDE.md gains a one-line pointer (policy stays in AGENTS.md). [Verification]: smoke suite passed locally (175 passed); docs-only.
This commit is contained in:
parent
a7279a54ad
commit
fc38a6c7ee
2 changed files with 8 additions and 0 deletions
|
|
@ -251,6 +251,13 @@ To optimize server resources and bypass external CI billing dependencies, all ag
|
|||
- **PR Documentation:** When creating a PR on Forgejo (via `tea pr create`), document the local test execution in the PR description, matching this format:
|
||||
`[Verification]: Smoke suite passed locally (<run_duration>s, <test_count> passed)`
|
||||
|
||||
### CI/CD Runner Architecture (2026-07-16 doctrine)
|
||||
**CRITICAL**: Do NOT attempt to run CI jobs on the central Forgejo server (`core-gitquarters`) — the `e2-micro` instance (1GB RAM) cannot handle test workflows without OOM thrashing. The server-side Act runner was deliberately removed on 2026-07-16.
|
||||
- The `.github/workflows/*.yml` files are canonical and actively used; they install the **locked dependency universe** (`uv sync --locked` against the committed `uv.lock`) so lane pins can only move when code moves.
|
||||
- CI jobs are dispatched to a **local Act runner on the primary developer's Mac** (registered label `ubuntu-latest:host`): jobs requesting `ubuntu-latest` run natively on the macOS host — the `ubuntu-latest` environment name is a fiction here; do not add Linux-only steps.
|
||||
- **Availability tradeoff is intentional**: when the Mac is asleep or away, the CI queue simply waits. The real discipline is the pre-push local gates above. Do NOT "fix" a waiting queue by re-provisioning a runner on the GCP server, and do not modify server-side runner configuration.
|
||||
- GitHub (`AssetOverflow/core`) is a **mirror only**; its Actions are billing-locked and produce dead signals — never chase them.
|
||||
|
||||
### Pre-Edit Sweep & Versor Coherence Guardian Protocol
|
||||
Before modifying any module in `algebra/`, `field/`, `vault/`, or `generate/`:
|
||||
- Trace every import of the target module and identify all callers.
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
Startup: read `AGENTS.md`, `docs/specs/runtime_contracts.md`, inspect working tree, use the smallest validation lane.
|
||||
**CRITICAL**: Remote is `core-gitquarters.acbcontent.org`. Do not use GitHub/`gh` CLI. Use Forgejo tools/`gitea` CLI.
|
||||
**CI**: local-first — pre-push gates are mandatory; CI jobs run on the developer's local Mac Act runner, never on the Forgejo server (see `AGENTS.md` §CI/CD Runner Architecture).
|
||||
|
||||
Before non-trivial edits, apply the protocol in `AGENTS.md`.
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue