Skip to content

Hypatia workflow_hardening triage: secrets-inherit convention + WH013/WH006 false positives (7 instances) #943

Description

@hyperpolymath

WH008 secrets: inherit (4) is the estate's standard reusable-caller convention — accepted pattern. WH013 (2) on the mirror workflows is a false positive (pushes go to FOREIGN repos via PAT, not GITHUB_TOKEN contents). WH006 on codeql.yml analyze-js is a false positive (a uses: caller job cannot carry timeout-minutes; the reusable itself has 20).

Acknowledged in .hypatia-baseline.json (hypatia triage 2026-09-22, expires 2026-12-22) by the main-red fix-forward. This issue is the tracking item; closing it requires either remediating the instances or renewing the acknowledgement.

Instances (7):

  • workflow_hardening/WH006 warn — .github/workflows/codeql.yml
    workflow .github/workflows/codeql.yml:43 job analyze-js has no timeout-minutes: — defaults to 360 min on hang
  • workflow_hardening/WH013 high — .github/workflows/github-backup-mirror-reusable.yml
    workflow .github/workflows/github-backup-mirror-reusable.yml performs a write (push/commit/release/PR) but grants no contents: write at the workflow level or any job level — the write will be denied at run time.
  • workflow_hardening/WH008 warn — .github/workflows/governance.yml
    workflow .github/workflows/governance.yml:20 uses secrets: inherit — forwards every caller secret to the reusable workflow
  • workflow_hardening/WH008 warn — .github/workflows/hypatia-scan.yml
    workflow .github/workflows/hypatia-scan.yml:30 uses secrets: inherit — forwards every caller secret to the reusable workflow
  • workflow_hardening/WH013 high — .github/workflows/mirror-reusable.yml
    workflow .github/workflows/mirror-reusable.yml performs a write (push/commit/release/PR) but grants no contents: write at the workflow level or any job level — the write will be denied at run time.
  • workflow_hardening/WH008 warn — .github/workflows/mirror.yml
    workflow .github/workflows/mirror.yml:18 uses secrets: inherit — forwards every caller secret to the reusable workflow
  • workflow_hardening/WH008 warn — .github/workflows/secret-scanner.yml
    workflow .github/workflows/secret-scanner.yml:49 uses secrets: inherit — forwards every caller secret to the reusable workflow

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    automationBots, schedulers, dispatch, self-healing, fan-outcicdCI/CD: workflows, actions, lockfiles, pins, runners, release gatesresearchOpen investigation; the outcome is knowledge, not codesecuritySecurity posture, secrets, scanning, advisories, supply chain

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions