Skip to content

ci(scorecard): add job-level permissions for reusable workflow#63

Merged
hyperpolymath merged 1 commit into
mainfrom
chore/scorecard-job-perms-282
May 31, 2026
Merged

ci(scorecard): add job-level permissions for reusable workflow#63
hyperpolymath merged 1 commit into
mainfrom
chore/scorecard-job-perms-282

Conversation

@hyperpolymath
Copy link
Copy Markdown
Owner

Summary

  • Add permissions: { security-events: write, id-token: write } to jobs.analysis so the called scorecard reusable can upload SARIF.
  • Without job-level overrides the caller's permissions: read-all caps the reusable and ossf/scorecard-action silently startup_failures.

Refs hyperpolymath/standards#282

Test plan

  • Local diff is 3 lines exactly
  • CI green
  • Auto-merge squash + delete-branch on green

🤖 Generated with Claude Code

Reusable-workflow permission inheritance caps called-workflow
permissions by the caller's block. Without job-level overrides,
ossf/scorecard-action cannot upload SARIF — runs silently
startup_failure.

Refs hyperpolymath/standards#282

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@hyperpolymath hyperpolymath enabled auto-merge (squash) May 31, 2026 10:07
@hyperpolymath hyperpolymath merged commit e63e292 into main May 31, 2026
7 of 19 checks passed
@hyperpolymath hyperpolymath deleted the chore/scorecard-job-perms-282 branch May 31, 2026 10:08
@github-actions
Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 63 issues detected

Severity Count
🔴 Critical 6
🟠 High 18
🟡 Medium 39

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "Required file missing",
    "type": "missing",
    "file": "0-AI-MANIFEST.a2ml",
    "action": "create",
    "rule_module": "root_hygiene",
    "severity": "high"
  },
  {
    "reason": "Action perpolymath/standards/.github/workflows/governance-reusable.yml@main\n needs attention",
    "type": "unpinned_action",
    "file": "governance.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in ada.yml",
    "type": "missing_timeout_minutes",
    "file": "ada.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in codeql.yml",
    "type": "missing_timeout_minutes",
    "file": "codeql.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in generator-generic-ossf-slsa3-publish.yml",
    "type": "missing_timeout_minutes",
    "file": "generator-generic-ossf-slsa3-publish.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in generator-generic-ossf-slsa3-publish.yml",
    "type": "missing_timeout_minutes",
    "file": "generator-generic-ossf-slsa3-publish.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in governance.yml",
    "type": "missing_timeout_minutes",
    "file": "governance.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in hypatia-scan.yml",
    "type": "missing_timeout_minutes",
    "file": "hypatia-scan.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in instant-sync.yml",
    "type": "missing_timeout_minutes",
    "file": "instant-sync.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in mirror.yml",
    "type": "missing_timeout_minutes",
    "file": "mirror.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

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