Skip to content

ci: cut Actions burn — scope push triggers + concurrency-cancel - #9

Merged
hyperpolymath merged 3 commits into
mainfrom
ci/ci-health-auto-remediation
Aug 18, 2026
Merged

ci: cut Actions burn — scope push triggers + concurrency-cancel#9
hyperpolymath merged 3 commits into
mainfrom
ci/ci-health-auto-remediation

Conversation

@hyperpolymath

Copy link
Copy Markdown
Contributor

Automated by metadatastician-governance ci-health-sweep. Scopes push to the default branch (kills push+PR double-runs) and adds concurrency: cancel-in-progress to read-only PR checks. No SPDX/logic changes.

@sonarqubecloud

Copy link
Copy Markdown

@gitar-bot

gitar-bot Bot commented Aug 18, 2026

Copy link
Copy Markdown

Important

You are using the Gitar free plan. Upgrade to unlock code review, CI analysis, auto-apply, custom automations, and more.

Gitar

@hyperpolymath
hyperpolymath merged commit 5fee045 into main Aug 18, 2026
2 checks passed
@hyperpolymath
hyperpolymath deleted the ci/ci-health-auto-remediation branch August 18, 2026 12:52
hyperpolymath added a commit to metadatastician/metadatastician-governance that referenced this pull request Aug 18, 2026
## What changed

- moves allow-list detection/remediation to the centrally enforced
organization policy endpoint
- fails closed on API and response-shape errors instead of converting
them into healthy results
- inspects the latest run of every active workflow for startup and
billing health
- normalizes/deduplicates the canonical allow-list before compare/write
- makes D-BURN detection order-independent and remediation
default-branch-aware/idempotent
- makes dry-run reporting non-mutating and closes the rolling issue only
after a complete finding-free live sweep
- SHA-pins and lock-records the sweep's own checkout dependency
- updates operator documentation and the issue #14 remediation record

## Root cause

The original system tried to mutate repository allow-lists even though
GitHub centrally enforced the setting at organization scope; those
writes return HTTP 409. It also suppressed API errors and treated a
capped historical run page as current health. Separately, the sweep
itself used a mutable checkout ref under an organization policy
requiring SHA pins, so all seven scheduled runs ended in zero-job
startup failure.

## Live estate work completed

- enumerated 34 non-archived, non-fork source repositories (the issue's
historical horizon was 28)
- reconciled the inherited 20-pattern setting against 118 unique
canonical patterns
- applied and read back all 118 patterns at the organization endpoint
- opened metadatastician/_pathroot#9 for the three current D-BURN
findings

## Validation

- `bash -n scripts/ci-health/*.sh`
- `shellcheck scripts/ci-health/*.sh`
- `actionlint .github/workflows/ci-health-sweep.yml`
- `git diff --check`
- `gh actions-lock .github/workflows/ci-health-sweep.yml --no-fix
--json=valid,findings,dependencies` → `valid: true`
- fail-closed negative probe → exit 2 + `E-INSTRUMENT`
- live organization detector after update → exit 0, no allow-list
finding

Closes #14
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