fix(ci): skip github.ref-gated jobs in ci_job_names (mc#958 mc#959) #1004

Closed
core-devops wants to merge 1 commits from fix/ci-required-drift-github-ref-skip into main
Member

Summary

Adds github.ref as a skip condition in ci_job_names(), matching the
existing github.event_name skip. Jobs gated on github.ref (e.g.
canvas-deploy-reminder: only runs on pushes to refs/heads/main) never
execute in a PR context, so flagging them as missing from
all-required.needs: is a false positive that triggers mc#958/mc#959.

Changes

  • .gitea/scripts/ci-required-drift.py: extend ci_job_names() skip
    condition to also ignore jobs whose if: gates on github.ref

Test plan

Run the drift script locally against current ci.yml — canvas-deploy-reminder
should NOT appear in the F1 report once this lands.

python3 .gitea/scripts/ci-required-drift.py
# Before: F1 includes canvas-deploy-reminder (false positive)
# After:  F1 is clean

Related

  • mc#958: [ci-drift] main required-checks divergence detected
  • mc#959: [ci-drift] staging required-checks divergence detected
  • Supersedes the ci-required-drift portion of PR #991 (which is 159 commits
    behind main and also contains unrelated handler-test additions)

🤖 Generated with Claude Code

## Summary Adds `github.ref` as a skip condition in `ci_job_names()`, matching the existing `github.event_name` skip. Jobs gated on `github.ref` (e.g. `canvas-deploy-reminder`: only runs on pushes to `refs/heads/main`) never execute in a PR context, so flagging them as missing from `all-required.needs:` is a false positive that triggers mc#958/mc#959. ## Changes - `.gitea/scripts/ci-required-drift.py`: extend `ci_job_names()` skip condition to also ignore jobs whose `if:` gates on `github.ref` ## Test plan Run the drift script locally against current ci.yml — `canvas-deploy-reminder` should NOT appear in the F1 report once this lands. ```bash python3 .gitea/scripts/ci-required-drift.py # Before: F1 includes canvas-deploy-reminder (false positive) # After: F1 is clean ``` ## Related - mc#958: [ci-drift] main required-checks divergence detected - mc#959: [ci-drift] staging required-checks divergence detected - Supersedes the ci-required-drift portion of PR #991 (which is 159 commits behind main and also contains unrelated handler-test additions) 🤖 Generated with [Claude Code](https://claude.ai/code)
core-devops added 1 commit 2026-05-14 13:00:17 +00:00
fix(ci): skip github.ref-gated jobs in ci_job_names (mc#958 mc#959)
Block internal-flavored paths / Block forbidden paths (pull_request) Successful in 13s
CI / Detect changes (pull_request) Successful in 45s
E2E API Smoke Test / detect-changes (pull_request) Successful in 52s
E2E Staging Canvas (Playwright) / detect-changes (pull_request) Successful in 58s
Handlers Postgres Integration / detect-changes (pull_request) Successful in 59s
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 19s
lint-required-no-paths / lint-required-no-paths (pull_request) Successful in 1m19s
qa-review / approved (pull_request) Failing after 22s
Runtime PR-Built Compatibility / detect-changes (pull_request) Successful in 49s
security-review / approved (pull_request) Failing after 21s
sop-checklist / na-declarations (pull_request) awaiting /sop-n/a declaration for: qa-review, security-review
gate-check-v3 / gate-check (pull_request) Successful in 31s
sop-tier-check / tier-check (pull_request) Successful in 14s
sop-checklist / all-items-acked (pull_request) Successful in 17s
CI / Platform (Go) (pull_request) Successful in 6s
CI / Shellcheck (E2E scripts) (pull_request) Successful in 6s
CI / Canvas (Next.js) (pull_request) Successful in 7s
Ops Scripts Tests / Ops scripts (unittest) (pull_request) Failing after 1m27s
CI / Python Lint & Test (pull_request) Successful in 7s
E2E API Smoke Test / E2E API Smoke Test (pull_request) Successful in 10s
E2E Staging Canvas (Playwright) / Canvas tabs E2E (pull_request) Successful in 7s
Handlers Postgres Integration / Handlers Postgres Integration (pull_request) Successful in 5s
audit-force-merge / audit (pull_request) Has been skipped
Runtime PR-Built Compatibility / PR-built wheel + import smoke (pull_request) Successful in 8s
CI / Canvas Deploy Reminder (pull_request) Successful in 4s
CI / all-required (pull_request) Successful in 3s
3eef828173
Adds `github.ref` as a skip condition in ci_job_names(), matching the
existing github.event_name skip. Jobs gated on github.ref (e.g.
canvas-deploy-reminder: only runs on pushes to refs/heads/main) never
execute in a PR context, so flagging them as missing from
all-required.needs: is a false positive that triggers mc#958/mc#959.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
core-devops added the merge-queue label 2026-05-14 13:00:59 +00:00
Owner

Superseded by #991 which landed the identical github.ref skip in ci_job_names(). Closing.

Superseded by #991 which landed the identical `github.ref` skip in `ci_job_names()`. Closing.
hongming closed this pull request 2026-05-14 13:02:54 +00:00
Owner

[core-offsec-agent] APPROVED — security review complete.

Finding: CLEAN — no security concerns.

Analysis: ci-required-drift.py F1 detection — extends the skip list for jobs gated on github.event_name or github.ref. Prevents false positives when branch-push-only jobs are skipped in PR context. Same github.event_name skip pattern already in use; github.ref is the companion case. No injection/exec/auth surface. Operational CI hardening.

Static analysis: bandit — 0 findings.
Secrets scan: clean.

[core-offsec-agent] **APPROVED** — security review complete. **Finding:** CLEAN — no security concerns. **Analysis:** `ci-required-drift.py` F1 detection — extends the skip list for jobs gated on `github.event_name` or `github.ref`. Prevents false positives when branch-push-only jobs are skipped in PR context. Same `github.event_name` skip pattern already in use; `github.ref` is the companion case. No injection/exec/auth surface. Operational CI hardening. **Static analysis:** bandit — 0 findings. **Secrets scan:** clean.
Some optional checks failed
Block internal-flavored paths / Block forbidden paths (pull_request) Successful in 13s
CI / Detect changes (pull_request) Successful in 45s
E2E API Smoke Test / detect-changes (pull_request) Successful in 52s
E2E Staging Canvas (Playwright) / detect-changes (pull_request) Successful in 58s
Handlers Postgres Integration / detect-changes (pull_request) Successful in 59s
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 19s
lint-required-no-paths / lint-required-no-paths (pull_request) Successful in 1m19s
qa-review / approved (pull_request) Failing after 22s
Runtime PR-Built Compatibility / detect-changes (pull_request) Successful in 49s
security-review / approved (pull_request) Failing after 21s
sop-checklist / na-declarations (pull_request) awaiting /sop-n/a declaration for: qa-review, security-review
gate-check-v3 / gate-check (pull_request) Successful in 31s
sop-tier-check / tier-check (pull_request) Successful in 14s
sop-checklist / all-items-acked (pull_request) Successful in 17s
CI / Platform (Go) (pull_request) Successful in 6s
CI / Shellcheck (E2E scripts) (pull_request) Successful in 6s
CI / Canvas (Next.js) (pull_request) Successful in 7s
Ops Scripts Tests / Ops scripts (unittest) (pull_request) Failing after 1m27s
CI / Python Lint & Test (pull_request) Successful in 7s
E2E API Smoke Test / E2E API Smoke Test (pull_request) Successful in 10s
Required
Details
E2E Staging Canvas (Playwright) / Canvas tabs E2E (pull_request) Successful in 7s
Handlers Postgres Integration / Handlers Postgres Integration (pull_request) Successful in 5s
Required
Details
audit-force-merge / audit (pull_request) Has been skipped
Runtime PR-Built Compatibility / PR-built wheel + import smoke (pull_request) Successful in 8s
CI / Canvas Deploy Reminder (pull_request) Successful in 4s
CI / all-required (pull_request) Successful in 3s
Required
Details

Pull request closed

Sign in to join this conversation.
No Reviewers
3 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: molecule-ai/molecule-core#1004