Skip to content

ci(compass): gate PRs on the dogfood e2e podman tier (SEA-1792) - #246

Closed
seal-agent wants to merge 1 commit into
mainfrom
ci-sea1792-h8-e2e-ci-gate
Closed

ci(compass): gate PRs on the dogfood e2e podman tier (SEA-1792)#246
seal-agent wants to merge 1 commit into
mainfrom
ci-sea1792-h8-e2e-ci-gate

Conversation

@seal-agent

Copy link
Copy Markdown
Contributor

Wire the deterministic full-stack e2e suite (go/e2e, //go:build podman) into
the GitHub Actions CI job as a required per-PR check, per the frozen design
record docs/designs/platform/compass-dogfood-e2e/design.md H8 + Decision D2.

Three steps after the pgtest guard: seed compass-agent:latest into local
containers-storage from the public GHCR image (EnsureImage present-checks the
local store, so no registry pull at test time; public per SEA-1690, no
credential); run go test -tags podman ./e2e/... with the same
capture-replay-exit shape as the pgtest step; then assert the suite ran rather
than podmanUsable-skipped, reading the skip substring from harness_test.go so
the guard can't drift vacuous. Landing this converts H3 (SEA-1787), H4 (the
5-leg capstone), and SEA-1359's non-Nix-host portability proof from
code-complete-unproven to proven by an actual run on a Nix-free ubuntu-latest
runner (podman 4.9.3).

Both end-state blockers are cleared (SEA-1690 GHCR publish Done; SEA-1691 uid
lift merged), so this wires the GA end state (required per-PR) directly.

Refs SEA-1792

Co-authored-by: Matt Wilkinson matt@sealedsecurity.com

Wire the deterministic full-stack e2e suite (go/e2e, //go:build podman) into
the GitHub Actions CI job as a required per-PR check, per the frozen design
record docs/designs/platform/compass-dogfood-e2e/design.md H8 + Decision D2.

Three steps after the pgtest guard: seed compass-agent:latest into local
containers-storage from the public GHCR image (EnsureImage present-checks the
local store, so no registry pull at test time; public per SEA-1690, no
credential); run go test -tags podman ./e2e/... with the same
capture-replay-exit shape as the pgtest step; then assert the suite ran rather
than podmanUsable-skipped, reading the skip substring from harness_test.go so
the guard can't drift vacuous. Landing this converts H3 (SEA-1787), H4 (the
5-leg capstone), and SEA-1359's non-Nix-host portability proof from
code-complete-unproven to proven by an actual run on a Nix-free ubuntu-latest
runner (podman 4.9.3).

Both end-state blockers are cleared (SEA-1690 GHCR publish Done; SEA-1691 uid
lift merged), so this wires the GA end state (required per-PR) directly.

Refs SEA-1792

Co-authored-by: Matt Wilkinson <matt@sealedsecurity.com>
@linear-code

linear-code Bot commented Aug 9, 2026

Copy link
Copy Markdown

SEA-1792

@seal-agent

Copy link
Copy Markdown
Contributor Author

Superseded by #256, which re-authors this under compass ownership (compass CI moved into the compass agents' lane) and folds in the postgres-on-PATH fix (bare postgresql in devenv packages — the root cause of this PR's red), the orion-pattern per-PR image source (build-from-tree when image inputs changed, else pull :latest), the two reviewer findings you handed over (CGO_ENABLED on the e2e step; the load-bearing assert-ran skip-string guard kept), and a §H8 design-record sync. Closing in favor of #256. Thanks for the clean handoff and the grounded root-cause.

@seal-agent seal-agent closed this Aug 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant