Skip to content

chore(ci): make Scorecard periodic — drop push and pull_request triggers - #5

Merged
hyperpolymath merged 2 commits into
mainfrom
chore/scorecard-periodic
Aug 11, 2026
Merged

chore(ci): make Scorecard periodic — drop push and pull_request triggers#5
hyperpolymath merged 2 commits into
mainfrom
chore/scorecard-periodic

Conversation

@hyperpolymath

Copy link
Copy Markdown
Contributor

Scorecard measures the REPOSITORY's supply-chain posture, not the change under review. The estate's signal-discipline standard puts repository-level measurements in the PERIODIC tier: on a schedule against the default branch, feeding one dashboard — not on every event.

Measured across 303 scorecard workflows before this sweep:

199 push, schedule, workflow_dispatch
93 branch_protection_rule, schedule, push
1 push, pull_request, schedule, workflow_dispatch
1 schedule, workflow_dispatch <- the target shape

So roughly 292 repositories ran a full posture scan on EVERY push to the default branch. That is pure cost: a supply-chain score cannot meaningfully change between two consecutive merges, and it never gated anything.

WHAT IS DELIBERATELY KEPT:

schedule the point of the tier
workflow_dispatch manual re-run when one is actually wanted
branch_protection_rule event-driven re-measurement of precisely what
Scorecard scores. It fires on a settings change, not
per pull request, so it does not violate the PERIODIC
rule — and it keeps the score honest after exactly
the change most likely to alter it.

Only push and pull_request are removed. pull_request existed in one repository and was the genuine violation; push was the cost.

Related, and the reason this matters beyond minutes: Scorecard was ALSO required as a code_scanning tool in 78 repositories at alertsThreshold=all, while producing code-scanning results in essentially none — because it does not emit per-commit SARIF. That made it an estate-wide merge blocker asking to do something it does not do. Those requirements have been removed separately.

Summary

Changes

RSR Quality Checklist

Required

  • Tests pass (just test or equivalent)
  • Code is formatted (just fmt or equivalent)
  • Linter is clean (no new warnings or errors)
  • No banned language patterns (no TypeScript, no npm/bun, no Go/Python)
  • No unsafe blocks without // SAFETY: comments
  • No banned functions (believe_me, unsafeCoerce, Obj.magic, Admitted, sorry)
  • SPDX license headers present on all new/modified source files
  • No secrets, credentials, or .env files included

As Applicable

  • .machine_readable/descriptiles/STATE.a2ml updated (if project state changed)
  • .machine_readable/descriptiles/ECOSYSTEM.a2ml updated (if integrations changed)
  • .machine_readable/descriptiles/META.a2ml updated (if architectural decisions changed)
  • Documentation updated for user-facing changes
  • TOPOLOGY.md updated (if architecture changed)
  • CHANGELOG or release notes updated
  • New dependencies reviewed for license compatibility (MPL-2.0 / MPL-2.0)
  • ABI/FFI changes validated (src/interface/abi/ and src/interface/ffi/ consistent)

Testing

Screenshots

hyperpolymath and others added 2 commits August 6, 2026 11:40
Scorecard measures the REPOSITORY's supply-chain posture, not the change under
review. The estate's signal-discipline standard puts repository-level
measurements in the PERIODIC tier: on a schedule against the default branch,
feeding one dashboard — not on every event.

Measured across 303 scorecard workflows before this sweep:

  199  push, schedule, workflow_dispatch
   93  branch_protection_rule, schedule, push
    1  push, pull_request, schedule, workflow_dispatch
    1  schedule, workflow_dispatch                        <- the target shape

So roughly 292 repositories ran a full posture scan on EVERY push to the
default branch. That is pure cost: a supply-chain score cannot meaningfully
change between two consecutive merges, and it never gated anything.

WHAT IS DELIBERATELY KEPT:

  schedule                the point of the tier
  workflow_dispatch       manual re-run when one is actually wanted
  branch_protection_rule  event-driven re-measurement of precisely what
                          Scorecard scores. It fires on a settings change, not
                          per pull request, so it does not violate the PERIODIC
                          rule — and it keeps the score honest after exactly
                          the change most likely to alter it.

Only `push` and `pull_request` are removed. `pull_request` existed in one
repository and was the genuine violation; `push` was the cost.

Related, and the reason this matters beyond minutes: Scorecard was ALSO
required as a `code_scanning` tool in 78 repositories at alertsThreshold=all,
while producing code-scanning results in essentially none — because it does not
emit per-commit SARIF. That made it an estate-wide merge blocker asking to do
something it does not do. Those requirements have been removed separately.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Signed-off-by: Jonathan D.A. Jewell <6759885+hyperpolymath@users.noreply.github.com>
@sonarqubecloud

Copy link
Copy Markdown

@hyperpolymath
hyperpolymath disabled auto-merge August 11, 2026 08:57
@hyperpolymath
hyperpolymath merged commit 1006ace into main Aug 11, 2026
1 check passed
@hyperpolymath
hyperpolymath deleted the chore/scorecard-periodic branch August 11, 2026 08:57
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