feat(ci): wire var-go/oath gate into CI (#1)
CD / Detect unsubstituted template (push) Successful in 0s
CD / Lint / Test / Vet (push) Successful in 5s
CD / var-go/oath (push) Has been skipped
CD / Build & Import (push) Successful in 13s
CD / Deploy via GitOps (push) Has been skipped

Adds an oath job to cd.yml: on pull_request, checks out swedsl (the
vargo-gate source — its oath submodule isn't go-installable, module
path isn't a real import path) and runs cmd/vargo-gate against this
repo's linked issue, posting a var-go/oath commit status.

Deliberately NOT required by branch protection: vargo-gate's candidate
is still a hardcoded toy self-test registry (swedsl's own #9 fixture),
not a real PR-diff checker, so it fails closed against any real oath
until swedsl ships an Executor (swedsl#27). Requiring it now would
permanently block every cad-atlas PR. Disclosed in the CI config
comment, PROJECT.md, and docs/INCEPTION-OATH.md (honest-stub
discipline).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-20 12:10:25 +02:00
co-authored by Claude Sonnet 5
parent 60cc8894a2
commit f7a0281ca2
3 changed files with 55 additions and 6 deletions
+7 -3
View File
@@ -54,9 +54,13 @@ assessor-loop ledger) → `06 PR → CI` (go test/vet/lint/govulncheck + **var-g
This repo is built *through* the workflow it depicts. It is `dispatch-allow`-enabled, and its
own build increments are governed by a **var-go Oath** embedded in their spec issues (see the
Stage-03 tracking issue). Bootstrapping honesty (per swedsl honest-stub discipline): the Oath is
**defined** but `cmd/vargo-gate` is **not yet wired** into this repo's CI — until it is, the Oath
is advisory here. Wiring it is a first tracked task; disclosed in code, this doc, and CI config.
Stage-03 tracking issue). Bootstrapping honesty (per swedsl honest-stub discipline): `cmd/vargo-gate`
is wired into `.gitea/workflows/cd.yml`'s `oath` job (issue #1) — it runs on every pull_request,
fetches the linked issue's oath, and posts a `var-go/oath` commit status. But its candidate is
still a hardcoded toy self-test registry, not a real PR-diff checker (swedsl's Executor question,
swedsl#27, is unbuilt) — it fails closed against any real oath. The status is **not** required by
branch protection, so it can't block merges yet; enabling that waits on the real-diff Executor.
Disclosed in the CI config comment, this doc, and `docs/INCEPTION-OATH.md`.
## Brain references (source of truth — `brain_get <path>`)