Task · GHC-0005

Harvest harden-runner egress audits into a fleet network-surface report, then move to block mode

Description

Every fleet reusable runs step-security/harden-runner with egress-policy: audit. Audit mode RECORDS outbound network calls and blocks nothing, so today the data is generated on every run across ~20 repos and never read. Two pieces of work: (1) harvest the per-run egress data into one fleet-wide report so the actual network surface of CI is visible and reviewable; (2) use that baseline to move the reusables from egress-policy: audit to block with a curated allowed-endpoints list, which is the part that actually prevents a compromised third-party action from exfiltrating.

Acceptance Criteria

Definition of Done

Implementation Notes

Context from the 2026-08-29 CI concurrency session. harden-runner on self-hosted/ARC is Enterprise-tier ONLY and additionally requires the Harden-Runner agent pre-installed on the runner host (docs.stepsecurity.io/github-actions/harden-runner/self-hosted-runners). The m7kni arc-arm64 runner image (m7kni/ci-tools) has no such agent and no m7kni workflow runs harden-runner, which is why ghcr-cleanup.yml gained a ‘harden’ input defaulting true and the m7kni callers pass false. Any move to block mode applies to the GitHub-hosted rknightion callers only.

View the source file on GitHub