ci: peel the forge live-contract oracle into its own peer job (RIG-2698 T3) - #610
Merged
mattwilkinsonn merged 1 commit intoAug 25, 2026
Merged
Conversation
This was referenced Aug 25, 2026
|
Compass engineering docs preview: https://compass-runner-2698-ci-forge.compass-eng-docs.pages.dev Deployed from |
This was referenced Aug 25, 2026
mattwilkinsonn
previously approved these changes
Aug 25, 2026
rigel-mintaka
force-pushed
the
compass-runner/2698-ci-forge-oracle-peer-job
branch
from
August 25, 2026 19:57
8a92ba8 to
a827f07
Compare
Base automatically changed from
compass-runner/2697-ci-microvm-peer-job
to
main
August 25, 2026 20:01
…98 T3) Third of the CI job-decomposition stack (design record docs/designs/infra/ci/compass-ci-job-decomposition/design.md, § Plan → T3). Moves the forge live-contract oracle out of the monolithic `gates` job into a dedicated `forge-oracle` peer job behind the single required `CI` rollup, the same peel T1 (pgtest) and T2 (microvm) applied to their legs. Four consecutive steps move verbatim out of `gates` into the new job: - Detect whether this PR touches the forge contract surface (id forge_affected) - Mint the forge live-oracle's Linear app token - Forge live-contract oracle (go test -tags livegithub -race) - Assert the forge live-contract oracle ran rather than skipped The new `forge-oracle` job runs on bare ubuntu-latest (no privileged container), timeout 30m, TMPDIR /tmp, and carries the bootstrap the moved steps need to reach their in-step detection: a fetch-depth-0 checkout (the forge-affected git diff needs base history), the reviewed-caches nix install, and the phase-one language toolchain step (bun for the mint, go for the oracle). Phase two (buf/protoc/ biome/chromium) is deliberately not copied — the oracle needs none of it. The four moved steps keep their tri-event + same-repo-head step-level guards as defense-in-depth, so a fork PR still skips the secret-bearing steps in-step. The job itself runs unconditionally at this task (subject only to the shared workflow_dispatch/edited job guard); hoisting the affected detection into a `setup` job and gating `forge-oracle` at the job level is deferred to T5. The `CI` rollup gains `forge-oracle`: added to `needs` and to the result assertion (a hyphen-free shell var for the hyphenated job context, matching the existing `dogfood-e2e` precedent). Also refreshes the dogfood-e2e D2 comment that T3 falsified — the oracle now lives in `forge-oracle`, not `gates`. Refs RIG-2698 Co-authored-by: Matt Wilkinson <matt@rigel.build>
rigel-mintaka
force-pushed
the
compass-runner/2698-ci-forge-oracle-peer-job
branch
from
August 25, 2026 20:03
a827f07 to
f3b5219
Compare
mattwilkinsonn
approved these changes
Aug 25, 2026
mattwilkinsonn
deleted the
compass-runner/2698-ci-forge-oracle-peer-job
branch
August 25, 2026 20:30
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR is part of a stack containing 3 PRs:
mainThird of the CI job-decomposition stack (design record
docs/designs/infra/ci/compass-ci-job-decomposition/design.md, § Plan → T3).
Moves the forge live-contract oracle out of the monolithic
gatesjob into adedicated
forge-oraclepeer job behind the single requiredCIrollup, thesame peel T1 (pgtest) and T2 (microvm) applied to their legs.
Four consecutive steps move verbatim out of
gatesinto the new job:The new
forge-oraclejob runs on bare ubuntu-latest (no privileged container),timeout 30m, TMPDIR /tmp, and carries the bootstrap the moved steps need to reach
their in-step detection: a fetch-depth-0 checkout (the forge-affected git diff
needs base history), the reviewed-caches nix install, and the phase-one language
toolchain step (bun for the mint, go for the oracle). Phase two (buf/protoc/
biome/chromium) is deliberately not copied — the oracle needs none of it.
The four moved steps keep their tri-event + same-repo-head step-level guards as
defense-in-depth, so a fork PR still skips the secret-bearing steps in-step. The
job itself runs unconditionally at this task (subject only to the shared
workflow_dispatch/edited job guard); hoisting the affected detection into a
setupjob and gatingforge-oracleat the job level is deferred to T5.The
CIrollup gainsforge-oracle: added toneedsand to the resultassertion (a hyphen-free shell var for the hyphenated job context, matching the
existing
dogfood-e2eprecedent). Also refreshes the dogfood-e2e D2 comment thatT3 falsified — the oracle now lives in
forge-oracle, notgates.Refs RIG-2698
Co-authored-by: Matt Wilkinson matt@rigel.build