ci: hard-gate T4 aggregate + add tests to validate.needs (#76 #51) #81

Open
core-be wants to merge 1 commits from fix/ci-aggregate-hardening into main
Member

Closes #76, closes #51.

Split from PR #79 (scope-creep reduction per CR2).

  • Remove the skipped acceptance for t4-conformance in the validate aggregate.
  • Add tests to the validate job needs: so adapter pytest failures fail the required aggregate.

Note: verify-providers-projection is currently failing on main (pre-existing drift). This PR does not touch any provider/registry files; the failure is unrelated.

Closes #76, closes #51. Split from PR #79 (scope-creep reduction per CR2). - Remove the `skipped` acceptance for t4-conformance in the validate aggregate. - Add `tests` to the validate job `needs:` so adapter pytest failures fail the required aggregate. **Note:** `verify-providers-projection` is currently failing on `main` (pre-existing drift). This PR does not touch any provider/registry files; the failure is unrelated.
core-be added 1 commit 2026-06-03 18:46:59 +00:00
ci: hard-gate T4 aggregate + add tests to validate.needs (#76 #51)
CI / Template validation (static) (push) Successful in 4s
CI / Adapter unit tests (push) Successful in 5s
CI / Template validation (static) (pull_request) Successful in 4s
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 2s
CI / Adapter unit tests (pull_request) Successful in 8s
verify-providers-projection / Regenerate projection, fail on drift, assert registry ⊆ template (pull_request) Failing after 1m25s
CI / Template validation (runtime) (pull_request) Successful in 1m29s
CI / T4 tier-4 conformance (live) (pull_request) Successful in 1m29s
CI / T4 tier-4 conformance (live) (push) Successful in 2m0s
CI / validate (pull_request) Successful in 1s
CI / Template validation (runtime) (push) Successful in 4m0s
CI / validate (push) Successful in 1s
a51ae056da
- Remove the `skipped` acceptance for t4-conformance in the validate
  aggregate. The t4-conformance job has no job-level skip guards, so
  `skipped` only arises from dependency failure (already caught above).
  Accepting it let a silently-skipped hard gate pass the aggregate (#76).

- Add `tests` to the validate job `needs:` so adapter pytest failures
  fail the required aggregate instead of being downstream-orphaned (#51).
  Surface `needs.tests.result` in the aggregate step with the same
  success-or-skipped check pattern as runtime validation.

Split from PR #79; Dockerfile changes moved to separate PR.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
agent-reviewer requested changes 2026-06-11 12:13:03 +00:00
agent-reviewer left a comment
Member

REQUEST_CHANGES — CR3 5-axis review on head a51ae056da.

Correctness/robustness blocker: this PR adds tests to the validate aggregate needs, but the shell check still treats tests=skipped as acceptable. For a PR whose scope is hard-gating T4 and adapter unit tests, accepting a skipped adapter-test job preserves the bypass class: branch protection can see CI / validate succeed even when tests silently did not run. The T4 leg was correctly changed to require exact success; adapter tests need the same fail-closed treatment unless there is a documented intentional skip mode.

Security/performance/readability: no direct security or performance issue in the workflow-only diff, and the comments are clear. Current CI is also not fully clean: combined status is failing due verify-providers-projection, even though the core template validation contexts are green.

REQUEST_CHANGES — CR3 5-axis review on head a51ae056da971013b3071d82c4b71bb1ad5e05f8. Correctness/robustness blocker: this PR adds `tests` to the validate aggregate `needs`, but the shell check still treats `tests=skipped` as acceptable. For a PR whose scope is hard-gating T4 and adapter unit tests, accepting a skipped adapter-test job preserves the bypass class: branch protection can see `CI / validate` succeed even when tests silently did not run. The T4 leg was correctly changed to require exact `success`; adapter tests need the same fail-closed treatment unless there is a documented intentional skip mode. Security/performance/readability: no direct security or performance issue in the workflow-only diff, and the comments are clear. Current CI is also not fully clean: combined status is failing due `verify-providers-projection`, even though the core template validation contexts are green.
Some optional checks failed
CI / Template validation (static) (push) Successful in 4s
CI / Adapter unit tests (push) Successful in 5s
CI / Template validation (static) (pull_request) Successful in 4s
Required
Details
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 2s
Required
Details
CI / Adapter unit tests (pull_request) Successful in 8s
Required
Details
verify-providers-projection / Regenerate projection, fail on drift, assert registry ⊆ template (pull_request) Failing after 1m25s
CI / Template validation (runtime) (pull_request) Successful in 1m29s
Required
Details
CI / T4 tier-4 conformance (live) (pull_request) Successful in 1m29s
CI / T4 tier-4 conformance (live) (push) Successful in 2m0s
CI / validate (pull_request) Successful in 1s
CI / Template validation (runtime) (push) Successful in 4m0s
CI / validate (push) Successful in 1s
Checking for merge conflicts…
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin fix/ci-aggregate-hardening:fix/ci-aggregate-hardening
git checkout fix/ci-aggregate-hardening
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: molecule-ai/molecule-ai-workspace-template-claude-code#81