From 3354ad641531bfded8f58347376c49691380101a Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 16:49:50 +0000 Subject: [PATCH 01/12] fix(ci): restore lock consistency, parse YAML structurally, and expose Rust diagnostics Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- .claude/CLAUDE.md | 9 +- .github/dependabot.yml | 10 +- .github/workflows/actions.lock | 43 +-- .github/workflows/boj-build.yml | 3 - .github/workflows/cargo-audit.yml | 3 - .github/workflows/casket-pages.yml | 3 - .github/workflows/cflite_batch.yml | 5 +- .github/workflows/cflite_pr.yml | 5 +- .github/workflows/codeql.yml | 7 +- .github/workflows/dogfood-gate.yml | 3 - .github/workflows/governance.yml | 3 - .github/workflows/hypatia-scan.yml | 3 - .github/workflows/instant-sync.yml | 3 - .github/workflows/label-triage.yml | 1 - .github/workflows/labels.yml | 1 - .github/workflows/mirror.yml | 3 - .github/workflows/push-email-notify.yml | 4 +- .github/workflows/rust-ci.yml | 15 +- .github/workflows/scorecard.yml | 3 - .github/workflows/secret-scanner.yml | 3 - .github/workflows/workflow-linter.yml | 3 - scripts/annotate-clippy.sh | 20 ++ scripts/check-lock-sync.sh | 333 ++++-------------------- scripts/update-actions-lock.sh | 230 ++++++++++++++++ 24 files changed, 345 insertions(+), 371 deletions(-) create mode 100644 scripts/annotate-clippy.sh create mode 100755 scripts/update-actions-lock.sh diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index 4c641e2..38e2382 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -25,6 +25,9 @@ The following files in `.machine_readable/` contain structured project metadata: |---------------|----------|-------| | **AffineScript** | Primary application code | Affine-typed, compiles to typed-wasm or ESM | | **Bun** | JS runtime & package management (tier 1) | Default for all new work. Runs compiled ESM/JS directly — no bundler step. Uses an npm-compatible `package.json` plus `bun.lock` — both are expected, not anti-patterns. | +| **Deno** | JS runtime (tier 2) | Use when Bun is unsuitable | +| **pnpm** | JS package management (tier 3) | Fallback after Bun and Deno | +| **npm** | JS package management (tier 4) | Last-resort fallback | | **Rust** | Performance-critical, systems, WASM | Preferred for CLI tools | | **Tauri 2.0+** | Mobile apps (iOS/Android) | Rust backend + web UI | | **Dioxus** | Mobile apps (native UI) | Pure Rust, React-like | @@ -43,10 +46,10 @@ The following files in `.machine_readable/` contain structured project metadata: |--------|-------------| | TypeScript | AffineScript | | ReScript | AffineScript | -| Deno | Bun | + | Node.js | Bun | -| npm | Bun | -| pnpm/yarn | Bun | + +| yarn | Bun | | Go | Rust | | Python | Julia/Rust/AffineScript | | Java/Kotlin | Rust/Tauri/Dioxus | diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 1b515a3..fd710e3 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -9,11 +9,5 @@ updates: actions: patterns: - "*" - ignore: - # HOLD: github/codeql-action at v4.38.0 (SHA-pinned). v4.38.1 fails - # GitHub workflow-startup validation estate-wide (nexia-list#100; - # SHA-form re-bump bypassed versions-scoped ignores - see - # nexia-list#101/#104). Hold until upstream clears 4.38.1 or a - # newer release verifies green; revisit deliberately. - - dependency-name: "github/codeql-action" - + # v4.38.3 runs successfully on PR #144 (actions and rust analysis). + # Do not retain the estate-wide blanket hold for the older v4.38.1 issue. diff --git a/.github/workflows/actions.lock b/.github/workflows/actions.lock index be6c7c4..c726b14 100644 --- a/.github/workflows/actions.lock +++ b/.github/workflows/actions.lock @@ -1,7 +1,7 @@ # This file is machine-generated by `gh actions-lock`. # Do not edit by hand; run `gh actions-lock` to update. # Docs: https://gh.io/actions-lockfile -version: 'v0.0.2' +version: 'v0.0.3' workflows: '.github/workflows/boj-build.yml': - 'actions/checkout@v7.0.1' @@ -13,18 +13,18 @@ workflows: - 'actions/configure-pages@v6.0.0' - 'actions/deploy-pages@v5.0.1' - 'actions/upload-pages-artifact@v5.0.0' - - 'haskell-actions/setup@v2.12.0' + - 'haskell-actions/setup@v2.12.1' '.github/workflows/cflite_batch.yml': - 'actions/checkout@v7.0.1' - - 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63' + - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d' - 'google/clusterfuzzlite@v1' '.github/workflows/cflite_pr.yml': - 'actions/checkout@v7.0.1' - - 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63' + - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d' - 'google/clusterfuzzlite@v1' '.github/workflows/codeql.yml': - 'actions/checkout@v7.0.1' - - 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63' + - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d' '.github/workflows/dogfood-gate.yml': - 'actions/checkout@v7.0.1' '.github/workflows/governance.yml': @@ -39,8 +39,9 @@ workflows: '.github/workflows/mirror.yml': - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' '.github/workflows/push-email-notify.yml': - - 'hyperpolymath/smtp-notify-action@v0.3.0' + - 'hyperpolymath/smtp-notify-action@v0.5.0' '.github/workflows/rust-ci.yml': + - 'actions/checkout@v7.0.1' - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' '.github/workflows/scorecard.yml': - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' @@ -49,11 +50,6 @@ workflows: '.github/workflows/workflow-linter.yml': - 'actions/checkout@v7.0.1' dependencies: - 'Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6': - ref: '6323deb102c322ba6fcbdcafc7e3dddab59af2b6' - commit: 'sha1-6323deb102c322ba6fcbdcafc7e3dddab59af2b6' - owner_id: 580492 - repo_id: 298565987 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9': ref: '55cc8345863c7cc4c66a329aec7e433d2d1c52a9' commit: 'sha1-55cc8345863c7cc4c66a329aec7e433d2d1c52a9' @@ -116,9 +112,9 @@ dependencies: commit: 'sha1-54075bcc5e249e4758d363f27d099f55d843f124' owner_id: 47606891 repo_id: 331103973 - 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63': - ref: 'v4.38.0' - commit: 'sha1-b96794f015dfd88f77b49b1c93e0fa7110f94c63' + 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d': + ref: 'v4.38.3' + commit: 'sha1-24c54180a607b1449ed407dd24f251e4e9147c8d' owner_id: 9919 repo_id: 259445878 'github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28': @@ -131,14 +127,14 @@ dependencies: commit: 'sha1-884713a6c30a92e5e8544c39945cd7cb630abcd1' owner_id: 1342004 repo_id: 400046858 - 'haskell-actions/setup@v2.12.0': - ref: 'v2.12.0' - commit: 'sha1-6037f33647c3f17758a2356c80fc4a53d7e0685d' + 'haskell-actions/setup@v2.12.1': + ref: 'v2.12.1' + commit: 'sha1-0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' owner_id: 75048950 repo_id: 623796603 - 'hyperpolymath/smtp-notify-action@v0.3.0': - ref: 'v0.3.0' - commit: 'sha1-22e7bdb322c430c1d0dac6b3bb307f4bb139d0be' + 'hyperpolymath/smtp-notify-action@v0.5.0': + ref: 'v0.5.0' + commit: 'sha1-c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef' owner_id: 6759885 repo_id: 1352485172 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a': @@ -154,7 +150,7 @@ dependencies: - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124' - 'github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28' - 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc' - - 'Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6' + - 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6' - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' 'hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2': ref: 'fad242d35291de1898242d6737ba02b74a59a2f2' @@ -176,6 +172,11 @@ dependencies: commit: 'sha1-28959ce8df70de7be546dd1250a005dd32156697' owner_id: 18365890 repo_id: 220359305 + 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6': + ref: '6323deb102c322ba6fcbdcafc7e3dddab59af2b6' + commit: 'sha1-6323deb102c322ba6fcbdcafc7e3dddab59af2b6' + owner_id: 580492 + repo_id: 298565987 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555': ref: 'e83874834305fe9a4a2997156cb26c5de65a8555' commit: 'sha1-e83874834305fe9a4a2997156cb26c5de65a8555' diff --git a/.github/workflows/boj-build.yml b/.github/workflows/boj-build.yml index 9a1b8c7..6e84820 100644 --- a/.github/workflows/boj-build.yml +++ b/.github/workflows/boj-build.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: BoJ Server Build Trigger on: push: diff --git a/.github/workflows/cargo-audit.yml b/.github/workflows/cargo-audit.yml index 13ab067..0ca57a6 100644 --- a/.github/workflows/cargo-audit.yml +++ b/.github/workflows/cargo-audit.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. # Prevention workflow - audits Rust dependencies for vulnerabilities name: Cargo Audit on: diff --git a/.github/workflows/casket-pages.yml b/.github/workflows/casket-pages.yml index f7cc57c..aca743d 100644 --- a/.github/workflows/casket-pages.yml +++ b/.github/workflows/casket-pages.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: GitHub Pages on: push: diff --git a/.github/workflows/cflite_batch.yml b/.github/workflows/cflite_batch.yml index d0d020f..9bc2086 100644 --- a/.github/workflows/cflite_batch.yml +++ b/.github/workflows/cflite_batch.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: ClusterFuzzLite Batch on: workflow_dispatch: @@ -31,7 +28,7 @@ jobs: sanitizer: ${{ matrix.sanitizer }} mode: batch output-sarif: true - - uses: github/codeql-action/upload-sarif@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2 # v4.38.0 (4.38.1 blocked estate-wide; nexia-list#100) + - uses: github/codeql-action/upload-sarif@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3 # ClusterFuzzLite only emits vulnerabilities.sarif when there are # findings; uploading unconditionally failed clean runs with # "Path does not exist". diff --git a/.github/workflows/cflite_pr.yml b/.github/workflows/cflite_pr.yml index 591b235..9188690 100644 --- a/.github/workflows/cflite_pr.yml +++ b/.github/workflows/cflite_pr.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: ClusterFuzzLite PR on: workflow_dispatch: @@ -32,7 +29,7 @@ jobs: sanitizer: ${{ matrix.sanitizer }} mode: code-change output-sarif: true - - uses: github/codeql-action/upload-sarif@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2 # v4.38.0 (4.38.1 blocked estate-wide; nexia-list#100) + - uses: github/codeql-action/upload-sarif@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3 # ClusterFuzzLite only emits vulnerabilities.sarif when there are # findings; uploading unconditionally failed clean runs with # "Path does not exist". diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index e191b65..5ca03c0 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: CodeQL Security Analysis on: push: @@ -40,11 +37,11 @@ jobs: - name: Checkout uses: actions/checkout@v7.0.1 - name: Initialize CodeQL - uses: github/codeql-action/init@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2 # v4.38.0 (4.38.1 blocked estate-wide; nexia-list#100) + uses: github/codeql-action/init@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3 with: languages: ${{ matrix.language }} build-mode: ${{ matrix.build-mode }} - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2 # v4.38.0 (4.38.1 blocked estate-wide; nexia-list#100) + uses: github/codeql-action/analyze@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3 with: category: "/language:${{ matrix.language }}" diff --git a/.github/workflows/dogfood-gate.yml b/.github/workflows/dogfood-gate.yml index 37a2732..1f235a0 100644 --- a/.github/workflows/dogfood-gate.yml +++ b/.github/workflows/dogfood-gate.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. # Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) # # dogfood-gate.yml — Hyperpolymath Dogfooding Quality Gate diff --git a/.github/workflows/governance.yml b/.github/workflows/governance.yml index 4e6ce09..c3f5302 100644 --- a/.github/workflows/governance.yml +++ b/.github/workflows/governance.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: Governance on: diff --git a/.github/workflows/hypatia-scan.yml b/.github/workflows/hypatia-scan.yml index 53d3d66..45cb4f2 100644 --- a/.github/workflows/hypatia-scan.yml +++ b/.github/workflows/hypatia-scan.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: Hypatia Security Scan on: diff --git a/.github/workflows/instant-sync.yml b/.github/workflows/instant-sync.yml index 2ceff24..eb26e3d 100644 --- a/.github/workflows/instant-sync.yml +++ b/.github/workflows/instant-sync.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. # Instant Forge Sync - Triggers propagation to all forges on push/release name: Instant Sync on: diff --git a/.github/workflows/label-triage.yml b/.github/workflows/label-triage.yml index da34fac..fc79947 100644 --- a/.github/workflows/label-triage.yml +++ b/.github/workflows/label-triage.yml @@ -1,4 +1,3 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. name: Label Triage diff --git a/.github/workflows/labels.yml b/.github/workflows/labels.yml index be2ff5c..af34c6b 100644 --- a/.github/workflows/labels.yml +++ b/.github/workflows/labels.yml @@ -1,4 +1,3 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. name: Labels diff --git a/.github/workflows/mirror.yml b/.github/workflows/mirror.yml index 5a621e5..8659b1f 100644 --- a/.github/workflows/mirror.yml +++ b/.github/workflows/mirror.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: Mirror to Git Forges on: push: diff --git a/.github/workflows/push-email-notify.yml b/.github/workflows/push-email-notify.yml index d402693..24c929c 100644 --- a/.github/workflows/push-email-notify.yml +++ b/.github/workflows/push-email-notify.yml @@ -1,7 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. # Dormant push-email notification. ARMED by setting the repo variable # PUSH_EMAIL_ENABLED=true (the single on/off switch). Addresses are pre-filled; # sending needs the org SMTP secrets (SMTP_HOST/PORT/USER/PASS). Inherited by @@ -42,7 +40,7 @@ jobs: timeout-minutes: 5 steps: - name: Send push notification email - uses: hyperpolymath/smtp-notify-action@v0.3.0 + uses: hyperpolymath/smtp-notify-action@v0.5.0 with: server_address: ${{ secrets.SMTP_HOST }} server_port: ${{ secrets.SMTP_PORT }} diff --git a/.github/workflows/rust-ci.yml b/.github/workflows/rust-ci.yml index 1860230..71cc084 100644 --- a/.github/workflows/rust-ci.yml +++ b/.github/workflows/rust-ci.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. # Rust CI — thin wrapper calling the shared estate reusable in # hyperpolymath/standards. Configure once, propagate everywhere. # See: docs/CI-REUSABLE-WORKFLOWS.adoc in standards. @@ -17,3 +14,15 @@ permissions: jobs: rust-ci: uses: hyperpolymath/standards/.github/workflows/rust-ci-reusable.yml@84355587cb2a1f86e6882de83514a32db2646e7a + clippy-diagnostics: + name: Rust failure diagnostics + needs: rust-ci + if: failure() + runs-on: ubuntu-latest + timeout-minutes: 20 + steps: + - uses: actions/checkout@v7.0.1 + - name: Match the shared stable toolchain + run: rustup default stable + - name: Publish compiler diagnostics as annotations + run: bash scripts/annotate-clippy.sh diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml index 61de928..aca9ecd 100644 --- a/.github/workflows/scorecard.yml +++ b/.github/workflows/scorecard.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: OSSF Scorecard on: diff --git a/.github/workflows/secret-scanner.yml b/.github/workflows/secret-scanner.yml index a23fe0f..330e4db 100644 --- a/.github/workflows/secret-scanner.yml +++ b/.github/workflows/secret-scanner.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. name: Secret Scanner on: pull_request: diff --git a/.github/workflows/workflow-linter.yml b/.github/workflows/workflow-linter.yml index 36b8a63..0daf533 100644 --- a/.github/workflows/workflow-linter.yml +++ b/.github/workflows/workflow-linter.yml @@ -1,8 +1,5 @@ -# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. -# This workflow is managed by gh actions-lock. # Prevention workflow - validates all workflows have proper security config name: Workflow Security Linter on: diff --git a/scripts/annotate-clippy.sh b/scripts/annotate-clippy.sh new file mode 100644 index 0000000..6cba830 --- /dev/null +++ b/scripts/annotate-clippy.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: MPL-2.0 +# Preserve clippy's exit status and expose diagnostics through the Checks API. +# This is an observability aid, never a waiver for -D warnings. +set -euo pipefail +messages=$(mktemp) +trap 'rm -f "$messages"' EXIT +set +e +cargo clippy --locked --all-targets --message-format=json -- -D warnings > "$messages" +status=$? +set -e +cat "$messages" +jq -r ' + def escape: tostring | gsub("%"; "%25") | gsub("\r"; "%0D") | gsub("\n"; "%0A") | gsub(","; "%2C") | gsub(":"; "%3A"); + select(.reason == "compiler-message") | .message as $m | + select($m.level == "error" or $m.level == "warning") | + ($m.spans | map(select(.is_primary)) | first // {}) as $s | + "::error file=\(($s.file_name // "Cargo.toml") | escape),line=\($s.line_start // 1)::\(($m.rendered // $m.message) | escape)" +' "$messages" +exit "$status" diff --git a/scripts/check-lock-sync.sh b/scripts/check-lock-sync.sh index 7d3ad0b..6ab4345 100755 --- a/scripts/check-lock-sync.sh +++ b/scripts/check-lock-sync.sh @@ -1,292 +1,55 @@ #!/usr/bin/env bash # SPDX-License-Identifier: MPL-2.0 -# -# check-lock-sync.sh — verify .github/workflows/actions.lock is in sync with the -# workflow YAML, in BOTH directions (including job-level reusable-workflow refs), -# AND that the lockfile is TRANSITIVELY CLOSED. -# -# Three clauses, each of which alone is insufficient: -# -# 1. every `uses:` in a workflow is locked under THAT workflow's own path; -# 2. every lockfile entry is still referenced by its workflow (no orphans); -# 3. every ref NAMED anywhere in the lockfile resolves to a top-level -# `dependencies:` record — the lockfile has no dangling edges. -# -# Clause 3 is not decoration. It is the clause that catches the failure mode that -# clauses 1 and 2 are structurally blind to, and it was added only after that -# blindness was measured. On hyperpolymath/cicd-squabbler, 2026-09-22: -# -# commit dangling-edge class result -# fe22bbc workflows: -> dependencies: (ref listed, no record) 4 workflows startup_failure, jobs=0 -# cfadcf9 dependencies: -> dependencies: (record added, its -# own nested uses: unrecorded) the same 4 still startup_failure -# 5286aa5 none - transitively closed 0 startup_failure, all 17 runs create jobs -# -# At fe22bbc AND cfadcf9 this script exited 0, `gh actions-lock --verify-local` -# exited 0, and the Lock Sync Gate reported green - while GitHub was refusing to -# start four workflows. Every local gate was green on a fatal commit. That is the -# guard/consumer trap: the gate asked "is every uses: locked?" and GitHub asks -# "is every locked ref RESOLVABLE?". -# -# The asymmetry that makes clause 3 mandatory, and counter-intuitive: -# * a job-level ref ABSENT from the lockfile entirely is HARMLESS; -# * a ref PRESENT in the lockfile but unresolvable is FATAL. -# So adding entries without closing them is strictly worse than adding nothing. -# Clause 1 demands entries be added; only clause 3 makes that demand safe. Shipping -# clause 1 without clause 3 actively steers a developer into the fatal state: -# Dependabot bumps a job-level ref -> clause 1 reds -> `gh actions-lock` is blind to -# job-level refs and will not backfill -> the developer hand-adds the workflows: -# entry to get green -> no dependencies: record -> CI dies silently, gate green. -# -# Exit 0 only when all three clauses hold. Any violation exits 1. There is no -# warn-only mode: a desync means GitHub refuses to start the run, so it must fail -# the job. A `::warning::` cannot fail a job and would be a vacuous gate. - +# Offline, observational validation of direct refs AND transitive lock closure. +# Parse YAML, not lines: quoted/flow YAML is legal; run bodies are not uses. +# Requires mikefarah/yq v4 and jq (available on GitHub Ubuntu runners). set -euo pipefail - WF_DIR="${1:-.github/workflows}" -LOCK="$WF_DIR/actions.lock" - -# gawk is required: the parser uses 3-argument match(), a GNU extension. mawk -# (the Debian/Ubuntu default `awk`) does not support it, and a silent parse -# failure here would read as a clean pass - the exact failure mode this script -# exists to prevent. Probe it rather than trusting the name. -AWK="" -for cand in gawk awk; do - if command -v "$cand" >/dev/null 2>&1 \ - && echo x | "$cand" '{ if (match($0, /(x)/, m) && m[1] == "x") exit 0; exit 1 }' 2>/dev/null; then - AWK="$cand"; break - fi -done -if [ -z "$AWK" ]; then - echo "check-lock-sync: FATAL: no awk supporting 3-argument match() (need gawk)" >&2 - echo "check-lock-sync: install it with: sudo apt-get install -y gawk" >&2 - exit 1 -fi - -if [ ! -f "$LOCK" ]; then - echo "check-lock-sync: FATAL: no lockfile at $LOCK" >&2 - exit 1 -fi - +YQ_BIN="${YQ_BIN:-yq}" +command -v "$YQ_BIN" >/dev/null || { echo '::error::mikefarah/yq v4 is required'; exit 2; } +command -v jq >/dev/null || { echo '::error::jq is required'; exit 2; } +[ -f "$WF_DIR/actions.lock" ] || { echo '::error::actions.lock missing'; exit 1; } +scratch=$(mktemp -d) +trap 'rm -rf "$scratch"' EXIT +# Fail closed on tool failure, malformed YAML or unsupported schema. +"$YQ_BIN" -o=json '.' "$WF_DIR/actions.lock" > "$scratch/lock.json" +jq -e '(.version == "v0.0.2" or .version == "v0.0.3") and (.workflows | type == "object") and (.dependencies | type == "object")' "$scratch/lock.json" >/dev/null shopt -s nullglob -mapfile -t WORKFLOWS < <(printf '%s\n' "$WF_DIR"/*.yml "$WF_DIR"/*.yaml | sort -u) -if [ "${#WORKFLOWS[@]}" -eq 0 ]; then - echo "check-lock-sync: FATAL: no workflow files under $WF_DIR" >&2 +files=("$WF_DIR"/*.yml "$WF_DIR"/*.yaml) +[ ${#files[@]} -gt 0 ] || { echo '::error::No workflows found'; exit 1; } +for file in "${files[@]}"; do + "$YQ_BIN" -o=json '.' "$file" > "$scratch/workflow.json" + jq -e 'type == "object" and (.jobs | type == "object" and length > 0)' "$scratch/workflow.json" >/dev/null + jq --arg path ".github/workflows/$(basename "$file")" ' + {path: $path, refs: [.jobs[] | .uses?, (.steps[]? | .uses?) | select(. != null)]} + ' "$scratch/workflow.json" >> "$scratch/refs.jsonl" +done +jq -s '.' "$scratch/refs.jsonl" > "$scratch/refs.json" +jq -n --slurpfile lock "$scratch/lock.json" --slurpfile workflows "$scratch/refs.json" ' + # Owner/repo is case-insensitive; refs remain case-sensitive. Subpaths collapse. + def norm: + if type != "string" then error("uses/ref must be a string") + elif startswith("./") or startswith("docker://") then empty + else capture("^(?[^/@]+)/(?[^/@]+)(?:/[^@]+)?@(?[^@[:space:]]+)$") + | ((.owner + "/" + .repo | ascii_downcase) + "@" + .ref) + end; + def refs: if type != "array" then error("lock refs must be arrays") else map(norm) | unique end; + $lock[0] as $l | $workflows[0] as $ws | + ($l.dependencies | to_entries | map({key: (.key | norm), value: .value}) | from_entries) as $deps | + [ + ($ws[] | . as $w | ($w.refs | refs) as $want | + ($l.workflows[$w.path] // [] | refs) as $got | + if $want != $got then {type: "lock-drift", workflow: $w.path, missing: ($want - $got), stale: ($got - $want)} else empty end), + ($l.workflows | keys[] | . as $p | select(all($ws[]; .path != $p)) | {type: "orphan-workflow", workflow: $p}), + (($l.workflows[] | refs[]), ($l.dependencies[] | (.uses // []) | refs[])) as $ref | + select($deps[$ref] == null) | {type: "dangling-edge", ref: $ref}, + ($deps | to_entries[] | select((.value.commit | type != "string") or ((.value.commit // "") | test("^sha1-[0-9a-f]{40}$") | not)) | + {type: "invalid-commit", ref: .key}) + ] | unique +' > "$scratch/findings.json" +if ! jq -e 'length == 0' "$scratch/findings.json" >/dev/null; then + jq '.' "$scratch/findings.json" + echo '::error::actions.lock is out of sync or not transitively closed. Update and verify it in the same PR as uses changes.' exit 1 fi - -read -r -d '' PROG <<'AWK' || true -# Normalise an external action or reusable-workflow reference to owner/repo@ref. -# Drop any subpath and return an empty string for local or malformed references. -function norm(r, at, path, ref, n, parts) { - at = 0 - for (n = length(r); n > 0; n--) { if (substr(r, n, 1) == "@") { at = n; break } } - if (at == 0) return "" - path = substr(r, 1, at - 1); ref = substr(r, at + 1) - if (path == "" || ref == "") return "" - if (substr(path, 1, 2) == "./" || substr(path, 1, 2) == "$/") return "" # local action - if (split(path, parts, "/") < 2) return "" - return parts[1] "/" parts[2] "@" ref -} - -# Fold case on the OWNER/REPO segment only, for comparison keys. GitHub resolves -# owner and repository names case-insensitively, and this is measured, not assumed: -# metadatastician/pong-ping's lockfile records sonarsource/sonarqube-scan-action@v8.2.1 -# while sonarqube.yml says SonarSource/..., and at commit cd5f90f that workflow ran -# SUCCESS while codeql.yml at the SAME commit was startup_failure. A same-commit -# control, so the case difference is provably not what kills a run. -# The REF is NOT folded: git tags and branch names are case-sensitive. -function ck(r, at, s) { - at = 0 - for (s = length(r); s > 0; s--) { if (substr(r, s, 1) == "@") { at = s; break } } - if (at == 0) return tolower(r) - return tolower(substr(r, 1, at - 1)) substr(r, at) -} - -# ---------- pass 1: the lockfile ---------- -FILENAME == lockfile { - if ($0 ~ /^workflows:[[:space:]]*$/) { inwf = 1; indep = 0; next } - if ($0 ~ /^dependencies:[[:space:]]*$/) { inwf = 0; indep = 1; next } - if ($0 ~ /^[a-z_]+:/) { inwf = 0; indep = 0; next } - - # --- the dependencies: section, for clause 3 --- - if (indep) { - # " 'owner/repo@ref':" -- a top-level dependency record - if (match($0, /^ '([^']+)':/, m)) { - depkey = m[1] - haverec[ck(depkey)] = 1; disp[ck(depkey)] = depkey - next - } - # " - 'owner/repo@ref'" -- a nested uses: of that record - if (match($0, /^ - '([^']+)'/, m) && depkey != "") { - r = ck(m[1]); disp[r] = m[1] - want[r] = 1 - wantsrc[r] = wantsrc[r] " dependencies:" depkey - next - } - next - } - - if (!inwf) next - - # " '.github/workflows/x.yml':" or "... : []" - if (match($0, /^ '([^']+)':/, m)) { - cur = m[1] - seen_path[cur] = 1 - next - } - if (match($0, /^ - '([^']+)'[[:space:]]*$/, m) && cur != "") { - lr = ck(m[1]); disp[lr] = m[1]; lock[cur, lr] = 1 - lockcount[cur]++ - want[lr] = 1 - wantsrc[lr] = wantsrc[lr] " " cur - next - } - next -} - -# ---------- pass 2: the workflow YAML ---------- -FNR == 1 { wf = FILENAME } -{ - line = $0 - sub(/[[:space:]]+#.*$/, "", line) # strip trailing comment - if (match(line, /^[[:space:]]*-?[[:space:]]*uses:[[:space:]]*(.+)$/, m)) { - raw = m[1] - gsub(/^["']|["']$/, "", raw) - gsub(/[[:space:]]+$/, "", raw) - n = norm(raw) - if (n != "") { uses[wf, ck(n)] = 1; useslist[wf] = useslist[wf] " " n } - } -} - -END { - bad = 0 - for (i = 1; i < ARGC; i++) { - wf = ARGV[i] - if (wf == lockfile) continue - key = wf - sub(/.*\//, "", key) - key = ".github/workflows/" key # the lockfile always uses this canonical path - - # --- clause 1: every uses: must be locked under THIS path --- - nu = split(useslist[wf], u, " ") - delete uniq; missing = "" - for (j = 1; j <= nu; j++) { - if (u[j] == "" || (u[j] in uniq)) continue - uniq[u[j]] = 1 - if (!((key SUBSEP ck(u[j])) in lock)) missing = missing " " u[j] - } - if (missing != "") { - if (!(key in seen_path)) - printf "FAIL %s\n not onboarded: no lockfile entry for this path\n unlocked refs:%s\n", key, missing - else - printf "FAIL %s\n refs missing from the lockfile:%s\n", key, missing - bad = 1 - } - - # --- clause 2: every lock entry must be referenced by this workflow --- - orphan = "" - for (k in lock) { - split(k, kp, SUBSEP) - if (kp[1] != key) continue - if (!((wf SUBSEP kp[2]) in uses)) orphan = orphan " " (kp[2] in disp ? disp[kp[2]] : kp[2]) - } - if (orphan != "") { - printf "FAIL %s\n stale lockfile entries, no uses: references them:%s\n", key, orphan - bad = 1 - } - } - - # --- lockfile entries for workflow files that no longer exist --- - for (p in seen_path) { - found = 0 - for (i = 1; i < ARGC; i++) { - q = ARGV[i]; if (q == lockfile) continue - sub(/.*\//, "", q); q = ".github/workflows/" q - if (q == p) { found = 1; break } - } - if (!found) { printf "FAIL %s\n lockfile entry for a workflow file that does not exist\n", p; bad = 1 } - } - - # --- clause 4: COVERAGE. Every workflow FILE must have a key in the lockfile, - # including one with no uses: at all - the value is then an empty list. - # MEASURED 2026-09-22, single-variable flip on two independent repos: - # hyperpolymath/verisimdb's lock-sync-gate.yml was startup_failure 7 times - # running with ZERO uses: refs, and adding - # '.github/workflows/lock-sync-gate.yml': [] - # flipped it to success; reproduced on hyperpolymath/blocky-writer, 2 of 2. - # `gh actions-lock` already emits this empty-list form for other zero-uses: - # workflows (labels.yml), so it is the generator's own convention, not ours. - # Clauses 1-3 CANNOT catch this: they ask "is every uses: locked?", and a - # workflow with no uses: satisfies them vacuously while GitHub still refuses - # to start it. 13 repos passed clauses 1-3 with exactly this gap. - nunlisted = 0; unlisted = "" - for (i = 1; i < ARGC; i++) { - q = ARGV[i]; if (q == lockfile) continue - sub(/.*\//, "", q); q = ".github/workflows/" q - if (q in seen_path) continue - nunlisted++; unlisted = unlisted "\n " q - } - if (nunlisted > 0) { - printf "FAIL actions.lock: UNLISTED WORKFLOWS\n" - printf " %d workflow file(s) have no key in the lockfile. GitHub refuses such a\n", nunlisted - printf " run at startup (jobs=0) even when the workflow has no uses: at all.\n" - printf " The entry for a zero-uses: workflow is an empty list:%s\n", unlisted - bad = 1 - } - - # --- clause 3: TRANSITIVE CLOSURE. Every ref named anywhere in the lockfile - # must resolve to a top-level dependencies: record. A dangling edge makes - # GitHub refuse the run at startup with jobs=0. --- - ndang = 0; dang = "" - for (r in want) { - if (r !~ /^[^\/]+\/[^\/@]+@/) continue # not an OWNER/REPO@REF pin; not ours to resolve - if (r in haverec) continue - ndang++ - dang = dang sprintf("\n %s\n named by:%s", (r in disp ? disp[r] : r), wantsrc[r]) - } - if (ndang > 0) { - printf "FAIL actions.lock: DANGLING EDGES\n" - printf " %d ref(s) are named in the lockfile but have no top-level dependencies: record.%s\n", ndang, dang - bad = 1 - } - - # --- a dependencies: record nothing names is dead weight, not fatal: report only --- - nunref = 0 - for (d in haverec) if (!(d in want)) nunref++ - - if (bad) { - print "" - print "actions.lock is OUT OF SYNC with the workflow YAML, or is not transitively closed." - print "GitHub refuses such a run at startup: zero jobs are created and the run" - print "reports \"This run likely failed because of a workflow file issue.\"" - print "" - print "Fix, in this order:" - print " 1. `gh actions-lock --no-migrate-local-actions`, then review the diff. It does" - print " NOT handle job-level reusable-workflow refs and it can de-pin bare SHAs to" - print " floating tags - both must be corrected by hand." - print " 2. For any DANGLING EDGES above, add a top-level `dependencies:` record for each" - print " ref. A leaf record may legally omit the nested `uses:` key entirely, so adding" - print " leaves introduces no new dangling edges and closure terminates in one pass." - print " Keys are sorted with LC_ALL=C collation (ASCII '-' 0x2d sorts before '@' 0x40)." - print " 3. Nested `uses:` entries must be bare OWNER/REPO@REF. A subpath pin such as" - print " github/codeql-action/upload-sarif@ is REJECTED by the schema; collapse it" - print " to github/codeql-action@." - print " 4. For any UNLISTED WORKFLOWS above, add the path as a lockfile key. A workflow" - print " with no uses: takes an empty list: \x27.github/workflows/x.yml\x27: []" - print " `gh actions-lock` has been observed to OMIT such a workflow entirely; that" - print " omission is itself the defect, so re-running the tool may not add it." - exit 1 - } - printf "actions.lock is in sync and transitively closed:\n" - printf " * every uses: is locked under its own workflow path (job-level reusable refs included)\n" - printf " * every lockfile entry is still referenced\n" - printf " * every ref named in the lockfile resolves to a dependencies: record (0 dangling edges)\n" - printf " * every workflow file has a lockfile key (zero-uses: workflows included)\n" - if (nunref > 0) - printf " note: %d dependencies: record(s) are unreferenced - harmless, but prunable.\n", nunref -} -AWK - -"$AWK" -v lockfile="$LOCK" "$PROG" "$LOCK" "${WORKFLOWS[@]}" +echo 'actions.lock: direct refs match, no orphan workflows, immutable commits, transitive closure verified.' diff --git a/scripts/update-actions-lock.sh b/scripts/update-actions-lock.sh new file mode 100755 index 0000000..72ae4b7 --- /dev/null +++ b/scripts/update-actions-lock.sh @@ -0,0 +1,230 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: MPL-2.0 +# +# Refresh actions.lock under one unambiguous policy boundary: +# +# - when actions.lock is present, gh actions-lock is authoritative for direct +# and transitive commit resolution, so its symbolic workflow refs are kept; +# - when actions.lock is absent, the separate workflow gate requires inline +# immutable SHAs. +# +# Verification is treated as observational even though released tool versions +# can rewrite workflow bytes. Updates keep tool-authored workflow changes, but +# any failed update rolls both workflows and the lock back atomically. +set -euo pipefail + +MODE=update +if [ "${1:-}" = "--verify-local" ]; then + MODE=verify + shift +fi + +WF_DIR="${1:-.github/workflows}" +GH_BIN="${GH_BIN:-gh}" + +[ -d "$WF_DIR" ] || { echo "update-actions-lock: no workflow directory: $WF_DIR" >&2; exit 1; } + +SNAPSHOT="$(mktemp -d)" +COMPLETE=false + +snapshot_workflows() { + destination=$1 + mkdir -p "$destination" + + find "$WF_DIR" -maxdepth 1 -type f \( -name '*.yml' -o -name '*.yaml' \) -print0 | + while IFS= read -r -d '' file; do + cp "$file" "$destination/$(basename "$file")" + done +} + +restore_workflows() { + source=$1 + + find "$source" -maxdepth 1 -type f -print0 2>/dev/null | + while IFS= read -r -d '' file; do + cp "$file" "$WF_DIR/$(basename "$file")" + done +} + +# Succeeds when calls a reusable workflow of 's repo at +# exactly 's ref (owner/repo/.github/workflows/@). +workflow_references_reusable_dependency() { + workflow=$1 + dependency=$2 + repo=${dependency%@*} + ref=${dependency#*@} + + [[ -f "$workflow" ]] || return 1 + # Read `uses:` values with the YAML parser (YAML-POLICY Y-1): a line awk + # never matched the quoted value in a KYAML workflow, so a KYAML caller of a + # reusable had its stale finding rejected instead of accepted as coverage. + # A parse failure returns 1 -- the finding stays a failure, never a pass. + yq -r '.. | select(tag == "!!map") | select(has("uses")) | .uses | select(tag == "!!str")' "$workflow" 2>/dev/null | + awk -v prefix="$repo/.github/workflows/" -v suffix="@$ref" ' + index($0, prefix) == 1 && + length($0) >= length(suffix) && + substr($0, length($0) - length(suffix) + 1) == suffix { found = 1 } + END { exit(found ? 0 : 1) } + ' +} + +# Succeeds when has nothing for the lock to pin: every `uses:` is a +# same-repository path (./… or $/…), or there is none. gh-actions-lock v0.2.0 +# reports such a workflow as `not-pinned` ("workflow has no lockfile entry") +# when a v0.1.6-written lock omits it. v0.1.6 never asked for that entry, and +# GitHub runs these workflows without one: measured 2026-10-14 on standards, +# where lock-sync-gate.yml (only `run:` steps) and scorecard.yml, +# secret-scanner.yml and self-ci.yml (only ./ reusable calls) all succeed with +# no entry. A parse failure returns 1 -- the finding stays a failure. +workflow_has_nothing_to_pin() { + workflow=$1 + [[ -f "$workflow" ]] || return 1 + refs=$(yq -r '.. | select(tag == "!!map") | select(has("uses")) | .uses | select(tag == "!!str")' "$workflow" 2>/dev/null) || + return 1 + ! printf '%s\n' "$refs" | grep -v -e '^$' -e '^\./' -e '^\$/' | grep -q . +} + +# Succeeds when uses at least one same-repository `./…` action or +# reusable workflow and every one of them exists in this checkout (run from +# the repository root). gh-actions-lock v0.2.0 reports any `./` action as +# `local-action` ("not supported", rewrite to `$/…`). The estate measured the +# opposite: check-lock-sync.sh fails the `$/` spelling as an invalid rewrite, +# and v0.1.6 never flagged `./`. A missing path or a parse failure returns 1, +# so the finding stays a failure. +workflow_local_uses_resolve() { + workflow=$1 + [[ -f "$workflow" ]] || return 1 + refs=$(yq -r '.. | select(tag == "!!map") | select(has("uses")) | .uses | select(tag == "!!str")' "$workflow" 2>/dev/null) || + return 1 + local_refs=$(printf '%s\n' "$refs" | grep '^\./') || return 1 + while IFS= read -r ref; do + [[ -e "${ref%%@*}" ]] || return 1 + done <<< "$local_refs" +} + +is_advisory_category() { + # Advisory findings never affect the tool's own `valid` bit: a tree whose + # only findings are `sha-as-ref` reports `"valid": true` (measured + # 2026-09-22 on metadatastician/burble -- 7 sha-as-ref findings, valid true, + # process exit 1). They must therefore not block on the `valid:false` path + # either. + # + # Discriminate by CATEGORY, never by severity. gh-actions-lock v0.1.6 labels + # every finding `"severity": "warning"`, `stale` included, so a severity test + # would swallow real desyncs and turn this gate vacuous. v0.2.0 relabels + # `stale` as `"error"`: the severity is not stable across releases either. + case "$1" in + sha-as-ref) return 0 ;; + *) return 1 ;; + esac +} + +verify_lock_coverage() { + # gh-actions-lock (v0.1.6, and still v0.2.0) does not recognise + # reusable-workflow `uses:` paths. GitHub's startup enforcement nevertheless + # requires callers to carry the reusable repository and its transitive + # actions in actions.lock. Accept exactly three tool false positives: + # - `stale`, when the named workflow contains the exact + # owner/repo/.github/workflows/file@ref dependency; + # - `not-pinned` with no dependency ("workflow has no lockfile entry", + # v0.2.0), when the workflow has nothing to pin; + # - `local-action` with no dependency (v0.2.0), when every `./` action + # the workflow uses exists in this checkout. + # Every other finding, including a wrong ref, remains blocking. + command -v jq >/dev/null 2>&1 || { + "$GH_BIN" actions-lock --verify-local + return + } + + set +e + result=$("$GH_BIN" actions-lock --verify-local --json=valid,findings) + status=$? + set -e + + if [ -z "$result" ] || ! printf '%s' "$result" | jq -e -s 'length == 1 and (.[0] | type == "object" and .valid != null and (.findings | type == "array"))' >/dev/null 2>&1; then + printf '%s\n' "$result" + [[ "$status" -ne 0 ]] && return "$status" + return 1 + fi + # The authoritative validity bit and the process exit are not equivalent. + # gh-actions-lock v0.1.6 exits 1 for advisory findings such as `sha-as-ref` + # even while reporting `"valid": true`. Preserve advisory findings in the + # log, but accept the lock exactly when the authoritative tool says it is + # valid. + if printf '%s' "$result" | jq -e '.valid == true' >/dev/null; then + if printf '%s' "$result" | jq -e '.findings | length > 0' >/dev/null; then + printf '%s\n' "$result" + echo "actions-lock: valid with advisory finding(s)" + fi + return 0 + fi + + remaining=0 + accepted=0 + advisory=0 + while IFS=$'\t' read -r category workflow dependency; do + if is_advisory_category "$category"; then + advisory=$((advisory + 1)) + elif [[ "$category" = stale ]] && + workflow_references_reusable_dependency "$workflow" "$dependency"; then + echo "Accepted reusable-workflow lock coverage: $workflow -> $dependency" + accepted=$((accepted + 1)) + elif [[ "$category" = not-pinned && -z "$dependency" ]] && + workflow_has_nothing_to_pin "$workflow"; then + echo "Accepted workflow with nothing to pin: $workflow" + accepted=$((accepted + 1)) + elif [[ "$category" = local-action && -z "$dependency" ]] && + workflow_local_uses_resolve "$workflow"; then + echo "Accepted same-repository ./ action(s): $workflow" + accepted=$((accepted + 1)) + else + remaining=$((remaining + 1)) + fi + done < <(printf '%s' "$result" | jq -r '.findings[] | [.category, .workflow, .dependency] | @tsv') + + if [[ "$advisory" -gt 0 ]]; then + echo "actions-lock: $advisory advisory finding(s) recorded, not blocking" + fi + + # `valid:false` with no findings is contradictory and cannot be explained by + # the one known reusable-workflow false positive. Fail closed rather than + # turning an empty/malformed diagnostic into approval. Advisory findings do + # not explain it either, so they never satisfy this guard on their own. + if [[ "$remaining" -ne 0 || "$accepted" -eq 0 ]]; then + printf '%s\n' "$result" + return 1 + fi +} + +cleanup() { + status=$? + if [ "$COMPLETE" != true ]; then + restore_workflows "$SNAPSHOT/original-workflows" + if [ -f "$SNAPSHOT/actions.lock" ]; then + cp "$SNAPSHOT/actions.lock" "$WF_DIR/actions.lock" + else + rm -f "$WF_DIR/actions.lock" + fi + fi + rm -rf "$SNAPSHOT" + exit "$status" +} +trap cleanup EXIT + +snapshot_workflows "$SNAPSHOT/original-workflows" +[ ! -f "$WF_DIR/actions.lock" ] || cp "$WF_DIR/actions.lock" "$SNAPSHOT/actions.lock" + +if [ "$MODE" = update ]; then + "$GH_BIN" actions-lock +fi + +# Despite its name, --verify-local can mutate workflow bytes (including +# migrating local `./` action paths to an invalid `$/` spelling). Preserve the +# post-update state, run verification, then discard verifier-only mutations. +snapshot_workflows "$SNAPSHOT/preverify-workflows" +verify_lock_coverage +restore_workflows "$SNAPSHOT/preverify-workflows" +# Neither upstream advisory handling nor its reusable-workflow exception can +# waive direct-ref drift, missing dependency records, or a corrupt commit. +bash "$(dirname "${BASH_SOURCE[0]}")/check-lock-sync.sh" "$WF_DIR" +COMPLETE=true From 3cada33c150c86c475bd5dd05acc3ce5ca35e45e Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 16:51:53 +0000 Subject: [PATCH 02/12] fix(ci): upgrade pinned governance with verifier compatibility and complete closure Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- .github/workflows/actions.lock | 147 ++++++++++++++++++++++++++++++- .github/workflows/governance.yml | 2 +- 2 files changed, 146 insertions(+), 3 deletions(-) diff --git a/.github/workflows/actions.lock b/.github/workflows/actions.lock index c726b14..68516f5 100644 --- a/.github/workflows/actions.lock +++ b/.github/workflows/actions.lock @@ -1,5 +1,5 @@ # This file is machine-generated by `gh actions-lock`. -# Do not edit by hand; run `gh actions-lock` to update. +# Do not edit by hand; run scripts/update-actions-lock.sh to update. # Docs: https://gh.io/actions-lockfile version: 'v0.0.3' workflows: @@ -28,7 +28,7 @@ workflows: '.github/workflows/dogfood-gate.yml': - 'actions/checkout@v7.0.1' '.github/workflows/governance.yml': - - 'hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2' + - 'hyperpolymath/standards@80014df42eb81f09396c948299febb258cec4719' '.github/workflows/hypatia-scan.yml': - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' '.github/workflows/instant-sync.yml': @@ -70,16 +70,41 @@ dependencies: commit: 'sha1-3d3c42e5aac5ba805825da76410c181273ba90b1' owner_id: 44036562 repo_id: 197814629 + 'actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d': + ref: '45bfe0192ca1faeb007ade9deae92b16b8254a0d' + commit: 'sha1-45bfe0192ca1faeb007ade9deae92b16b8254a0d' + owner_id: 44036562 + repo_id: 513659658 'actions/configure-pages@v6.0.0': ref: 'v6.0.0' commit: 'sha1-45bfe0192ca1faeb007ade9deae92b16b8254a0d' owner_id: 44036562 repo_id: 513659658 + 'actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1': + ref: 'bcd2ba49218906704ab6c1aa796996da409d3eb1' + commit: 'sha1-bcd2ba49218906704ab6c1aa796996da409d3eb1' + owner_id: 44036562 + repo_id: 642580244 + 'actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346': + ref: '368f82528645a54fb793d4d04e342629a3f51346' + commit: 'sha1-368f82528645a54fb793d4d04e342629a3f51346' + owner_id: 44036562 + repo_id: 438112499 'actions/deploy-pages@v5.0.1': ref: 'v5.0.1' commit: 'sha1-368f82528645a54fb793d4d04e342629a3f51346' owner_id: 44036562 repo_id: 438112499 + 'actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333': + ref: 'v8.0.2' + commit: 'sha1-9000827ccba6bdab643e8b6fd33ac0654aef8333' + owner_id: 44036562 + repo_id: 192626254 + 'actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3': + ref: 'v9.0.0' + commit: 'sha1-3a2844b7e9c422d3c10d287c895573f7108da1b3' + owner_id: 44036562 + repo_id: 205262760 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a': ref: '043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' commit: 'sha1-043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' @@ -90,6 +115,18 @@ dependencies: commit: 'sha1-bbbca2ddaa5d8feaa63e36b76fdaad77386f024f' owner_id: 44036562 repo_id: 192625955 + 'actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9': + ref: 'v7.0.2' + commit: 'sha1-cf430e030ddbb5b0abf93d22962f4752f3646cd9' + owner_id: 44036562 + repo_id: 192625955 + 'actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9': + ref: 'fc324d3547104276b827a68afc52ff2a11cc49c9' + commit: 'sha1-fc324d3547104276b827a68afc52ff2a11cc49c9' + owner_id: 44036562 + repo_id: 496012378 + uses: + - 'actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f' 'actions/upload-pages-artifact@v5.0.0': ref: 'v5.0.0' commit: 'sha1-fc324d3547104276b827a68afc52ff2a11cc49c9' @@ -97,11 +134,31 @@ dependencies: repo_id: 496012378 uses: - 'actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f' + 'denoland/setup-deno@22d081ff2d3a40755e97629de92e3bcbfa7cf2ed': + ref: 'v2.0.5' + commit: 'sha1-22d081ff2d3a40755e97629de92e3bcbfa7cf2ed' + owner_id: 42048915 + repo_id: 356423100 'dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772': ref: '6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772' commit: 'sha1-6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772' owner_id: 1940490 repo_id: 260749683 + 'dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067': + ref: 'v1' + commit: 'sha1-7e38f4b43b4db5c8dd498af069a4f6196df1d067' + owner_id: 1940490 + repo_id: 260749683 + 'dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f': + ref: 'v1' + commit: 'sha1-e2a55d2ffb04f378e9626c28d38b36d230d1e12f' + owner_id: 1940490 + repo_id: 260749683 + 'editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393': + ref: 'v3.0.0' + commit: 'sha1-51f63319f592f97930c73d9c46184d20bd206393' + owner_id: 26415196 + repo_id: 297874902 'editorconfig-checker/action-editorconfig-checker@840e866d93b8e032123c23bac69dece044d4d84c': ref: '840e866d93b8e032123c23bac69dece044d4d84c' commit: 'sha1-840e866d93b8e032123c23bac69dece044d4d84c' @@ -117,6 +174,11 @@ dependencies: commit: 'sha1-24c54180a607b1449ed407dd24f251e4e9147c8d' owner_id: 9919 repo_id: 259445878 + 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63': + ref: 'b96794f015dfd88f77b49b1c93e0fa7110f94c63' + commit: 'sha1-b96794f015dfd88f77b49b1c93e0fa7110f94c63' + owner_id: 9919 + repo_id: 259445878 'github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28': ref: 'db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28' commit: 'sha1-db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28' @@ -127,6 +189,16 @@ dependencies: commit: 'sha1-884713a6c30a92e5e8544c39945cd7cb630abcd1' owner_id: 1342004 repo_id: 400046858 + 'goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406': + ref: 'abea47f85e598557f500fa1fd2ab7464fcb39406' + commit: 'sha1-abea47f85e598557f500fa1fd2ab7464fcb39406' + owner_id: 1006268 + repo_id: 212984112 + 'haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d': + ref: 'v2.12.1' + commit: 'sha1-0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' + owner_id: 75048950 + repo_id: 623796603 'haskell-actions/setup@v2.12.1': ref: 'v2.12.1' commit: 'sha1-0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' @@ -137,6 +209,43 @@ dependencies: commit: 'sha1-c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef' owner_id: 6759885 repo_id: 1352485172 + 'hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd': + ref: '571cc734cd69fb846032ec77a662aa8ee4fc32cd' + commit: 'sha1-571cc734cd69fb846032ec77a662aa8ee4fc32cd' + owner_id: 6759885 + repo_id: 1116521501 + 'hyperpolymath/standards@80014df42eb81f09396c948299febb258cec4719': + ref: '80014df42eb81f09396c948299febb258cec4719' + commit: 'sha1-80014df42eb81f09396c948299febb258cec4719' + owner_id: 6759885 + repo_id: 1116521501 + uses: + - 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9' + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d' + - 'actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1' + - 'actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346' + - 'actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333' + - 'actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3' + - 'actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9' + - 'actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9' + - 'denoland/setup-deno@22d081ff2d3a40755e97629de92e3bcbfa7cf2ed' + - 'dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f' + - 'editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393' + - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124' + - 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63' + - 'goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406' + - 'haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' + - 'hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd' + - 'hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f' + - 'ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7' + - 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc' + - 'oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6' + - 'peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697' + - 'step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25' + - 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6' + - 'tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd' + - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a': ref: '84355587cb2a1f86e6882de83514a32db2646e7a' commit: 'sha1-84355587cb2a1f86e6882de83514a32db2646e7a' @@ -152,6 +261,15 @@ dependencies: - 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc' - 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6' - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' + 'hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f': + ref: 'b935e63937b1f1b5cbaeea7e375947d7b924038f' + commit: 'sha1-b935e63937b1f1b5cbaeea7e375947d7b924038f' + owner_id: 6759885 + repo_id: 1116521501 + uses: + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067' + - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' 'hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2': ref: 'fad242d35291de1898242d6737ba02b74a59a2f2' commit: 'sha1-fad242d35291de1898242d6737ba02b74a59a2f2' @@ -162,21 +280,46 @@ dependencies: - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' - 'editorconfig-checker/action-editorconfig-checker@840e866d93b8e032123c23bac69dece044d4d84c' - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124' + 'ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7': + ref: '93303b622b2522e4411e295f9e77411a24912ac7' + commit: 'sha1-93303b622b2522e4411e295f9e77411a24912ac7' + owner_id: 1841483 + repo_id: 220799100 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc': ref: '2d1146689b8cda280b9bc96326124645441f03bc' commit: 'sha1-2d1146689b8cda280b9bc96326124645441f03bc' owner_id: 67707773 repo_id: 421101922 + 'oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6': + ref: 'v2.2.0' + commit: 'sha1-0c5077e51419868618aeaa5fe8019c62421857d6' + owner_id: 108928776 + repo_id: 512644635 + 'peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697': + ref: 'v4.0.1' + commit: 'sha1-28959ce8df70de7be546dd1250a005dd32156697' + owner_id: 18365890 + repo_id: 220359305 'peter-evans/repository-dispatch@v4.0.1': ref: 'v4.0.1' commit: 'sha1-28959ce8df70de7be546dd1250a005dd32156697' owner_id: 18365890 repo_id: 220359305 + 'step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25': + ref: 'v2.22.1' + commit: 'sha1-ccd8616d44fd3846e67624a50d5aad6d37bf2d25' + owner_id: 88700172 + repo_id: 422287306 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6': ref: '6323deb102c322ba6fcbdcafc7e3dddab59af2b6' commit: 'sha1-6323deb102c322ba6fcbdcafc7e3dddab59af2b6' owner_id: 580492 repo_id: 298565987 + 'tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd': + ref: 'v4.2.0' + commit: 'sha1-d1b6cd204f8dceda5b3eaad7f1f767be390056cd' + owner_id: 48932923 + repo_id: 360548653 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555': ref: 'e83874834305fe9a4a2997156cb26c5de65a8555' commit: 'sha1-e83874834305fe9a4a2997156cb26c5de65a8555' diff --git a/.github/workflows/governance.yml b/.github/workflows/governance.yml index c3f5302..d02be11 100644 --- a/.github/workflows/governance.yml +++ b/.github/workflows/governance.yml @@ -15,4 +15,4 @@ permissions: jobs: governance: - uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@fad242d35291de1898242d6737ba02b74a59a2f2 + uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@80014df42eb81f09396c948299febb258cec4719 From 29f3f455c869516d3ea83f5d53943b386f0dd7ad Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 16:53:46 +0000 Subject: [PATCH 03/12] fix(ci): update async-trait for Rust 1.99 and narrowly pin verifier compatibility Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- .github/workflows/actions.lock | 9 +++---- .github/workflows/governance.yml | 2 +- Cargo.lock | 43 ++++++++++++++++++++------------ Cargo.toml | 3 ++- 4 files changed, 34 insertions(+), 23 deletions(-) diff --git a/.github/workflows/actions.lock b/.github/workflows/actions.lock index 68516f5..33d9cc6 100644 --- a/.github/workflows/actions.lock +++ b/.github/workflows/actions.lock @@ -28,7 +28,7 @@ workflows: '.github/workflows/dogfood-gate.yml': - 'actions/checkout@v7.0.1' '.github/workflows/governance.yml': - - 'hyperpolymath/standards@80014df42eb81f09396c948299febb258cec4719' + - 'hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a' '.github/workflows/hypatia-scan.yml': - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' '.github/workflows/instant-sync.yml': @@ -214,9 +214,9 @@ dependencies: commit: 'sha1-571cc734cd69fb846032ec77a662aa8ee4fc32cd' owner_id: 6759885 repo_id: 1116521501 - 'hyperpolymath/standards@80014df42eb81f09396c948299febb258cec4719': - ref: '80014df42eb81f09396c948299febb258cec4719' - commit: 'sha1-80014df42eb81f09396c948299febb258cec4719' + 'hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a': + ref: 'c11c255e1b5546854e874d1486d61d6d5a4da29a' + commit: 'sha1-c11c255e1b5546854e874d1486d61d6d5a4da29a' owner_id: 6759885 repo_id: 1116521501 uses: @@ -229,7 +229,6 @@ dependencies: - 'actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3' - 'actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9' - 'actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9' - - 'denoland/setup-deno@22d081ff2d3a40755e97629de92e3bcbfa7cf2ed' - 'dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f' - 'editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393' - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124' diff --git a/.github/workflows/governance.yml b/.github/workflows/governance.yml index d02be11..f74ae5b 100644 --- a/.github/workflows/governance.yml +++ b/.github/workflows/governance.yml @@ -15,4 +15,4 @@ permissions: jobs: governance: - uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@80014df42eb81f09396c948299febb258cec4719 + uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@c11c255e1b5546854e874d1486d61d6d5a4da29a diff --git a/Cargo.lock b/Cargo.lock index 41c3e70..bfc77bf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -122,13 +122,13 @@ checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" [[package]] name = "async-trait" -version = "0.1.89" +version = "0.1.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" +checksum = "82f6aeea286b8eb4dd3431a1be1b59d290ace00f5bfd8e2a159bc2a05e2c1667" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 3.0.9", ] [[package]] @@ -341,7 +341,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -808,7 +808,7 @@ checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -1468,7 +1468,7 @@ checksum = "f5d762282e9d9c8c5bb3cc5456205bcacaefc1b72dea6c2f8a57e2bad796821e" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -1848,7 +1848,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -1971,6 +1971,17 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "syn" +version = "3.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d78c8dee4c7bf0e14673097256fed6142ce9d3b85a408189d07482442145823b" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + [[package]] name = "tar" version = "0.4.46" @@ -2036,7 +2047,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -2047,7 +2058,7 @@ checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -2113,7 +2124,7 @@ checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -2135,7 +2146,7 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -2297,7 +2308,7 @@ dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn", + "syn 2.0.118", "wasm-bindgen-shared", ] @@ -2540,7 +2551,7 @@ checksum = "0aa37115e91d4ad8b5b0af8249d418635acbdf3d8130272e98cb6daebb714d4c" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -2605,7 +2616,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -2616,7 +2627,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] @@ -2825,7 +2836,7 @@ checksum = "1ae7f38b72ec2a254e2b87ef277cf2cd4fb97cbebf944faa6f33354da0867930" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.118", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 0fae039..08fdd65 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -63,7 +63,8 @@ clap = { version = "4.4", features = ["derive"] } nickel-lang-core = "0.8" # Async utilities -async-trait = "0.1" +# 0.1.92 removes the redundant macro-generated must_use rejected by Rust 1.99. +async-trait = "0.1.92" futures = "0.3" # File operations From af3b84fe194f89535daa7864122dfa71fa4fad5f Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 16:58:34 +0000 Subject: [PATCH 04/12] test(ci): add fail-closed lock controls and patch the Wasmtime audit finding Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- .github/workflows/lock-sync-gate.yml | 18 +++-- Cargo.lock | 104 +++++++++++++------------- Cargo.toml | 2 +- scripts/check-lock-sync.sh | 16 ++-- scripts/tests/check-lock-sync-test.sh | 94 +++++++++++++++++++++++ scripts/update-actions-lock.sh | 5 +- 6 files changed, 172 insertions(+), 67 deletions(-) create mode 100644 scripts/tests/check-lock-sync-test.sh diff --git a/.github/workflows/lock-sync-gate.yml b/.github/workflows/lock-sync-gate.yml index f3d870f..05be75d 100644 --- a/.github/workflows/lock-sync-gate.yml +++ b/.github/workflows/lock-sync-gate.yml @@ -1,14 +1,13 @@ # SPDX-License-Identifier: MPL-2.0 name: Lock Sync Gate -# Fails any pull request whose .github/workflows/actions.lock has drifted from -# the workflow YAML. That drift is not cosmetic: GitHub refuses such a run at -# startup, creating ZERO jobs, and reports only "This run likely failed because -# of a workflow file issue." A single grouped Dependabot bump can take out most -# of a repository's CI that way, because Dependabot rewrites `uses:` refs in the -# YAML and cannot touch the lockfile. Measured across 200 repositories on -# 2026-09-22: 39 had silently dead CI from exactly this cause. -# See hyperpolymath/standards#968. +# Reject drift between workflow refs and actions.lock, and dangling transitive +# records. These can block policy verification or GitHub's startup resolver. +# Do not infer the cause of every startup failure from this gate: #144 created +# jobs, and also had unrelated SPDX, language-policy and clippy failures. +# Dependabot updates must carry the matching lock and pass the same checks; +# newer Dependabot/tool versions can update the lock but inherited drift remains. +# See docs/CI-CD-REPAIR.adoc for the update/verification procedure. # # This workflow deliberately carries NO `uses:` of its own. It checks out by # calling git in a `run:` step instead of using actions/checkout, so it has no @@ -62,3 +61,6 @@ jobs: test -x scripts/check-lock-sync.sh \ || { echo "::error::scripts/check-lock-sync.sh missing or not executable"; exit 1; } ./scripts/check-lock-sync.sh + + - name: Exercise lock-sync positive and negative controls + run: bash scripts/tests/check-lock-sync-test.sh diff --git a/Cargo.lock b/Cargo.lock index bfc77bf..e9a2e20 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -388,36 +388,36 @@ dependencies = [ [[package]] name = "cranelift-assembler-x64" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "674086ef78d595ac24b1de574b37a1dee9539ff4e82085b01c9d3b605769c490" +checksum = "e4353b283b6c76205abc8eab20b41838e47510c9669ed83c27f7bca8cd1c262f" dependencies = [ "cranelift-assembler-x64-meta", ] [[package]] name = "cranelift-assembler-x64-meta" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1da5de96c55948220778231bd1565d9ce579a585eeee94138c58c62b3bec0c1" +checksum = "61f6d6eb342f6c48d97278c7549c5b91756f03db80bce9cdeddaa536c356c937" dependencies = [ "cranelift-srcgen", ] [[package]] name = "cranelift-bforest" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f1d52c5745ebab06f64f53bc2f3ee800e392183fa51860230bbbd1893eea59c" +checksum = "c746ef625773869efaffda6918a2b73f973c73e419e1de20833f3a1a9d614006" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-bitset" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "682c2ef5e13a8f33436e1ce0a3387e459f8446c6f3978dd1f027721d159aed3c" +checksum = "5447cd11203bcb5b71bb91e1e8b8470f350870ca837847bf82ec2e25f55fcd7b" dependencies = [ "serde", "serde_derive", @@ -425,9 +425,9 @@ dependencies = [ [[package]] name = "cranelift-codegen" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d34028ba5e00f3ab5fe27babce8dcec158aeb20de9aeef451a975974ddb0e33" +checksum = "2ac26ac02abded3bb8223f0cf8a0055c6284be55ca9a6c380f78494bdf686adc" dependencies = [ "bumpalo", "cranelift-assembler-x64", @@ -452,9 +452,9 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dadc08640fccbd661305967aa7608dd4d672a2676003f7d492561b55a63e8b0" +checksum = "3c4a9197c03f7b75c228a66ecaf0b7469e0f9b86fe3cf2cf7ebfbcaacfce0a9b" dependencies = [ "cranelift-assembler-x64-meta", "cranelift-codegen-shared", @@ -465,24 +465,24 @@ dependencies = [ [[package]] name = "cranelift-codegen-shared" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48e6dfe019f18df1cc8b597cf7c77ae1fe2b5ccfeb68c5f5a2ffba32fcdd0859" +checksum = "3279a717ec8773811c148650b77cb7c554c6898c858cb547d3da477a8bca21b3" [[package]] name = "cranelift-control" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dd618ebe6294dfc973b609889d69e1325058d164e40915cb63783626997adf6" +checksum = "2e2a7ad0219d6f4a4899e5e93d5a4944a79dd6cffe2f6d6fba4d6b2ac165a154" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f43fba0e38f2029ee1d524e1a7283a3111e6464282dbe0675c372ca4251f6445" +checksum = "554aaa52367f0396570d031aa0bdedfff4f63794022dc418d0cdcf8f6d321b60" dependencies = [ "cranelift-bitset", "serde", @@ -491,9 +491,9 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac94ba697dc9c84c576fc68e38c22dcca53ade1074eb4d1ac0ed5398ce4b3fb8" +checksum = "72db97f8a7ea1626ecfcac1adf664cba1f1d68448abbb36b7dbaa0a6b78bc11f" dependencies = [ "cranelift-codegen", "log", @@ -503,15 +503,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10277dd9b4f27739a6f94974b83ad9af36dea85b680e6caf461719579c1fd1a3" +checksum = "17a237c16305f95ff07031be4a5226a4c0753761f40bbad2105c758a33aee692" [[package]] name = "cranelift-native" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b517e951f96d10ccffb35b62b9ce441959c525ffa0d993e39ced69c80836216a" +checksum = "dd6f62b06973b3e5fd813167b01958b09f634bfa59a8f5db2cd49b930d93aa6f" dependencies = [ "cranelift-codegen", "libc", @@ -520,9 +520,9 @@ dependencies = [ [[package]] name = "cranelift-srcgen" -version = "0.123.15" +version = "0.123.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e85fc1831639171b465008dc47a5f855c247d3df61db7339a8e435f41e164906" +checksum = "fd76efe2edc25d9f062aaf0a16c7528a30c8ba5782afe6296237ed48d8d6127c" [[package]] name = "crc32fast" @@ -1450,9 +1450,9 @@ dependencies = [ [[package]] name = "pulley-interpreter" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae5f0190caba09bf0396e4587417d44c11c94e73bad8a5fb46ec8354f64ae0ea" +checksum = "f09f3fdea932cc327d051b2aaccfc82fddcd49997e8579f3d91ae3468a954b94" dependencies = [ "cranelift-bitset", "log", @@ -1462,9 +1462,9 @@ dependencies = [ [[package]] name = "pulley-macros" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5d762282e9d9c8c5bb3cc5456205bcacaefc1b72dea6c2f8a57e2bad796821e" +checksum = "96da696c8995a3033eb1287ee418895592da41a5d549b8615b5f1e5851318b48" dependencies = [ "proc-macro2", "quote", @@ -2378,9 +2378,9 @@ dependencies = [ [[package]] name = "wasmtime" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b8e54b48e969e4a7a34636bb76c0d62b3d89d27718f54e55b85797a2a322a7a" +checksum = "1edc1374519a6d4c3eb99e0598f2ce069e6feb63de65bed7d0240a5f84b58c3b" dependencies = [ "addr2line", "anyhow", @@ -2420,9 +2420,9 @@ dependencies = [ [[package]] name = "wasmtime-environ" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cb86dbd897df701434bb7c4a71c11ba6a26096c4cd5bef7b462085e179e8a2" +checksum = "c7e05a9ebefb914d4df7928652e27aa1e89e1ca23c5ab73c647316783f3bcbc2" dependencies = [ "anyhow", "cranelift-bitset", @@ -2443,18 +2443,18 @@ dependencies = [ [[package]] name = "wasmtime-internal-asm-macros" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c532b16499cc64388dcc46fa604e85b1699452a463cfe42214623a8b8c76df20" +checksum = "83fcf4b431fb653aefd2cc3c3a65ea78988acf5a7626cb825c54b5aab5aa1a8e" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-internal-cranelift" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb7b48074b4eafd2301e856d8956c8213e2420a20404911c05f36603b55cdbc" +checksum = "9bd306f478b4a68d94a80e64d1a92871b697188eafe8bfc387f865085c818a04" dependencies = [ "anyhow", "cfg-if", @@ -2479,9 +2479,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-fiber" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fae9b364c70bc5d44b7ef773918bacae7d6616f6b00b7ba321a97337d23f03" +checksum = "e9f9bb63081293450d0dfb439f246339e91e34d51c09b1310bdd297b67be5933" dependencies = [ "anyhow", "cc", @@ -2495,9 +2495,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-jit-debug" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ea06751a0ad27b4997be8fb85eaf02de7f94e6e6d64c2a41e59866552449095" +checksum = "e3c04edbaf79fb10460ee0867a829f831b7afa8d5d8c9d32287d88b3f1aaef79" dependencies = [ "cc", "wasmtime-internal-versioned-export-macros", @@ -2505,9 +2505,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-jit-icache-coherence" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ddaac24c532bdafe6d560a5e8eff2886f1470d5bb7452c1c84307fecf34be4" +checksum = "4e2b3b397afafb7e6b3603dd3f867cc626d3bde726bd65ce01443a70fe66e1c0" dependencies = [ "anyhow", "cfg-if", @@ -2517,24 +2517,24 @@ dependencies = [ [[package]] name = "wasmtime-internal-math" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b8c96276addc173c3775c4a6cca4862f5e4d09c0d2430b3ed97ab990fa4177" +checksum = "2509a3a45fbdc79eab62680df8f8d5ffe5420c3bf7f0c2083d49110c09c61b34" dependencies = [ "libm", ] [[package]] name = "wasmtime-internal-slab" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99e1336d799d019959c9cd6375e80e8e0deb89f4c18ca2d3d8012d0d2a2c99d3" +checksum = "0985eb32142c197f1aa5d50e94498a769f55095e8ed2838eff386c735f9da72f" [[package]] name = "wasmtime-internal-unwinder" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed78b661b90ad2b7fb240ac9282d0775646a5586af460491071e6492403c5cae" +checksum = "6b88fa7f08080eeb4926d6062c2ae8c38c19a2b1a6d0f01c569b827d987f4909" dependencies = [ "anyhow", "cfg-if", @@ -2545,9 +2545,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-versioned-export-macros" -version = "36.0.15" +version = "36.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aa37115e91d4ad8b5b0af8249d418635acbdf3d8130272e98cb6daebb714d4c" +checksum = "bfff26e96f2539205ff7c049e4dff8343a479722bbbae88bc4da54adde12c1fa" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 08fdd65..5dc09e0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -81,7 +81,7 @@ chrono = { version = "0.4", features = ["serde"] } # unmaintained (RUSTSEC-2025-0057) and fails `cargo audit --deny unmaintained`. # The plugin sandbox uses core-Wasm runtime + fuel metering only, so the # guest-profiler machinery is dead weight here. -wasmtime = { version = "36.0.8", default-features = false, features = [ +wasmtime = { version = "36.0.16", default-features = false, features = [ "cranelift", "runtime", "std", diff --git a/scripts/check-lock-sync.sh b/scripts/check-lock-sync.sh index 6ab4345..35fd7ba 100755 --- a/scripts/check-lock-sync.sh +++ b/scripts/check-lock-sync.sh @@ -13,7 +13,12 @@ scratch=$(mktemp -d) trap 'rm -rf "$scratch"' EXIT # Fail closed on tool failure, malformed YAML or unsupported schema. "$YQ_BIN" -o=json '.' "$WF_DIR/actions.lock" > "$scratch/lock.json" -jq -e '(.version == "v0.0.2" or .version == "v0.0.3") and (.workflows | type == "object") and (.dependencies | type == "object")' "$scratch/lock.json" >/dev/null +jq -e '(.version == "v0.0.2" or .version == "v0.0.3") and (.workflows | type == "object") and (.dependencies | type == "object") and + all(.dependencies | to_entries[]; + (.key | test("^[^/@]+/[^/@]+@[^@[:space:]]+$")) and + (.value | type == "object") and + (.value.owner_id | type == "number") and (.value.owner_id > 0) and + (.value.repo_id | type == "number") and (.value.repo_id > 0))' "$scratch/lock.json" >/dev/null shopt -s nullglob files=("$WF_DIR"/*.yml "$WF_DIR"/*.yaml) [ ${#files[@]} -gt 0 ] || { echo '::error::No workflows found'; exit 1; } @@ -30,9 +35,10 @@ jq -n --slurpfile lock "$scratch/lock.json" --slurpfile workflows "$scratch/refs def norm: if type != "string" then error("uses/ref must be a string") elif startswith("./") or startswith("docker://") then empty - else capture("^(?[^/@]+)/(?[^/@]+)(?:/[^@]+)?@(?[^@[:space:]]+)$") + elif test("^[^/@]+/[^/@]+(?:/[^@]+)?@[^@[:space:]]+$") then + capture("^(?[^/@]+)/(?[^/@]+)(?:/[^@]+)?@(?[^@[:space:]]+)$") | ((.owner + "/" + .repo | ascii_downcase) + "@" + .ref) - end; + else error("invalid external uses/ref: " + .) end; def refs: if type != "array" then error("lock refs must be arrays") else map(norm) | unique end; $lock[0] as $l | $workflows[0] as $ws | ($l.dependencies | to_entries | map({key: (.key | norm), value: .value}) | from_entries) as $deps | @@ -41,8 +47,8 @@ jq -n --slurpfile lock "$scratch/lock.json" --slurpfile workflows "$scratch/refs ($l.workflows[$w.path] // [] | refs) as $got | if $want != $got then {type: "lock-drift", workflow: $w.path, missing: ($want - $got), stale: ($got - $want)} else empty end), ($l.workflows | keys[] | . as $p | select(all($ws[]; .path != $p)) | {type: "orphan-workflow", workflow: $p}), - (($l.workflows[] | refs[]), ($l.dependencies[] | (.uses // []) | refs[])) as $ref | - select($deps[$ref] == null) | {type: "dangling-edge", ref: $ref}, + (((($l.workflows[] | refs[]), ($l.dependencies[] | (.uses // []) | refs[])) as $ref | + select($deps[$ref] == null) | {type: "dangling-edge", ref: $ref})), ($deps | to_entries[] | select((.value.commit | type != "string") or ((.value.commit // "") | test("^sha1-[0-9a-f]{40}$") | not)) | {type: "invalid-commit", ref: .key}) ] | unique diff --git a/scripts/tests/check-lock-sync-test.sh b/scripts/tests/check-lock-sync-test.sh new file mode 100644 index 0000000..8fed7cf --- /dev/null +++ b/scripts/tests/check-lock-sync-test.sh @@ -0,0 +1,94 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: MPL-2.0 +set -euo pipefail +CHECK="$(cd "$(dirname "$0")/.." && pwd)/check-lock-sync.sh" +ROOT=$(mktemp -d) +trap 'rm -rf "$ROOT"' EXIT +mkdir -p "$ROOT/.github/workflows" +WF="$ROOT/.github/workflows" +fixture() { + rm -f "$WF"/* + cat > "$WF/example.yml" <<'YAML' +# SPDX-License-Identifier: MPL-2.0 +name: Example +on: pull_request +permissions: {contents: read} +jobs: + reusable: + uses: Owner/Shared/.github/workflows/ci.yml@v1 + build: + runs-on: ubuntu-latest + steps: + - uses: owner/action/subpath@v1 + - run: | + echo 'uses: not/an-action@v9' +YAML + cat > "$WF/actions.lock" <<'YAML' +version: 'v0.0.3' +workflows: + '.github/workflows/example.yml': ['owner/shared@v1', 'owner/action@v1'] +dependencies: + 'owner/shared@v1': + ref: v1 + commit: sha1-1111111111111111111111111111111111111111 + owner_id: 1 + repo_id: 2 + uses: ['owner/action@v1'] + 'owner/action@v1': + ref: v1 + commit: sha1-2222222222222222222222222222222222222222 + owner_id: 1 + repo_id: 3 +YAML +} +assert_status() { + expected=$1; label=$2 + rc=0 + bash "$CHECK" "$WF" > "$ROOT/output" 2>&1 || rc=$? + if { [ "$expected" = pass ] && [ "$rc" -ne 0 ]; } || { [ "$expected" = fail ] && [ "$rc" -eq 0 ]; }; then + cat "$ROOT/output"; echo "FAIL: $label (exit $rc)"; exit 1 + fi + echo "PASS: $label" +} +fixture +before=$(sha256sum "$WF"/*) +assert_status pass 'block YAML, subpaths, case folding and run-body decoys' +[ "$before" = "$(sha256sum "$WF"/*)" ] || { echo 'Verifier modified inputs'; exit 1; } +fixture +cat > "$WF/example.yml" <<'YAML' +{jobs: {reusable: {uses: "Owner/Shared/.github/workflows/ci.yml@v1"}, build: {runs-on: "ubuntu-latest", steps: [{uses: "owner/action/subpath@v1"}, {run: "echo uses: decoy/action@v9"}]}}} +YAML +assert_status pass 'flow/quoted YAML is structurally equivalent' +fixture; sed -i 's/subpath@v1/subpath@v2/' "$WF/example.yml" +assert_status fail 'changed action ref must be locked in the same PR' +fixture; sed -i '/uses: Owner\/Shared/d' "$WF/example.yml" +assert_status fail 'orphan reusable lock ref blocks' +fixture; sed -i 's/owner\/action@v1/owner\/missing@v1/' "$WF/actions.lock" +assert_status fail 'dangling direct and transitive edges block' +fixture; sed -i '/uses:/s/owner\/action@v1/owner\/missing@v1/' "$WF/actions.lock" +assert_status fail 'dangling transitive-only edge blocks' +fixture; sed -i 's/sha1-2222222222222222222222222222222222222222/main/' "$WF/actions.lock" +assert_status fail 'mutable dependency commit blocks' +fixture; sed -i 's/owner\/action\/subpath@v1/owner\/action/' "$WF/example.yml" +assert_status fail 'malformed uses never silently disappears' +fixture; sed -i "s/version: 'v0.0.3'/version: 'future-version'/" "$WF/actions.lock" +assert_status fail 'unknown lock schema fails closed' +fixture; sed -i 's/owner_id: 1/owner_id: bogus/' "$WF/actions.lock" +assert_status fail 'invalid dependency identity blocks' +fixture; echo '[' > "$WF/example.yml" +assert_status fail 'unparseable YAML fails closed' +fixture; rm "$WF/example.yml" +assert_status fail 'empty workflow directory fails closed' +fixture; cat > "$WF/local.yml" <<'YAML' +jobs: + local: + runs-on: ubuntu-latest + steps: + - run: echo ok +YAML +assert_status pass 'zero-uses workflow does not require a fabricated dependency' +fixture; sed -i "s/owner\/shared@v1/owner\/shared@V1/" "$WF/actions.lock" +assert_status fail 'refs remain case-sensitive' +fixture; sed -i "s@.github/workflows/example.yml@.github/workflows/deleted.yml@" "$WF/actions.lock" +assert_status fail 'deleted workflow entry blocks' +echo '15 lock-sync regression controls passed (plus observational byte comparison).' diff --git a/scripts/update-actions-lock.sh b/scripts/update-actions-lock.sh index 72ae4b7..cee189a 100755 --- a/scripts/update-actions-lock.sh +++ b/scripts/update-actions-lock.sh @@ -141,7 +141,7 @@ verify_lock_coverage() { status=$? set -e - if [ -z "$result" ] || ! printf '%s' "$result" | jq -e -s 'length == 1 and (.[0] | type == "object" and .valid != null and (.findings | type == "array"))' >/dev/null 2>&1; then + if [ -z "$result" ] || ! printf '%s' "$result" | jq -e -s 'length == 1 and (.[0] | type == "object" and (.valid | type == "boolean") and (.findings | type == "array"))' >/dev/null 2>&1; then printf '%s\n' "$result" [[ "$status" -ne 0 ]] && return "$status" return 1 @@ -222,8 +222,11 @@ fi # migrating local `./` action paths to an invalid `$/` spelling). Preserve the # post-update state, run verification, then discard verifier-only mutations. snapshot_workflows "$SNAPSHOT/preverify-workflows" +cp "$WF_DIR/actions.lock" "$SNAPSHOT/preverify.lock" verify_lock_coverage restore_workflows "$SNAPSHOT/preverify-workflows" +# --verify-local is observational for the lockfile too, not just YAML. +cp "$SNAPSHOT/preverify.lock" "$WF_DIR/actions.lock" # Neither upstream advisory handling nor its reusable-workflow exception can # waive direct-ref drift, missing dependency records, or a corrupt commit. bash "$(dirname "${BASH_SOURCE[0]}")/check-lock-sync.sh" "$WF_DIR" From a26e8b7157ff9fb1791ef5e64e8fa6d618f28ebf Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 17:03:45 +0000 Subject: [PATCH 05/12] fix(ci): preserve reusable locks atomically and publish four-estate rollout inventory Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- .github/workflows/lock-sync-gate.yml | 3 + docs/CI-CD-REPAIR.adoc | 164 + docs/audits/ci-estate-2026-10-14-summary.json | 46 + docs/audits/ci-estate-2026-10-14.json | 43023 ++++++++++++++++ scripts/annotate-clippy.sh | 5 +- scripts/check-lock-sync.sh | 2 +- scripts/restore-reusable-lock-coverage.sh | 34 + scripts/tests/actions-lock-update-test.sh | 63 + scripts/update-actions-lock.sh | 20 + 9 files changed, 43357 insertions(+), 3 deletions(-) create mode 100644 docs/CI-CD-REPAIR.adoc create mode 100644 docs/audits/ci-estate-2026-10-14-summary.json create mode 100644 docs/audits/ci-estate-2026-10-14.json create mode 100644 scripts/restore-reusable-lock-coverage.sh create mode 100644 scripts/tests/actions-lock-update-test.sh diff --git a/.github/workflows/lock-sync-gate.yml b/.github/workflows/lock-sync-gate.yml index 05be75d..2f43512 100644 --- a/.github/workflows/lock-sync-gate.yml +++ b/.github/workflows/lock-sync-gate.yml @@ -64,3 +64,6 @@ jobs: - name: Exercise lock-sync positive and negative controls run: bash scripts/tests/check-lock-sync-test.sh + + - name: Exercise atomic lock-update controls + run: bash scripts/tests/actions-lock-update-test.sh diff --git a/docs/CI-CD-REPAIR.adoc b/docs/CI-CD-REPAIR.adoc new file mode 100644 index 0000000..63e190e --- /dev/null +++ b/docs/CI-CD-REPAIR.adoc @@ -0,0 +1,164 @@ += CI/CD repair and estate rollout — 2026-10-14 +:toc: + +// SPDX-License-Identifier: MPL-2.0 + +== Scope and status + +Repair PR: https://github.com/hyperpolymath/rpa-elysium/pull/145[#145]. +Original dependency PR: https://github.com/hyperpolymath/rpa-elysium/pull/144[#144] +(merged by the owner during this investigation; its merge into the repair branch +was fast-forwarded locally, not overwritten). + +This is a repair of multiple independent gates, not a CodeQL rollback. +The estate inventory is complete for the *432 repositories exposed by the +current GitHub connection*, across `hyperpolymath`, `metadatastician`, +`Invisible-Door-Studios` and `stuff-of-awe`. +It does not establish visibility of repositories outside that connection. +Estate-wide *code rollout is not complete*. The audit is a rollout inventory, +not evidence that those repositories were changed or their CI became green. + +== Root causes and repairs + +* The workflow YAML and lock already disagreed before #144: the Haskell setup + action used `v2.12.1` while its lock used `v2.12.0`. CodeQL also had inherited + ref drift. The lock now names the actual workflow refs and immutable commits. +* Most workflow files began with a generator management marker. The local + linter required SPDX on the first line and failed 18 workflows. SPDX now + precedes the marker; duplicate markers have been removed. +* The local language policy still banned Deno, contrary to the October 14 + Standards owner ruling. The policy now admits Bun, Deno, pnpm and npm in that + order; the gate was not disabled. +* Governance was pinned to `fad242d35291de1898242d6737ba02b74a59a2f2`. + That version installs a moving lock verifier and does not handle the newer + verifier's no-external-ref/local-action findings. It now pins + `c11c255e1b5546854e874d1486d61d6d5a4da29a`, the upstream #1250 compatibility + fix that deliberately pins `gh-actions-lock v0.2.0`. The corresponding + dependency record and transitive closure were updated together. +* An initial experiment with Standards `80014df...` passed lock verification, + but introduced a new JS-runtime checker whose *build* failed with exit 101, + before checking this repository. The repair deliberately selects the narrower + verifier-compatibility commit above rather than disabling that new gate or + declaring a failed check successful. Diagnosing that separate upstream build + remains outside the validated compatibility rollout. +* Rust 1.99 clippy rejects the redundant `#[must_use]` generated by + `async-trait 0.1.89`. Upstream commit + `875ceecb100bab2cf369178633b4791336d92b75` removes the redundant attribute. + Updating to `async-trait 0.1.92` (and its Syn 3 dependency) fixes the macro + rather than suppressing `double_must_use` or dropping `-D warnings`. +* Changing Cargo dependencies activates the separate Cargo Audit workflow. + Its newly exposed RUSTSEC-2026-0316 finding affects Wasmtime 36.0.15. + Wasmtime and the coordinated Cranelift/Pulley packages now resolve to the + patched 36.0.16 / 0.123.16 releases. Registry checksums were obtained from + the crates.io index; GitHub's locked build and security audit validate the + resulting graph. + +== Preventing recurrence + +`check-lock-sync.sh` reads YAML through mikefarah/yq v4 and compares structured +job/step refs with jq. It no longer uses a GNU-awk line parser. It: + +* handles quoted and flow-style workflows; +* ignores strings inside `run:` bodies; +* folds owner/repository case, but not tag/branch case; +* checks refs in both directions, including job-level reusable calls; +* rejects malformed refs, unsupported lock schemas, invalid dependency + identities, non-immutable commits and dangling transitive edges; +* rejects lock entries for deleted workflow files; +* does not fabricate dependencies for zero-external-ref workflows; +* never modifies the workflows or lockfile. + +Fifteen positive/negative regression controls run in the Lock Sync Gate. +`actions-lock-update-test.sh` additionally verifies observational verification, +rollback, malformed-verdict rejection and reusable-graph preservation. +Neither source code from a PR nor a PR-owned updater is executed under a +privileged `pull_request_target` workflow. There is no new bot write token. + +Update procedure (from the repository root): + +[source,bash] +---- +# Install the deliberate tool version, not a moving release. +gh extension install github/gh-actions-lock --pin v0.2.0 +bash scripts/update-actions-lock.sh +bash scripts/check-lock-sync.sh +bash scripts/tests/check-lock-sync-test.sh +bash scripts/tests/actions-lock-update-test.sh +git diff --check +git diff -- .github/workflows +---- + +If the extension is already installed, check its installed release and replace +it deliberately when necessary; do not assume `extension install` upgrades it. +Requires mikefarah/yq v4, jq, Bash, gh and authenticated access for regeneration. +Verification itself is offline. + +The updater snapshots workflows and lock, rolls back failed updates, discards +verifier-only changes to *both* inputs, retains existing reusable dependency +records, restores exact job-level refs the generator cannot see, and keeps +SPDX first. It runs both upstream verification and structural closure checks. +A *new* reusable ref with no resolved dependency graph remains a failure: the +helper preserves established coverage, it does not invent a new commit or +pretend a missing graph is resolved. Resolve and review those records before +merging a reusable pin change, as was done for this PR. Existing unreferenced +records may be retained; they cannot satisfy a different missing ref. + +`annotate-clippy.sh` keeps clippy's exit status and emits compiler diagnostics +through the Checks API. The extra diagnostic job runs only after Rust CI fails; +it is not a second required build or an exemption for the original failure. + +== Estate scan + +Full findings: `audits/ci-estate-2026-10-14.json`. +Per-owner totals: `audits/ci-estate-2026-10-14-summary.json`. + +[cols="1,1,1,1,1,1"] +|=== +|Owner |Repositories |Lock drift |Missing lock |Header flags |Unexamined/partial +|hyperpolymath |351 |229 |99 |193 |37 +|metadatastician |41 |15 |10 |21 |1 +|Invisible-Door-Studios |29 |14 |13 |10 |1 +|stuff-of-awe |11 |5 |6 |5 |0 +|=== + +Categories overlap; do not add them to count affected repositories. +There were also 7 repositories with dangling edges, 96 with the same Deno +policy text drift, and *43 with the exact outdated governance pin* used here. +The latter includes rpa-elysium's default branch at scan time; 42 other +repositories need that same pin migration if still at that snapshot. + +Method: paginated authenticated `user/repos` inventory with owner and +organization-member affiliation; batched GraphQL reads of each repository's +`HEAD:.github/workflows` and `HEAD:.claude/CLAUDE.md`; strict YAML parsing with +`yaml 2.8.1`; structured job/step ref extraction, normalized lock comparisons, +and dependency-closure checks. Reads were made during this session, not at a +single estate-wide transaction boundary. This is default-branch source analysis, +not a replay of every repository's CI, every PR branch, or every ruleset. + +*429 repositories have workflows.* 39 rows have an `error` field (for example, +duplicate YAML keys, malformed YAML, invalid refs, or files with no jobs map). +Their earlier findings may be partial. They are *unexamined*, not clean. +Missing-lock and SPDX flags are static policy candidates; a repository's actual +required checks and exemptions determine whether each currently blocks merging. +Do not repair every startup failure by blindly copying a lock record. +Repository Administration access was denied (403), so required branch-rule +contexts were not changed or fully audited. + +== Rollout acceptance criteria + +. First repair malformed workflow/lock YAML; do not regenerate from an + ambiguous duplicate-key document. +. For exact-pin consumers, bump governance to the validated compatibility SHA + and resolve its complete dependency record/closure in the same change. +. Normalize headers, fix actual policy drift, and regenerate each repository's + own lock. Do not copy rpa-elysium's complete lock into other repositories. +. Migrate the structural checker and regression controls through Standards and + re-pin consumers; shared fixes do not reach SHA-pinned callers automatically. +. Inspect each repository's actual failed checks. Only upgrade async-trait or + Wasmtime where that package/diagnostic is present; do not mass-edit unrelated + Rust applications or relax their warnings/security gates. +. Run the positive and negative controls and all required checks on each + rollout PR. Track inaccessible or unexamined repositories explicitly. +. Consider a repository propagated only after its change is merged and a + default-branch run proves the required contexts pass. An issue or audit row + alone does *not* satisfy this criterion. diff --git a/docs/audits/ci-estate-2026-10-14-summary.json b/docs/audits/ci-estate-2026-10-14-summary.json new file mode 100644 index 0000000..3e081d7 --- /dev/null +++ b/docs/audits/ci-estate-2026-10-14-summary.json @@ -0,0 +1,46 @@ +[ + { + "owner": "Invisible-Door-Studios", + "scanned": 29, + "workflowRepos": 29, + "lockDriftRepos": 14, + "danglingRepos": 0, + "missingLockRepos": 13, + "headerRepos": 10, + "policyDriftRepos": 5, + "errors": 1 + }, + { + "owner": "hyperpolymath", + "scanned": 351, + "workflowRepos": 350, + "lockDriftRepos": 229, + "danglingRepos": 7, + "missingLockRepos": 99, + "headerRepos": 193, + "policyDriftRepos": 88, + "errors": 37 + }, + { + "owner": "metadatastician", + "scanned": 41, + "workflowRepos": 39, + "lockDriftRepos": 15, + "danglingRepos": 0, + "missingLockRepos": 10, + "headerRepos": 21, + "policyDriftRepos": 3, + "errors": 1 + }, + { + "owner": "stuff-of-awe", + "scanned": 11, + "workflowRepos": 11, + "lockDriftRepos": 5, + "danglingRepos": 0, + "missingLockRepos": 6, + "headerRepos": 5, + "policyDriftRepos": 0, + "errors": 0 + } +] diff --git a/docs/audits/ci-estate-2026-10-14.json b/docs/audits/ci-estate-2026-10-14.json new file mode 100644 index 0000000..be288c5 --- /dev/null +++ b/docs/audits/ci-estate-2026-10-14.json @@ -0,0 +1,43023 @@ +[ + { + "repo": "hyperpolymath/.github", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 4, + "hasLock": true + }, + { + "repo": "hyperpolymath/0patch-lsa-sentinel", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "estate-rules.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "openssf-compliance.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 10, + "hasLock": false + }, + { + "repo": "hyperpolymath/absolute-zero", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.1" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "language-policy.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "publish-container.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@0f13f51fafe9d2b670252aa2a18993223bffdece" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "wiki-sync.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/academic-workflow-suite", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "container-policy.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "language-policy.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/AcceleratorGate.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "standards-pipeline.yml" + } + ], + "workflowCount": 12, + "hasLock": false + }, + { + "repo": "hyperpolymath/accessibility-everywhere", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "php-security.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rescript-deno-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 17, + "hasLock": false + }, + { + "repo": "hyperpolymath/action-trust-layers", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@29b1f65c1f735799893313399435a59f54045865" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 7, + "hasLock": true + }, + { + "repo": "hyperpolymath/aerie", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@e13e2ea3dbbc9c7815e39c3749b4480514f555a6" + ], + "got": [] + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/affinescript", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "affine-vscode-publish.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.1.0", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.0.0", + "actions/upload-artifact@v7.0.1" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "coq-proof-gate.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "governance-baseline-impl.yml" + }, + { + "type": "header", + "file": "governance-baseline.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "panic-attack.yml" + }, + { + "type": "lock-drift", + "file": "panic-attack.yml", + "want": [ + "actions/checkout@v7.0.1", + "dtolnay/rust-toolchain@master", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "dtolnay/rust-toolchain@master" + ] + }, + { + "type": "header", + "file": "publish-jsr.yml" + }, + { + "type": "lock-drift", + "file": "publish-jsr.yml", + "want": [ + "actions/checkout@v7.0.1", + "denoland/setup-deno@22d081ff2d3a40755e97629de92e3bcbfa7cf2ed" + ], + "got": [ + "actions/checkout@v7.0.1", + "denoland/setup-deno@v2.0.5" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "ocaml/setup-ocaml@v3.9.0", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "ocaml/setup-ocaml@v3.8.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "spark-theatre-gate.yml" + }, + { + "type": "lock-drift", + "file": "spark-theatre-gate.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "stdlib-naming.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 24, + "hasLock": true + }, + { + "repo": "hyperpolymath/affinescript-vite", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@v4.3.1", + "hyperpolymath/deed-ecosystem@aa4b836bd969df2bc58128cb8e3d20bbc88d5e79", + "hyperpolymath/k9-ecosystem@main" + ], + "got": [ + "actions/checkout@v4.3.1", + "hyperpolymath/deed-ecosystem@main", + "hyperpolymath/k9-ecosystem@main" + ] + }, + { + "type": "header", + "file": "e2e.yml" + } + ], + "workflowCount": 17, + "hasLock": true, + "error": "no jobs map" + }, + { + "repo": "hyperpolymath/affinescriptiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/aggregate-library", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 10, + "hasLock": true + }, + { + "repo": "hyperpolymath/alloyiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/ambientops", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "cargo-fmt-fix.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "guix-nix-policy.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "quality.yml" + }, + { + "type": "missing-lock", + "file": "runtime-policy.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "security-policy.yml" + }, + { + "type": "missing-lock", + "file": "security-scan.yml" + }, + { + "type": "missing-lock", + "file": "wellknown-enforcement.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 22, + "hasLock": false + }, + { + "repo": "hyperpolymath/anamnesis", + "archived": false, + "fork": false, + "findings": [ + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 17, + "error": "Map keys must be unique at line 93, column 9:\n\n - 'hyperpolymath/k9-ecosystem@main'\n ref: 'main'\n ^\n" + }, + { + "repo": "hyperpolymath/anvomidav", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 10, + "hasLock": true + }, + { + "repo": "hyperpolymath/anvomidaviser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + } + ], + "workflowCount": 18, + "hasLock": true, + "error": "Map keys must be unique at line 126, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/anytype", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "container-build.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "e2e.yml" + }, + { + "type": "missing-lock", + "file": "estate-rules.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "guix-policy.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "idris2-proof.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "openssf-compliance.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "quality.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "rhodibot.yml" + }, + { + "type": "missing-lock", + "file": "runtime-policy.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "security-policy.yml" + }, + { + "type": "missing-lock", + "file": "sonarqube.yml" + }, + { + "type": "missing-lock", + "file": "static-analysis-gate.yml" + }, + { + "type": "missing-lock", + "file": "wellknown-enforcement.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 30, + "hasLock": false + }, + { + "repo": "hyperpolymath/arghda-core", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "hyperpolymath/asdf-tool-plugins", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/aspasia", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.1", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.1", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/atsiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/autoformal-fidelity", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "proofs.yml", + "want": [ + "actions/checkout@v6.0.3" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 36, + "hasLock": true + }, + { + "repo": "hyperpolymath/Axiology.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/Axiom.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "Documentation.yml" + }, + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "creusot.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "estate-rules.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "julia-test.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "static-analysis-gate.yml" + }, + { + "type": "missing-lock", + "file": "wellknown-enforcement.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 22, + "hasLock": false + }, + { + "repo": "hyperpolymath/bebop-ffi", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/betlang", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "comprehensive-quality.yml" + }, + { + "type": "lock-drift", + "file": "comprehensive-quality.yml", + "want": [ + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@v3.99.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@v3.97.5" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + } + ], + "workflowCount": 20, + "hasLock": true, + "error": "Map keys must be unique at line 42, column 9:\n\n toolchain: (was misnamed dtolnay/rust-action)\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/betlangiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/bgp-backbone-lab", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/bitfuckit", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/upload-artifact@v7.0.1", + "github/codeql-action@v4.38.2", + "actions/github-script@v9.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/github-script@v9.0.0", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "publish-container.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "actions/checkout@v7.0.1", + "ossf/scorecard-action@v2.4.4", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0", + "ossf/scorecard-action@v2.4.4" + ] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 12, + "hasLock": true + }, + { + "repo": "hyperpolymath/blocky-writer", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/bofig", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "elixir-ci.yml", + "want": [ + "hyperpolymath/standards@d7b85cac57eb16edf51508d6f30806e86d63c9d3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/bofj-kitt", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/boinc-boinc", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8", + "slsa-framework/slsa-github-generator@68bad40844440577b33778c9f29077a3388838e9" + ], + "got": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/boj-server", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-drift.yml" + }, + { + "type": "header", + "file": "backend-assurance.yml" + }, + { + "type": "header", + "file": "build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "container-publish.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "fuzz.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@5a0891e9e58b785181a92e141505ca96ca987b42" + ], + "got": [] + }, + { + "type": "header", + "file": "hcg-surface-drift.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "lsp-dap-bsp.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages-deploy.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "publish.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "readme-derive.yml" + }, + { + "type": "lock-drift", + "file": "readme-derive.yml", + "want": [ + "hyperpolymath/standards@5a0891e9e58b785181a92e141505ca96ca987b42" + ], + "got": [] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.2", + "mlugg/setup-zig@v2.2.1", + "actions/upload-artifact@v4.6.2", + "actions/download-artifact@v4.2.1", + "softprops/action-gh-release@v2.6.2", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.2", + "actions/download-artifact@v4.2.1", + "actions/upload-artifact@v4.6.2", + "mlugg/setup-zig@v2.2.1", + "softprops/action-gh-release@v2.6.2" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "truthfulness.yml" + }, + { + "type": "header", + "file": "zig-test.yml" + } + ], + "workflowCount": 27, + "hasLock": true + }, + { + "repo": "hyperpolymath/boj-server-cartridges", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build.yml" + }, + { + "type": "header", + "file": "cartridge-schema.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "foundry.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages-deploy.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "zig-test.yml" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/BowtieRisk.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "julia-ci.yml" + }, + { + "type": "missing-lock", + "file": "julia-docs.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "tmp-format-apply.yml" + } + ], + "workflowCount": 17, + "hasLock": false + }, + { + "repo": "hyperpolymath/bqniser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "lock-drift", + "file": "abi-ffi-gate.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [ + "actions/checkout@v4.4.0" + ] + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/branch-newspaper", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/bunsenite", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@v6.0.1", + "slsa-framework/slsa-github-generator@68bad40844440577b33778c9f29077a3388838e9" + ], + "got": [ + "actions/checkout@v6.0.1" + ] + }, + { + "type": "header", + "file": "ghcr-publish.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "publish-aur.yml" + }, + { + "type": "header", + "file": "publish-chocolatey.yml" + }, + { + "type": "header", + "file": "publish-container.yml" + }, + { + "type": "header", + "file": "publish-copr.yml" + }, + { + "type": "header", + "file": "publish-debian-ppa.yml" + }, + { + "type": "header", + "file": "publish-flatpak.yml" + }, + { + "type": "header", + "file": "publish-homebrew.yml" + }, + { + "type": "header", + "file": "publish-macports.yml" + }, + { + "type": "header", + "file": "publish-nixpkgs.yml" + }, + { + "type": "header", + "file": "publish-obs.yml" + }, + { + "type": "header", + "file": "publish-packages.yml" + }, + { + "type": "header", + "file": "publish-scoop.yml" + }, + { + "type": "header", + "file": "publish-winget.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "stress-test.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "header", + "file": "zig-ffi.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 38, + "hasLock": true + }, + { + "repo": "hyperpolymath/cafescripto", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/upload-artifact@v7.0.2", + "github/codeql-action@v4.38.2", + "actions/github-script@v9.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/github-script@v9.0.0", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@v3.99.0", + "gitleaks/gitleaks-action@v3.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "gitleaks/gitleaks-action@v3.0.0", + "trufflesecurity/trufflehog@v3.97.5" + ] + } + ], + "workflowCount": 10, + "hasLock": true + }, + { + "repo": "hyperpolymath/candy-crash", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/cargo-zigbuild", + "archived": false, + "fork": true, + "findings": [ + { + "type": "lock-drift", + "file": "CI.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "dtolnay/rust-toolchain@6bed0761d98439e5a578e2877258200ad565ba87", + "jlumbroso/free-disk-space@36e9a5af4eddb91fc11aec4c6f6f79b3cc0cb523", + "mozilla-actions/sccache-action@fc920bf0ec8de6ee65d409111f7ec508035751ba", + "dtolnay/rust-toolchain@02cb101ec7c40f2c49e1d9714d64511d8e1b74de", + "mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29", + "kylemayes/install-llvm-action@ebc0426251bc40c7cd31162802432c68818ab8f0", + "taiki-e/install-action@4cef1412cce204788f482e778a0b9187f9626a29", + "codespell-project/actions-codespell@02dddb342731ef97c88b2c2f7e0703bb49610f36" + ], + "got": [ + "actions/checkout@v7.0.1", + "codespell-project/actions-codespell@master", + "dtolnay/rust-toolchain@master", + "dtolnay/rust-toolchain@stable", + "jlumbroso/free-disk-space@main", + "kylemayes/install-llvm-action@v2.0.9", + "mlugg/setup-zig@v2.2.1", + "mozilla-actions/sccache-action@v0.0.11", + "taiki-e/install-action@v2.85.4" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.37.3" + ] + }, + { + "type": "lock-drift", + "file": "docker.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "docker/metadata-action@dc802804100637a589fabce1cb79ff13a1411302", + "docker/setup-qemu-action@99012661954931238ded8c8b007157a8430204e1", + "docker/setup-buildx-action@f87e5991a6d7451dcb8d9637bfbc97413f497069", + "docker/login-action@dbcb813823bdd20940b903addbd779551569679f", + "docker/build-push-action@c3c9e263c25d99ce0380d002d59b67737d91b0dc", + "peter-evans/dockerhub-description@1b9a80c056b620d92cedb9d9b5a223409c68ddfa" + ], + "got": [ + "actions/checkout@v7.0.1", + "docker/build-push-action@v7.3.0", + "docker/login-action@v4.6.0", + "docker/metadata-action@v6.2.0", + "docker/setup-buildx-action@v4.3.0", + "docker/setup-qemu-action@v4.2.0", + "peter-evans/dockerhub-description@v5.0.0" + ] + }, + { + "type": "lock-drift", + "file": "pypi.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "dtolnay/rust-toolchain@6bed0761d98439e5a578e2877258200ad565ba87", + "pyo3/maturin-action@e83996d129638aa358a18fbd1dfb82f0b0fb5d3b", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97", + "pyo3/maturin-action@f0a989e78b427215a87ce3021f5a90507cae75fb", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c", + "astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/setup-python@v7.0.0", + "actions/upload-artifact@v7.0.1", + "astral-sh/setup-uv@v7.6.0", + "dtolnay/rust-toolchain@stable", + "pyo3/maturin-action@main", + "pyo3/maturin-action@v1.51.0" + ] + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "swatinem/rust-cache@v2.9.2" + ] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "hyperpolymath/casket-ssg", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "casket-ci.yml" + }, + { + "type": "lock-drift", + "file": "casket-ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/upload-artifact@v7.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependency-review.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "license-compliance.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "sbom.yml" + }, + { + "type": "lock-drift", + "file": "sbom.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "haskell-actions/setup@v2.12.0", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/Causals.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "CI.yml" + }, + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/cccp", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/chapeliser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@469605210e767ee94d1c7a9c13cb6a1d0a78cad1" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@469605210e767ee94d1c7a9c13cb6a1d0a78cad1" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "provable.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/checky-monkey", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "haskell-actions/setup@6037f33647c3f17758a2356c80fc4a53d7e0685d" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/chimichanga", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/choreographic-types", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "hyperpolymath/cicd-suite@376898bbe872226866ccbc7648d43123b8bb21b9" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@main" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + } + ], + "workflowCount": 9, + "hasLock": true + }, + { + "repo": "hyperpolymath/cicd-squabbler", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333", + "actions/attest-build-provenance@4d101475d8b20a2381f78447822ac1eab6504dd8", + "softprops/action-gh-release@efb35369e0ad2afab669f228072c1b0d510eae64" + ], + "got": [ + "actions/attest-build-provenance@4d101475d8b20a2381f78447822ac1eab6504dd8", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772", + "softprops/action-gh-release@efb35369e0ad2afab669f228072c1b0d510eae64" + ] + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + } + ], + "workflowCount": 30, + "hasLock": true + }, + { + "repo": "hyperpolymath/cicd-suite", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "code-hygiene-self-test.yml" + } + ], + "workflowCount": 10, + "hasLock": true, + "error": "invalid uses $/actions/manifest-check" + }, + { + "repo": "hyperpolymath/civic-connect", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/Cladistics.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/claude-gecko-browser-extension", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 10, + "hasLock": false + }, + { + "repo": "hyperpolymath/claude-integrations", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "hyperpolymath/Cliodynamics.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "CI.yml" + }, + { + "type": "lock-drift", + "file": "CI.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3.4.0", + "julia-actions/julia-buildpkg@v1.7.0", + "julia-actions/julia-runtest@v1.12.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v3.3.0", + "julia-actions/julia-buildpkg@v1.7.0", + "julia-actions/julia-runtest@v1.12.0", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "CompatHelper.yml" + }, + { + "type": "header", + "file": "Documenter.yml" + }, + { + "type": "lock-drift", + "file": "Documenter.yml", + "want": [ + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1", + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3.4.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v3.3.0", + "julia-actions/setup-julia@v3.0.2", + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1" + ] + }, + { + "type": "header", + "file": "TagBot.yml" + }, + { + "type": "lock-drift", + "file": "TagBot.yml", + "want": [ + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1", + "juliaregistries/tagbot@v1.25.12" + ], + "got": [ + "juliaregistries/tagbot@v1.25.11", + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1" + ] + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.0", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@257869d3061d5a8ed1529bf34225d90a2416d51a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1", + "actions/checkout@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/upload-artifact@v7.0.1", + "github/codeql-action@v4.38.2", + "actions/github-script@v9.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/github-script@v9.0.0", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "github/codeql-action@v4.38.0", + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1" + ] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "hyperpolymath/cicd-suite@b2a8507bc4b45b32f46bd68ee5ae1e1c5d28090f" + ], + "got": [] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1", + "dawidd6/action-send-mail@v22" + ], + "got": [ + "dawidd6/action-send-mail@v3.12.0", + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@d200ddcafb7f7336b0ae0353ea1504153876d6f2" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@619713b3aa1bbaaca174387537a9b089f728f9b9" + ], + "got": [] + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/Cliometrics.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.0", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3.4.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v3.3.0", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@257869d3061d5a8ed1529bf34225d90a2416d51a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1", + "actions/checkout@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/upload-artifact@v7.0.1", + "github/codeql-action@v4.38.2", + "actions/github-script@v9.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/github-script@v9.0.0", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "github/codeql-action@v4.38.0", + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1" + ] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1", + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0", + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@d200ddcafb7f7336b0ae0353ea1504153876d6f2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.37.9", + "ossf/scorecard-action@v2.4.4" + ] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@619713b3aa1bbaaca174387537a9b089f728f9b9" + ], + "got": [] + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/cloud-sync-tuner", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/cloudflare-dns-terraform", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d", + "actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/cloudguard-cli", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b" + ] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/cloudguard-server", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + } + ], + "workflowCount": 17, + "hasLock": false, + "error": "Implicit keys need to be on a single line at line 398, column 1:\n\n |-------------|--------|-------|\n| DEED manifest (`*.a2ml` or `*.deed`) | ${DEED_STATUS} | Required for all RSR …\n^\n" + }, + { + "repo": "hyperpolymath/CompositionalCounts.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + } + ], + "workflowCount": 1, + "hasLock": false + }, + { + "repo": "hyperpolymath/CompositionalDA.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + } + ], + "workflowCount": 1, + "hasLock": false + }, + { + "repo": "hyperpolymath/conative-gating", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "arbiter-ci.yml" + }, + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "cargo-audit.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "cflite_batch.yml" + }, + { + "type": "missing-lock", + "file": "cflite_pr.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "language-guard.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "slm-real-inference.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 24, + "hasLock": false + }, + { + "repo": "hyperpolymath/conflow", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@v4.3.1", + "slsa-framework/slsa-github-generator@68bad40844440577b33778c9f29077a3388838e9" + ], + "got": [ + "actions/checkout@v4.3.1" + ] + }, + { + "type": "header", + "file": "ghcr-publish.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 22, + "hasLock": true + }, + { + "repo": "hyperpolymath/continuation-mesh", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "owned-ci.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + } + ], + "workflowCount": 7, + "hasLock": true + }, + { + "repo": "hyperpolymath/contractiles", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 25, + "hasLock": true + }, + { + "repo": "hyperpolymath/ContrastFamilies.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + } + ], + "workflowCount": 1, + "hasLock": false + }, + { + "repo": "hyperpolymath/cookie-rebound", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/coord-tui", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 7, + "hasLock": true + }, + { + "repo": "hyperpolymath/CoprocessorRuntime.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "julia-ci.yml" + }, + { + "type": "lock-drift", + "file": "julia-ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v2", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.2" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 36, + "hasLock": true + }, + { + "repo": "hyperpolymath/coq-jr", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "security-checks.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/cyo", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 7, + "hasLock": true + }, + { + "repo": "hyperpolymath/czech-file-knife", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.2" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/dafniser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/ddraig-ssg", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "standards-pipeline.yml" + } + ], + "workflowCount": 7, + "hasLock": false + }, + { + "repo": "hyperpolymath/deed-core", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "6scm-sync.yml" + }, + { + "type": "missing-lock", + "file": "6scm-sync.yml" + }, + { + "type": "missing-lock", + "file": "a2ml-validation.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "contractiles-a2ml.yml" + }, + { + "type": "missing-lock", + "file": "contractiles-a2ml.yml" + }, + { + "type": "missing-lock", + "file": "deed-conformance.yml" + }, + { + "type": "missing-lock", + "file": "fuzzing.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "idris2-tests.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "rescript-tests.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 13, + "hasLock": false + }, + { + "repo": "hyperpolymath/deed-ecosystem", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "anchor-drift.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "deed-read.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 7, + "hasLock": false + }, + { + "repo": "hyperpolymath/deed-validate-action", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "hyperpolymath/standards@210f14e753c80064ec1bcae72f1d654dd9b0e687" + ], + "got": [] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@210f14e753c80064ec1bcae72f1d654dd9b0e687" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@210f14e753c80064ec1bcae72f1d654dd9b0e687" + ], + "got": [] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@210f14e753c80064ec1bcae72f1d654dd9b0e687" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard-enforcer.yml" + }, + { + "type": "lock-drift", + "file": "scorecard-enforcer.yml", + "want": [ + "hyperpolymath/standards@210f14e753c80064ec1bcae72f1d654dd9b0e687" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@210f14e753c80064ec1bcae72f1d654dd9b0e687" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@210f14e753c80064ec1bcae72f1d654dd9b0e687" + ], + "got": [] + }, + { + "type": "header", + "file": "self-test.yml" + } + ], + "workflowCount": 12, + "hasLock": true, + "error": "invalid uses $/" + }, + { + "repo": "hyperpolymath/defiant", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@b77c53c85e5734756a793497845735485c9dc933" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/developer-ecosystem", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@5b5dab9fb89c0ab7187ddc334d8995bd24392e41" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/dictask", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.2" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/dicti0nary-attack", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@412a7031577112b31ee287cc6060179d638d6500" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/docmatrix", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555", + "dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "dtolnay/rust-toolchain@02cb101ec7c40f2c49e1d9714d64511d8e1b74de", + "webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555" + ] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@412a7031577112b31ee287cc6060179d638d6500" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/docudactyl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hpc-ci.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9" + ], + "got": [ + "actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29" + ] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/dotmatrix-fileprinter", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/double-track-browser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@c59f24f76e02a8d4ecd2aea4309d185d7ed13128" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@c59f24f76e02a8d4ecd2aea4309d185d7ed13128" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "makefile-blocker.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@c59f24f76e02a8d4ecd2aea4309d185d7ed13128" + ], + "got": [] + }, + { + "type": "header", + "file": "rescript-deno-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@c59f24f76e02a8d4ecd2aea4309d185d7ed13128" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c59f24f76e02a8d4ecd2aea4309d185d7ed13128" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/echidna", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "agda-meta-checker.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "bridge-gate.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "chapel-ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "container-ci.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-proofs-ci.yml" + }, + { + "type": "header", + "file": "formal-verification.yml" + }, + { + "type": "header", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@v7.0.1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "header", + "file": "ghcr-publish.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "idris2-abi-ci.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "live-provers.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "mvp-smoke.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proof-safety.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "s4-loop.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-scan.yml" + }, + { + "type": "lock-drift", + "file": "security-scan.yml", + "want": [ + "hyperpolymath/panic-attack@b689a74d2762a1c19839ae3fbd59b7fe5ef920ea" + ], + "got": [] + }, + { + "type": "header", + "file": "server-boot-gate.yml" + }, + { + "type": "header", + "file": "spark-theatre-gate.yml" + }, + { + "type": "lock-drift", + "file": "spark-theatre-gate.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "verification-proofs-cron.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "header", + "file": "zig-ffi-ci.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/echidnabot", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "container.yml" + }, + { + "type": "header", + "file": "db-checks.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docs.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "echidnabot.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "proof-safety.yml" + }, + { + "type": "header", + "file": "publish.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@412a7031577112b31ee287cc6060179d638d6500" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "stress-test.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 29, + "hasLock": true + }, + { + "repo": "hyperpolymath/echo-types", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "agda.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.1" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/upload-artifact@v7.0.2", + "github/codeql-action@v4.38.2", + "actions/github-script@v9.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/github-script@v9.0.0", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "github/codeql-action@v4.38.1" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/EchoTypes.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 5, + "hasLock": false + }, + { + "repo": "hyperpolymath/eclexia", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "bench.yml" + }, + { + "type": "lock-drift", + "file": "bench.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1" + ] + }, + { + "type": "header", + "file": "build.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "maintenance-fix.yml" + }, + { + "type": "lock-drift", + "file": "maintenance-fix.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1" + ] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "verify-coq-proofs.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "dangling", + "ref": "editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393" + }, + { + "type": "dangling", + "ref": "github/codeql-action@cdf488f595d80d6e07e03d4674febd5ab45fa938" + }, + { + "type": "dangling", + "ref": "goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406" + }, + { + "type": "dangling", + "ref": "Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/eclexiaiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/empty-linter", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/ensaid-spec", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 10, + "hasLock": false + }, + { + "repo": "hyperpolymath/ephapax", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-verify.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "header", + "file": "coq-build.yml" + }, + { + "type": "header", + "file": "ffi-seams.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + } + ], + "workflowCount": 16, + "hasLock": true, + "error": "Map keys must be unique at line 55, column 9:\n\n toolchain: v1\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/ephapaxiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/epistemic-types", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "agda.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@a26cc7479b14cdf70433919bfc228625f1c5c6f2" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 7, + "hasLock": true + }, + { + "repo": "hyperpolymath/EpistemicTypes.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "lock-drift", + "file": "build-notification.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "lock-drift", + "file": "deed-validate.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/deed-ecosystem@main" + ], + "got": [] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "lock-drift", + "file": "dependabot-automerge.yml", + "want": [ + "dependabot/fetch-metadata@v3.1.0" + ], + "got": [] + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "lock-drift", + "file": "docker-build.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/deed-ecosystem@main", + "hyperpolymath/k9-ecosystem@main", + "erlef/setup-beam@v1.24.1" + ], + "got": [] + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "lock-drift", + "file": "dogfood-summary.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "lock-drift", + "file": "dot-wellknown-enforcement.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "lock-drift", + "file": "eclexiaiser-validate.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "lock-drift", + "file": "empty-linter.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "lock-drift", + "file": "estate-rules.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "lock-drift", + "file": "groove-check.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "lock-drift", + "file": "guix-policy.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "julia-ci.yml" + }, + { + "type": "lock-drift", + "file": "julia-ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v2", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "julia-docs.yml" + }, + { + "type": "lock-drift", + "file": "julia-docs.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3", + "julia-actions/julia-buildpkg@v1", + "julia-actions/julia-docdeploy@v1" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v2", + "julia-actions/julia-buildpkg@v1", + "julia-actions/julia-docdeploy@v1", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "lock-drift", + "file": "k9-validate.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/k9-ecosystem@main" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "hyperpolymath/cicd-suite@55556cf5ba71ba744695861503c13148d3915a5d" + ], + "got": [] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "lock-drift", + "file": "ossf-best-practices.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "lock-drift", + "file": "quality.yml", + "want": [ + "actions/checkout@v7.0.1", + "editorconfig-checker/action-editorconfig-checker@v3.0.0" + ], + "got": [] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [] + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "lock-drift", + "file": "rsr-compliance-canary.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "lock-drift", + "file": "runtime-policy.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "lock-drift", + "file": "security-policy.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "lock-drift", + "file": "workflow-linter.yml", + "want": [ + "actions/checkout@v7.0.1", + "oven-sh/setup-bun@v2.2.0" + ], + "got": [] + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "julia-actions/cache@v2" + }, + { + "type": "dangling", + "ref": "julia-actions/setup-julia@v3.0.2" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "julia-actions/cache@v2" + }, + { + "type": "dangling", + "ref": "julia-actions/julia-buildpkg@v1" + }, + { + "type": "dangling", + "ref": "julia-actions/julia-docdeploy@v1" + }, + { + "type": "dangling", + "ref": "julia-actions/setup-julia@v3.0.2" + } + ], + "workflowCount": 37, + "hasLock": true + }, + { + "repo": "hyperpolymath/error-lang", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "affinescript-check.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/ExactCounts.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + } + ], + "workflowCount": 1, + "hasLock": false + }, + { + "repo": "hyperpolymath/ExactTests.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + } + ], + "workflowCount": 1, + "hasLock": false + }, + { + "repo": "hyperpolymath/excel-economic-numbers-tool", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 19, + "hasLock": true, + "error": "Map keys must be unique at line 17, column 5:\n\n secrets: inherit\n secrets: inherit\n ^\n" + }, + { + "repo": "hyperpolymath/Exnovation.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "k9-svc-validation.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/explicit-trust-plane", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/explore", + "archived": false, + "fork": true, + "findings": [ + { + "type": "header", + "file": "collections-renames.yml" + }, + { + "type": "missing-lock", + "file": "collections-renames.yml" + }, + { + "type": "header", + "file": "conflict.yml" + }, + { + "type": "missing-lock", + "file": "conflict.yml" + }, + { + "type": "header", + "file": "explore-triage-commenter.yml" + }, + { + "type": "missing-lock", + "file": "explore-triage-commenter.yml" + }, + { + "type": "header", + "file": "jekyll_build.yml" + }, + { + "type": "missing-lock", + "file": "jekyll_build.yml" + }, + { + "type": "header", + "file": "lint.yml" + } + ], + "workflowCount": 8, + "hasLock": false, + "error": "no jobs map" + }, + { + "repo": "hyperpolymath/feedback-o-tron", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "trufflesecurity/trufflehog@4dd8831c5f12599465d4d45c3c447b4018a34c85" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "trufflesecurity/trufflehog@4dd8831c5f12599465d4d45c3c447b4018a34c85" + ] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/ffmpeg-ffi", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "boj-build.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5" + ] + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7", + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128", + "actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b", + "haskell-actions/setup@f9150cb1d140e9a9271700670baa38991e6fa25c" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "github/codeql-action@c6f931105cb2c34c8f901cc885ba1e2e259cf745" + ] + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "hyperpolymath/deed-ecosystem@aa4b836bd969df2bc58128cb8e3d20bbc88d5e79", + "hyperpolymath/k9-ecosystem@89f3c2702f4f650a92aa7411502f38da06abd562" + ], + "got": [ + "actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5", + "hyperpolymath/deed-ecosystem@aa4b836bd969df2bc58128cb8e3d20bbc88d5e79", + "hyperpolymath/k9-ecosystem@89f3c2702f4f650a92aa7411502f38da06abd562" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/filesoup", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "cargo-audit.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 20, + "hasLock": false + }, + { + "repo": "hyperpolymath/fireflag", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "container-build.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "selur-secrets.yml" + }, + { + "type": "missing-lock", + "file": "svalin-scan.yml" + }, + { + "type": "missing-lock", + "file": "update-flag-database.yml" + }, + { + "type": "missing-lock", + "file": "vordr-verify.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 21, + "hasLock": false + }, + { + "repo": "hyperpolymath/firmboot", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "secrets.yml" + }, + { + "type": "lock-drift", + "file": "secrets.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "security.yml" + }, + { + "type": "header", + "file": "verify.yml" + } + ], + "workflowCount": 3, + "hasLock": true + }, + { + "repo": "hyperpolymath/FirmwareAudit.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/flat-mate", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "lock-drift", + "file": "boj-build.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [ + "actions/checkout@v6.0.2" + ] + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v4.3.0", + "actions/checkout@v4.1.1", + "actions/configure-pages@v5.0.0", + "actions/deploy-pages@v4.0.5", + "actions/upload-pages-artifact@v3.0.1", + "haskell-actions/setup@v2.7.5" + ] + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "denoland/setup-deno@v2.0.5" + ], + "got": [ + "actions/checkout@v6.0.2", + "denoland/setup-deno@v2.0.4" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v4.1.1", + "github/codeql-action@v3.37.3" + ] + }, + { + "type": "header", + "file": "forge-mirror.yml" + }, + { + "type": "lock-drift", + "file": "forge-mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "governance-gate.yml" + }, + { + "type": "lock-drift", + "file": "governance-gate.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync-dispatch.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.2.0" + ] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "orphan-workflow", + "file": ".github/workflows/secret-scan.yml" + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/flatracoon", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 10, + "hasLock": false + }, + { + "repo": "hyperpolymath/formatrix-docs", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "boj-build.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd" + ] + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7", + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b", + "actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e", + "actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b", + "haskell-actions/setup@f9150cb1d140e9a9271700670baa38991e6fa25c" + ] + }, + { + "type": "lock-drift", + "file": "cflite_batch.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "github/codeql-action@c6f931105cb2c34c8f901cc885ba1e2e259cf745", + "google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1" + ] + }, + { + "type": "lock-drift", + "file": "cflite_pr.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "github/codeql-action@c6f931105cb2c34c8f901cc885ba1e2e259cf745", + "google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "github/codeql-action@c6f931105cb2c34c8f901cc885ba1e2e259cf745" + ] + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "hyperpolymath/deed-ecosystem@aa4b836bd969df2bc58128cb8e3d20bbc88d5e79", + "hyperpolymath/k9-ecosystem@89f3c2702f4f650a92aa7411502f38da06abd562" + ], + "got": [ + "actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5", + "hyperpolymath/deed-ecosystem@aa4b836bd969df2bc58128cb8e3d20bbc88d5e79", + "hyperpolymath/k9-ecosystem@89f3c2702f4f650a92aa7411502f38da06abd562" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d", + "actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "erlef/setup-beam@fc68ffb90438ef2936bbb3251622353b3dcb2f93", + "github/codeql-action@0d579ffd059c29b07949a3cce3983f0780820c98" + ] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555", + "dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "dtolnay/rust-toolchain@efa25f7f19611383d5b0ccf2d1c8914531636bf9", + "webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555" + ] + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/checkout@11d5960a326750d5838078e36cf38b85af677262", + "actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e", + "actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa" + ] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7" + ] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@412a7031577112b31ee287cc6060179d638d6500" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/fraying-model-computational-testbed", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [ + "actions/checkout@v6.0.2", + "dtolnay/rust-toolchain@master", + "webfactory/ssh-agent@v0.9.1" + ] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + } + ], + "workflowCount": 19, + "hasLock": true, + "error": "Map keys must be unique at line 149, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/futharkiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/git-reticulator", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@eafcfbb5933dde8b42fdbd61483794bb75fb4c97", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "spark-theatre-gate.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/git-scripts", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@a8f7249c3c5aef1ed6dfa16e637f13dfde815464", + "actions/checkout@v7.0.1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "hyperpolymath/cicd-suite@feat/cicd-workflow-call" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@1f3eef621985b2dd0e7e2d3ac265c0f0ba6b0a78" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 9, + "hasLock": true + }, + { + "repo": "hyperpolymath/gitbot-fleet", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-dispatch-intake.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "inbox-steward.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "learning-loop.yml" + }, + { + "type": "header", + "file": "lock-sync-gate.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "panicbot-sweep.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "repo-integrity-guard.yml" + }, + { + "type": "header", + "file": "rust.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "supervised-fleet-scan.yml" + }, + { + "type": "header", + "file": "vendored-bot-drift.yml" + } + ], + "workflowCount": 24, + "hasLock": true + }, + { + "repo": "hyperpolymath/glyphbase", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deploy-site.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/gnpl", + "archived": false, + "fork": false, + "findings": [], + "workflowCount": 10, + "error": "Map keys must be unique at line 140, column 5:\n\n commit: 'sha1-55cc8345863c7cc4c66a329aec7e433d2d1c52a9'\n 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1':\n ^\n" + }, + { + "repo": "hyperpolymath/grim-repo", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/gsbot", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 5, + "hasLock": false + }, + { + "repo": "hyperpolymath/gv-clade-index", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "wiki-sync.yml" + }, + { + "type": "header", + "file": "worker-ci.yml" + }, + { + "type": "header", + "file": "worker-deploy.yml" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/HackenbushGames.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/haec", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.37.9" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "trope-check.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 25, + "hasLock": true + }, + { + "repo": "hyperpolymath/halideiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@469605210e767ee94d1c7a9c13cb6a1d0a78cad1" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@469605210e767ee94d1c7a9c13cb6a1d0a78cad1" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/HardwareResilience.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/hermeneia", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.37.9" + ] + }, + { + "type": "lock-drift", + "file": "container-build.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "dependabot-automerge.yml", + "want": [ + "dependabot/fetch-metadata@25dd0e34f4fe68f24cc83900b1fe3fe149efef98" + ], + "got": [ + "dependabot/fetch-metadata@v3.1.0" + ] + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "e2e.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "estate-rules.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "guix-policy.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "instant-sync.yml", + "want": [ + "peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697" + ], + "got": [ + "peter-evans/repository-dispatch@v4.0.1" + ] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "openssf-compliance.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0" + ] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.2.0" + ] + }, + { + "type": "lock-drift", + "file": "quality.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393" + ], + "got": [ + "actions/checkout@v7.0.1", + "editorconfig-checker/action-editorconfig-checker@v3.0.0" + ] + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "softprops/action-gh-release@efb35369e0ad2afab669f228072c1b0d510eae64", + "actions/attest-build-provenance@4d101475d8b20a2381f78447822ac1eab6504dd8" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "lock-drift", + "file": "rhodibot.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "runtime-policy.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "security-policy.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "slice.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "dtolnay/rust-toolchain@4360b52568e2003a75bf9bc1d59f33a8e3fc893c" + ], + "got": [ + "actions/checkout@v7.0.1", + "dtolnay/rust-toolchain@stable" + ] + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "sonarsource/sonarqube-scan-action@d209202bc7d53ff1cc128f7f907dac145c9d6ae9" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.1" + ] + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "lock-drift", + "file": "wellknown-enforcement.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "lock-drift", + "file": "workflow-linter.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + } + ], + "workflowCount": 29, + "hasLock": true + }, + { + "repo": "hyperpolymath/heron-polyfeed-reader", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/hesiod-dns-map", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/heterogenous-mobile-computing", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@v7.0.1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "rust.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/homebrew-tap", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 9, + "hasLock": false + }, + { + "repo": "hyperpolymath/hpm-crypto-rsr", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "zig-test.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "hyperpolymath/hpm-github-api-rsr", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 4, + "hasLock": false + }, + { + "repo": "hyperpolymath/hpm-http-client-rsr", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 4, + "hasLock": false + }, + { + "repo": "hyperpolymath/hpm-json-rsr", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 4, + "hasLock": false + }, + { + "repo": "hyperpolymath/http-capability-gateway", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/hybrid-automation-router", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "coverage.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@6b38eb50104901e2fec80f9455a972bc3eced813" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "spark-theatre-gate.yml" + }, + { + "type": "lock-drift", + "file": "spark-theatre-gate.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 23, + "hasLock": true + }, + { + "repo": "hyperpolymath/hypatia", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-codegen-drift.yml" + }, + { + "type": "header", + "file": "bridge-gate.yml" + }, + { + "type": "header", + "file": "build-gossamer-gui.yml" + }, + { + "type": "header", + "file": "ci-health-sweep.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "clusterfuzzlite.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "escript-soundness.yml" + }, + { + "type": "header", + "file": "estate-rescan.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-remediation-sweep.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "inbox-steward-intake.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "language-blockers.yml" + }, + { + "type": "header", + "file": "merge-orchestrate.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@2479cf769ed5f0481ccf64860a2ab954514c2b59" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "roadmap-sync.yml" + }, + { + "type": "header", + "file": "rust.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "tests.yml" + }, + { + "type": "header", + "file": "verify-proofs.yml" + }, + { + "type": "header", + "file": "zig.yml" + } + ], + "workflowCount": 32, + "hasLock": true + }, + { + "repo": "hyperpolymath/hyperpolymath", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@a26cc7479b14cdf70433919bfc228625f1c5c6f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "readme-derive.yml" + }, + { + "type": "lock-drift", + "file": "readme-derive.yml", + "want": [ + "hyperpolymath/standards@a8f7249c3c5aef1ed6dfa16e637f13dfde815464" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/hyperpolymath.github.io", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 13, + "hasLock": false + }, + { + "repo": "hyperpolymath/Hyperpolymath.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 12, + "hasLock": false + }, + { + "repo": "hyperpolymath/i-human", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/ideas-to-alphas", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "idris2-proof.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + } + ], + "workflowCount": 25, + "hasLock": true, + "error": "Map keys must be unique at line 145, column 9:\n\n toolchain: master\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/idrisiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@13131bb095770b4070a7477c3cd2d96e1c16d9f4", + "actions/upload-artifact@v7.0.1", + "actions/download-artifact@v8.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@13131bb095770b4070a7477c3cd2d96e1c16d9f4", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/ijson-jcs", + "archived": false, + "fork": false, + "findings": [], + "workflowCount": 0 + }, + { + "repo": "hyperpolymath/im-docs", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/infrastructure-automation", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "guix-nix-policy.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rsr-antipattern.yml" + }, + { + "type": "missing-lock", + "file": "runtime-policy.yml" + }, + { + "type": "missing-lock", + "file": "scorecard-enforcer.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "security-policy.yml" + }, + { + "type": "missing-lock", + "file": "wellknown-enforcement.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/intsoc-transactor", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b" + ] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/invariant-path", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "rsr-antipattern.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/InvestigativeJournalism.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/ipfs-overlay", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/ipv6-only", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "cargo-audit.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "container-policy.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "guix-nix-policy.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "quality.yml" + }, + { + "type": "missing-lock", + "file": "rsr-antipattern.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "security-policy.yml" + }, + { + "type": "missing-lock", + "file": "wellknown-enforcement.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 20, + "hasLock": false + }, + { + "repo": "hyperpolymath/ipv6-site-enforcer", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 10, + "hasLock": false + }, + { + "repo": "hyperpolymath/ipv6-tools", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "lock-sync-gate.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/iseriser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + } + ], + "workflowCount": 18, + "hasLock": true, + "error": "Map keys must be unique at line 124, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/jaffascript", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 10, + "hasLock": false + }, + { + "repo": "hyperpolymath/januskey", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dashboard-check.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "squabble.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/jtv-halting-islands-ct", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@cdf488f595d80d6e07e03d4674febd5ab45fa938" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/cicd-suite@fc64172aa53e85289d5d7d6e15c2435a867cc1c9", + "hyperpolymath/cicd-suite@11b5ab51a1600b7b798572200094e611ae0654c2", + "hyperpolymath/cicd-suite@5a10b72e574ef63855fafd4568a4c178657f3294", + "hyperpolymath/cicd-suite@2c09abbdedfc8006abc02caa91c0bb9b4bb0e0a2" + ], + "got": [ + "actions/checkout@v4.4.0", + "hyperpolymath/cicd-suite@5a10b72e574ef63855fafd4568a4c178657f3294", + "hyperpolymath/cicd-suite@2c09abbdedfc8006abc02caa91c0bb9b4bb0e0a2", + "hyperpolymath/cicd-suite@fc64172aa53e85289d5d7d6e15c2435a867cc1c9" + ] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/checkout@v4.1.1", + "actions/deploy-pages@v5.0.0", + "actions/upload-pages-artifact@v3.0.1" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8750b94ac1bbe8c51ad13fe106669b13478f0b62" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@619713b3aa1bbaaca174387537a9b089f728f9b9" + ], + "got": [] + } + ], + "workflowCount": 7, + "hasLock": true + }, + { + "repo": "hyperpolymath/jtv-lang", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "lock-drift", + "file": "cflite_batch.yml", + "want": [ + "actions/checkout@v7.0.1", + "google/clusterfuzzlite@v1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0", + "google/clusterfuzzlite@v1" + ] + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "lock-drift", + "file": "cflite_pr.yml", + "want": [ + "actions/checkout@v7.0.1", + "google/clusterfuzzlite@v1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0", + "google/clusterfuzzlite@v1" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "coverage.yml" + }, + { + "type": "lock-drift", + "file": "coverage.yml", + "want": [ + "actions/checkout@v7.0.1", + "dtolnay/rust-toolchain@v1", + "swatinem/rust-cache@v2.9.2", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "dtolnay/rust-toolchain@v1", + "swatinem/rust-cache@v2.9.2" + ] + }, + { + "type": "header", + "file": "deno.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@v7.0.1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "language-policy.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "proof-regression.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "rust-ci.yml" + } + ], + "workflowCount": 18, + "hasLock": true, + "error": "Map keys must be unique at line 46, column 9:\n\n toolchain: v1\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/julia-ecosystem", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "package-drift.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 8, + "hasLock": false + }, + { + "repo": "hyperpolymath/julia-professional-registry", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "registry-validate.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/JuliaKids.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.1", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.1", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/julianiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/JuliaPackageSpitter.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11", + "haskell-actions/setup@ec49483bfc012387b227434aba94f59a6ecd0900", + "actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830", + "actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e" + ], + "got": [ + "actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830", + "actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11", + "actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b", + "actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e", + "actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa", + "haskell-actions/setup@ec49483bfc012387b227434aba94f59a6ecd0900" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "proof-gates.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "gitleaks/gitleaks-action@ff98106e4c7b2bc287b24eaf42907196329070c7", + "trufflesecurity/trufflehog@6c05c4a00b91aa542267d8e32a8254774799d68d" + ] + } + ], + "workflowCount": 22, + "hasLock": true + }, + { + "repo": "hyperpolymath/k9-ecosystem", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "hyperpolymath/kaldor-iiot", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "ci-cd.yml" + }, + { + "type": "lock-drift", + "file": "ci-cd.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.0.0", + "actions/setup-python@v7.0.0", + "docker/setup-buildx-action@v4.4.1", + "ionos-deploy-now/deploy-to-ionos-action@v2.1.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.0.0", + "actions/setup-python@v7.0.0", + "docker/setup-buildx-action@v4.4.0", + "ionos-deploy-now/deploy-to-ionos-action@v2.1.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "container-policy.yml" + }, + { + "type": "header", + "file": "deploy-now.yaml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "language-policy.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/kategoria", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "proof-gate.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/kea", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.6.1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.6.1" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/kitchenspeak", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + } + ], + "workflowCount": 30, + "hasLock": true, + "error": "no jobs map" + }, + { + "repo": "hyperpolymath/KnotTheory.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.1" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@28f7a2cba34c51ebccbc4e99acd4cb7cbe07c71a" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d5fe075a50ab3ce4f41614d66ed77f152fda134f" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3.5.0", + "actions/upload-artifact@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/attest-build-provenance@v4.2.2", + "softprops/action-gh-release@v3.0.3" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "julia-actions/cache@v3.3.0", + "julia-actions/setup-julia@v3.0.2", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rsr-antipattern.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 22, + "hasLock": true + }, + { + "repo": "hyperpolymath/krl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "fragment-conformance.yml" + }, + { + "type": "lock-drift", + "file": "fragment-conformance.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2" + ], + "got": [ + "actions/checkout@v7.0.0", + "julia-actions/setup-julia@v2.7.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@412a7031577112b31ee287cc6060179d638d6500" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "github/codeql-action@v4.38.0" + }, + { + "type": "dangling", + "ref": "dependabot/fetch-metadata@v3.1.0" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "hyperpolymath/a2ml-ecosystem@main" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "actions/deploy-pages@v5.0.1" + }, + { + "type": "dangling", + "ref": "actions/upload-pages-artifact@v5.0.0" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "actions/upload-artifact@v7.0.1" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "actions/download-artifact@v8.0.1" + }, + { + "type": "dangling", + "ref": "actions/upload-artifact@v7.0.1" + }, + { + "type": "dangling", + "ref": "erlef/setup-beam@v1.24.1" + }, + { + "type": "dangling", + "ref": "actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f" + } + ], + "workflowCount": 21, + "hasLock": true + }, + { + "repo": "hyperpolymath/laminar", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/laniakea", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/launch-scaffolder", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "launcher-artefacts.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 9, + "hasLock": false + }, + { + "repo": "hyperpolymath/lithoglyph", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "goto-bus-stop/setup-zig@v2.2.1", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "goto-bus-stop/setup-zig@v2.2.1" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fcb566cfb8a86cea2d3666bf65a4f177a49b1313" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@fcb566cfb8a86cea2d3666bf65a4f177a49b1313" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "lock-drift", + "file": "quality.yml", + "want": [ + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@v3.99.2", + "editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393" + ], + "got": [ + "actions/checkout@v7.0.1", + "editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393", + "trufflesecurity/trufflehog@v3.97.5" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@fcb566cfb8a86cea2d3666bf65a4f177a49b1313" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.2" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "test-suite.yml" + }, + { + "type": "lock-drift", + "file": "test-suite.yml", + "want": [ + "actions/checkout@v7.0.1", + "goto-bus-stop/setup-zig@v2.2.1", + "leanprover/lean-action@f061402b660e0c34644504b324e830f2991d4865" + ], + "got": [ + "actions/checkout@v7.0.1", + "goto-bus-stop/setup-zig@v2.2.1", + "leanprover/lean-action@50fcf42d2e460296f1a34b402e990d1b24f8b596" + ] + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "header", + "file": "zig-tests.yml" + } + ], + "workflowCount": 30, + "hasLock": true + }, + { + "repo": "hyperpolymath/live-files", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "boj-build.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332" + ] + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7", + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128", + "actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b", + "haskell-actions/setup@f9150cb1d140e9a9271700670baa38991e6fa25c" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11", + "github/codeql-action@4187e74d05793876e9989daffde9c3e66b4acd07" + ] + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2", + "actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd", + "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02", + "erlef/setup-beam@fc68ffb90438ef2936bbb3251622353b3dcb2f93", + "github/codeql-action@0d579ffd059c29b07949a3cce3983f0780820c98" + ] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/checkout@11d5960a326750d5838078e36cf38b85af677262", + "actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e", + "actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa" + ] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ], + "got": [ + "hyperpolymath/smtp-notify-action@ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7" + ] + }, + { + "type": "lock-drift", + "file": "scorecard-enforcer.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "github/codeql-action@c6f931105cb2c34c8f901cc885ba1e2e259cf745", + "ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "github/codeql-action@c6f931105cb2c34c8f901cc885ba1e2e259cf745", + "ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a" + ] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "gitleaks/gitleaks-action@ff98106e4c7b2bc287b24eaf42907196329070c7", + "trufflesecurity/trufflehog@6c05c4a00b91aa542267d8e32a8254774799d68d" + ] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/llm-grace", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + } + ], + "workflowCount": 23, + "hasLock": true, + "error": "no jobs map" + }, + { + "repo": "hyperpolymath/lol", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "comprehensive-quality.yml" + }, + { + "type": "header", + "file": "echidna-verify.yml" + }, + { + "type": "missing-lock", + "file": "echidna-verify.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "rescript-deno-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard-enforcer.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/LowLevel.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/lucidscript", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/upload-artifact@v7.0.2", + "github/codeql-action@v4.38.2", + "actions/github-script@v9.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/github-script@v9.0.0", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + } + ], + "workflowCount": 10, + "hasLock": true, + "error": "Map keys must be unique at line 150, column 9:\n\n toolchain: master\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/lustreiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.37.9" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.2.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/maa-framework", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "lock-drift", + "file": "changelog.yml", + "want": [ + "hyperpolymath/standards@b77c53c85e5734756a793497845735485c9dc933" + ], + "got": [] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@6b38eb50104901e2fec80f9455a972bc3eced813" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/MacroPower.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard-enforcer.yml" + } + ], + "workflowCount": 12, + "hasLock": false, + "error": "Map keys must be unique at line 62, column 1:\n\n\njobs:\n^\n" + }, + { + "repo": "hyperpolymath/manifesto", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/marches", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "leanprover/lean-action@v1.6.1" + ], + "got": [ + "actions/checkout@v7.0.1", + "leanprover/lean-action@v1.6.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "hyperpolymath/cicd-suite@376898bbe872226866ccbc7648d43123b8bb21b9" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/me-dialect", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "language-policy.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "quality.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 9, + "hasLock": false + }, + { + "repo": "hyperpolymath/metadata-grammar", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/MetaManifold-WebUI", + "archived": false, + "fork": true, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "occupancy.yml" + } + ], + "workflowCount": 2, + "hasLock": false + }, + { + "repo": "hyperpolymath/methodologies", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/misinformation-defence-platform", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/modshells", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ada.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "spark-theatre-gate.yml" + }, + { + "type": "missing-lock", + "file": "standards-pipeline.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/my-lang", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "lock-drift", + "file": "cflite_batch.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2", + "google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1" + ] + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "lock-drift", + "file": "cflite_pr.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2", + "google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1" + ] + }, + { + "type": "header", + "file": "checker-scaling.yml" + }, + { + "type": "lock-drift", + "file": "checker-scaling.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + }, + { + "type": "header", + "file": "coverage.yml" + }, + { + "type": "lock-drift", + "file": "coverage.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "spark-theatre-gate.yml" + }, + { + "type": "header", + "file": "stack-depth.yml" + }, + { + "type": "dangling", + "ref": "dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f" + }, + { + "type": "dangling", + "ref": "dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f" + }, + { + "type": "dangling", + "ref": "dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/mylangiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + } + ], + "workflowCount": 19, + "hasLock": true, + "error": "Map keys must be unique at line 124, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/nafa-app", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/natsci-studio", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "repository-validation.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/nesy-solver", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + } + ], + "workflowCount": 19, + "hasLock": true, + "error": "no jobs map" + }, + { + "repo": "hyperpolymath/network-ambulance", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "distro-matrix.yml" + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "lock-drift", + "file": "quality.yml", + "want": [ + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@v3.97.9", + "editorconfig-checker/action-editorconfig-checker@v3.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "editorconfig-checker/action-editorconfig-checker@v3.0.0", + "trufflesecurity/trufflehog@v3.97.4" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-antipattern.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard-enforcer.yml" + }, + { + "type": "lock-drift", + "file": "scorecard-enforcer.yml", + "want": [ + "actions/checkout@v7.0.1", + "ossf/scorecard-action@v2.4.4", + "github/codeql-action@v4.38.2", + "actions/upload-artifact@v7.0.1", + "actions/download-artifact@v8.0.1" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "github/codeql-action@v4.38.0", + "ossf/scorecard-action@v2.4.4" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "test.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 21, + "hasLock": true + }, + { + "repo": "hyperpolymath/network-dashboard", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/network-outpost", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "hyperpolymath/neural-foundations", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "e2e.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/neurophone", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "language-policy.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "trustfile.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 22, + "hasLock": true + }, + { + "repo": "hyperpolymath/nexia-list", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/upload-artifact@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2", + "actions/github-script@v9.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/github-script@v9.0.0", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "ui-ci.yml" + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/nextgen-databases", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fcb566cfb8a86cea2d3666bf65a4f177a49b1313" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@fcb566cfb8a86cea2d3666bf65a4f177a49b1313" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "placement-guard.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@fcb566cfb8a86cea2d3666bf65a4f177a49b1313" + ], + "got": [] + }, + { + "type": "header", + "file": "verify-tlaplus.yml" + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/nextgen-language-evangeliser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "guix-nix-policy.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "idris2-abi.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "makefile-blocker.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "quality.yml" + }, + { + "type": "missing-lock", + "file": "rsr-antipattern.yml" + }, + { + "type": "missing-lock", + "file": "runtime-policy.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "security-policy.yml" + }, + { + "type": "missing-lock", + "file": "static-analysis-gate.yml" + }, + { + "type": "missing-lock", + "file": "wellknown-enforcement.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 22, + "hasLock": false + }, + { + "repo": "hyperpolymath/nextgen-languages", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@469605210e767ee94d1c7a9c13cb6a1d0a78cad1" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@469605210e767ee94d1c7a9c13cb6a1d0a78cad1" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/nextgen-typing", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "coordination-boundary.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rsr-antipattern.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 28, + "hasLock": true + }, + { + "repo": "hyperpolymath/nickel-augmentation", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/nimiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "k9-svc-validation.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@d7c22711e830e1f383846472f6e9b99debdb201e" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/no-nonsense-nntps", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/oblibeniser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/oblibeny", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@2479cf769ed5f0481ccf64860a2ab954514c2b59" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@2479cf769ed5f0481ccf64860a2ab954514c2b59" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@2479cf769ed5f0481ccf64860a2ab954514c2b59" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@2479cf769ed5f0481ccf64860a2ab954514c2b59" + ], + "got": [] + } + ], + "workflowCount": 12, + "hasLock": true + }, + { + "repo": "hyperpolymath/occupancy-types", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "lock-drift", + "file": "proofs.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "lock-drift", + "file": "session-ir.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@4c0cb0fce8556fdb04a90347310e5db8b1f98fb9" + ], + "got": [] + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@d209202bc7d53ff1cc128f7f907dac145c9d6ae9" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.2" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 37, + "hasLock": true + }, + { + "repo": "hyperpolymath/ochrance", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "e2e.yml" + }, + { + "type": "missing-lock", + "file": "echidna-validation.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "guix-nix-policy.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "idris2.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "quality.yml" + }, + { + "type": "missing-lock", + "file": "rsr-antipattern.yml" + }, + { + "type": "missing-lock", + "file": "runtime-policy.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "security-policy.yml" + }, + { + "type": "missing-lock", + "file": "wellknown-enforcement.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "missing-lock", + "file": "zig-ffi.yml" + } + ], + "workflowCount": 25, + "hasLock": false + }, + { + "repo": "hyperpolymath/ochrance-framework", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/odds-and-sods-package-manager", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + } + ], + "workflowCount": 18, + "hasLock": true, + "error": "Map keys must be unique at line 109, column 9:\n\n toolchain: v1\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/oikos-economics-accounting-dsl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "language-policy.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/oikosbot", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "aquasecurity/trivy-action@v0.36.0", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "aquasecurity/trivy-action@v0.36.0", + "github/codeql-action@v4.38.1", + "haskell-actions/setup@v2.12.1" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.1" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/oikosbot-estate", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 3, + "hasLock": false + }, + { + "repo": "hyperpolymath/otpiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "k9-svc-validation.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + } + ], + "workflowCount": 18, + "hasLock": true, + "error": "Map keys must be unique at line 124, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/palimpsest-license", + "archived": false, + "fork": false, + "findings": [ + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 22, + "hasLock": true + }, + { + "repo": "hyperpolymath/panic-attack", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "lock-drift", + "file": "boj-build.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [ + "actions/checkout@v4.1.7" + ] + }, + { + "type": "header", + "file": "bridge-gate.yml" + }, + { + "type": "lock-drift", + "file": "bridge-gate.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [ + "actions/checkout@v4.3.1" + ] + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 23, + "hasLock": true, + "error": "Map keys must be unique at line 31, column 9:\n\n toolchain: v1\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/panll", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "build-validation.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/panoply", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@6b38eb50104901e2fec80f9455a972bc3eced813" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "lock-drift", + "file": "quality.yml", + "want": [ + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@v3.99.2", + "editorconfig-checker/action-editorconfig-checker@v3.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "editorconfig-checker/action-editorconfig-checker@v3.0.0", + "trufflesecurity/trufflehog@v3.97.5" + ] + }, + { + "type": "header", + "file": "release.yml" + } + ], + "workflowCount": 26, + "hasLock": true, + "error": "Map keys must be unique at line 139, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/patallm-gallery", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/patch-bridge", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.2", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/phantom-metal-taste", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "bun-ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "julia-ci.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/php-aegis", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "haskell-actions/setup@6037f33647c3f17758a2356c80fc4a53d7e0685d" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/phronesis", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "conformance.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "lean.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "tla-consensus.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/phronesiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/pimcore-fortress", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "k9-svc-validation.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + } + ], + "workflowCount": 17, + "hasLock": false, + "error": "All mapping items must start at the same column at line 15, column 11:\n\n steps:\n ^\n" + }, + { + "repo": "hyperpolymath/plasma-parser-writer", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "nimble-site.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/poly-k8s-mcp", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/polyglot-formalisms-elixir", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "boj-build.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332" + ] + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7", + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128", + "actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b", + "haskell-actions/setup@f9150cb1d140e9a9271700670baa38991e6fa25c" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "github/codeql-action@c6f931105cb2c34c8f901cc885ba1e2e259cf745" + ] + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "hyperpolymath/deed-ecosystem@aa4b836bd969df2bc58128cb8e3d20bbc88d5e79", + "hyperpolymath/k9-ecosystem@89f3c2702f4f650a92aa7411502f38da06abd562" + ], + "got": [ + "actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5", + "hyperpolymath/deed-ecosystem@aa4b836bd969df2bc58128cb8e3d20bbc88d5e79", + "hyperpolymath/k9-ecosystem@89f3c2702f4f650a92aa7411502f38da06abd562" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "gitleaks/gitleaks-action@ff98106e4c7b2bc287b24eaf42907196329070c7", + "trufflesecurity/trufflehog@6c05c4a00b91aa542267d8e32a8254774799d68d" + ] + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/polyglot-formalisms-gleam", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "boj-build.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803" + ] + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7", + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128", + "actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b", + "haskell-actions/setup@f9150cb1d140e9a9271700670baa38991e6fa25c" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "github/codeql-action@c6f931105cb2c34c8f901cc885ba1e2e259cf745" + ] + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ], + "got": [ + "hyperpolymath/smtp-notify-action@ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/polyglot-i18n", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "benchmarks.yml" + }, + { + "type": "lock-drift", + "file": "benchmarks.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.1.0", + "actions/upload-artifact@v7.0.2", + "actions/github-script@v9.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/github-script@v9.0.0", + "actions/setup-node@v7.0.0", + "actions/upload-artifact@v7.0.1" + ] + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "k9-svc-validation.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "lint.yml" + }, + { + "type": "lock-drift", + "file": "lint.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.1.0", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.0.0", + "actions/upload-artifact@v7.0.1" + ] + }, + { + "type": "header", + "file": "locale-validation.yml" + }, + { + "type": "lock-drift", + "file": "locale-validation.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.1.0", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.0.0", + "actions/upload-artifact@v7.0.1" + ] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.1.0", + "softprops/action-gh-release@v3.0.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/setup-node@v7.0.0", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rescript-deno-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 21, + "hasLock": true + }, + { + "repo": "hyperpolymath/PolyglotFormalisms.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/polysafe-gitfixer", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/pons-asinorum", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "main-estate-audit.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "probe-kyaml-arm.yml" + }, + { + "type": "missing-lock", + "file": "probe-yaml-arm.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 10, + "hasLock": false + }, + { + "repo": "hyperpolymath/ponyiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.37.9" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.2.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/PostDisciplinary.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d5fe075a50ab3ce4f41614d66ed77f152fda134f" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.1", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.1", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@d5fe075a50ab3ce4f41614d66ed77f152fda134f" + ], + "got": [] + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/PRComms.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d5fe075a50ab3ce4f41614d66ed77f152fda134f" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v6.0.1", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v6.0.1", + "actions/upload-artifact@v4.6.2", + "softprops/action-gh-release@v2.5.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@d5fe075a50ab3ce4f41614d66ed77f152fda134f" + ], + "got": [] + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/preference-injector", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "ci-extended.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "denoland/setup-deno@22d081ff2d3a40755e97629de92e3bcbfa7cf2ed", + "gitleaks/gitleaks-action@e0c47f4f8be36e29cdc102c57e68cb5cbf0e8d1e", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "actions/setup-node@820762786026740c76f36085b0efc47a31fe5020", + "peaceiris/actions-gh-pages@84c30a85c19949d7eee79c4ff27748b70285e453", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a", + "aquasecurity/trivy-action@ed142fd0673e97e23eac54620cfb913e5ce36c25", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/setup-node@820762786026740c76f36085b0efc47a31fe5020", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "aquasecurity/trivy-action@ed142fd0673e97e23eac54620cfb913e5ce36c25", + "denoland/setup-deno@22d081ff2d3a40755e97629de92e3bcbfa7cf2ed", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd", + "gitleaks/gitleaks-action@e0c47f4f8be36e29cdc102c57e68cb5cbf0e8d1e", + "peaceiris/actions-gh-pages@84c30a85c19949d7eee79c4ff27748b70285e453" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/presswerk", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "bench.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "security.yml" + } + ], + "workflowCount": 21, + "hasLock": true + }, + { + "repo": "hyperpolymath/project-wharf", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + } + ], + "workflowCount": 13, + "hasLock": true, + "error": "Map keys must be unique at line 69, column 7:\n\n security-events: write\n actions: read # To read the workflow path.\n ^\n" + }, + { + "repo": "hyperpolymath/proof-burrower", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proof-safety.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 27, + "hasLock": true + }, + { + "repo": "hyperpolymath/protocol-squisher", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "docs.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/Protoctist.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "lock-drift", + "file": "build-notification.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "lock-drift", + "file": "deed-validate.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/deed-ecosystem@main" + ], + "got": [] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "lock-drift", + "file": "dependabot-automerge.yml", + "want": [ + "dependabot/fetch-metadata@v3.1.0" + ], + "got": [] + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "lock-drift", + "file": "docker-build.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/deed-ecosystem@main", + "hyperpolymath/k9-ecosystem@main", + "erlef/setup-beam@v1.24.1" + ], + "got": [] + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "lock-drift", + "file": "dogfood-summary.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "lock-drift", + "file": "dot-wellknown-enforcement.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "lock-drift", + "file": "eclexiaiser-validate.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "lock-drift", + "file": "empty-linter.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "lock-drift", + "file": "estate-rules.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "lock-drift", + "file": "groove-check.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "lock-drift", + "file": "guix-policy.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "julia-ci.yml" + }, + { + "type": "lock-drift", + "file": "julia-ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v2", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "julia-docs.yml" + }, + { + "type": "lock-drift", + "file": "julia-docs.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3", + "julia-actions/julia-buildpkg@v1", + "julia-actions/julia-docdeploy@v1" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v2", + "julia-actions/julia-buildpkg@v1", + "julia-actions/julia-docdeploy@v1", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "lock-drift", + "file": "k9-validate.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/k9-ecosystem@main" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "hyperpolymath/cicd-suite@55556cf5ba71ba744695861503c13148d3915a5d" + ], + "got": [] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "lock-drift", + "file": "ossf-best-practices.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "lock-drift", + "file": "quality.yml", + "want": [ + "actions/checkout@v7.0.1", + "editorconfig-checker/action-editorconfig-checker@v3.0.0" + ], + "got": [] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [] + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "lock-drift", + "file": "rsr-compliance-canary.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "lock-drift", + "file": "runtime-policy.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "lock-drift", + "file": "security-policy.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "lock-drift", + "file": "workflow-linter.yml", + "want": [ + "actions/checkout@v7.0.1", + "oven-sh/setup-bun@v2.2.0" + ], + "got": [] + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "julia-actions/cache@v2" + }, + { + "type": "dangling", + "ref": "julia-actions/setup-julia@v3.0.2" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "julia-actions/cache@v2" + }, + { + "type": "dangling", + "ref": "julia-actions/julia-buildpkg@v1" + }, + { + "type": "dangling", + "ref": "julia-actions/julia-docdeploy@v1" + }, + { + "type": "dangling", + "ref": "julia-actions/setup-julia@v3.0.2" + } + ], + "workflowCount": 37, + "hasLock": true + }, + { + "repo": "hyperpolymath/proven", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "architecture-enforcement.yml" + }, + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "cflite_batch.yml" + }, + { + "type": "missing-lock", + "file": "cflite_pr.yml" + }, + { + "type": "missing-lock", + "file": "chapel-ci.yml" + }, + { + "type": "missing-lock", + "file": "clusterfuzzlite.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "d-ci.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "e2e.yml" + }, + { + "type": "missing-lock", + "file": "echidna-verify.yml" + }, + { + "type": "missing-lock", + "file": "ffi-full-integration.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "idris2-ci.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "ocaml-ci.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "publish-crates.yml" + }, + { + "type": "missing-lock", + "file": "publish-ghcr.yml" + }, + { + "type": "missing-lock", + "file": "publish-jsr.yml" + }, + { + "type": "missing-lock", + "file": "publish-npm.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "spark-theatre-gate.yml" + }, + { + "type": "missing-lock", + "file": "trustfile.yml" + }, + { + "type": "missing-lock", + "file": "zig-ffi.yml" + } + ], + "workflowCount": 33, + "hasLock": false + }, + { + "repo": "hyperpolymath/proven-servers", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-trigger.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/upload-artifact@v7.0.2", + "github/codeql-action@v4.38.3", + "actions/github-script@v9.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/github-script@v9.0.0", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "instant-sync-dispatch.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "panic-attack-unified-api-adapter.yml" + }, + { + "type": "lock-drift", + "file": "panic-attack-unified-api-adapter.yml", + "want": [ + "actions/checkout@v7.0.1", + "dtolnay/rust-toolchain@stable", + "swatinem/rust-cache@v2.9.2", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "dtolnay/rust-toolchain@stable", + "swatinem/rust-cache@v2.9.2" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/proven-tests-and-benches", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/cache@v6.1.0", + "actions/upload-artifact@v7.0.2" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ] + }, + { + "type": "header", + "file": "corpus-check.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@71bb615e234133d22f04106c812aad9fcb269aa5" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@71bb615e234133d22f04106c812aad9fcb269aa5" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/pseudoscript", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 10, + "hasLock": false + }, + { + "repo": "hyperpolymath/quandledb", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fcb566cfb8a86cea2d3666bf65a4f177a49b1313" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@fcb566cfb8a86cea2d3666bf65a4f177a49b1313" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "krl-verification.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "read-only-api-gate.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@fcb566cfb8a86cea2d3666bf65a4f177a49b1313" + ], + "got": [] + }, + { + "type": "header", + "file": "verification-image.yml" + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/QuantumCircuit.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/qubes-sdp", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@v7.0.1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "lock-drift", + "file": "instant-sync.yml", + "want": [ + "peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697" + ], + "got": [ + "peter-evans/repository-dispatch@v4.0.1" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/rattlescript", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 10, + "hasLock": false + }, + { + "repo": "hyperpolymath/raze-tui", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/reasonably-good-token-vault", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "lockdown.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/recon-silly-ation", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 25, + "hasLock": true + }, + { + "repo": "hyperpolymath/refugia", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "security-checks.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/repo-guardian", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 1, + "hasLock": false + }, + { + "repo": "hyperpolymath/reposystem", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "bridge-gate.yml" + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "k9iser-regen.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "wiki-publish.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/rescript-ecosystem", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "hyperpolymath/residual-evidence-types", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + } + ], + "workflowCount": 3, + "hasLock": true + }, + { + "repo": "hyperpolymath/ResidualEvidenceTypes.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "lock-drift", + "file": "build-notification.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "lock-drift", + "file": "deed-validate.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/deed-ecosystem@main" + ], + "got": [] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "lock-drift", + "file": "dependabot-automerge.yml", + "want": [ + "dependabot/fetch-metadata@v3.1.0" + ], + "got": [] + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "lock-drift", + "file": "docker-build.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/deed-ecosystem@main", + "hyperpolymath/k9-ecosystem@main", + "erlef/setup-beam@v1.24.1" + ], + "got": [] + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "lock-drift", + "file": "dogfood-summary.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "lock-drift", + "file": "dot-wellknown-enforcement.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "lock-drift", + "file": "eclexiaiser-validate.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "lock-drift", + "file": "empty-linter.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "lock-drift", + "file": "estate-rules.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "lock-drift", + "file": "groove-check.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "lock-drift", + "file": "guix-policy.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "julia-ci.yml" + }, + { + "type": "lock-drift", + "file": "julia-ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v2", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "julia-docs.yml" + }, + { + "type": "lock-drift", + "file": "julia-docs.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3", + "julia-actions/julia-buildpkg@v1", + "julia-actions/julia-docdeploy@v1" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v2", + "julia-actions/julia-buildpkg@v1", + "julia-actions/julia-docdeploy@v1", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "lock-drift", + "file": "k9-validate.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/k9-ecosystem@main" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "hyperpolymath/cicd-suite@55556cf5ba71ba744695861503c13148d3915a5d" + ], + "got": [] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "lock-drift", + "file": "ossf-best-practices.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "lock-drift", + "file": "quality.yml", + "want": [ + "actions/checkout@v7.0.1", + "editorconfig-checker/action-editorconfig-checker@v3.0.0" + ], + "got": [] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [] + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "lock-drift", + "file": "rsr-compliance-canary.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "lock-drift", + "file": "runtime-policy.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "lock-drift", + "file": "security-policy.yml", + "want": [ + "actions/checkout@v7.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.1" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "lock-drift", + "file": "workflow-linter.yml", + "want": [ + "actions/checkout@v7.0.1", + "oven-sh/setup-bun@v2.2.0" + ], + "got": [] + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "julia-actions/cache@v2" + }, + { + "type": "dangling", + "ref": "julia-actions/setup-julia@v3.0.2" + }, + { + "type": "dangling", + "ref": "actions/checkout@v7.0.1" + }, + { + "type": "dangling", + "ref": "julia-actions/cache@v2" + }, + { + "type": "dangling", + "ref": "julia-actions/julia-buildpkg@v1" + }, + { + "type": "dangling", + "ref": "julia-actions/julia-docdeploy@v1" + }, + { + "type": "dangling", + "ref": "julia-actions/setup-julia@v3.0.2" + } + ], + "workflowCount": 37, + "hasLock": true + }, + { + "repo": "hyperpolymath/resource-algebra", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 36, + "hasLock": true + }, + { + "repo": "hyperpolymath/resource-record-fluctuator", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/robodog-defensive-systems-lab", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "e2e.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/robot-vacuum-cleaner", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "ci-cd.yml" + }, + { + "type": "lock-drift", + "file": "ci-cd.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "gitleaks/gitleaks-action@v3.0.0", + "aquasecurity/trivy-action@v0.36.0", + "github/codeql-action@v4.38.2", + "dependency-check/dependency-check_action@1.1.0", + "actions/upload-artifact@v7.0.1", + "julia-actions/julia-processcoverage@v1.2.2", + "actions-rust-lang/setup-rust-toolchain@v2.0.0", + "docker/setup-buildx-action@v4.4.1", + "docker/login-action@v4.6.0", + "docker/metadata-action@v6.2.0", + "docker/build-push-action@v7.4.0", + "hadolint/hadolint-action@06be81baf89a55ffd0e24b8f04a4185738dd3387", + "anchore/scan-action@v7.4.2", + "actions/attest-build-provenance@v4.2.2", + "actions/download-artifact@v8.0.1", + "sonarsource/sonarcloud-github-action@v5.0.0" + ], + "got": [ + "actions-rust-lang/setup-rust-toolchain@v2.0.0", + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "anchore/scan-action@v7.4.2", + "aquasecurity/trivy-action@v0.36.0", + "dependency-check/dependency-check_action@1.1.0", + "docker/build-push-action@v7.4.0", + "docker/login-action@v4.6.0", + "docker/metadata-action@v6.2.0", + "docker/setup-buildx-action@v4.4.0", + "github/codeql-action@v4.38.0", + "gitleaks/gitleaks-action@v3.0.0", + "hadolint/hadolint-action@06be81baf89a55ffd0e24b8f04a4185738dd3387", + "julia-actions/julia-processcoverage@v1.2.2", + "julia-actions/setup-julia@v3.0.2", + "sonarsource/sonarcloud-github-action@v5.0.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "dawidd6/action-send-mail@v22" + ], + "got": [ + "dawidd6/action-send-mail@v3.12.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/rpa-elysium", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "lock-drift", + "file": "cflite_batch.yml", + "want": [ + "actions/checkout@v7.0.1", + "google/clusterfuzzlite@v1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63", + "google/clusterfuzzlite@v1" + ] + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "lock-drift", + "file": "cflite_pr.yml", + "want": [ + "actions/checkout@v7.0.1", + "google/clusterfuzzlite@v1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63", + "google/clusterfuzzlite@v1" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/rrecord-verity", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + } + ], + "workflowCount": 19, + "hasLock": false, + "error": "Implicit keys need to be on a single line at line 305, column 1:\n\n |-------------|--------|-------|\n| DEED repo deed (`_chora.deed` or legacy `.a2ml` during migration) |…\n^\n" + }, + { + "repo": "hyperpolymath/rsr-template-repo", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/safe-brute-force", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 14, + "hasLock": false + }, + { + "repo": "hyperpolymath/sanctify-php", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/scaffoldia", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 25, + "hasLock": true + }, + { + "repo": "hyperpolymath/scripts", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/sdp-hkdf-deployment", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 14, + "hasLock": false + }, + { + "repo": "hyperpolymath/seamstress", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/secret-types", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.2" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/self-destructing-git-garbage", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "hyperpolymath/session-sentinel", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/ShellIntegration.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/SiliconCore.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/Skein.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3.4.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "julia-actions/cache@v3.3.0", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "rsr-antipattern.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "verification-image.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/SMTLib.jl", + "archived": false, + "fork": false, + "findings": [], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/smtp-notify-action", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "benchmark.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + } + ], + "workflowCount": 4, + "hasLock": true + }, + { + "repo": "hyperpolymath/snapcreate", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/snifs", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-guest-verify.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/social-media-polygraph", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "lock-drift", + "file": "ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "aquasecurity/trivy-action@c03d123cb480c08c69b054af418ea5e69fe6e57e", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "aquasecurity/trivy-action@c03d123cb480c08c69b054af418ea5e69fe6e57e", + "github/codeql-action@v4.38.2" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ] + }, + { + "type": "header", + "file": "deploy.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/social-media-tools", + "archived": false, + "fork": false, + "findings": [], + "workflowCount": 15, + "error": "Map keys must be unique at line 124, column 5:\n\n repo_id: 1275649586\n 'hyperpolymath/k9-ecosystem@2155aa26a21758f2ba119f61bc7e0e1981c106fb':\n ^\n" + }, + { + "repo": "hyperpolymath/SoftwareSovereign.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/somethings-fishy", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "e2e.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "openssf-compliance.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "missing-lock", + "file": "rhodibot.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 20, + "hasLock": false + }, + { + "repo": "hyperpolymath/squeakwell", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@412a7031577112b31ee287cc6060179d638d6500" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@d7c22711e830e1f383846472f6e9b99debdb201e" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/ssg-collection", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "hyperpolymath/standards", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "actions-lock-gate.yml" + }, + { + "type": "header", + "file": "affinescript-verify.yml" + }, + { + "type": "header", + "file": "allowlist-preflight-reusable.yml" + }, + { + "type": "header", + "file": "apply-workflow-pins.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "canon-spine-lockstep.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "changelog-reusable.yml" + }, + { + "type": "header", + "file": "changelog.yml" + }, + { + "type": "header", + "file": "check-suite-monitor.yml" + }, + { + "type": "header", + "file": "ci-pipeline.yml" + }, + { + "type": "header", + "file": "codeql-reusable.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "debt-measure.yml" + }, + { + "type": "header", + "file": "deed-conformance.yml" + }, + { + "type": "header", + "file": "dependabot-lock-regen.yml" + }, + { + "type": "header", + "file": "doc-format.yml" + }, + { + "type": "header", + "file": "dyadt-verify.yml" + }, + { + "type": "header", + "file": "echidna-verify.yml" + }, + { + "type": "header", + "file": "elixir-ci-reusable.yml" + }, + { + "type": "header", + "file": "elixir-ci.yml" + }, + { + "type": "header", + "file": "github-backup-mirror-reusable.yml" + }, + { + "type": "header", + "file": "governance-reusable.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan-reusable.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "k9-contractile.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "launcher-standard-lockstep.yml" + }, + { + "type": "header", + "file": "lock-selfcheck.yml" + }, + { + "type": "header", + "file": "lockfile-drift-detect.yml" + }, + { + "type": "header", + "file": "makefile-blocker.yml" + }, + { + "type": "header", + "file": "mirror-reusable.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "no-js-scan.yml" + }, + { + "type": "header", + "file": "pages-archive.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "propagate-hooks.yml" + }, + { + "type": "header", + "file": "provisioning-check-reusable.yml" + }, + { + "type": "header", + "file": "readme-derive-reusable.yml" + }, + { + "type": "header", + "file": "readme-derive.yml" + }, + { + "type": "header", + "file": "rust-ci-reusable.yml" + }, + { + "type": "header", + "file": "scorecard-enforcer.yml" + }, + { + "type": "header", + "file": "scorecard-reusable.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner-reusable.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "self-test.yml" + }, + { + "type": "header", + "file": "settings-drift-detect.yml" + }, + { + "type": "header", + "file": "signed-push-smoke.yml" + }, + { + "type": "lock-drift", + "file": "signed-push-smoke.yml", + "want": [ + "step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1", + "step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25" + ] + }, + { + "type": "header", + "file": "spark-theatre-gate.yml" + }, + { + "type": "header", + "file": "tag-ruleset-canon.yml" + }, + { + "type": "header", + "file": "tailscale-connect-reusable.yml" + } + ], + "workflowCount": 60, + "hasLock": true + }, + { + "repo": "hyperpolymath/stateful-artefacts", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "lock-drift", + "file": "instant-sync.yml", + "want": [ + "step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25", + "peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697" + ], + "got": [ + "peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697", + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333", + "actions/attest-build-provenance@4d101475d8b20a2381f78447822ac1eab6504dd8", + "softprops/action-gh-release@efb35369e0ad2afab669f228072c1b0d510eae64" + ], + "got": [ + "actions/attest-build-provenance@977bb373ede98d70efdf65b84cb5f73e068dcc2a", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406", + "softprops/action-gh-release@efb35369e0ad2afab669f228072c1b0d510eae64" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@a9a3281d620bdd195369c9a6f0bc1d661910965a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124", + "actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124" + ] + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 27, + "hasLock": true + }, + { + "repo": "hyperpolymath/statistikles", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "TagBot.yml" + }, + { + "type": "lock-drift", + "file": "TagBot.yml", + "want": [ + "juliaregistries/tagbot@v1.25.13" + ], + "got": [ + "juliaregistries/tagbot@v1.25.11" + ] + }, + { + "type": "header", + "file": "agda.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.1" + ] + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "lock-drift", + "file": "e2e.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3.5.0", + "julia-actions/julia-processcoverage@v1.2.2", + "actions/upload-artifact@v7.0.1" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "julia-actions/cache@v3.3.0", + "julia-actions/julia-processcoverage@v1.2.2", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "install-smoke.yml" + }, + { + "type": "lock-drift", + "file": "install-smoke.yml", + "want": [ + "actions/checkout@v7.0.1", + "julia-actions/setup-julia@v3.0.2", + "julia-actions/cache@v3.5.0", + "extractions/setup-just@v4.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "extractions/setup-just@v4.0.0", + "julia-actions/cache@v3.3.0", + "julia-actions/setup-julia@v3.0.2" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "anchore/sbom-action@v0.24.3", + "actions/upload-artifact@v7.0.1", + "actions/download-artifact@v8.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "anchore/sbom-action@v0.24.2", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@210f14e753c80064ec1bcae72f1d654dd9b0e687" + ], + "got": [] + }, + { + "type": "header", + "file": "zig.yml" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/supernorma", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rescript-bun-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 17, + "hasLock": false + }, + { + "repo": "hyperpolymath/system-et", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + } + ], + "workflowCount": 30, + "hasLock": true, + "error": "Map keys must be unique at line 81, column 1:\n\n#\nsteps:\n^\n" + }, + { + "repo": "hyperpolymath/tangle", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "lean-proofs.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "ocaml-ci.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 14, + "hasLock": false + }, + { + "repo": "hyperpolymath/technical-notes", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "hyperpolymath/tentacles-agentic-syllabus", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 7, + "hasLock": false + }, + { + "repo": "hyperpolymath/the-metadatastician", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "changelog-gate.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 10, + "hasLock": true + }, + { + "repo": "hyperpolymath/thunderbird-template-reloaded", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "k9-svc-validation.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/tlaiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + } + ], + "workflowCount": 18, + "hasLock": true, + "error": "Map keys must be unique at line 124, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/TradeUnionism.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/tree-navigator", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "haskell-actions/setup@6037f33647c3f17758a2356c80fc4a53d7e0685d" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "comprehensive-quality.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "trufflesecurity/trufflehog@0186870afd2c4a90def791d80260923ba583d076" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "trufflesecurity/trufflehog@f714bf454f350590f4a24c3ddb1aef02c35bf5b6" + ] + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "hyperpolymath/trigger", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ada-ci.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "lock-drift", + "file": "dogfood-gate.yml", + "want": [ + "actions/checkout@v4.3.1", + "hyperpolymath/a2ml-validate-action@e558e79200c06226e7b9477004d6792b9c215b33", + "hyperpolymath/k9-validate-action@3e091a341022b8c1bfa8cc86ebc1271bd20c1fdb" + ], + "got": [ + "actions/checkout@v4.3.1" + ] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@d5fe075a50ab3ce4f41614d66ed77f152fda134f" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 9, + "hasLock": true + }, + { + "repo": "hyperpolymath/trope-checker", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f31a5a4ba591d544b65f91f6d78b136e07756f0" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@cc58c0cb23f73fc2019ce85a56a468e5248a93b3" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8750b94ac1bbe8c51ad13fe106669b13478f0b62" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "trope-check.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 26, + "hasLock": true + }, + { + "repo": "hyperpolymath/trope-particularity-workbench", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "trope-check.yml" + } + ], + "workflowCount": 7, + "hasLock": true + }, + { + "repo": "hyperpolymath/tropical-types", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci-contexts.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "lean.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "standards-pipeline.yml", + "want": [ + "hyperpolymath/standards@ed5e3f651305dd1ce0d0b5d2d08b97a963634632" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 9, + "hasLock": true + }, + { + "repo": "hyperpolymath/twingate-helm-deploy", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 13, + "hasLock": true + }, + { + "repo": "hyperpolymath/typed-wasm", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "c5-regenerate.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "contract-gate.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/typedqliser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-ffi-gate.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "provable.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + } + ], + "workflowCount": 20, + "hasLock": true, + "error": "Map keys must be unique at line 124, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/typell", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "e2e.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "proof-gate.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 18, + "hasLock": false + }, + { + "repo": "hyperpolymath/ubicity", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-artifact@v7.0.1", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-artifact@v7.0.1", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "finishingbot.yml" + } + ], + "workflowCount": 23, + "hasLock": true, + "error": "Map keys must be unique at line 34, column 9:\n\n toolchain: v1\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/unified-api-adapter", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.2" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/unified-dataset-vocab", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/universal-chat-extractor", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a", + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@v3.99.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "hyperpolymath/standards@main", + "trufflesecurity/trufflehog@v3.97.5" + ] + }, + { + "type": "dangling", + "ref": "hyperpolymath/standards@main" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/universal-extension-format", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346", + "actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9", + "haskell-actions/setup@6037f33647c3f17758a2356c80fc4a53d7e0685d" + ] + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 14, + "hasLock": true + }, + { + "repo": "hyperpolymath/universal-language-server-plugin", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "hyperpolymath/universal-project-manager", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 16, + "hasLock": false + }, + { + "repo": "hyperpolymath/valence-shell", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "bridge-forbidden-phrases.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "cflite_batch.yml" + }, + { + "type": "missing-lock", + "file": "cflite_pr.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "compilation_tests.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "echidna-validation.yml" + }, + { + "type": "missing-lock", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "idris-verification.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "lean-verification.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rust-cli.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "validation.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 24, + "hasLock": false + }, + { + "repo": "hyperpolymath/vcl-ut", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "backend-matrix.yml" + }, + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "cargo-audit.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "e2e.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "openssf-compliance.yml" + }, + { + "type": "missing-lock", + "file": "parse-gate.yml" + }, + { + "type": "missing-lock", + "file": "proof-corpus.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + } + ], + "workflowCount": 25, + "hasLock": false, + "error": "Map keys must be unique at line 126, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/vcs-ircd", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "aur-publish.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "container.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@v7.0.1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "language-policy.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 18, + "hasLock": true, + "error": "Map keys must be unique at line 55, column 9:\n\n toolchain: v1\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/veridical-simulation-core", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "spark-theatre-gate.yml" + }, + { + "type": "lock-drift", + "file": "spark-theatre-gate.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "hyperpolymath/verisimdb", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "bridge-gate.yml" + }, + { + "type": "header", + "file": "build-validation.yml" + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "coq-build.yml" + }, + { + "type": "header", + "file": "doc-consonance.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "elixir-ci.yml" + }, + { + "type": "header", + "file": "fuzz.yml" + }, + { + "type": "header", + "file": "ghcr-publish.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "reuse.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "actions/checkout@v7.0.1", + "dtolnay/rust-toolchain@stable", + "rustsec/audit-check@v2.0.0", + "taiki-e/install-action@v2.87.25", + "actions/upload-artifact@v7.0.1" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "dtolnay/rust-toolchain@stable", + "rustsec/audit-check@v2.0.0", + "taiki-e/install-action@v2.87.21" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-scan.yml" + }, + { + "type": "lock-drift", + "file": "security-scan.yml", + "want": [ + "hyperpolymath/panic-attack@b689a74d2762a1c19839ae3fbd59b7fe5ef920ea" + ], + "got": [ + "hyperpolymath/panic-attack@27b3d93b11fbfc03cee695e791904d741ce2b24b" + ] + }, + { + "type": "header", + "file": "spark-theatre-gate.yml" + } + ], + "workflowCount": 25, + "hasLock": true + }, + { + "repo": "hyperpolymath/verisimdb-data", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "index-freshness.yml" + }, + { + "type": "header", + "file": "ingest.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "rsr-antipattern.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "header", + "file": "zig-ffi.yml" + } + ], + "workflowCount": 23, + "hasLock": true + }, + { + "repo": "hyperpolymath/verisimiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "abi-ffi-gate.yml" + }, + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "provable.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + } + ], + "workflowCount": 21, + "hasLock": false, + "error": "Map keys must be unique at line 176, column 7:\n\n id-token: write\n contents: write\n ^\n" + }, + { + "repo": "hyperpolymath/vexometer", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + } + ], + "workflowCount": 15, + "hasLock": true + }, + { + "repo": "hyperpolymath/vext", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 12, + "hasLock": false + }, + { + "repo": "hyperpolymath/ViableSystems.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/vocarium", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.37.9" + ] + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.1" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "vocarium-ci.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 28, + "hasLock": true + }, + { + "repo": "hyperpolymath/volumod", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "hyperpolymath/voyage-enterprise-decision-system", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 18, + "hasLock": false, + "error": "Map keys must be unique at line 30, column 9:\n\n toolchain: stable\n with:\n ^\n" + }, + { + "repo": "hyperpolymath/wokelang", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "cargo-audit.yml" + }, + { + "type": "missing-lock", + "file": "cflite_batch.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "coq-proofs.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "e2e.yml" + }, + { + "type": "missing-lock", + "file": "fuzz-pr.yml" + }, + { + "type": "missing-lock", + "file": "ghcr-publish.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "lean-proofs.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "ocaml-core.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "rust-ci.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "security.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 24, + "hasLock": false + }, + { + "repo": "hyperpolymath/wokelangiser", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "branch-cleanup.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8dc2bf039d1ff0372d650895c46bea7fbaec68ff" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c65436ee3351cd6b0fa14b142938b195efc77586" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + } + ], + "workflowCount": 18, + "hasLock": true + }, + { + "repo": "hyperpolymath/wordpress-tools", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "lock-drift", + "file": "journal-theme-php-standards.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "shivammathur/setup-php@eb7c497e18156a6bbabfef1d3a82760b9eda3962", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9" + ], + "got": [ + "actions/cache@5a3ec84eff668545956fd18022155c47e93e2684", + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f", + "shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240" + ] + }, + { + "type": "lock-drift", + "file": "journal-theme-rust-ci.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "dtolnay/rust-toolchain@6bed0761d98439e5a578e2877258200ad565ba87", + "swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6" + ], + "got": [ + "swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5", + "actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd", + "dtolnay/rust-toolchain@6bed0761d98439e5a578e2877258200ad565ba87" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "plugin-conflict-mapper-php.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9" + ], + "got": [ + "actions/cache@5a3ec84eff668545956fd18022155c47e93e2684", + "actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683" + ] + }, + { + "type": "lock-drift", + "file": "project-wharf-rust-ci.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "dtolnay/rust-toolchain@6bed0761d98439e5a578e2877258200ad565ba87", + "swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6" + ], + "got": [ + "swatinem/rust-cache@9d47c6ad4b02e050fd481d890b2ea34778fd09d6", + "actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11", + "dtolnay/rust-toolchain@d0592fe69e35bc8f12e3dbaf9ad2694d976cb8e3" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "hyperpolymath/wsl-compute-governor-dispatcher", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "hyperpolymath/xmlpull-zig", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/ZeroProb.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "hyperpolymath/zerostep", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8f2ee50841e216cd8c192eeb68953118190f105c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "gitleaks/gitleaks-action@e0c47f4f8be36e29cdc102c57e68cb5cbf0e8d1e", + "trufflesecurity/trufflehog@4dd8831c5f12599465d4d45c3c447b4018a34c85" + ] + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 20, + "hasLock": true + }, + { + "repo": "hyperpolymath/zerotier-k8s-link", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 13, + "hasLock": false + }, + { + "repo": "hyperpolymath/zig-boringtls", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/zig-dnssec", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/zig-icu-collation", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/zig-unorm", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "hyperpolymath/zotero-tools", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "dawidd6/action-send-mail@v22" + ], + "got": [ + "dawidd6/action-send-mail@v3.12.0" + ] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4", + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@main" + ], + "got": [ + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@main" + ] + } + ], + "workflowCount": 10, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/688-attack-hub", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/deploy-pages@v5.0.1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a" + ] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/airborne-submarine-squadron", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@5a0891e9e58b785181a92e141505ca96ca987b42" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/befunge93-vault-cracker", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dependabot-automerge.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 13, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/blue-screen-of-app", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main_sweb-app.yml" + }, + { + "type": "lock-drift", + "file": "main_sweb-app.yml", + "want": [ + "actions/checkout@v7.0.1", + "denoland/setup-deno@v2.0.5", + "actions/upload-artifact@v7.0.2", + "actions/download-artifact@v8.0.2", + "azure/webapps-deploy@v3.0.8" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "azure/webapps-deploy@v3.0.8", + "denoland/setup-deno@v2.0.5" + ] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "publish-container.yml" + }, + { + "type": "lock-drift", + "file": "publish-container.yml", + "want": [ + "actions/checkout@v7.0.1", + "docker/login-action@v4.6.0", + "docker/metadata-action@v6.2.0", + "docker/build-push-action@v7.4.0", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "docker/build-push-action@v7.3.0", + "docker/login-action@v4.6.0", + "docker/metadata-action@v6.2.0" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "rescript-deno-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "static.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/chronicles-of-slavia", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "oikosbot.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proof-gate.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 31, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/dosovoi", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 3, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/enaction-engine", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@cdf488f595d80d6e07e03d4674febd5ab45fa938" + ] + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "oikosbot.yml" + }, + { + "type": "lock-drift", + "file": "oikosbot.yml", + "want": [ + "actions/checkout@v7.0.1", + "hyperpolymath/oikosbot@v0.1.3", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0", + "hyperpolymath/oikosbot@v0.1.3" + ] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 29, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/enterglide-ncc-137-k", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 2, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/evil-weevil", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "hyperpolymath/cicd-suite@55556cf5ba71ba744695861503c13148d3915a5d" + ], + "got": [] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "seam.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.1" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/f117a-stealth-glider", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 5, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/f19-stealth-glider", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/deploy-pages@v5.0.1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a" + ] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 5, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/first-post", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.1" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 26, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/game-server-admin", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-contract.yml" + }, + { + "type": "header", + "file": "actions-lock.yml" + }, + { + "type": "lock-drift", + "file": "actions-lock.yml", + "want": [ + "step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1" + ] + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + }, + { + "type": "header", + "file": "cross-platform.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d", + "actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef" + ], + "got": [ + "hyperpolymath/smtp-notify-action@22e7bdb322c430c1d0dac6b3bb307f4bb139d0be" + ] + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25", + "actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333", + "actions/attest-build-provenance@4d101475d8b20a2381f78447822ac1eab6504dd8", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/attest-build-provenance@4d101475d8b20a2381f78447822ac1eab6504dd8", + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124", + "actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124" + ] + } + ], + "workflowCount": 19, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/hotchocolabot", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 4, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/knot-rider", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.3" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ] + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 27, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/megadog", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "boj-build.yml" + }, + { + "type": "missing-lock", + "file": "casket-pages.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "dogfood-gate.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "language-policy.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 15, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/not-so-serious-software", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/planer-1", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 2, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/pong-ping", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.37.9" + ] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f31a5a4ba591d544b65f91f6d78b136e07756f0" + ], + "got": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@cc58c0cb23f73fc2019ce85a56a468e5248a93b3" + ], + "got": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ] + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.2.0" + ] + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3" + ] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8750b94ac1bbe8c51ad13fe106669b13478f0b62" + ], + "got": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ] + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.1" + ] + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + } + ], + "workflowCount": 28, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/pow-the-game", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 11, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/project-ovine", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@892497fe373744874316710966b81ae6f0ea9e66" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@412a7031577112b31ee287cc6060179d638d6500" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "sonarsource/sonarqube-scan-action@d209202bc7d53ff1cc128f7f907dac145c9d6ae9" + ], + "got": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "sonarsource/sonarqube-scan-action@ba9859eae8dd6bd29e412f25ddbbef3d032000f4" + ] + } + ], + "workflowCount": 27, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/proof-of-work", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-verify.yml" + }, + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "cargo-audit.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "lock-drift", + "file": "casket-pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "cflite_batch.yml" + }, + { + "type": "header", + "file": "cflite_pr.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@v4.38.0" + ] + }, + { + "type": "header", + "file": "container.yml" + }, + { + "type": "lock-drift", + "file": "container.yml", + "want": [ + "actions/checkout@v7.0.1", + "docker/setup-buildx-action@v4.4.1", + "docker/login-action@v4.6.0", + "docker/metadata-action@v6.2.0", + "docker/build-push-action@v7.4.0", + "actions/attest-build-provenance@v4.2.2" + ], + "got": [ + "actions/attest-build-provenance@v4.2.2", + "actions/checkout@v7.0.1", + "docker/build-push-action@v7.3.0", + "docker/login-action@v4.6.0", + "docker/metadata-action@v6.2.0", + "docker/setup-buildx-action@v4.3.0" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "generator-generic-ossf-slsa3-publish.yml" + }, + { + "type": "lock-drift", + "file": "generator-generic-ossf-slsa3-publish.yml", + "want": [ + "actions/checkout@v7.0.1", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1" + ] + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@81dbf2dd854b1444fd6236fa2352474383b2c2b9" + ], + "got": [] + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@d135b05bfc647d0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "header", + "file": "publish.yml" + } + ], + "workflowCount": 25, + "hasLock": true, + "error": "Map keys must be unique at line 47, column 9:\n\n toolchain: master\n with:\n ^\n" + }, + { + "repo": "Invisible-Door-Studios/sr71-blackglider", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 28, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/stealth-glider-ecosystem", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "anchor-drift.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 3, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/tardis-rule-disruption", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 2, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/the-nash-equilibrium", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "lock-sync-gate.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "lock-drift", + "file": "release.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.1", + "softprops/action-gh-release@v3.0.3", + "slsa-framework/slsa-github-generator@f7dd8c54c2067bafc12ca7a55595d5ee9b75204a" + ] + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "rsr-antipattern.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "lock-drift", + "file": "static-analysis-gate.yml", + "want": [ + "actions/checkout@v7.0.1", + "actions/upload-artifact@v7.0.2", + "erlef/setup-beam@v1.24.1", + "actions/download-artifact@v8.0.2" + ], + "got": [ + "actions/checkout@v7.0.1", + "actions/download-artifact@v8.0.1", + "actions/upload-artifact@v7.0.1", + "erlef/setup-beam@v1.24.1" + ] + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 29, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/thejeffparadox", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "codeql.yml" + }, + { + "type": "missing-lock", + "file": "comprehensive-quality.yml" + }, + { + "type": "missing-lock", + "file": "conversation.yml" + }, + { + "type": "missing-lock", + "file": "deploy.yml" + }, + { + "type": "missing-lock", + "file": "governance.yml" + }, + { + "type": "missing-lock", + "file": "greetings.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "instant-sync.yml" + }, + { + "type": "missing-lock", + "file": "julia-deps.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labeler.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "metrics-report.yml" + }, + { + "type": "missing-lock", + "file": "mirror.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "push-email-notify.yml" + }, + { + "type": "missing-lock", + "file": "release.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "stale.yml" + }, + { + "type": "missing-lock", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 22, + "hasLock": false + }, + { + "repo": "Invisible-Door-Studios/universal-modding-studio", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f31a5a4ba591d544b65f91f6d78b136e07756f0" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@cc58c0cb23f73fc2019ce85a56a468e5248a93b3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8750b94ac1bbe8c51ad13fe106669b13478f0b62" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@fcb8669169b4e9f5d9848608df880ae5fae812b4" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "spark-ci.yml", + "want": [ + "actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11", + "actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57" + ], + "got": [] + } + ], + "workflowCount": 16, + "hasLock": true + }, + { + "repo": "Invisible-Door-Studios/x15-rocket-glider", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 2, + "hasLock": false + }, + { + "repo": "metadatastician/.github", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 3, + "hasLock": false + }, + { + "repo": "metadatastician/authority-watch", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 3, + "hasLock": false + }, + { + "repo": "metadatastician/berry-blocks", + "archived": false, + "fork": false, + "findings": [], + "workflowCount": 1, + "hasLock": true + }, + { + "repo": "metadatastician/berrywiki", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "header", + "file": "estate-checks.yml" + }, + { + "type": "missing-lock", + "file": "estate-checks.yml" + }, + { + "type": "header", + "file": "fuzz.yml" + }, + { + "type": "missing-lock", + "file": "fuzz.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "scorecard.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "workflow-lint.yml" + } + ], + "workflowCount": 9, + "hasLock": false + }, + { + "repo": "metadatastician/berrywiki-course-template", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "wiki.yml" + }, + { + "type": "missing-lock", + "file": "wiki.yml" + } + ], + "workflowCount": 2, + "hasLock": false + }, + { + "repo": "metadatastician/berrywiki-wiki-spike", + "archived": false, + "fork": false, + "findings": [], + "workflowCount": 0 + }, + { + "repo": "metadatastician/burble", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "dependency-audit.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "workflow-safety.yml" + } + ], + "workflowCount": 31, + "hasLock": true + }, + { + "repo": "metadatastician/cadastra", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "oikosbot.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 29, + "hasLock": true + }, + { + "repo": "metadatastician/cerro-torre", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "formal-verification.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "oikosbot.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "pqcrypto-build-test.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 8, + "hasLock": false + }, + { + "repo": "metadatastician/cleave", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependency-audit.yml" + }, + { + "type": "header", + "file": "kernel.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "oikosbot.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8750b94ac1bbe8c51ad13fe106669b13478f0b62" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "structure-check.yml" + }, + { + "type": "header", + "file": "workflow-safety.yml" + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "metadatastician/common-signal", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f31a5a4ba591d544b65f91f6d78b136e07756f0" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@cc58c0cb23f73fc2019ce85a56a468e5248a93b3" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@5b1d00229e5e8c0c0fbfedc7e80f37ea50f49236" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "rust-ci.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8750b94ac1bbe8c51ad13fe106669b13478f0b62" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + } + ], + "workflowCount": 24, + "hasLock": true + }, + { + "repo": "metadatastician/consent-aware-web", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@1acabd27e4517fd690b73815de25ae8806c942f0" + ], + "got": [] + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "spec-gates.yml" + } + ], + "workflowCount": 21, + "hasLock": true, + "error": "invalid uses $/.github/actions/setup-bun" + }, + { + "repo": "metadatastician/first-post", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63" + ] + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@8f31a5a4ba591d544b65f91f6d78b136e07756f0" + ], + "got": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ] + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@cc58c0cb23f73fc2019ce85a56a468e5248a93b3" + ], + "got": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "pages.yml", + "want": [ + "actions/checkout@v7.0.1", + "haskell-actions/setup@v2.12.1", + "actions/cache@v6.1.0", + "actions/configure-pages@v6.0.0", + "actions/upload-pages-artifact@v5.0.0", + "actions/deploy-pages@v5.0.1" + ], + "got": [ + "actions/cache@v6.1.0", + "actions/checkout@v7.0.1", + "actions/configure-pages@v6.0.0", + "actions/deploy-pages@v5.0.1", + "actions/upload-pages-artifact@v5.0.0", + "haskell-actions/setup@v2.12.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8750b94ac1bbe8c51ad13fe106669b13478f0b62" + ], + "got": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.1" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 26, + "hasLock": true + }, + { + "repo": "metadatastician/gossamer", + "archived": false, + "fork": false, + "findings": [], + "workflowCount": 30, + "hasLock": true + }, + { + "repo": "metadatastician/groove", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dependency-audit.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "oikosbot.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8750b94ac1bbe8c51ad13fe106669b13478f0b62" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-safety.yml" + } + ], + "workflowCount": 12, + "hasLock": true + }, + { + "repo": "metadatastician/hvn-dehallucinator", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "engine-guarantee.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proof-kernel.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 29, + "hasLock": true + }, + { + "repo": "metadatastician/IDApTIK", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "abi-conformance.yml" + }, + { + "type": "lock-drift", + "file": "abi-conformance.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" + ], + "got": [] + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "creusot-proof.yml" + }, + { + "type": "lock-drift", + "file": "creusot-proof.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9", + "actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a" + ], + "got": [] + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "vendor-winit-watch.yml" + } + ], + "workflowCount": 10, + "hasLock": true + }, + { + "repo": "metadatastician/insolvency-tycoon", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + } + ], + "workflowCount": 4, + "hasLock": true + }, + { + "repo": "metadatastician/knot-knot", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "actions/checkout@v7.0.1", + "github/codeql-action@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2" + ], + "got": [ + "actions/checkout@v7.0.1", + "github/codeql-action@1c5b675653bb5c22dbe9b12b556ec555138e09fd" + ] + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "lock-drift", + "file": "sonarqube.yml", + "want": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.3.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "sonarsource/sonarqube-scan-action@v8.2.2" + ] + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 37, + "hasLock": true + }, + { + "repo": "metadatastician/kyq", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "lock-sync-gate.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 36, + "hasLock": true + }, + { + "repo": "metadatastician/large-language-michelangelo", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "main-estate-audit.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 4, + "hasLock": false + }, + { + "repo": "metadatastician/lintel", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 36, + "hasLock": true + }, + { + "repo": "metadatastician/marid", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "capability-spec.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "dco.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "julia-ci.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "lock-sync-gate.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "web-ci.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 39, + "hasLock": true + }, + { + "repo": "metadatastician/metadatastician-governance", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "oikosbot.yml", + "want": [ + "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1", + "github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@2ccc38eaaf8787034ed099e0b72c9ca8b85dc563" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + } + ], + "workflowCount": 10, + "hasLock": true + }, + { + "repo": "metadatastician/MetaManifold-Evidence", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "proofs.yml" + } + ], + "workflowCount": 1, + "hasLock": false + }, + { + "repo": "metadatastician/odraz", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 35, + "hasLock": true + }, + { + "repo": "metadatastician/paint-type", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "bridge-verify.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "collab-ci.yml" + }, + { + "type": "header", + "file": "coverage.yml" + }, + { + "type": "header", + "file": "cross-platform.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "fuzz-smoke.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "host.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "idris-ci.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "oikosbot.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "proofs.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "shell-e2e.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "verify-manifests.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 36, + "hasLock": true + }, + { + "repo": "metadatastician/phi-LAM", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 4, + "hasLock": true + }, + { + "repo": "metadatastician/progblocks", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@7b931ef7f9dbb8d2386fc9170895708c0acae95c" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@c51fb9761ebdbf9f6fb46300e047635b1c8afcd3" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "metadatastician/proglanging-languages", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@74d2f66f575246cf6e313ae7775f44df6e097ff2" + ], + "got": [] + } + ], + "workflowCount": 2, + "hasLock": true + }, + { + "repo": "metadatastician/rokur", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "ci.yml" + }, + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "metadatastician/selur", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "hypatia-scan.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "oikosbot.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "metadatastician/sim-public-relations", + "archived": false, + "fork": false, + "findings": [], + "workflowCount": 26, + "hasLock": true + }, + { + "repo": "metadatastician/spline", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "alignment.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "oikosbot.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@8750b94ac1bbe8c51ad13fe106669b13478f0b62" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@092dedada188f56c5915f74a5fd40aac093742c3" + ], + "got": [] + }, + { + "type": "header", + "file": "workflow-safety.yml" + } + ], + "workflowCount": 9, + "hasLock": true + }, + { + "repo": "metadatastician/standard-operating-sychopathy", + "archived": false, + "fork": false, + "findings": [], + "workflowCount": 0 + }, + { + "repo": "metadatastician/stapeln", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "spark-theatre-gate.yml", + "want": [ + "hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2" + ], + "got": [] + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 17, + "hasLock": true + }, + { + "repo": "metadatastician/svalinn", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "ci.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "oikosbot.yml" + }, + { + "type": "header", + "file": "publish-image.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "schema-lint.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "surface-contract-lint.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + }, + { + "type": "governance-verifier-compatibility", + "files": [ + "governance.yml" + ], + "pin": "fad242d35291de1898242d6737ba02b74a59a2f2", + "fixPin": "c11c255e1b5546854e874d1486d61d6d5a4da29a" + } + ], + "workflowCount": 21, + "hasLock": true + }, + { + "repo": "metadatastician/vordr", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "build-test.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "oikosbot.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "metadatastician/ZenodoDeposits.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "lock-drift", + "file": "codeql.yml", + "want": [ + "hyperpolymath/standards@7d51f30f992b51fe2b33119761901c594e266e82" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@7d51f30f992b51fe2b33119761901c594e266e82" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@7d51f30f992b51fe2b33119761901c594e266e82" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "main-estate-audit.yml", + "want": [ + "hyperpolymath/cicd-suite@4c772eb235b04455307d5c03cbbc4f45130f7f0f" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "mirror.yml", + "want": [ + "hyperpolymath/standards@7d51f30f992b51fe2b33119761901c594e266e82" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@7d51f30f992b51fe2b33119761901c594e266e82" + ], + "got": [] + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@7d51f30f992b51fe2b33119761901c594e266e82" + ], + "got": [] + } + ], + "workflowCount": 27, + "hasLock": true + }, + { + "repo": "metadatastician/ZeroInflatedCounts.jl", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "build-notification.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "deed-validate.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "docker-build.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "dogfood-summary.yml" + }, + { + "type": "header", + "file": "dot-wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "eclexiaiser-validate.yml" + }, + { + "type": "header", + "file": "empty-linter.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "groove-check.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "k9-validate.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "main-estate-audit.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "ossf-best-practices.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rsr-compliance-canary.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "rust-ci.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + } + ], + "workflowCount": 38, + "hasLock": true + }, + { + "repo": "metadatastician/_pathroot", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "container-build.yml" + }, + { + "type": "header", + "file": "dependabot-automerge.yml" + }, + { + "type": "header", + "file": "dogfood-gate.yml" + }, + { + "type": "header", + "file": "e2e.yml" + }, + { + "type": "header", + "file": "estate-rules.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "guix-nix-policy.yml" + }, + { + "type": "header", + "file": "guix-policy.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "instant-sync.yml" + }, + { + "type": "header", + "file": "jekyll-gh-pages.yml" + }, + { + "type": "header", + "file": "jekyll.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "mirror.yml" + }, + { + "type": "header", + "file": "npm-bun-blocker.yml" + }, + { + "type": "header", + "file": "openssf-compliance.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "release.yml" + }, + { + "type": "header", + "file": "rhodibot.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "header", + "file": "security-policy.yml" + }, + { + "type": "header", + "file": "sonarqube.yml" + }, + { + "type": "header", + "file": "static-analysis-gate.yml" + }, + { + "type": "header", + "file": "ts-blocker.yml" + }, + { + "type": "header", + "file": "wellknown-enforcement.yml" + }, + { + "type": "header", + "file": "workflow-linter.yml" + }, + { + "type": "policy-deno-drift", + "file": ".claude/CLAUDE.md" + } + ], + "workflowCount": 32, + "hasLock": true + }, + { + "repo": "stuff-of-awe/awesome-agda", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 4, + "hasLock": false + }, + { + "repo": "stuff-of-awe/awesome-coq", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "awesome-bot.yml" + }, + { + "type": "missing-lock", + "file": "deploy-pages.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "stuff-of-awe/awesome-fsharp", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "check-links.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "main.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "stuff-of-awe/awesome-gleam", + "archived": false, + "fork": true, + "findings": [ + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + }, + { + "type": "header", + "file": "test.yml" + } + ], + "workflowCount": 5, + "hasLock": true + }, + { + "repo": "stuff-of-awe/awesome-haskell", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd" + ], + "got": [] + } + ], + "workflowCount": 6, + "hasLock": true + }, + { + "repo": "stuff-of-awe/awesome-idris2", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "casket-pages.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@da2c748aad55c1a1dcba00b60fe4a35017bc6540" + ], + "got": [] + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "quality.yml" + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "lock-drift", + "file": "scorecard.yml", + "want": [ + "hyperpolymath/standards@210f14e753c80064ec1bcae72f1d654dd9b0e687" + ], + "got": [] + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "actions/checkout@v7.0.1", + "trufflesecurity/trufflehog@v3.98.0", + "gitleaks/gitleaks-action@v3.0.0" + ], + "got": [ + "actions/checkout@v7.0.1", + "gitleaks/gitleaks-action@v3.0.0", + "trufflesecurity/trufflehog@v3.97.9" + ] + }, + { + "type": "header", + "file": "security-policy.yml" + } + ], + "workflowCount": 12, + "hasLock": true + }, + { + "repo": "stuff-of-awe/awesome-ipfs", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "generated-pr.yml" + }, + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "pull_requests.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + }, + { + "type": "missing-lock", + "file": "stale.yml" + } + ], + "workflowCount": 6, + "hasLock": false + }, + { + "repo": "stuff-of-awe/awesome-nickel", + "archived": false, + "fork": false, + "findings": [ + { + "type": "header", + "file": "boj-build.yml" + }, + { + "type": "header", + "file": "codeql.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "header", + "file": "label-triage.yml" + }, + { + "type": "header", + "file": "labels.yml" + }, + { + "type": "header", + "file": "pages.yml" + }, + { + "type": "header", + "file": "push-email-notify.yml" + }, + { + "type": "lock-drift", + "file": "push-email-notify.yml", + "want": [ + "hyperpolymath/smtp-notify-action@v0.5.0" + ], + "got": [ + "hyperpolymath/smtp-notify-action@v0.3.0" + ] + }, + { + "type": "header", + "file": "scorecard.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 11, + "hasLock": true + }, + { + "repo": "stuff-of-awe/awesome-ocaml", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 4, + "hasLock": false + }, + { + "repo": "stuff-of-awe/awesome-provable", + "archived": false, + "fork": false, + "findings": [ + { + "type": "missing-lock", + "file": "label-triage.yml" + }, + { + "type": "missing-lock", + "file": "labels.yml" + }, + { + "type": "missing-lock", + "file": "pages.yml" + }, + { + "type": "missing-lock", + "file": "secret-scanner.yml" + } + ], + "workflowCount": 4, + "hasLock": false + }, + { + "repo": "stuff-of-awe/awesome-zig", + "archived": false, + "fork": true, + "findings": [ + { + "type": "header", + "file": "action.yml" + }, + { + "type": "header", + "file": "governance.yml" + }, + { + "type": "lock-drift", + "file": "governance.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "hypatia-scan.yml" + }, + { + "type": "lock-drift", + "file": "hypatia-scan.yml", + "want": [ + "hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a" + ], + "got": [] + }, + { + "type": "header", + "file": "runtime-policy.yml" + }, + { + "type": "header", + "file": "secret-scanner.yml" + }, + { + "type": "lock-drift", + "file": "secret-scanner.yml", + "want": [ + "hyperpolymath/standards@bd0df9ead7faf0cdfe0e13e7966d91e28d0101d4" + ], + "got": [] + } + ], + "workflowCount": 5, + "hasLock": true + } +] \ No newline at end of file diff --git a/scripts/annotate-clippy.sh b/scripts/annotate-clippy.sh index 6cba830..c776311 100644 --- a/scripts/annotate-clippy.sh +++ b/scripts/annotate-clippy.sh @@ -11,10 +11,11 @@ status=$? set -e cat "$messages" jq -r ' - def escape: tostring | gsub("%"; "%25") | gsub("\r"; "%0D") | gsub("\n"; "%0A") | gsub(","; "%2C") | gsub(":"; "%3A"); + def escape: tostring | gsub("%"; "%25") | gsub("\r"; "%0D") | gsub("\n"; "%0A"); + def property: escape | gsub(","; "%2C") | gsub(":"; "%3A"); select(.reason == "compiler-message") | .message as $m | select($m.level == "error" or $m.level == "warning") | ($m.spans | map(select(.is_primary)) | first // {}) as $s | - "::error file=\(($s.file_name // "Cargo.toml") | escape),line=\($s.line_start // 1)::\(($m.rendered // $m.message) | escape)" + "::error file=\(($s.file_name // "Cargo.toml") | property),line=\($s.line_start // 1)::\(($m.rendered // $m.message) | escape)" ' "$messages" exit "$status" diff --git a/scripts/check-lock-sync.sh b/scripts/check-lock-sync.sh index 35fd7ba..1ce1d35 100755 --- a/scripts/check-lock-sync.sh +++ b/scripts/check-lock-sync.sh @@ -48,7 +48,7 @@ jq -n --slurpfile lock "$scratch/lock.json" --slurpfile workflows "$scratch/refs if $want != $got then {type: "lock-drift", workflow: $w.path, missing: ($want - $got), stale: ($got - $want)} else empty end), ($l.workflows | keys[] | . as $p | select(all($ws[]; .path != $p)) | {type: "orphan-workflow", workflow: $p}), (((($l.workflows[] | refs[]), ($l.dependencies[] | (.uses // []) | refs[])) as $ref | - select($deps[$ref] == null) | {type: "dangling-edge", ref: $ref})), + select($deps[$ref] == null) | {type: "dangling-edge", ref: $ref})), ($deps | to_entries[] | select((.value.commit | type != "string") or ((.value.commit // "") | test("^sha1-[0-9a-f]{40}$") | not)) | {type: "invalid-commit", ref: .key}) ] | unique diff --git a/scripts/restore-reusable-lock-coverage.sh b/scripts/restore-reusable-lock-coverage.sh new file mode 100644 index 0000000..379f2ec --- /dev/null +++ b/scripts/restore-reusable-lock-coverage.sh @@ -0,0 +1,34 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: MPL-2.0 +# gh-actions-lock does not discover job-level reusable refs. Preserve the +# already-resolved graph and restore exact caller refs after regeneration. +# New refs still need resolved records; check-lock-sync fails closed on those. +set -euo pipefail +old=$1 +wf_dir=${2:-.github/workflows} +scratch=$(mktemp -d) +trap 'rm -rf "$scratch"' EXIT +yq -o=json '.' "$wf_dir/actions.lock" > "$scratch/current.json" +if [ -f "$old" ]; then + yq -o=json '.' "$old" > "$scratch/old.json" +else + echo '{"dependencies":{}}' > "$scratch/old.json" +fi +shopt -s nullglob +for file in "$wf_dir"/*.yml "$wf_dir"/*.yaml; do + yq -o=json '.' "$file" | jq --arg path ".github/workflows/$(basename "$file")" ' + .jobs[] | .uses? | select(type == "string") | + select(test("^[^/@]+/[^/@]+/\\.github/workflows/[^@]+@[^@[:space:]]+$")) | + capture("^(?[^/]+)/(?[^/]+)/[^@]+@(?.+)$") | + {workflow: $path, dependency: (.owner + "/" + .repo + "@" + .ref)} + ' >> "$scratch/reusables.jsonl" +done +jq -s '.' "$scratch/reusables.jsonl" > "$scratch/reusables.json" +jq --slurpfile old "$scratch/old.json" --slurpfile refs "$scratch/reusables.json" ' + .dependencies = ($old[0].dependencies + .dependencies) | + reduce $refs[0][] as $r (.; .workflows[$r.workflow] = ((.workflows[$r.workflow] // []) + [$r.dependency] | unique)) +' "$scratch/current.json" > "$scratch/merged.json" +# Write only when parsing and merging both succeeded. The parent updater owns +# rollback if its subsequent authoritative or structural verification fails. +yq -P -o=yaml '.' "$scratch/merged.json" > "$scratch/actions.lock" +cp "$scratch/actions.lock" "$wf_dir/actions.lock" diff --git a/scripts/tests/actions-lock-update-test.sh b/scripts/tests/actions-lock-update-test.sh new file mode 100644 index 0000000..5d7e6ef --- /dev/null +++ b/scripts/tests/actions-lock-update-test.sh @@ -0,0 +1,63 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: MPL-2.0 +set -euo pipefail +SCRIPTS="$(cd "$(dirname "$0")/.." && pwd)" +ROOT=$(mktemp -d) +trap 'rm -rf "$ROOT"' EXIT +mkdir -p "$ROOT/.github/workflows" +cd "$ROOT" +cat > .github/workflows/example.yml <<'YAML' +# SPDX-License-Identifier: MPL-2.0 +jobs: + example: + uses: owner/shared/.github/workflows/ci.yml@v1 +YAML +cat > .github/workflows/actions.lock <<'YAML' +version: v0.0.3 +workflows: + '.github/workflows/example.yml': ['owner/shared@v1'] +dependencies: + 'owner/shared@v1': + ref: v1 + commit: sha1-1111111111111111111111111111111111111111 + owner_id: 1 + repo_id: 2 +YAML +cp .github/workflows/example.yml original.yml +cp .github/workflows/actions.lock original.lock +cat > fake-gh <<'SH' +#!/usr/bin/env bash +set -eu +if [[ "$*" == *--verify-local* ]]; then + # The released verifier may mutate either input; neither mutation is ours. + echo '# verifier-only mutation' >> .github/workflows/example.yml + echo '# verifier-only lock mutation' >> .github/workflows/actions.lock + printf '{"valid":%s,"findings":[]}\n' "${FAKE_VERDICT:-true}" +else + # Model the released generator forgetting a job-level reusable dependency. + printf '%s\n' '{"version":"v0.0.3","workflows":{".github/workflows/example.yml":[]},"dependencies":{}}' > .github/workflows/actions.lock + sed -i '1i# This workflow is managed by gh actions-lock.' .github/workflows/example.yml +fi +SH +chmod +x fake-gh +export GH_BIN="$ROOT/fake-gh" +bash "$SCRIPTS/update-actions-lock.sh" --verify-local +cmp original.yml .github/workflows/example.yml +cmp original.lock .github/workflows/actions.lock +echo 'PASS: successful verify is observational for YAML and lock' +export FAKE_VERDICT=false +if bash "$SCRIPTS/update-actions-lock.sh"; then echo 'FAIL: invalid lock accepted'; exit 1; fi +cmp original.yml .github/workflows/example.yml +cmp original.lock .github/workflows/actions.lock +echo 'PASS: failed update rolls back every original byte' +export FAKE_VERDICT='"unexpected-string"' +if bash "$SCRIPTS/update-actions-lock.sh" --verify-local; then echo 'FAIL: malformed verdict accepted'; exit 1; fi +cmp original.yml .github/workflows/example.yml +cmp original.lock .github/workflows/actions.lock +echo 'PASS: malformed verdict fails closed and restores inputs' +export FAKE_VERDICT=true +bash "$SCRIPTS/update-actions-lock.sh" +[ "$(head -1 .github/workflows/example.yml)" = '# SPDX-License-Identifier: MPL-2.0' ] +! grep -q verifier-only .github/workflows/example.yml .github/workflows/actions.lock +bash "$SCRIPTS/check-lock-sync.sh" +echo 'PASS: update preserves reusable closure, SPDX ordering, and discards verifier mutations' diff --git a/scripts/update-actions-lock.sh b/scripts/update-actions-lock.sh index cee189a..2d3e5e6 100755 --- a/scripts/update-actions-lock.sh +++ b/scripts/update-actions-lock.sh @@ -20,6 +20,12 @@ if [ "${1:-}" = "--verify-local" ]; then fi WF_DIR="${1:-.github/workflows}" +# gh-actions-lock operates on the repository-root workflow directory. Do not +# snapshot one directory while asking the tool to verify a different one. +[ "$WF_DIR" = .github/workflows ] || { + echo 'update-actions-lock: run from the repository root; only .github/workflows is supported' >&2 + exit 2 +} GH_BIN="${GH_BIN:-gh}" [ -d "$WF_DIR" ] || { echo "update-actions-lock: no workflow directory: $WF_DIR" >&2; exit 1; } @@ -216,6 +222,20 @@ snapshot_workflows "$SNAPSHOT/original-workflows" if [ "$MODE" = update ]; then "$GH_BIN" actions-lock + bash "$(dirname "${BASH_SOURCE[0]}")/restore-reusable-lock-coverage.sh" \ + "$SNAPSHOT/actions.lock" "$WF_DIR" + # The generator prepends a management marker. Keep SPDX first so a valid + # lock refresh cannot reintroduce the header failures repaired in PR #145. + for file in "$WF_DIR"/*.yml "$WF_DIR"/*.yaml; do + [ -f "$file" ] || continue + spdx=$(grep -m1 '^# SPDX-License-Identifier:' "$file") || { + echo "::error::$file has no SPDX header; choose its correct licence first" + exit 1 + } + { printf '%s\n' "$spdx"; grep -v '^# SPDX-License-Identifier:' "$file"; } \ + > "$SNAPSHOT/normalised.yml" + cp "$SNAPSHOT/normalised.yml" "$file" + done fi # Despite its name, --verify-local can mutate workflow bytes (including From 796e946958184f1d2a727841ef8040fbdbd34deb Mon Sep 17 00:00:00 2001 From: "Jonathan D.A. Jewell" <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 18:21:05 +0100 Subject: [PATCH 06/12] Update scripts/tests/actions-lock-update-test.sh Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Signed-off-by: Jonathan D.A. Jewell <6759885+hyperpolymath@users.noreply.github.com> --- scripts/tests/actions-lock-update-test.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/tests/actions-lock-update-test.sh b/scripts/tests/actions-lock-update-test.sh index 5d7e6ef..c5e5a46 100644 --- a/scripts/tests/actions-lock-update-test.sh +++ b/scripts/tests/actions-lock-update-test.sh @@ -58,6 +58,8 @@ echo 'PASS: malformed verdict fails closed and restores inputs' export FAKE_VERDICT=true bash "$SCRIPTS/update-actions-lock.sh" [ "$(head -1 .github/workflows/example.yml)" = '# SPDX-License-Identifier: MPL-2.0' ] -! grep -q verifier-only .github/workflows/example.yml .github/workflows/actions.lock +if grep -q verifier-only .github/workflows/example.yml .github/workflows/actions.lock; then + echo 'FAIL: verifier mutations survived'; exit 1 +fi bash "$SCRIPTS/check-lock-sync.sh" echo 'PASS: update preserves reusable closure, SPDX ordering, and discards verifier mutations' From c004362ca2119f9ddae6e215fd236b42da6066c3 Mon Sep 17 00:00:00 2001 From: "coderabbitai[bot]" <136622811+coderabbitai[bot]@users.noreply.github.com> Date: Wed, 14 Oct 2026 17:22:34 +0000 Subject: [PATCH 07/12] docs(ci): document annotation escaping and actions lock helper behavior --- scripts/annotate-clippy.sh | 2 ++ scripts/check-lock-sync.sh | 6 +++++- scripts/update-actions-lock.sh | 15 +++++++++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/scripts/annotate-clippy.sh b/scripts/annotate-clippy.sh index c776311..2b50d6b 100644 --- a/scripts/annotate-clippy.sh +++ b/scripts/annotate-clippy.sh @@ -11,7 +11,9 @@ status=$? set -e cat "$messages" jq -r ' + # Stringify the input and escape %, CR and LF for an annotation message. def escape: tostring | gsub("%"; "%25") | gsub("\r"; "%0D") | gsub("\n"; "%0A"); + # Apply message escaping and escape commas and colons for property values. def property: escape | gsub(","; "%2C") | gsub(":"; "%3A"); select(.reason == "compiler-message") | .message as $m | select($m.level == "error" or $m.level == "warning") | diff --git a/scripts/check-lock-sync.sh b/scripts/check-lock-sync.sh index 1ce1d35..e097c0a 100755 --- a/scripts/check-lock-sync.sh +++ b/scripts/check-lock-sync.sh @@ -31,7 +31,9 @@ for file in "${files[@]}"; do done jq -s '.' "$scratch/refs.jsonl" > "$scratch/refs.json" jq -n --slurpfile lock "$scratch/lock.json" --slurpfile workflows "$scratch/refs.json" ' - # Owner/repo is case-insensitive; refs remain case-sensitive. Subpaths collapse. + # Normalise external refs to owner/repo@ref, folding owner/repo case and + # dropping subpaths while preserving ref case. Local ./ and docker:// refs + # yield no value; non-strings and malformed external refs raise jq errors. def norm: if type != "string" then error("uses/ref must be a string") elif startswith("./") or startswith("docker://") then empty @@ -39,6 +41,8 @@ jq -n --slurpfile lock "$scratch/lock.json" --slurpfile workflows "$scratch/refs capture("^(?[^/@]+)/(?[^/@]+)(?:/[^@]+)?@(?[^@[:space:]]+)$") | ((.owner + "/" + .repo | ascii_downcase) + "@" + .ref) else error("invalid external uses/ref: " + .) end; + # Return a sorted, deduplicated array of normalised refs, omitting local and + # Docker refs. Non-arrays and errors from norm abort validation. def refs: if type != "array" then error("lock refs must be arrays") else map(norm) | unique end; $lock[0] as $l | $workflows[0] as $ws | ($l.dependencies | to_entries | map({key: (.key | norm), value: .value}) | from_entries) as $deps | diff --git a/scripts/update-actions-lock.sh b/scripts/update-actions-lock.sh index 2d3e5e6..4c30939 100755 --- a/scripts/update-actions-lock.sh +++ b/scripts/update-actions-lock.sh @@ -33,6 +33,9 @@ GH_BIN="${GH_BIN:-gh}" SNAPSHOT="$(mktemp -d)" COMPLETE=false +# Copy top-level regular .yml and .yaml files from WF_DIR into the directory +# given by $1, creating it if needed and overwriting files with matching names. +# Directory creation, discovery or copy failures return a non-zero status. snapshot_workflows() { destination=$1 mkdir -p "$destination" @@ -43,6 +46,9 @@ snapshot_workflows() { done } +# Copy top-level regular files from the snapshot directory given by $1 back +# into WF_DIR, overwriting matching names without removing additional files. +# Discovery or copy failures return a non-zero status. restore_workflows() { source=$1 @@ -125,6 +131,12 @@ is_advisory_category() { esac } +# Run GH_BIN's local verifier, which may modify workflows and actions.lock; +# the caller restores those inputs. With jq, return 0 for valid:true or for +# valid:false explained solely by the three exceptions below and optional +# sha-as-ref advisories; advisories alone cannot explain valid:false. +# Missing or malformed output returns the tool's non-zero status, or 1 if it exited 0; +# unaccepted findings return 1. Without jq, propagate the plain verifier status. verify_lock_coverage() { # gh-actions-lock (v0.1.6, and still v0.2.0) does not recognise # reusable-workflow `uses:` paths. GitHub's startup enforcement nevertheless @@ -202,6 +214,9 @@ verify_lock_coverage() { fi } +# EXIT handler: unless COMPLETE is true, restore saved workflows and the lock +# (or remove the lock if none was saved), then remove SNAPSHOT and exit with +# the entry status. A restoration or removal failure can terminate this early. cleanup() { status=$? if [ "$COMPLETE" != true ]; then From 0b1947995763141d7a447b6eab5235c9d5445116 Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 17:24:24 +0000 Subject: [PATCH 08/12] fix(quality): harden workflows and align community-health baseline with Standards and RSR template Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- .gitattributes | 3 +- .github/CODEOWNERS | 9 +- .github/CODE_OF_CONDUCT.md | 69 +++ .github/FUNDING.yml | 2 +- .github/GOVERNANCE.md | 4 + .github/ISSUE_TEMPLATE/bug_report.yml | 58 +++ .github/ISSUE_TEMPLATE/config.yml | 13 + .github/ISSUE_TEMPLATE/feature_request.yml | 37 ++ .github/SECURITY.md | 6 + .github/SUPPORT.md | 4 + .github/dependabot.yml | 11 + .github/funding.yml | 4 - .github/pull_request_template.md | 51 +++ .github/workflows/actions.lock | 449 +++++++++----------- .github/workflows/boj-build.yml | 31 +- .github/workflows/cargo-audit.yml | 16 +- .github/workflows/casket-pages.yml | 26 +- .github/workflows/cflite_batch.yml | 8 +- .github/workflows/cflite_pr.yml | 8 +- .github/workflows/codeql.yml | 4 +- .github/workflows/dogfood-gate.yml | 20 +- .github/workflows/governance.yml | 2 +- .github/workflows/instant-sync.yml | 2 +- .github/workflows/push-email-notify.yml | 2 +- .github/workflows/rust-ci.yml | 4 +- .github/workflows/workflow-linter.yml | 26 +- .machine_readable/6a2/META.a2ml | 2 +- .machine_readable/descriptiles | 1 + .machine_readable/rsr-profile.a2ml | 16 + .tool-versions | 2 - .well-known | 1 + CODE_OF_CONDUCT.adoc | 28 +- CONTRIBUTING.adoc | 33 +- GOVERNANCE.adoc | 12 +- Justfile | 24 +- SECURITY.adoc | 466 ++++----------------- SUPPORT.adoc | 15 + docs/AFFIRMATION.adoc | 11 + docs/AUDIT.adoc | 11 + docs/CI-CD-REPAIR.adoc | 8 +- docs/STANDARDS-ALIGNMENT.adoc | 108 +++++ mise.toml | 70 +--- scripts/annotate-clippy.sh | 6 +- scripts/check-lock-sync.sh | 16 +- scripts/check-repository-health.sh | 40 ++ scripts/lock-graph.jq | 22 + scripts/restore-reusable-lock-coverage.sh | 13 +- scripts/tests/actions-lock-update-test.sh | 21 +- scripts/tests/check-lock-sync-test.sh | 15 +- scripts/tests/repository-health-test.sh | 33 ++ scripts/update-actions-lock.sh | 6 +- www/.well-known/security.txt | 10 +- 52 files changed, 1023 insertions(+), 836 deletions(-) create mode 100644 .github/CODE_OF_CONDUCT.md create mode 100644 .github/GOVERNANCE.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml create mode 100644 .github/SECURITY.md create mode 100644 .github/SUPPORT.md delete mode 100644 .github/funding.yml create mode 100644 .github/pull_request_template.md create mode 120000 .machine_readable/descriptiles create mode 100644 .machine_readable/rsr-profile.a2ml create mode 120000 .well-known create mode 100644 SUPPORT.adoc create mode 100644 docs/AFFIRMATION.adoc create mode 100644 docs/AUDIT.adoc create mode 100644 docs/STANDARDS-ALIGNMENT.adoc create mode 100644 scripts/check-repository-health.sh create mode 100644 scripts/lock-graph.jq create mode 100644 scripts/tests/repository-health-test.sh diff --git a/.gitattributes b/.gitattributes index 642662c..5d9330d 100644 --- a/.gitattributes +++ b/.gitattributes @@ -55,5 +55,6 @@ Containerfile text eol=lf *.gz binary # Lock files -Cargo.lock text eol=lf -diff +Cargo.lock text eol=lf +.github/workflows/actions.lock text eol=lf flake.lock text eol=lf -diff diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 3a3b7f2..a750202 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -6,7 +6,13 @@ * @hyperpolymath # Security-sensitive files require explicit ownership -SECURITY.md @hyperpolymath +SECURITY.adoc @hyperpolymath +.github/SECURITY.md @hyperpolymath +www/.well-known/security.txt @hyperpolymath +scripts/ @hyperpolymath +Cargo.toml @hyperpolymath +Cargo.lock @hyperpolymath +crates/rpa-plugin/ @hyperpolymath .github/workflows/ @hyperpolymath .machine_readable/ @hyperpolymath contractiles/ @hyperpolymath @@ -30,5 +36,4 @@ ROADMAP* @hyperpolymath # Build and CI Justfile @hyperpolymath -Makefile @hyperpolymath *.sh @hyperpolymath diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..acbd4f6 --- /dev/null +++ b/.github/CODE_OF_CONDUCT.md @@ -0,0 +1,69 @@ + +# Contributor Covenant Code of Conduct + +## Our pledge + +We as members, contributors, and leaders pledge to make participation in RPA +Elysium a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, caste, colour, religion, or sexual +identity and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our standards + +Positive behaviour includes demonstrating empathy and kindness, respecting +differing opinions and experiences, giving and accepting constructive feedback, +accepting responsibility and apologising for mistakes, and focusing on what +is best for the community. + +Unacceptable behaviour includes sexualised language or imagery and sexual +advances, trolling, insulting or derogatory comments and personal or political +attacks, harassment, publishing private information without permission, and +other conduct inappropriate in a professional setting. + +## Responsibilities and scope + +Jonathan D.A. Jewell (@hyperpolymath) is responsible for clarifying and enforcing +these standards and may remove or edit violating contributions, explaining +moderation decisions when appropriate. This policy applies in community spaces +and when someone officially represents the project in public. + +## Reporting and confidentiality + +Report concerns privately to **j.d.a.jewell@open.ac.uk**. Include only information +necessary to investigate. Do not publish private reports or personal information +in public issues. Reports will be reviewed promptly and fairly; acknowledgment +within 48 hours is a volunteer-maintainer target, not a guaranteed SLA. +The reporter's privacy and security will be respected. + +For conflicts involving the maintainer, say so in the report and request an +uninvolved reviewer. This project currently has one maintainer and cannot +promise an independent standing enforcement committee. Appeals may be sent +through the same private channel with reasons for reconsideration. + +## Enforcement guidelines + +1. **Correction:** A private written warning for inappropriate language or + unprofessional behaviour, explaining the violation and its impact. A public + apology may be requested. +2. **Warning:** A warning with consequences for a single incident or series of + violations. Interaction with affected people may be restricted for a stated + period. +3. **Temporary ban:** A temporary prohibition on participation and interaction + for a serious violation or sustained inappropriate behaviour. Further + violations may lead to a permanent ban. +4. **Permanent ban:** A permanent prohibition for a pattern of violations, + harassment, aggression, or disparagement of classes of individuals. + +Measures consider severity and impact; serious harm does not require progressing +through every preceding step. + +## Attribution + +Adapted from [Contributor Covenant 2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct/). +Enforcement guidance draws on Mozilla's community participation guidelines. +See [Contributor Covenant](https://www.contributor-covenant.org/) for FAQs and translations. diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 688a442..bbf41f1 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -2,6 +2,6 @@ # Funding platforms for hyperpolymath projects # See: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository -github: hyperpolymath +github: [hyperpolymath, metadatastician] ko_fi: hyperpolymath liberapay: hyperpolymath diff --git a/.github/GOVERNANCE.md b/.github/GOVERNANCE.md new file mode 100644 index 0000000..108d7bf --- /dev/null +++ b/.github/GOVERNANCE.md @@ -0,0 +1,4 @@ + +# Governance + +The canonical guide is [GOVERNANCE.adoc](../GOVERNANCE.adoc). diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..c402855 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,58 @@ +# SPDX-License-Identifier: MPL-2.0 +# SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell +name: Bug report +description: Something behaves differently from what it claims to do. +labels: ["bug", "needs-triage"] +body: + - type: markdown + attributes: + value: | + Please report what you **observed**, not what you inferred. A command and + its actual output is worth more than a description of the problem. + - type: textarea + id: what-happened + attributes: + label: What happened + description: The observed behaviour, with the exact command and its output. + placeholder: | + $ just verify + error: ... + render: shell + validations: + required: true + - type: textarea + id: expected + attributes: + label: What you expected instead + validations: + required: true + - type: textarea + id: repro + attributes: + label: Minimal reproduction + description: The shortest sequence that reproduces it from a clean checkout. + validations: + required: true + - type: input + id: version + attributes: + label: Version / commit + description: Output of `git rev-parse --short HEAD`. + validations: + required: true + - type: textarea + id: environment + attributes: + label: Environment + description: OS, and the output of `just --version` and `mise current` if relevant. + validations: + required: false + - type: checkboxes + id: checks + attributes: + label: Before submitting + options: + - label: I have reported observed output rather than a summary of it. + required: true + - label: This is not a security vulnerability (those go via a private advisory). + required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..ae64a67 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: CC-BY-SA-4.0 +# SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell +# +# Issue chooser configuration. Blank issues stay enabled so that reports which +# fit neither form are not silently discouraged. +blank_issues_enabled: true +contact_links: + - name: Security vulnerability + url: https://github.com/hyperpolymath/rpa-elysium/security/advisories/new + about: Report privately via a security advisory. Do NOT open a public issue. + - name: Question or support request + url: https://github.com/hyperpolymath/rpa-elysium/discussions + about: Ask a question. See .github/SUPPORT.md for what to expect. diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..757ad4f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,37 @@ +# SPDX-License-Identifier: MPL-2.0 +# SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell +name: Feature request +description: Propose a capability this project does not yet have. +labels: ["enhancement", "needs-triage"] +body: + - type: textarea + id: problem + attributes: + label: The problem + description: What are you unable to do today? Describe the situation, not the solution. + validations: + required: true + - type: textarea + id: proposal + attributes: + label: Proposed change + validations: + required: true + - type: textarea + id: alternatives + attributes: + label: Alternatives considered + description: Including doing nothing — say why that is insufficient. + validations: + required: false + - type: dropdown + id: scope + attributes: + label: Scope + description: Which project or estate surface would this affect? + options: + - Repo-local — affects only this project + - Template-wide — would propagate to minted repos + - Not sure + validations: + required: true diff --git a/.github/SECURITY.md b/.github/SECURITY.md new file mode 100644 index 0000000..c78dad3 --- /dev/null +++ b/.github/SECURITY.md @@ -0,0 +1,6 @@ + +# Security policy + +The canonical guide is [SECURITY.adoc](../SECURITY.adoc). + +Report vulnerabilities [privately through GitHub](https://github.com/hyperpolymath/rpa-elysium/security/advisories/new). Do not open a public issue. If that service is unavailable, email j.d.a.jewell@open.ac.uk. Email is not end-to-end encrypted. diff --git a/.github/SUPPORT.md b/.github/SUPPORT.md new file mode 100644 index 0000000..b55e266 --- /dev/null +++ b/.github/SUPPORT.md @@ -0,0 +1,4 @@ + +# Support + +The canonical guide is [SUPPORT.adoc](../SUPPORT.adoc). diff --git a/.github/dependabot.yml b/.github/dependabot.yml index fd710e3..9753159 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -11,3 +11,14 @@ updates: - "*" # v4.38.3 runs successfully on PR #144 (actions and rust analysis). # Do not retain the estate-wide blanket hold for the older v4.38.1 issue. + # Estate Cargo policy: automated security updates, not routine major churn. + - package-ecosystem: "cargo" + directory: "/" + schedule: + interval: "weekly" + open-pull-requests-limit: 0 + - package-ecosystem: "cargo" + directory: "/fuzz" + schedule: + interval: "weekly" + open-pull-requests-limit: 0 diff --git a/.github/funding.yml b/.github/funding.yml deleted file mode 100644 index e4f7c07..0000000 --- a/.github/funding.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Funding Configuration -# See: https://docs.github.com/en/repositories/managing-your-repositorys-custom-fields/displaying-a-sponsor-button-in-your-repository - -github: metadatastician diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..c70bec4 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,51 @@ + +## Summary + + + +## Changes + + + +- + +## RSR Quality Checklist + + + +### Required + +- [ ] Workflow refs and the complete actions.lock graph are verified (`just ci-check`) +- [ ] Cargo security audit passes with no ignored findings (`just audit`) + +- [ ] Tests pass (`cargo test --locked --workspace --all-targets`) +- [ ] Code is formatted (`cargo fmt --all -- --check`) +- [ ] Linter is clean (no new warnings or errors) +- [ ] No banned language patterns (no Python, Go, TypeScript or ReScript; JavaScript runs Bun > Deno > pnpm > npm) +- [ ] 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 + +- [ ] Repo deed (`*_chora.deed`) `(status)` / `(maturity)` updated (if project state changed) +- [ ] Repo deed `(ecosystem)` updated (if integrations changed) +- [ ] Repo deed `(meta)` and/or `docs/decisions/` updated (if architectural decisions changed) +- [ ] `docs/status/ROADMAP.adoc` updated (if milestones or next actions changed) +- [ ] Documentation updated for user-facing changes +- [ ] `TOPOLOGY.adoc` updated (if architecture changed) +- [ ] `CHANGELOG` or release notes updated +- [ ] New dependencies reviewed for license compatibility (MPL-2.0 code / CC-BY-SA-4.0 prose) +- [ ] ABI/FFI changes validated (`src/abi/` and `ffi/zig/` consistent) + +## Testing + + + +## Screenshots + + diff --git a/.github/workflows/actions.lock b/.github/workflows/actions.lock index 33d9cc6..c28ac36 100644 --- a/.github/workflows/actions.lock +++ b/.github/workflows/actions.lock @@ -1,326 +1,267 @@ -# This file is machine-generated by `gh actions-lock`. -# Do not edit by hand; run scripts/update-actions-lock.sh to update. -# Docs: https://gh.io/actions-lockfile -version: 'v0.0.3' +# SPDX-License-Identifier: MPL-2.0 +# Resolved action graph; regenerate with scripts/update-actions-lock.sh. +version: v0.0.3 workflows: - '.github/workflows/boj-build.yml': - - 'actions/checkout@v7.0.1' - '.github/workflows/cargo-audit.yml': - - 'actions/checkout@v7.0.1' - '.github/workflows/casket-pages.yml': - - 'actions/cache@v6.1.0' - - 'actions/checkout@v7.0.1' - - 'actions/configure-pages@v6.0.0' - - 'actions/deploy-pages@v5.0.1' - - 'actions/upload-pages-artifact@v5.0.0' - - 'haskell-actions/setup@v2.12.1' - '.github/workflows/cflite_batch.yml': - - 'actions/checkout@v7.0.1' - - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d' - - 'google/clusterfuzzlite@v1' - '.github/workflows/cflite_pr.yml': - - 'actions/checkout@v7.0.1' - - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d' - - 'google/clusterfuzzlite@v1' - '.github/workflows/codeql.yml': - - 'actions/checkout@v7.0.1' - - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d' - '.github/workflows/dogfood-gate.yml': - - 'actions/checkout@v7.0.1' - '.github/workflows/governance.yml': - - 'hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a' - '.github/workflows/hypatia-scan.yml': - - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' - '.github/workflows/instant-sync.yml': - - 'peter-evans/repository-dispatch@v4.0.1' - '.github/workflows/label-triage.yml': [] - '.github/workflows/labels.yml': [] - '.github/workflows/lock-sync-gate.yml': [] - '.github/workflows/mirror.yml': - - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' - '.github/workflows/push-email-notify.yml': - - 'hyperpolymath/smtp-notify-action@v0.5.0' - '.github/workflows/rust-ci.yml': - - 'actions/checkout@v7.0.1' - - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' - '.github/workflows/scorecard.yml': - - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' - '.github/workflows/secret-scanner.yml': - - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' - '.github/workflows/workflow-linter.yml': - - 'actions/checkout@v7.0.1' + .github/workflows/boj-build.yml: [] + .github/workflows/cargo-audit.yml: + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + .github/workflows/casket-pages.yml: + - actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + - actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d + - actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 + - actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 + - haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d + .github/workflows/cflite_batch.yml: + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + - github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d + - google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1 + .github/workflows/cflite_pr.yml: + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + - github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d + - google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1 + .github/workflows/codeql.yml: + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + - github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d + .github/workflows/dogfood-gate.yml: + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + .github/workflows/governance.yml: + - hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a + .github/workflows/hypatia-scan.yml: + - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a + .github/workflows/instant-sync.yml: + - peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697 + .github/workflows/label-triage.yml: [] + .github/workflows/labels.yml: [] + .github/workflows/lock-sync-gate.yml: [] + .github/workflows/mirror.yml: + - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a + .github/workflows/push-email-notify.yml: + - hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef + .github/workflows/rust-ci.yml: + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a + .github/workflows/scorecard.yml: + - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a + .github/workflows/secret-scanner.yml: + - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a + .github/workflows/workflow-linter.yml: + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 dependencies: - 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9': - ref: '55cc8345863c7cc4c66a329aec7e433d2d1c52a9' - commit: 'sha1-55cc8345863c7cc4c66a329aec7e433d2d1c52a9' + actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9: + ref: 55cc8345863c7cc4c66a329aec7e433d2d1c52a9 + commit: sha1-55cc8345863c7cc4c66a329aec7e433d2d1c52a9 owner_id: 44036562 repo_id: 215566462 - 'actions/cache@v6.1.0': - ref: 'v6.1.0' - commit: 'sha1-55cc8345863c7cc4c66a329aec7e433d2d1c52a9' - owner_id: 44036562 - repo_id: 215566462 - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1': - ref: '3d3c42e5aac5ba805825da76410c181273ba90b1' - commit: 'sha1-3d3c42e5aac5ba805825da76410c181273ba90b1' - owner_id: 44036562 - repo_id: 197814629 - 'actions/checkout@v7.0.1': - ref: 'v7.0.1' - commit: 'sha1-3d3c42e5aac5ba805825da76410c181273ba90b1' + actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1: + ref: 3d3c42e5aac5ba805825da76410c181273ba90b1 + commit: sha1-3d3c42e5aac5ba805825da76410c181273ba90b1 owner_id: 44036562 repo_id: 197814629 - 'actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d': - ref: '45bfe0192ca1faeb007ade9deae92b16b8254a0d' - commit: 'sha1-45bfe0192ca1faeb007ade9deae92b16b8254a0d' + actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d: + ref: 45bfe0192ca1faeb007ade9deae92b16b8254a0d + commit: sha1-45bfe0192ca1faeb007ade9deae92b16b8254a0d owner_id: 44036562 repo_id: 513659658 - 'actions/configure-pages@v6.0.0': - ref: 'v6.0.0' - commit: 'sha1-45bfe0192ca1faeb007ade9deae92b16b8254a0d' - owner_id: 44036562 - repo_id: 513659658 - 'actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1': - ref: 'bcd2ba49218906704ab6c1aa796996da409d3eb1' - commit: 'sha1-bcd2ba49218906704ab6c1aa796996da409d3eb1' + actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1: + ref: bcd2ba49218906704ab6c1aa796996da409d3eb1 + commit: sha1-bcd2ba49218906704ab6c1aa796996da409d3eb1 owner_id: 44036562 repo_id: 642580244 - 'actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346': - ref: '368f82528645a54fb793d4d04e342629a3f51346' - commit: 'sha1-368f82528645a54fb793d4d04e342629a3f51346' - owner_id: 44036562 - repo_id: 438112499 - 'actions/deploy-pages@v5.0.1': - ref: 'v5.0.1' - commit: 'sha1-368f82528645a54fb793d4d04e342629a3f51346' + actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346: + ref: 368f82528645a54fb793d4d04e342629a3f51346 + commit: sha1-368f82528645a54fb793d4d04e342629a3f51346 owner_id: 44036562 repo_id: 438112499 - 'actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333': - ref: 'v8.0.2' - commit: 'sha1-9000827ccba6bdab643e8b6fd33ac0654aef8333' + actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333: + ref: v8.0.2 + commit: sha1-9000827ccba6bdab643e8b6fd33ac0654aef8333 owner_id: 44036562 repo_id: 192626254 - 'actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3': - ref: 'v9.0.0' - commit: 'sha1-3a2844b7e9c422d3c10d287c895573f7108da1b3' + actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3: + ref: v9.0.0 + commit: sha1-3a2844b7e9c422d3c10d287c895573f7108da1b3 owner_id: 44036562 repo_id: 205262760 - 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a': - ref: '043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' - commit: 'sha1-043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' + actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a: + ref: 043fb46d1a93c77aae656e7c1c64a875d1fc6a0a + commit: sha1-043fb46d1a93c77aae656e7c1c64a875d1fc6a0a owner_id: 44036562 repo_id: 192625955 - 'actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f': - ref: 'v7.0.0' - commit: 'sha1-bbbca2ddaa5d8feaa63e36b76fdaad77386f024f' + actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f: + ref: v7.0.0 + commit: sha1-bbbca2ddaa5d8feaa63e36b76fdaad77386f024f owner_id: 44036562 repo_id: 192625955 - 'actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9': - ref: 'v7.0.2' - commit: 'sha1-cf430e030ddbb5b0abf93d22962f4752f3646cd9' + actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9: + ref: v7.0.2 + commit: sha1-cf430e030ddbb5b0abf93d22962f4752f3646cd9 owner_id: 44036562 repo_id: 192625955 - 'actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9': - ref: 'fc324d3547104276b827a68afc52ff2a11cc49c9' - commit: 'sha1-fc324d3547104276b827a68afc52ff2a11cc49c9' - owner_id: 44036562 - repo_id: 496012378 - uses: - - 'actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f' - 'actions/upload-pages-artifact@v5.0.0': - ref: 'v5.0.0' - commit: 'sha1-fc324d3547104276b827a68afc52ff2a11cc49c9' + actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9: + ref: fc324d3547104276b827a68afc52ff2a11cc49c9 + commit: sha1-fc324d3547104276b827a68afc52ff2a11cc49c9 owner_id: 44036562 repo_id: 496012378 uses: - - 'actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f' - 'denoland/setup-deno@22d081ff2d3a40755e97629de92e3bcbfa7cf2ed': - ref: 'v2.0.5' - commit: 'sha1-22d081ff2d3a40755e97629de92e3bcbfa7cf2ed' - owner_id: 42048915 - repo_id: 356423100 - 'dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772': - ref: '6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772' - commit: 'sha1-6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772' + - actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f + dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772: + ref: 6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 + commit: sha1-6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 owner_id: 1940490 repo_id: 260749683 - 'dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067': - ref: 'v1' - commit: 'sha1-7e38f4b43b4db5c8dd498af069a4f6196df1d067' + dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067: + ref: v1 + commit: sha1-7e38f4b43b4db5c8dd498af069a4f6196df1d067 owner_id: 1940490 repo_id: 260749683 - 'dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f': - ref: 'v1' - commit: 'sha1-e2a55d2ffb04f378e9626c28d38b36d230d1e12f' + dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f: + ref: v1 + commit: sha1-e2a55d2ffb04f378e9626c28d38b36d230d1e12f owner_id: 1940490 repo_id: 260749683 - 'editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393': - ref: 'v3.0.0' - commit: 'sha1-51f63319f592f97930c73d9c46184d20bd206393' + editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393: + ref: v3.0.0 + commit: sha1-51f63319f592f97930c73d9c46184d20bd206393 owner_id: 26415196 repo_id: 297874902 - 'editorconfig-checker/action-editorconfig-checker@840e866d93b8e032123c23bac69dece044d4d84c': - ref: '840e866d93b8e032123c23bac69dece044d4d84c' - commit: 'sha1-840e866d93b8e032123c23bac69dece044d4d84c' - owner_id: 26415196 - repo_id: 297874902 - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124': - ref: '54075bcc5e249e4758d363f27d099f55d843f124' - commit: 'sha1-54075bcc5e249e4758d363f27d099f55d843f124' + erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124: + ref: 54075bcc5e249e4758d363f27d099f55d843f124 + commit: sha1-54075bcc5e249e4758d363f27d099f55d843f124 owner_id: 47606891 repo_id: 331103973 - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d': - ref: 'v4.38.3' - commit: 'sha1-24c54180a607b1449ed407dd24f251e4e9147c8d' + github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d: + ref: v4.38.3 + commit: sha1-24c54180a607b1449ed407dd24f251e4e9147c8d owner_id: 9919 repo_id: 259445878 - 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63': - ref: 'b96794f015dfd88f77b49b1c93e0fa7110f94c63' - commit: 'sha1-b96794f015dfd88f77b49b1c93e0fa7110f94c63' + github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63: + ref: b96794f015dfd88f77b49b1c93e0fa7110f94c63 + commit: sha1-b96794f015dfd88f77b49b1c93e0fa7110f94c63 owner_id: 9919 repo_id: 259445878 - 'github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28': - ref: 'db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28' - commit: 'sha1-db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28' + github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28: + ref: db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 + commit: sha1-db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 owner_id: 9919 repo_id: 259445878 - 'google/clusterfuzzlite@v1': - ref: 'v1' - commit: 'sha1-884713a6c30a92e5e8544c39945cd7cb630abcd1' - owner_id: 1342004 - repo_id: 400046858 - 'goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406': - ref: 'abea47f85e598557f500fa1fd2ab7464fcb39406' - commit: 'sha1-abea47f85e598557f500fa1fd2ab7464fcb39406' + goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406: + ref: abea47f85e598557f500fa1fd2ab7464fcb39406 + commit: sha1-abea47f85e598557f500fa1fd2ab7464fcb39406 owner_id: 1006268 repo_id: 212984112 - 'haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d': - ref: 'v2.12.1' - commit: 'sha1-0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' - owner_id: 75048950 - repo_id: 623796603 - 'haskell-actions/setup@v2.12.1': - ref: 'v2.12.1' - commit: 'sha1-0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' + haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d: + ref: v2.12.1 + commit: sha1-0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d owner_id: 75048950 repo_id: 623796603 - 'hyperpolymath/smtp-notify-action@v0.5.0': - ref: 'v0.5.0' - commit: 'sha1-c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef' - owner_id: 6759885 - repo_id: 1352485172 - 'hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd': - ref: '571cc734cd69fb846032ec77a662aa8ee4fc32cd' - commit: 'sha1-571cc734cd69fb846032ec77a662aa8ee4fc32cd' - owner_id: 6759885 - repo_id: 1116521501 - 'hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a': - ref: 'c11c255e1b5546854e874d1486d61d6d5a4da29a' - commit: 'sha1-c11c255e1b5546854e874d1486d61d6d5a4da29a' + hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd: + ref: 571cc734cd69fb846032ec77a662aa8ee4fc32cd + commit: sha1-571cc734cd69fb846032ec77a662aa8ee4fc32cd owner_id: 6759885 repo_id: 1116521501 - uses: - - 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9' - - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' - - 'actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d' - - 'actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1' - - 'actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346' - - 'actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333' - - 'actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3' - - 'actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9' - - 'actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9' - - 'dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f' - - 'editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393' - - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124' - - 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63' - - 'goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406' - - 'haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' - - 'hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd' - - 'hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f' - - 'ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7' - - 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc' - - 'oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6' - - 'peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697' - - 'step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25' - - 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6' - - 'tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd' - - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a': - ref: '84355587cb2a1f86e6882de83514a32db2646e7a' - commit: 'sha1-84355587cb2a1f86e6882de83514a32db2646e7a' + hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a: + ref: c11c255e1b5546854e874d1486d61d6d5a4da29a + commit: sha1-c11c255e1b5546854e874d1486d61d6d5a4da29a owner_id: 6759885 repo_id: 1116521501 uses: - - 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9' - - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' - - 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' - - 'dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772' - - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124' - - 'github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28' - - 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc' - - 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6' - - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' - 'hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f': - ref: 'b935e63937b1f1b5cbaeea7e375947d7b924038f' - commit: 'sha1-b935e63937b1f1b5cbaeea7e375947d7b924038f' + - actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + - actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d + - actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 + - actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 + - actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 + - actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 + - actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 + - actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 + - dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f + - editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393 + - erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124 + - github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63 + - goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406 + - haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d + - hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd + - hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f + - ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7 + - ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc + - oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 + - peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697 + - step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25 + - swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 + - tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd + - webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555 + hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a: + ref: 84355587cb2a1f86e6882de83514a32db2646e7a + commit: sha1-84355587cb2a1f86e6882de83514a32db2646e7a owner_id: 6759885 repo_id: 1116521501 uses: - - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' - - 'dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067' - - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' - 'hyperpolymath/standards@fad242d35291de1898242d6737ba02b74a59a2f2': - ref: 'fad242d35291de1898242d6737ba02b74a59a2f2' - commit: 'sha1-fad242d35291de1898242d6737ba02b74a59a2f2' + - actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + - actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a + - dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 + - erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124 + - github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 + - ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc + - swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 + - webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555 + hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f: + ref: b935e63937b1f1b5cbaeea7e375947d7b924038f + commit: sha1-b935e63937b1f1b5cbaeea7e375947d7b924038f owner_id: 6759885 repo_id: 1116521501 uses: - - 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9' - - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' - - 'editorconfig-checker/action-editorconfig-checker@840e866d93b8e032123c23bac69dece044d4d84c' - - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124' - 'ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7': - ref: '93303b622b2522e4411e295f9e77411a24912ac7' - commit: 'sha1-93303b622b2522e4411e295f9e77411a24912ac7' + - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + - dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067 + - webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555 + ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7: + ref: 93303b622b2522e4411e295f9e77411a24912ac7 + commit: sha1-93303b622b2522e4411e295f9e77411a24912ac7 owner_id: 1841483 repo_id: 220799100 - 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc': - ref: '2d1146689b8cda280b9bc96326124645441f03bc' - commit: 'sha1-2d1146689b8cda280b9bc96326124645441f03bc' + ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc: + ref: 2d1146689b8cda280b9bc96326124645441f03bc + commit: sha1-2d1146689b8cda280b9bc96326124645441f03bc owner_id: 67707773 repo_id: 421101922 - 'oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6': - ref: 'v2.2.0' - commit: 'sha1-0c5077e51419868618aeaa5fe8019c62421857d6' + oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6: + ref: v2.2.0 + commit: sha1-0c5077e51419868618aeaa5fe8019c62421857d6 owner_id: 108928776 repo_id: 512644635 - 'peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697': - ref: 'v4.0.1' - commit: 'sha1-28959ce8df70de7be546dd1250a005dd32156697' - owner_id: 18365890 - repo_id: 220359305 - 'peter-evans/repository-dispatch@v4.0.1': - ref: 'v4.0.1' - commit: 'sha1-28959ce8df70de7be546dd1250a005dd32156697' + peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697: + ref: v4.0.1 + commit: sha1-28959ce8df70de7be546dd1250a005dd32156697 owner_id: 18365890 repo_id: 220359305 - 'step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25': - ref: 'v2.22.1' - commit: 'sha1-ccd8616d44fd3846e67624a50d5aad6d37bf2d25' + step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25: + ref: v2.22.1 + commit: sha1-ccd8616d44fd3846e67624a50d5aad6d37bf2d25 owner_id: 88700172 repo_id: 422287306 - 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6': - ref: '6323deb102c322ba6fcbdcafc7e3dddab59af2b6' - commit: 'sha1-6323deb102c322ba6fcbdcafc7e3dddab59af2b6' + swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6: + ref: 6323deb102c322ba6fcbdcafc7e3dddab59af2b6 + commit: sha1-6323deb102c322ba6fcbdcafc7e3dddab59af2b6 owner_id: 580492 repo_id: 298565987 - 'tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd': - ref: 'v4.2.0' - commit: 'sha1-d1b6cd204f8dceda5b3eaad7f1f767be390056cd' + tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd: + ref: v4.2.0 + commit: sha1-d1b6cd204f8dceda5b3eaad7f1f767be390056cd owner_id: 48932923 repo_id: 360548653 - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555': - ref: 'e83874834305fe9a4a2997156cb26c5de65a8555' - commit: 'sha1-e83874834305fe9a4a2997156cb26c5de65a8555' + webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555: + ref: e83874834305fe9a4a2997156cb26c5de65a8555 + commit: sha1-e83874834305fe9a4a2997156cb26c5de65a8555 owner_id: 135788 repo_id: 208510314 + google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1: + ref: v1 + commit: sha1-884713a6c30a92e5e8544c39945cd7cb630abcd1 + owner_id: 1342004 + repo_id: 400046858 + hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef: + ref: v0.5.0 + commit: sha1-c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef + owner_id: 6759885 + repo_id: 1352485172 diff --git a/.github/workflows/boj-build.yml b/.github/workflows/boj-build.yml index 6e84820..ee0f358 100644 --- a/.github/workflows/boj-build.yml +++ b/.github/workflows/boj-build.yml @@ -1,21 +1,28 @@ # SPDX-License-Identifier: MPL-2.0 -# This workflow is managed by gh actions-lock. name: BoJ Server Build Trigger on: - push: - branches: [main, master] workflow_dispatch: +permissions: + contents: read jobs: trigger-boj: + # Opt-in: public runners cannot reach the old unauthenticated .local service. + if: vars.BOJ_BUILD_ENABLED == 'true' runs-on: ubuntu-latest - timeout-minutes: 15 + timeout-minutes: 5 steps: - - name: Checkout - uses: actions/checkout@v7.0.1 - - name: Trigger BoJ Server (Casket/ssg-mcp) + - name: Trigger the configured build service securely + env: + BUILD_URL: ${{ vars.BOJ_BUILD_URL }} + BUILD_TOKEN: ${{ secrets.BOJ_BUILD_TOKEN }} + REPOSITORY: ${{ github.repository }} + REF_NAME: ${{ github.ref_name }} run: | - # Send a secure trigger to boj-server to build this repository - curl -X POST "http://boj-server.local:7700/cartridges/ssg-mcp/invoke" -H "Content-Type: application/json" -d "{\"repo\": \"${{ github.repository }}\", \"branch\": \"${{ github.ref_name }}\", \"engine\": \"casket\\"}"} - continue-on-error: true -permissions: - contents: read + set -euo pipefail + [[ "$BUILD_URL" == https://* ]] || { echo '::error::BOJ_BUILD_URL must use HTTPS'; exit 1; } + [[ -n "$BUILD_TOKEN" ]] || { echo '::error::BOJ_BUILD_TOKEN is required'; exit 1; } + payload=$(jq -n --arg repo "$REPOSITORY" --arg branch "$REF_NAME" \ + '{repo:$repo, branch:$branch, engine:"casket"}') + curl --fail --silent --show-error --max-time 30 --output /dev/null \ + -H "Authorization: Bearer $BUILD_TOKEN" -H 'Content-Type: application/json' \ + --data "$payload" "$BUILD_URL" diff --git a/.github/workflows/cargo-audit.yml b/.github/workflows/cargo-audit.yml index 0ca57a6..2e3e1a6 100644 --- a/.github/workflows/cargo-audit.yml +++ b/.github/workflows/cargo-audit.yml @@ -14,15 +14,18 @@ on: - '**/Cargo.lock' schedule: - cron: '0 6 * * 1' # Weekly on Monday -permissions: read-all +permissions: + contents: read jobs: audit: runs-on: ubuntu-latest timeout-minutes: 15 steps: - - uses: actions/checkout@v7.0.1 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Install cargo-audit - run: cargo install cargo-audit --locked + run: cargo install cargo-audit --version 0.22.2 --locked - name: Run cargo audit run: cargo audit --deny warnings - name: Check for unmaintained crates @@ -32,11 +35,14 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 15 needs: audit - if: failure() + if: failure() && github.event_name != 'pull_request' permissions: + contents: read issues: write steps: - - uses: actions/checkout@v7.0.1 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Create vulnerability issue env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/casket-pages.yml b/.github/workflows/casket-pages.yml index aca743d..3c0c7da 100644 --- a/.github/workflows/casket-pages.yml +++ b/.github/workflows/casket-pages.yml @@ -7,30 +7,35 @@ on: workflow_dispatch: permissions: contents: read - pages: write - id-token: write concurrency: group: "pages" cancel-in-progress: false jobs: build: + permissions: + contents: read + pages: write runs-on: ubuntu-latest timeout-minutes: 15 steps: - name: Checkout - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Checkout casket-ssg - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: + persist-credentials: false repository: hyperpolymath/casket-ssg + ref: 3dcade85400cef62949a6a0ab6900f5e7f065e56 path: .casket-ssg - name: Setup GHCup - uses: haskell-actions/setup@v2.12.1 + uses: haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d # v2.12.1 with: ghc-version: '9.8.2' cabal-version: '3.10' - name: Cache Cabal - uses: actions/cache@v6.1.0 + uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 with: path: | ~/.cabal/packages @@ -88,12 +93,15 @@ jobs: cd .casket-ssg && cabal run casket-ssg -- build ../.site-src ../_site touch ../_site/.nojekyll - name: Setup Pages - uses: actions/configure-pages@v6.0.0 + uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6.0.0 - name: Upload artifact - uses: actions/upload-pages-artifact@v5.0.0 + uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0 with: path: '_site' deploy: + permissions: + pages: write + id-token: write environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} @@ -103,4 +111,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v5.0.1 + uses: actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 # v5.0.1 diff --git a/.github/workflows/cflite_batch.yml b/.github/workflows/cflite_batch.yml index 9bc2086..ff57299 100644 --- a/.github/workflows/cflite_batch.yml +++ b/.github/workflows/cflite_batch.yml @@ -16,12 +16,14 @@ jobs: matrix: sanitizer: [address, undefined] steps: - - uses: actions/checkout@v7.0.1 - - uses: google/clusterfuzzlite/actions/build_fuzzers@v1 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + - uses: google/clusterfuzzlite/actions/build_fuzzers@884713a6c30a92e5e8544c39945cd7cb630abcd1 # v1 with: sanitizer: ${{ matrix.sanitizer }} language: rust - - uses: google/clusterfuzzlite/actions/run_fuzzers@v1 + - uses: google/clusterfuzzlite/actions/run_fuzzers@884713a6c30a92e5e8544c39945cd7cb630abcd1 # v1 with: github-token: ${{ secrets.GITHUB_TOKEN }} fuzz-seconds: 1800 diff --git a/.github/workflows/cflite_pr.yml b/.github/workflows/cflite_pr.yml index 9188690..dcf9ab8 100644 --- a/.github/workflows/cflite_pr.yml +++ b/.github/workflows/cflite_pr.yml @@ -17,12 +17,14 @@ jobs: matrix: sanitizer: [address, undefined] steps: - - uses: actions/checkout@v7.0.1 - - uses: google/clusterfuzzlite/actions/build_fuzzers@v1 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + - uses: google/clusterfuzzlite/actions/build_fuzzers@884713a6c30a92e5e8544c39945cd7cb630abcd1 # v1 with: sanitizer: ${{ matrix.sanitizer }} language: rust - - uses: google/clusterfuzzlite/actions/run_fuzzers@v1 + - uses: google/clusterfuzzlite/actions/run_fuzzers@884713a6c30a92e5e8544c39945cd7cb630abcd1 # v1 with: github-token: ${{ secrets.GITHUB_TOKEN }} fuzz-seconds: 300 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 5ca03c0..76f2994 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -35,7 +35,9 @@ jobs: build-mode: none steps: - name: Checkout - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Initialize CodeQL uses: github/codeql-action/init@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3 with: diff --git a/.github/workflows/dogfood-gate.yml b/.github/workflows/dogfood-gate.yml index 1f235a0..0339c54 100644 --- a/.github/workflows/dogfood-gate.yml +++ b/.github/workflows/dogfood-gate.yml @@ -23,7 +23,9 @@ jobs: timeout-minutes: 15 steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Check for A2ML files id: detect run: | @@ -60,7 +62,9 @@ jobs: timeout-minutes: 15 steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Check for K9 files id: detect run: | @@ -102,7 +106,9 @@ jobs: timeout-minutes: 15 steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Scan for invisible characters id: lint run: | @@ -163,7 +169,9 @@ jobs: timeout-minutes: 15 steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Check for Groove manifest id: groove run: | @@ -220,7 +228,9 @@ jobs: if: always() steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Generate dogfooding scorecard run: | SCORE=0 diff --git a/.github/workflows/governance.yml b/.github/workflows/governance.yml index f74ae5b..242ece4 100644 --- a/.github/workflows/governance.yml +++ b/.github/workflows/governance.yml @@ -15,4 +15,4 @@ permissions: jobs: governance: - uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@c11c255e1b5546854e874d1486d61d6d5a4da29a + uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@c11c255e1b5546854e874d1486d61d6d5a4da29a # c11c255e1b5546854e874d1486d61d6d5a4da29a diff --git a/.github/workflows/instant-sync.yml b/.github/workflows/instant-sync.yml index eb26e3d..f883804 100644 --- a/.github/workflows/instant-sync.yml +++ b/.github/workflows/instant-sync.yml @@ -15,7 +15,7 @@ jobs: timeout-minutes: 15 steps: - name: Trigger Propagation - uses: peter-evans/repository-dispatch@v4.0.1 + uses: peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697 # v4.0.1 with: token: ${{ secrets.FARM_DISPATCH_TOKEN }} repository: hyperpolymath/.git-private-farm diff --git a/.github/workflows/push-email-notify.yml b/.github/workflows/push-email-notify.yml index 24c929c..838e219 100644 --- a/.github/workflows/push-email-notify.yml +++ b/.github/workflows/push-email-notify.yml @@ -40,7 +40,7 @@ jobs: timeout-minutes: 5 steps: - name: Send push notification email - uses: hyperpolymath/smtp-notify-action@v0.5.0 + uses: hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef # v0.5.0 with: server_address: ${{ secrets.SMTP_HOST }} server_port: ${{ secrets.SMTP_PORT }} diff --git a/.github/workflows/rust-ci.yml b/.github/workflows/rust-ci.yml index 71cc084..c352428 100644 --- a/.github/workflows/rust-ci.yml +++ b/.github/workflows/rust-ci.yml @@ -21,7 +21,9 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 20 steps: - - uses: actions/checkout@v7.0.1 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Match the shared stable toolchain run: rustup default stable - name: Publish compiler diagnostics as annotations diff --git a/.github/workflows/workflow-linter.yml b/.github/workflows/workflow-linter.yml index 0daf533..601c38d 100644 --- a/.github/workflows/workflow-linter.yml +++ b/.github/workflows/workflow-linter.yml @@ -4,18 +4,18 @@ name: Workflow Security Linter on: pull_request: - paths: - - '.github/workflows/**' push: - paths: - - '.github/workflows/**' -permissions: read-all + branches: [main, master] +permissions: + contents: read jobs: lint-workflows: runs-on: ubuntu-latest timeout-minutes: 15 steps: - - uses: actions/checkout@v7.0.1 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false - name: Check SPDX headers run: | errors=0 @@ -38,13 +38,9 @@ jobs: fi done exit $errors - - name: Check pinned actions + - name: Verify immutable direct and transitive action graph + run: bash scripts/check-lock-sync.sh + - name: Check community health and standards baseline run: | - errors=0 - for f in .github/workflows/*.yml .github/workflows/*.yaml; do - [ -f "$f" ] || continue - # Look for uses: without SHA - if grep -E "uses:.*@v[0-9]" "$f" | grep -v "#"; then - echo "WARNING: $f has unpinned actions (missing SHA comment)" - fi - done + bash scripts/check-repository-health.sh + bash scripts/tests/repository-health-test.sh diff --git a/.machine_readable/6a2/META.a2ml b/.machine_readable/6a2/META.a2ml index 826adbb..ec5653a 100644 --- a/.machine_readable/6a2/META.a2ml +++ b/.machine_readable/6a2/META.a2ml @@ -23,7 +23,7 @@ rationale = "BEAM runtime provides fault tolerance and actor model. Gleam adds t [architecture-decisions.adr-003] title = "ReScript for management console" -status = "accepted" +status = "superseded" date = "2024-12-28" rationale = "Type-safe React-compatible UI without TypeScript. Compiles to clean JS." diff --git a/.machine_readable/descriptiles b/.machine_readable/descriptiles new file mode 120000 index 0000000..25f0c1c --- /dev/null +++ b/.machine_readable/descriptiles @@ -0,0 +1 @@ +6a2 \ No newline at end of file diff --git a/.machine_readable/rsr-profile.a2ml b/.machine_readable/rsr-profile.a2ml new file mode 100644 index 0000000..787ac85 --- /dev/null +++ b/.machine_readable/rsr-profile.a2ml @@ -0,0 +1,16 @@ +# SPDX-License-Identifier: MPL-2.0 +[rsr-profile] +capabilities = ["rust", "zig", "idris2", "gleam", "bash", "cli", "library", "ffi", "abi", "docs-site", "benchmarks", "governance-tier"] + +[rationale] +rust = "Eight-crate workspace under crates/, with Rust CI and filesystem CLI." +ffi = "Existing ffi/zig/ C ABI implementation, not empty template scaffolding." +abi = "Existing src/abi/ Idris2 modules and rpa-elysium-abi.ipkg; canonical layout/generated-output gaps remain explicit in docs/STANDARDS-ALIGNMENT.adoc." +gleam = "services/src/ contains source; it is not a deployed API service." +docs-site = "Casket-based Pages workflow and www/ source." +governance-tier = "Maintainer governance, reviewed audit and bounded affirmation." + +[alignment] +standards-revision = "80014df42eb81f09396c948299febb258cec4719" +template-revision = "c9bce256a3812575f509c9c90c64a1277a999a3b" +evidence = "docs/STANDARDS-ALIGNMENT.adoc" diff --git a/.tool-versions b/.tool-versions index 299dbd9..3cd07d4 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1,3 +1 @@ rust stable -deno 2.2.8 -deno 2.2.8 diff --git a/.well-known b/.well-known new file mode 120000 index 0000000..aecf604 --- /dev/null +++ b/.well-known @@ -0,0 +1 @@ +www/.well-known \ No newline at end of file diff --git a/CODE_OF_CONDUCT.adoc b/CODE_OF_CONDUCT.adoc index bd2a83c..df7b65c 100644 --- a/CODE_OF_CONDUCT.adoc +++ b/CODE_OF_CONDUCT.adoc @@ -1,24 +1,8 @@ -== Contributor Covenant Code of Conduct +// SPDX-License-Identifier: CC-BY-SA-4.0 += Code of Conduct -=== Our Pledge +The authoritative Contributor Covenant 2.1 policy is +link:.github/CODE_OF_CONDUCT.md[the repository Code of Conduct]. -We pledge to make participation a harassment-free experience for -everyone. - -=== Our Standards - -*Positive behavior:* * Using welcoming language * Being respectful of -differing viewpoints * Accepting constructive criticism * Focusing on -what is best for the community - -*Unacceptable behavior:* * Harassment, trolling, or personal attacks * -Publishing private information without permission - -=== Enforcement - -Report issues to the maintainers. All complaints will be reviewed. - -=== Attribution - -Adapted from https://www.contributor-covenant.org/[Contributor Covenant] -v2.1. +Report conduct concerns privately to j.d.a.jewell@open.ac.uk. +Do not publish another person's private information in issues or discussions. diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc index c2539c4..123a8e6 100644 --- a/CONTRIBUTING.adoc +++ b/CONTRIBUTING.adoc @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: MPL-2.0 +// SPDX-License-Identifier: CC-BY-SA-4.0 // Canonical contributing guide (estate policy: AsciiDoc at the repo root). // The Markdown copy in .github/ is a pointer kept for GitHub's UI surfaces. = Contributing to RPA Elysium @@ -18,9 +18,9 @@ just check # fmt + lint + test just build # Release build # Or individually -cargo build --workspace -cargo test --workspace -cargo clippy --workspace --all-targets -- -D warnings +cargo build --locked --workspace +cargo test --locked --workspace --all-targets +cargo clippy --locked --workspace --all-targets -- -D warnings ---- == Repository Structure @@ -53,14 +53,14 @@ This project follows the Hyperpolymath Language Policy (see `.claude/CLAUDE.md`) |*Rust* |Core framework, WASM, CLI -|*ReScript* -|Management console UI +|*AffineScript* +|Future management console (not implemented) |*Gleam* |Backend services (BEAM) -|*Deno* -|JS runtime (not Node.js) +|*Bun / Deno / pnpm / npm* +|JS runtime/tooling preference, in that order |*Idris2* |ABI definitions @@ -72,7 +72,8 @@ This project follows the Hyperpolymath Language Policy (see `.claude/CLAUDE.md`) |Scripts, automation |=== -*Banned*: TypeScript, Node.js, npm, Go, Python, Java, Kotlin, Swift. +*Banned for new application code*: TypeScript, ReScript, Go, Python, Java, Kotlin, Swift. +Do not add runtime tooling to this Rust workspace without a real use case. == Branch Naming @@ -105,14 +106,17 @@ Scopes: `core`, `plugin`, `fs-workflow`, `abi`, `ffi`, `services`, `ci` . Fork the repository and create a feature branch . Ensure `just check` passes (fmt, lint, test) -. All SPDX headers must be `MPL-2.0` -. All GitHub Actions must be SHA-pinned +. Code/config/scripts use `MPL-2.0`; prose uses `CC-BY-SA-4.0` +. All GitHub Actions must resolve to immutable commits in the reviewed actions.lock graph . No banned language code introduced . Submit PR against `main` with descriptive title and body == Code Standards * All source files must have SPDX license headers +* Run `just ci-check` for lock, community-health and regression controls +* Run `just audit` for the Cargo security audit +* Report exploitable vulnerabilities privately (link:SECURITY.adoc[security policy]) * All code must pass `cargo clippy -- -D warnings` * All code must be formatted with `cargo fmt` * Test coverage target: 80%+ @@ -121,7 +125,7 @@ Scopes: `core`, `plugin`, `fs-workflow`, `abi`, `ffi`, `services`, `ci` == Reporting Bugs -Use the link:.github/ISSUE_TEMPLATE/bug_report.md[bug report template]. +Use the link:.github/ISSUE_TEMPLATE/bug_report.yml[bug report template]. Include: * Environment details (OS, Rust version, etc.) @@ -131,7 +135,7 @@ Include: == Suggesting Features Use the -link:.github/ISSUE_TEMPLATE/feature_request.md[feature request template]. +link:.github/ISSUE_TEMPLATE/feature_request.yml[feature request template]. Include: * Problem statement @@ -140,7 +144,8 @@ Include: == License -All contributions are licensed under MPL-2.0. +Code contributions use MPL-2.0; prose uses CC-BY-SA-4.0. See `LICENSES/` +and the Standards link:https://github.com/hyperpolymath/standards/blob/main/3-practice/LICENCE-POLICY.adoc[licence policy]. == Signed commits diff --git a/GOVERNANCE.adoc b/GOVERNANCE.adoc index 9b836fb..cde63ad 100644 --- a/GOVERNANCE.adoc +++ b/GOVERNANCE.adoc @@ -1,4 +1,5 @@ -== Governance +// SPDX-License-Identifier: CC-BY-SA-4.0 += Governance === Overview @@ -30,12 +31,13 @@ Maintain existing tests - Update documentation as needed * Require discussion in issues or pull requests * Include new features, architectural changes, API changes -* Need approval from at least 2 maintainers +* Require approval from the current maintainer after public discussion; +this project currently has one maintainer, not a two-person committee ==== Breaking Changes * Require RFC (Request for Comments) process -* Need approval from majority of maintainers +* Require maintainer approval after an RFC discussion * Must include migration guide === Code of Conduct @@ -51,8 +53,8 @@ can be reported to the maintainers. === Licensing -All contributions are made under the terms of the repository’s LICENSE -file. By submitting a pull request, you agree to license your +Code contributions use MPL-2.0 and prose uses CC-BY-SA-4.0, as described +in `LICENSES/` and the Standards licence policy. By submitting a pull request, you agree to license your contributions accordingly. ''''' diff --git a/Justfile b/Justfile index 710f550..213b48d 100644 --- a/Justfile +++ b/Justfile @@ -16,19 +16,19 @@ default: # Build all crates in release mode build: - cargo build --release + cargo build --locked --workspace --release # Build in debug mode build-debug: - cargo build + cargo build --locked --workspace # Run all tests test: - cargo test --workspace + cargo test --locked --workspace --all-targets # Run tests with output test-verbose: - cargo test --workspace -- --nocapture + cargo test --locked --workspace --all-targets -- --nocapture # Build + typecheck the Idris2 ABI layer (src/abi/) via its package. verify-abi: @@ -59,7 +59,7 @@ fmt-check: # Run clippy lints lint: - cargo clippy --workspace --all-targets -- -D warnings + cargo clippy --locked --workspace --all-targets -- -D warnings # Run all checks (format, lint, test) check: fmt-check lint test @@ -162,3 +162,17 @@ crg-badge: secret-scan-trufflehog: @command -v trufflehog >/dev/null && trufflehog filesystem . --only-verified || true + +# Offline repository quality and lock regression controls (mikefarah yq v4 + jq). +ci-check: + bash scripts/check-lock-sync.sh + bash scripts/tests/check-lock-sync-test.sh + bash scripts/tests/actions-lock-update-test.sh + bash scripts/check-repository-health.sh + bash scripts/tests/repository-health-test.sh + +# Pin the security-audit tool and reject warnings/unmaintained crates. +audit: + cargo install cargo-audit --version 0.22.2 --locked + cargo audit --deny warnings + cargo audit --deny unmaintained diff --git a/SECURITY.adoc b/SECURITY.adoc index 4afd056..3464e3c 100644 --- a/SECURITY.adoc +++ b/SECURITY.adoc @@ -1,378 +1,88 @@ -Security Policy - -We take security seriously. We appreciate your efforts to responsibly -disclose vulnerabilities and will make every effort to acknowledge your -contributions. Table of Contents - -.... -Reporting a Vulnerability -What to Include -Response Timeline -Disclosure Policy -Scope -Safe Harbour -Recognition -Security Updates -Security Best Practices -.... - -Reporting a Vulnerability Preferred Method: GitHub Security Advisories - -The preferred method for reporting security vulnerabilities is through -GitHub’s Security Advisory feature: - -.... -Navigate to Report a Vulnerability -Click "Report a vulnerability" -Complete the form with as much detail as possible -Submit — we'll receive a private notification -.... - -This method ensures: - -.... -End-to-end encryption of your report -Private discussion space for collaboration -Coordinated disclosure tooling -Automatic credit when the advisory is published -.... - -Alternative: Encrypted Email - -If you cannot use GitHub Security Advisories, you may email us directly: - -Email security@hyperpolymath.org PGP Key Download Public Key Fingerprint -See GPG key - -== Import our PGP key - -curl -sSL https://hyperpolymath.org/gpg/security.asc | gpg –import - -== Verify fingerprint - -gpg –fingerprint security@hyperpolymath.org - -== Encrypt your report - -gpg –armor –encrypt –recipient security@hyperpolymath.org report.txt - -.... -⚠️ Important: Do not report security vulnerabilities through public GitHub issues, pull requests, discussions, or social media. -.... - -What to Include - -A good vulnerability report helps us understand and reproduce the issue -quickly. Required Information - -.... -Description: Clear explanation of the vulnerability -Impact: What an attacker could achieve (confidentiality, integrity, availability) -Affected versions: Which versions/commits are affected -Reproduction steps: Detailed steps to reproduce the issue -.... - -Helpful Additional Information - -.... -Proof of concept: Code, scripts, or screenshots demonstrating the vulnerability -Attack scenario: Realistic attack scenario showing exploitability -CVSS score: Your assessment of severity (use CVSS 3.1 Calculator) -CWE ID: Common Weakness Enumeration identifier if known -Suggested fix: If you have ideas for remediation -References: Links to related vulnerabilities, research, or advisories -.... - -Example Report Structure - -=== Summary - -{empty}[One-sentence description of the vulnerability] - -=== Vulnerability Type - -{empty}[e.g., SQL Injection, XSS, SSRF, Path Traversal, etc.] - -=== Affected Component - -{empty}[File path, function name, API endpoint, etc.] - -=== Affected Versions - -{empty}[Version range or specific commits] - -=== Severity Assessment - -* CVSS 3.1 Score: [X.X] -* CVSS Vector: [CVSS:3.1/AV:X/AC:X/PR:X/UI:X/S:X/C:X/I:X/A:X] - -=== Description - -{empty}[Detailed technical description] - -=== Steps to Reproduce - -[arabic] -. [First step] -. [Second step] -. […] - -=== Proof of Concept - -{empty}[Code, curl commands, screenshots, etc.] - -=== Impact - -{empty}[What can an attacker achieve?] - -=== Suggested Remediation - -{empty}[Optional: your ideas for fixing] - -=== References - -{empty}[Links to related issues, CVEs, research] - -Response Timeline - -We commit to the following response times: Stage Timeframe Description -Initial Response 48 hours We acknowledge receipt and confirm we’re -investigating Triage 7 days We assess severity, confirm the -vulnerability, and estimate timeline Status Update Every 7 days Regular -updates on remediation progress Resolution 90 days Target for fix -development and release (complex issues may take longer) Disclosure 90 -days Public disclosure after fix is available (coordinated with you) - -.... -Note: These are targets, not guarantees. Complex vulnerabilities may require more time. We'll communicate openly about any delays. -.... - -Disclosure Policy - -We follow coordinated disclosure (also known as responsible disclosure): - -.... -You report the vulnerability privately -We acknowledge and begin investigation -We develop a fix and prepare a release -We coordinate disclosure timing with you -We publish security advisory and fix simultaneously -You may publish your research after disclosure -.... - -Our Commitments - -.... -We will not take legal action against researchers who follow this policy -We will work with you to understand and resolve the issue -We will credit you in the security advisory (unless you prefer anonymity) -We will notify you before public disclosure -We will publish advisories with sufficient detail for users to assess risk -.... - -Your Commitments - -.... -Report vulnerabilities promptly after discovery -Give us reasonable time to address the issue before disclosure -Do not access, modify, or delete data beyond what's necessary to demonstrate the vulnerability -Do not degrade service availability (no DoS testing on production) -Do not share vulnerability details with others until coordinated disclosure -.... - -Disclosure Timeline - -Day 0 You report vulnerability Day 1-2 We acknowledge receipt Day 7 We -confirm vulnerability and share initial assessment Day 7-90 We develop -and test fix Day 90 Coordinated public disclosure (earlier if fix is -ready; later by mutual agreement) - -If we cannot reach agreement on disclosure timing, we default to 90 days -from your initial report. Scope In Scope ✅ - -The following are within scope for security research: - -.... -This repository (hyperpolymath/rpa-elysium) and all its code -Official releases and packages published from this repository -Documentation that could lead to security issues -Build and deployment configurations in this repository -Dependencies (report here, we'll coordinate with upstream) -.... - -Out of Scope ❌ - -The following are not in scope: - -.... -Third-party services we integrate with (report directly to them) -Social engineering attacks against maintainers -Physical security -Denial of service attacks against production infrastructure -Spam, phishing, or other non-technical attacks -Issues already reported or publicly known -Theoretical vulnerabilities without proof of concept -.... - -Qualifying Vulnerabilities - -We’re particularly interested in: - -.... -Remote code execution -SQL injection, command injection, code injection -Authentication/authorisation bypass -Cross-site scripting (XSS) and cross-site request forgery (CSRF) -Server-side request forgery (SSRF) -Path traversal / local file inclusion -Information disclosure (credentials, PII, secrets) -Cryptographic weaknesses -Deserialisation vulnerabilities -Memory safety issues (buffer overflows, use-after-free, etc.) -Supply chain vulnerabilities (dependency confusion, etc.) -Significant logic flaws -.... - -Non-Qualifying Issues - -The following generally do not qualify as security vulnerabilities: - -.... -Missing security headers on non-sensitive pages -Clickjacking on pages without sensitive actions -Self-XSS (requires victim to paste code) -Missing rate limiting (unless it enables a specific attack) -Username/email enumeration (unless high-risk context) -Missing cookie flags on non-sensitive cookies -Software version disclosure -Verbose error messages (unless exposing secrets) -Best practice deviations without demonstrable impact -.... - -Safe Harbour - -We support security research conducted in good faith. Our Promise - -If you conduct security research in accordance with this policy: - -.... -✅ We will not initiate legal action against you -✅ We will not report your activity to law enforcement -✅ We will work with you in good faith to resolve issues -✅ We consider your research authorised under the Computer Fraud and Abuse Act (CFAA), UK Computer Misuse Act, and similar laws -✅ We waive any potential claim against you for circumvention of security controls -.... - -Good Faith Requirements - -To qualify for safe harbour, you must: - -.... -Comply with this security policy -Report vulnerabilities promptly -Avoid privacy violations (do not access others' data) -Avoid service degradation (no destructive testing) -Not exploit vulnerabilities beyond proof-of-concept -Not use vulnerabilities for profit (beyond bug bounties where offered) - -⚠️ Important: This safe harbour does not extend to third-party systems. Always check their policies before testing. -.... - -Recognition - -We believe in recognising security researchers who help us improve. Hall -of Fame - -Researchers who report valid vulnerabilities will be acknowledged in our -Security Acknowledgments (unless they prefer anonymity). - -Recognition includes: - -.... -Your name (or chosen alias) -Link to your website/profile (optional) -Brief description of the vulnerability class -Date of report -.... - -What We Offer - -.... -✅ Public credit in security advisories -✅ Acknowledgment in release notes -✅ Entry in our Hall of Fame -✅ Reference/recommendation letter upon request (for significant findings) -.... - -What We Don’t Currently Offer - -.... -❌ Monetary bug bounties -❌ Hardware or swag -❌ Paid security research contracts - -Note: We're a community project with limited resources. Your contributions help everyone who uses this software. -.... - -Security Updates Receiving Updates - -To stay informed about security updates: - -.... -Watch this repository: Click "Watch" → "Custom" → Select "Security alerts" -GitHub Security Advisories: Published at Security Advisories -Release notes: Security fixes noted in CHANGELOG -.... - -Update Policy Severity Response Critical/High Patch release as soon as -fix is ready Medium Included in next scheduled release (or earlier) Low -Included in next scheduled release Supported Versions Version Supported -Notes main branch ✅ Yes Latest development Latest release ✅ Yes -Current stable Previous minor release ✅ Yes Security fixes backported -Older versions ❌ No Please upgrade Security Best Practices - -When using rpa-elysium, we recommend: General - -.... -Keep dependencies up to date -Use the latest stable release -Subscribe to security notifications -Review configuration against security documentation -Follow principle of least privilege -.... - -For Contributors - -.... -Never commit secrets, credentials, or API keys -Use signed commits (git config commit.gpgsign true) -Review dependencies before adding them -Run security linters locally before pushing -Report any concerns about existing code -.... - -Additional Resources - -.... -Our PGP Public Key -Security Advisories -Changelog -Contributing Guidelines -CVE Database -CVSS Calculator -.... - -Contact Purpose Contact Security issues Report via GitHub or -security@hyperpolymath.org General questions GitHub Discussions Other -enquiries See README for contact information Policy Changes - -This security policy may be updated from time to time. Significant -changes will be: - -.... -Committed to this repository with a clear commit message -Noted in the changelog -Announced via GitHub Discussions (for major changes) -.... - -Thank you for helping keep rpa-elysium and its users safe. +// SPDX-License-Identifier: CC-BY-SA-4.0 += Security Policy +:toc: + +== Report a vulnerability privately + +Use https://github.com/hyperpolymath/rpa-elysium/security/advisories/new[GitHub private vulnerability reporting]. +Private vulnerability reporting was verified enabled on 2026-10-14. +If that service is unavailable, contact j.d.a.jewell@open.ac.uk. +Email is not end-to-end encrypted; send a minimal description first and agree +on a suitable channel before sharing sensitive evidence. No verified project +PGP key or fingerprint is currently published here. + +*Do not report exploitable vulnerabilities, credentials, personal data, or +private infrastructure details through public issues, PRs, or discussions.* +GitHub private reports restrict access to the participants; this policy does +not claim that GitHub provides end-to-end encryption. + +Include the affected commit/version, platform, component, reproducible steps, +expected/observed behaviour, likely impact, and a minimal proof of concept. +Remove secrets and unrelated personal data. A proposed fix is welcome but not +required. For upstream dependencies, report privately here when this project +is affected and coordinate with the dependency's maintainers. + +== Supported versions + +[cols="1,2",options="header"] +|=== +|Version |Security support +|`main` |Active development; fixes are developed and tested here. +|Tagged releases |Check the release notes for support status; no stable-release +or backport guarantee is asserted by this policy. +|Historical commits and unsupported tags |Upgrade; independent backports are +not currently promised. +|=== + +== Response and coordinated disclosure + +The maintainer aims to acknowledge a report within 48 hours, triage it within +7 days, and provide updates at least every 7 days while remediation is active. +These are targets for a volunteer-maintained project, not guaranteed SLAs. +An initial disclosure target is 90 days, adjusted by agreement according to +impact, exploitation, fix readiness, and upstream coordination. + +We aim to publish a tested fix, migration guidance when needed, and a GitHub +security advisory together. Credit is offered with the reporter's consent; +anonymity is respected. No monetary bounty or dedicated incident-response team +is promised. Missing a target should prompt a private follow-up, not publication +of secrets or other people's data. + +== Scope and safe research + +Scope includes this repository's Rust workspace, filesystem operations, WASM +plugin boundary, ABI/FFI source, configuration handling, build/deployment +workflows, and dependencies used by it. + +Test only systems and data you own or have explicit permission to test. Use +isolated local fixtures. Do not perform destructive, denial-of-service, social +engineering, or production-infrastructure testing. Stop and report if you +encounter someone else's data. This policy grants no rights over third-party +systems and does not make a legal immunity guarantee on their behalf. + +== Security controls and limits + +* Rust check, formatting, clippy with `-D warnings`, and tests run on PRs. +* Cargo Audit rejects advisories and unmaintained dependencies; no blanket + advisory exceptions are supplied. +* CodeQL, Hypatia and secret scanning complement review; passing a scanner is + not proof that the application is vulnerability-free. +* Workflow refs are immutable through the committed direct/transitive action + graph. Lock changes must be reviewed and verified with `just ci-check`. +* Read-only jobs use least-privilege tokens and do not persist checkout + credentials. Privileged publishing/notification jobs are separate. +* Untrusted PR code is not executed in a privileged `pull_request_target` job. +* Plugin permissions, fuel limits and filesystem boundaries require manual + threat review; the presence of WASM or Rust does not by itself prove isolation. +* Idris2 and Zig layers are present, but Rust CI is not evidence that every + ABI proof or FFI target was compiled. See link:docs/STANDARDS-ALIGNMENT.adoc[alignment evidence and remaining gaps]. + +Run `just audit` and `just ci-check` before proposing dependency or CI changes. +Never commit live secrets, `.env` files, or sensitive test data. + +== Contact and updates + +Maintainer: https://github.com/hyperpolymath[@hyperpolymath], Jonathan D.A. Jewell. +Security contact: j.d.a.jewell@open.ac.uk. +Follow https://github.com/hyperpolymath/rpa-elysium/security/advisories[security advisories] +and link:CHANGELOG.adoc[the changelog]. Policy changes are reviewed in this repository. diff --git a/SUPPORT.adoc b/SUPPORT.adoc new file mode 100644 index 0000000..d2ff31e --- /dev/null +++ b/SUPPORT.adoc @@ -0,0 +1,15 @@ +// SPDX-License-Identifier: CC-BY-SA-4.0 += Support + +Use https://github.com/hyperpolymath/rpa-elysium/discussions[Discussions] for +questions and design help. Check link:README.adoc[the README] and +link:QUICKSTART-DEV.adoc[developer quickstart] first. + +Use https://github.com/hyperpolymath/rpa-elysium/issues/new/choose[issue forms] +for reproducible bugs and feature requests. Include your commit, platform, +exact command, observed output and minimal reproduction. Remove credentials, +personal data and private infrastructure details before sharing logs. + +Security reports belong in link:SECURITY.adoc[the private security channel], +not public support threads. This is a volunteer-maintained project with no +paid support contract or guaranteed response time. diff --git a/docs/AFFIRMATION.adoc b/docs/AFFIRMATION.adoc new file mode 100644 index 0000000..59ac19d --- /dev/null +++ b/docs/AFFIRMATION.adoc @@ -0,0 +1,11 @@ +// SPDX-License-Identifier: CC-BY-SA-4.0 += Bounded affirmation + +The project adopts the applicable community-health and licence baseline of +Hyperpolymath Standards and capability-gated RSR template policy. +Evidence and outstanding limitations are in +link:STANDARDS-ALIGNMENT.adoc[the alignment audit]. + +This affirms policy intent, not a perfect security score, independently +certified compliance, or completion of untested ABI/FFI work. Changes that +expand capabilities must update the profile and supply corresponding evidence. diff --git a/docs/AUDIT.adoc b/docs/AUDIT.adoc new file mode 100644 index 0000000..2e82640 --- /dev/null +++ b/docs/AUDIT.adoc @@ -0,0 +1,11 @@ +// SPDX-License-Identifier: CC-BY-SA-4.0 += Repository audit + +Audit scope: CI quality, action-graph integrity, supply-chain controls, +community-health surfaces and RSR template applicability, 2026-10-14. + +See link:STANDARDS-ALIGNMENT.adoc[authority revisions, findings, checks and gaps] +and link:CI-CD-REPAIR.adoc[the original multi-gate CI repair]. +This is a maintainer/agent review, not an independent penetration test or +formal verification of the whole application. Do not infer release readiness +or legal certification from this file's presence. diff --git a/docs/CI-CD-REPAIR.adoc b/docs/CI-CD-REPAIR.adoc index 63e190e..e87df20 100644 --- a/docs/CI-CD-REPAIR.adoc +++ b/docs/CI-CD-REPAIR.adoc @@ -1,7 +1,7 @@ = CI/CD repair and estate rollout — 2026-10-14 :toc: -// SPDX-License-Identifier: MPL-2.0 +// SPDX-License-Identifier: CC-BY-SA-4.0 == Scope and status @@ -68,7 +68,7 @@ job/step refs with jq. It no longer uses a GNU-awk line parser. It: * does not fabricate dependencies for zero-external-ref workflows; * never modifies the workflows or lockfile. -Fifteen positive/negative regression controls run in the Lock Sync Gate. +Seventeen positive/negative regression controls run in the Lock Sync Gate. `actions-lock-update-test.sh` additionally verifies observational verification, rollback, malformed-verdict rejection and reusable-graph preservation. Neither source code from a PR nor a PR-owned updater is executed under a @@ -100,8 +100,8 @@ SPDX first. It runs both upstream verification and structural closure checks. A *new* reusable ref with no resolved dependency graph remains a failure: the helper preserves established coverage, it does not invent a new commit or pretend a missing graph is resolved. Resolve and review those records before -merging a reusable pin change, as was done for this PR. Existing unreferenced -records may be retained; they cannot satisfy a different missing ref. +merging a reusable pin change, as was done for this PR. Existing records are retained only when reachable from the restored reusable +roots; unreferenced records are pruned and rejected by structural verification. `annotate-clippy.sh` keeps clippy's exit status and emits compiler diagnostics through the Checks API. The extra diagnostic job runs only after Rust CI fails; diff --git a/docs/STANDARDS-ALIGNMENT.adoc b/docs/STANDARDS-ALIGNMENT.adoc new file mode 100644 index 0000000..2a7e2c2 --- /dev/null +++ b/docs/STANDARDS-ALIGNMENT.adoc @@ -0,0 +1,108 @@ +// SPDX-License-Identifier: CC-BY-SA-4.0 += Standards and RSR-template alignment +:toc: + +== Authority and applicability + +Audited 2026-10-14 against: + +* https://github.com/hyperpolymath/standards/tree/80014df42eb81f09396c948299febb258cec4719[Standards `80014df...`]: + `0-canon/TEMPLATE-APPLICABILITY-POLICY.adoc`, + `.machine_readable/template-capability-gates.toml`, + `3-practice/LICENCE-POLICY.adoc`, security guidance and reusable workflows. +* https://github.com/hyperpolymath/rsr-template-repo/tree/c9bce256a3812575f509c9c90c64a1277a999a3b[RSR template `c9bce256...`]: + community-health surfaces, issue forms, PR checklist and Cargo update policy. + +Template adoption is *capability-based*, not a byte-for-byte clone of the maximal +spine. The application is not the template or Standards canon and claims no +carrier exemptions. `.machine_readable/rsr-profile.a2ml` declares the actual Rust +workspace/CLI/library, Zig/Idris ABI/FFI source, Gleam source, Bash tooling, +benchmarks, site workflow and governance. It does not claim a deployed API, +mobile/web application, registry release or reproducible Guix build. + +== Community health + +GitHub's community-profile endpoint already reported *100%* before this repair, +but Code of Conduct and PR-template surfaces came from the owner-wide `.github` +repository and there was no local issue form. That score is not a certification +of policy correctness or security. + +Local GitHub surfaces now include an instantiated conduct policy with a private +contact and four enforcement levels, private-security and support/governance +pointers, bug/feature forms, a security-aware PR checklist, correct CODEOWNERS +paths and one funding configuration preserving both existing sponsor identities. +Root AsciiDoc remains canonical for project guidance; GitHub-recognized Markdown +surfaces link to it. Code/config/scripts use MPL-2.0; new or revised prose uses +CC-BY-SA-4.0, with both licence texts retained. + +`.well-known/` points to the site's existing `www/.well-known/` source and +`.machine_readable/descriptiles/` points to the existing `6a2/` metadata. +These are compatibility views of single sources, not divergent duplicate files. +Security contact, policy URL and expiry are consistent. The security policy no +longer claims end-to-end encryption, a verified PGP key, a multi-person response +team, stable-release backports or third-party legal immunity without evidence. + +== Quality and CI security + +* PR-review findings are addressed: the diagnostic checkout is pinned to the + reviewed v7.0.1 SHA and checkout credentials are not persisted; stale lock + records are pruned by graph reachability; the mutation assertion fails + explicitly instead of using a vacuous negated command. +* The graph walker terminates on cycles, retains reachable transitive nodes, + and rejects dangling/unreferenced dependency records. Regeneration restores + only reachable established reusable coverage and never fabricates new pins. +* Security-sensitive failures use explicit status capture, not global errexit + disabling. Cargo.lock diffs are visible for dependency review. +* Read-only local lint/audit jobs have contents-only permissions. Audit tooling + is pinned to cargo-audit 0.22.2; Cargo security-only Dependabot configurations + match the template for the workspace and fuzz manifest. No auto-merge bot or + privileged PR execution has been added. +* Audit issue creation is disabled for PR events, where writable issue tokens + may be unavailable; the audit remains blocking on PRs. +* The broken, unauthenticated HTTP BoJ trigger is replaced by a manual opt-in + HTTPS/authenticated integration with a bounded request and JSON-safe inputs. + It is not a claimed working deployment until a maintainer configures it. +* Developer tasks now fail on the actual Rust failure instead of falling back + to unrelated runtimes. Unused generic Python/Go/Java/yarn tooling was removed. +* `just ci-check` validates the lock graph, regression controls and local + community-health baseline. Workflow lint runs on every PR, including + policy-only changes. `just audit` rejects security warnings/unmaintained crates. + +== Live GitHub controls and limitations + +On 2026-10-14 the API confirmed private vulnerability reporting enabled, +Discussions/issues enabled, squash-only merging and automatic merged-branch +cleanup. CODEOWNERS had no reported errors. Active rulesets include Base, +Branch-Floor, Immutable-Tags, Require-Linear-History, Require-Signed-Commits and +Secret-Scan-Floor. Base requires emitted Hypatia/baseline contexts and CodeQL / +Hypatia scanning thresholds. Existing rules were read, not weakened or replaced. + +The vulnerability-alerts endpoint returned *403 Resource not accessible by +integration*. Dependency-alert/secret-protection settings and a highest possible +OpenSSF score are therefore not asserted. Configuration changes requiring those +permissions need maintainer verification. Local file presence is not evidence +that every remote setting is enabled. + +== Explicit remaining canonical-layout gaps + +The current Standards profile checker expects Rust at `src/**/*.rs` rather than +workspace `crates/*/src/`, FFI at `src/interface/ffi/`, an `abi.ipkg`, Idris at +`src/interface/abi/` and a `src/interface/generated/` tree. This repository uses +`crates/`, `ffi/zig/`, `rpa-elysium-abi.ipkg` and `src/abi/`; no generated ABI +artefacts are claimed. The exact upstream checker therefore reports these as +*MISSING*. We do not create empty scaffolds, change declared capabilities to +hide real source, or weaken the upstream checker to report a false pass. + +Resolve these layout differences through a reviewed source/build migration or +upstream capability-table support for workspace/named-package alternatives. +Rust CI does not compile all Idris2/Zig targets; use `just verify-abi-ffi` with +those toolchains and record evidence before claiming that tier validated. +Latest Standards HEAD also adds a JS-runtime checker whose build previously +failed (see `CI-CD-REPAIR.adoc`); governance retains the tested compatibility +commit `c11c255...`, not an unvalidated HEAD bump. + +Thus this change aligns the *community/security baseline and applicable policy* +and records genuine residual work. It does not claim full RSR certification, +complete canonical layout conformity, estate-wide propagation, or a perfect +security score. Estate rollout remains tracked in +https://github.com/hyperpolymath/standards/issues/1261[Standards #1261]. diff --git a/mise.toml b/mise.toml index 6dd983f..d8bf164 100644 --- a/mise.toml +++ b/mise.toml @@ -1,57 +1,15 @@ +# SPDX-License-Identifier: MPL-2.0 +# Minimal Rust development environment; ABI/site tools are installed only when used. [tools] -# Language runtimes -node = "latest" -python = "latest" -rust = "latest" -go = "latest" -zig = "latest" -java = "latest" -bun = "latest" -denojs = "latest" - -# Package managers -npm = "latest" -yarn = "latest" -pnpm = "latest" -pip = "latest" -cargo = "latest" -go-task = "latest" - -# Formatting & Linting -gofmt = "latest" -black = "latest" -isort = "latest" -ruff = "latest" -prettier = "latest" -shfmt = "latest" -stylua = "latest" - -# Build tools -cmake = "latest" -make = "latest" -ninja = "latest" - -# Shell tools -git = "latest" -gnu-sed = "latest" -gnu-tar = "latest" -gnu-grep = "latest" - -# Testing -vitest = "latest" -pytest = "latest" -jest = "latest" - -[env] -# Common environment variables -NODE_ENV = "development" -PYTHONDONTWRITEBYTECODE = "1" -PYTHONUNBUFFERED = "1" - -# Task runner alias -[alias] -task = "go-task" -build = "cargo build --release || npm run build || go build" -test = "cargo test || npm test || go test ./..." -lint = "ruff check . || prettier --check . || black --check ." -fmt = "ruff format . || prettier --write . || black ." +rust = "stable" + +[tasks.build] +run = "cargo build --locked --workspace" +[tasks.test] +run = "cargo test --locked --workspace --all-targets" +[tasks.lint] +run = "cargo clippy --locked --workspace --all-targets -- -D warnings" +[tasks.fmt] +run = "cargo fmt --all -- --check" +[tasks.ci-check] +run = "just ci-check" diff --git a/scripts/annotate-clippy.sh b/scripts/annotate-clippy.sh index c776311..fef5b30 100644 --- a/scripts/annotate-clippy.sh +++ b/scripts/annotate-clippy.sh @@ -5,10 +5,8 @@ set -euo pipefail messages=$(mktemp) trap 'rm -f "$messages"' EXIT -set +e -cargo clippy --locked --all-targets --message-format=json -- -D warnings > "$messages" -status=$? -set -e +status=0 +cargo clippy --locked --all-targets --message-format=json -- -D warnings > "$messages" || status=$? cat "$messages" jq -r ' def escape: tostring | gsub("%"; "%25") | gsub("\r"; "%0D") | gsub("\n"; "%0A"); diff --git a/scripts/check-lock-sync.sh b/scripts/check-lock-sync.sh index 1ce1d35..b3ced39 100755 --- a/scripts/check-lock-sync.sh +++ b/scripts/check-lock-sync.sh @@ -30,18 +30,11 @@ for file in "${files[@]}"; do ' "$scratch/workflow.json" >> "$scratch/refs.jsonl" done jq -s '.' "$scratch/refs.jsonl" > "$scratch/refs.json" -jq -n --slurpfile lock "$scratch/lock.json" --slurpfile workflows "$scratch/refs.json" ' - # Owner/repo is case-insensitive; refs remain case-sensitive. Subpaths collapse. - def norm: - if type != "string" then error("uses/ref must be a string") - elif startswith("./") or startswith("docker://") then empty - elif test("^[^/@]+/[^/@]+(?:/[^@]+)?@[^@[:space:]]+$") then - capture("^(?[^/@]+)/(?[^/@]+)(?:/[^@]+)?@(?[^@[:space:]]+)$") - | ((.owner + "/" + .repo | ascii_downcase) + "@" + .ref) - else error("invalid external uses/ref: " + .) end; - def refs: if type != "array" then error("lock refs must be arrays") else map(norm) | unique end; +jq -L "$(dirname "${BASH_SOURCE[0]}")" -n --slurpfile lock "$scratch/lock.json" --slurpfile workflows "$scratch/refs.json" ' + include "lock-graph"; $lock[0] as $l | $workflows[0] as $ws | - ($l.dependencies | to_entries | map({key: (.key | norm), value: .value}) | from_entries) as $deps | + ($l.dependencies | normal_dependencies) as $deps | + reachable([$l.workflows[] | .[]]; $deps) as $live | [ ($ws[] | . as $w | ($w.refs | refs) as $want | ($l.workflows[$w.path] // [] | refs) as $got | @@ -51,6 +44,7 @@ jq -n --slurpfile lock "$scratch/lock.json" --slurpfile workflows "$scratch/refs select($deps[$ref] == null) | {type: "dangling-edge", ref: $ref})), ($deps | to_entries[] | select((.value.commit | type != "string") or ((.value.commit // "") | test("^sha1-[0-9a-f]{40}$") | not)) | {type: "invalid-commit", ref: .key}) + , (($deps | keys) - $live | .[] | {type: "unreferenced-dependency", ref: .}) ] | unique ' > "$scratch/findings.json" if ! jq -e 'length == 0' "$scratch/findings.json" >/dev/null; then diff --git a/scripts/check-repository-health.sh b/scripts/check-repository-health.sh new file mode 100644 index 0000000..76f057a --- /dev/null +++ b/scripts/check-repository-health.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: MPL-2.0 +# Project baseline, not a claim of full RSR certification or remote settings. +set -euo pipefail +ROOT=${1:-.} +YQ_BIN=${YQ_BIN:-yq} +required=(README.adoc LICENSE LICENSES/MPL-2.0.txt LICENSES/CC-BY-SA-4.0.txt + SECURITY.adoc SUPPORT.adoc GOVERNANCE.adoc CONTRIBUTING.adoc + .github/SECURITY.md .github/SUPPORT.md .github/GOVERNANCE.md + .github/CONTRIBUTING.md .github/CODE_OF_CONDUCT.md .github/CODEOWNERS + .github/FUNDING.yml .github/pull_request_template.md + .github/ISSUE_TEMPLATE/bug_report.yml .github/ISSUE_TEMPLATE/feature_request.yml + .github/ISSUE_TEMPLATE/config.yml .machine_readable/rsr-profile.a2ml + .machine_readable/descriptiles/STATE.a2ml .well-known/security.txt + docs/STANDARDS-ALIGNMENT.adoc docs/AUDIT.adoc docs/AFFIRMATION.adoc) +for file in "${required[@]}"; do + [[ -s "$ROOT/$file" ]] || { echo "::error::Missing/empty baseline file: $file"; exit 1; } +done +[[ ! -e "$ROOT/.github/funding.yml" ]] || { echo '::error::Duplicate funding configuration'; exit 1; } +if grep -nE '\{\{[A-Z_]+\}\}|TEMPLATE INSTRUCTIONS' "$ROOT"/.github/{CODE_OF_CONDUCT,SECURITY,SUPPORT,GOVERNANCE}.md "$ROOT"/.github/ISSUE_TEMPLATE/*; then + echo '::error::Uninstantiated community template'; exit 1 +fi +for form in bug_report feature_request; do + "$YQ_BIN" -o=json '.' "$ROOT/.github/ISSUE_TEMPLATE/$form.yml" | jq -e ' + (.name | type == "string") and (.description | type == "string") and + (.body | type == "array" and length > 0) and + ([.body[].id? | select(. != null)] | length == (unique | length)) and + any(.body[]; .validations.required == true)' >/dev/null +done +"$YQ_BIN" -o=json '.' "$ROOT/.github/ISSUE_TEMPLATE/config.yml" | jq -e ' + any(.contact_links[]; .url == "https://github.com/hyperpolymath/rpa-elysium/security/advisories/new")' >/dev/null +grep -q 'security/advisories/new' "$ROOT/.github/SECURITY.md" +grep -q 'blob/main/SECURITY.adoc' "$ROOT/.well-known/security.txt" +expires=$(sed -n 's/^Expires: //p' "$ROOT/.well-known/security.txt") +[[ $(date -u -d "$expires" +%s) -gt $(date -u +%s) ]] || { echo '::error::security.txt expired'; exit 1; } +for target in SECURITY SUPPORT GOVERNANCE; do + grep -q "../$target.adoc" "$ROOT/.github/$target.md" +done +echo 'Repository health: local baseline, instantiated forms, policy pointers and security.txt valid.' +echo 'Remote feature/ruleset state and full canonical-layout conformity require the separate alignment audit.' diff --git a/scripts/lock-graph.jq b/scripts/lock-graph.jq new file mode 100644 index 0000000..67d4eed --- /dev/null +++ b/scripts/lock-graph.jq @@ -0,0 +1,22 @@ +# SPDX-License-Identifier: MPL-2.0 +# Owner/repository names are case-insensitive; git refs are not. +def norm: + if type != "string" then error("uses/ref must be a string") + elif startswith("./") or startswith("docker://") then empty + elif test("^[^/@]+/[^/@]+(?:/[^@]+)?@[^@[:space:]]+$") then + capture("^(?[^/@]+)/(?[^/@]+)(?:/[^@]+)?@(?[^@[:space:]]+)$") + | ((.owner + "/" + .repo | ascii_downcase) + "@" + .ref) + else error("invalid external uses/ref: " + .) end; +def refs: + if type != "array" then error("lock refs must be arrays") + else map(norm) | unique end; +def normal_dependencies: + to_entries | map({key: (.key | norm), value: .value}) | from_entries; +# Fixed point, rather than recursive traversal: cycles terminate and missing +# nodes remain in the result for the separate dangling-edge check to reject. +def reachable($roots; $deps): + {seen: ($roots | refs), prior: null} | + until(.seen == .prior; + .prior = .seen | + .seen = (.seen + [.seen[] as $ref | ($deps[$ref].uses // [] | refs[])] | unique)) | + .seen; diff --git a/scripts/restore-reusable-lock-coverage.sh b/scripts/restore-reusable-lock-coverage.sh index 379f2ec..c538fc3 100644 --- a/scripts/restore-reusable-lock-coverage.sh +++ b/scripts/restore-reusable-lock-coverage.sh @@ -24,9 +24,16 @@ for file in "$wf_dir"/*.yml "$wf_dir"/*.yaml; do ' >> "$scratch/reusables.jsonl" done jq -s '.' "$scratch/reusables.jsonl" > "$scratch/reusables.json" -jq --slurpfile old "$scratch/old.json" --slurpfile refs "$scratch/reusables.json" ' - .dependencies = ($old[0].dependencies + .dependencies) | - reduce $refs[0][] as $r (.; .workflows[$r.workflow] = ((.workflows[$r.workflow] // []) + [$r.dependency] | unique)) +jq -L "$(dirname "${BASH_SOURCE[0]}")" --slurpfile old "$scratch/old.json" --slurpfile refs "$scratch/reusables.json" ' + include "lock-graph"; + ($old[0].dependencies | normal_dependencies) as $olddeps | + reachable([$refs[0][].dependency]; $olddeps) as $keep | + .dependencies = (($olddeps | with_entries(select(.key as $k | $keep | index($k)))) + (.dependencies | normal_dependencies)) | + reduce $refs[0][] as $r (.; .workflows[$r.workflow] = ((.workflows[$r.workflow] // []) + [$r.dependency] | unique)) | + # A regenerated graph may contain obsolete direct records too. Prune only + # after roots are restored; never drop a reachable transitive record. + reachable([.workflows[] | .[]]; .dependencies) as $live | + .dependencies |= with_entries(select(.key as $k | $live | index($k))) ' "$scratch/current.json" > "$scratch/merged.json" # Write only when parsing and merging both succeeded. The parent updater owns # rollback if its subsequent authoritative or structural verification fails. diff --git a/scripts/tests/actions-lock-update-test.sh b/scripts/tests/actions-lock-update-test.sh index 5d7e6ef..181c9c9 100644 --- a/scripts/tests/actions-lock-update-test.sh +++ b/scripts/tests/actions-lock-update-test.sh @@ -22,6 +22,12 @@ dependencies: commit: sha1-1111111111111111111111111111111111111111 owner_id: 1 repo_id: 2 + uses: ['owner/transitive@v1'] + 'owner/transitive@v1': + ref: v1 + commit: sha1-2222222222222222222222222222222222222222 + owner_id: 1 + repo_id: 3 YAML cp .github/workflows/example.yml original.yml cp .github/workflows/actions.lock original.lock @@ -55,9 +61,22 @@ if bash "$SCRIPTS/update-actions-lock.sh" --verify-local; then echo 'FAIL: malfo cmp original.yml .github/workflows/example.yml cmp original.lock .github/workflows/actions.lock echo 'PASS: malformed verdict fails closed and restores inputs' +# Seed obsolete data only for the update test; the verifier must prune it, +# while retaining the real transitive node above. +cat >> .github/workflows/actions.lock <<'YAML' + 'owner/dead@v1': + ref: v1 + commit: sha1-3333333333333333333333333333333333333333 + owner_id: 1 + repo_id: 4 +YAML export FAKE_VERDICT=true bash "$SCRIPTS/update-actions-lock.sh" [ "$(head -1 .github/workflows/example.yml)" = '# SPDX-License-Identifier: MPL-2.0' ] -! grep -q verifier-only .github/workflows/example.yml .github/workflows/actions.lock +if grep -q verifier-only .github/workflows/example.yml .github/workflows/actions.lock; then + echo 'FAIL: verifier-only mutations survived'; exit 1 +fi bash "$SCRIPTS/check-lock-sync.sh" echo 'PASS: update preserves reusable closure, SPDX ordering, and discards verifier mutations' +yq -o=json '.' .github/workflows/actions.lock | jq -e '.dependencies["owner/transitive@v1"] != null and .dependencies["owner/dead@v1"] == null' >/dev/null +echo 'PASS: restore retains reachable transitive nodes and prunes stale old records' diff --git a/scripts/tests/check-lock-sync-test.sh b/scripts/tests/check-lock-sync-test.sh index 8fed7cf..29d67a7 100644 --- a/scripts/tests/check-lock-sync-test.sh +++ b/scripts/tests/check-lock-sync-test.sh @@ -91,4 +91,17 @@ fixture; sed -i "s/owner\/shared@v1/owner\/shared@V1/" "$WF/actions.lock" assert_status fail 'refs remain case-sensitive' fixture; sed -i "s@.github/workflows/example.yml@.github/workflows/deleted.yml@" "$WF/actions.lock" assert_status fail 'deleted workflow entry blocks' -echo '15 lock-sync regression controls passed (plus observational byte comparison).' +fixture +cat >> "$WF/actions.lock" <<'YAML' + 'owner/dead@v1': + ref: v1 + commit: sha1-3333333333333333333333333333333333333333 + owner_id: 1 + repo_id: 4 +YAML +assert_status fail 'unreferenced dependency records block' +fixture +# A dependency back-edge must terminate, not hang the validator. +sed -i '/repo_id: 3/a\ uses: ['owner/shared@v1']' "$WF/actions.lock" +assert_status pass 'reachable cyclic dependency graph terminates' +echo '17 lock-sync regression controls passed (plus observational byte comparison).' diff --git a/scripts/tests/repository-health-test.sh b/scripts/tests/repository-health-test.sh new file mode 100644 index 0000000..2cae834 --- /dev/null +++ b/scripts/tests/repository-health-test.sh @@ -0,0 +1,33 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: MPL-2.0 +set -euo pipefail +PROJECT="$(cd "$(dirname "$0")/../.." && pwd)" +CHECK="$PROJECT/scripts/check-repository-health.sh" +scratch=$(mktemp -d) +trap 'rm -rf "$scratch"' EXIT +# Test fixtures preserve symlink targets without copying source/build artefacts. +cp -R "$PROJECT/.github" "$PROJECT/LICENSES" "$PROJECT/.machine_readable" "$PROJECT/www" "$PROJECT/docs" "$scratch/" +cp "$PROJECT/README.adoc" "$PROJECT/LICENSE" "$PROJECT/SECURITY.adoc" "$PROJECT/SUPPORT.adoc" "$PROJECT/GOVERNANCE.adoc" "$PROJECT/CONTRIBUTING.adoc" "$scratch/" +ln -s www/.well-known "$scratch/.well-known" +bash "$CHECK" "$scratch" +echo 'PASS: complete local community baseline' +expect_failure() { + if bash "$CHECK" "$scratch" > "$scratch/output" 2>&1; then + echo "FAIL: $1 was accepted"; exit 1 + fi + echo "PASS: $1 fails closed" +} +mv "$scratch/.github/SECURITY.md" "$scratch/.github/SECURITY.saved" +expect_failure 'missing private-security surface' +mv "$scratch/.github/SECURITY.saved" "$scratch/.github/SECURITY.md" +echo '{{SECURITY_EMAIL}}' >> "$scratch/.github/SECURITY.md" +expect_failure 'uninstantiated template token' +cp "$PROJECT/.github/SECURITY.md" "$scratch/.github/SECURITY.md" +sed -i 's/Expires:.*/Expires: 2000-01-01T00:00:00Z/' "$scratch/www/.well-known/security.txt" +expect_failure 'expired security.txt' +cp "$PROJECT/www/.well-known/security.txt" "$scratch/www/.well-known/security.txt" +cp "$scratch/.github/FUNDING.yml" "$scratch/.github/funding.yml" +expect_failure 'duplicate funding configuration' +rm "$scratch/.github/funding.yml" +bash "$CHECK" "$scratch" +echo '5 repository-health controls passed.' diff --git a/scripts/update-actions-lock.sh b/scripts/update-actions-lock.sh index 2d3e5e6..3f6c4e8 100755 --- a/scripts/update-actions-lock.sh +++ b/scripts/update-actions-lock.sh @@ -142,10 +142,8 @@ verify_lock_coverage() { return } - set +e - result=$("$GH_BIN" actions-lock --verify-local --json=valid,findings) - status=$? - set -e + status=0 + result=$("$GH_BIN" actions-lock --verify-local --json=valid,findings) || status=$? if [ -z "$result" ] || ! printf '%s' "$result" | jq -e -s 'length == 1 and (.[0] | type == "object" and (.valid | type == "boolean") and (.findings | type == "array"))' >/dev/null 2>&1; then printf '%s\n' "$result" diff --git a/www/.well-known/security.txt b/www/.well-known/security.txt index 6706a1f..1fe0a89 100644 --- a/www/.well-known/security.txt +++ b/www/.well-known/security.txt @@ -1,9 +1,7 @@ # SPDX-License-Identifier: MPL-2.0 -# RFC 9116 - security.txt -# https://securitytxt.org/ - +Contact: https://github.com/hyperpolymath/rpa-elysium/security/advisories/new Contact: mailto:j.d.a.jewell@open.ac.uk -Expires: 2027-12-31T23:59:59.000Z +Expires: 2027-10-01T00:00:00Z Preferred-Languages: en -Canonical: https://github.com/hyperpolymath/rpa-elysium/.well-known/security.txt -Policy: https://github.com/hyperpolymath/rpa-elysium/blob/main/SECURITY.md +Canonical: https://raw.githubusercontent.com/hyperpolymath/rpa-elysium/main/www/.well-known/security.txt +Policy: https://github.com/hyperpolymath/rpa-elysium/blob/main/SECURITY.adoc From c5758a9a218fa2ab155da07e882e169f0c4aae8d Mon Sep 17 00:00:00 2001 From: "coderabbitai[bot]" <136622811+coderabbitai[bot]@users.noreply.github.com> Date: Wed, 14 Oct 2026 17:24:43 +0000 Subject: [PATCH 09/12] docs(ci): Clarify lock-sync test helpers and advisory classification --- scripts/tests/check-lock-sync-test.sh | 4 ++++ scripts/update-actions-lock.sh | 2 ++ 2 files changed, 6 insertions(+) diff --git a/scripts/tests/check-lock-sync-test.sh b/scripts/tests/check-lock-sync-test.sh index 8fed7cf..234cea5 100644 --- a/scripts/tests/check-lock-sync-test.sh +++ b/scripts/tests/check-lock-sync-test.sh @@ -6,6 +6,8 @@ ROOT=$(mktemp -d) trap 'rm -rf "$ROOT"' EXIT mkdir -p "$ROOT/.github/workflows" WF="$ROOT/.github/workflows" +# Remove the files in WF and recreate a workflow and transitively closed lock +# with reusable-workflow and action refs as the baseline for each test case. fixture() { rm -f "$WF"/* cat > "$WF/example.yml" <<'YAML' @@ -41,6 +43,8 @@ dependencies: repo_id: 3 YAML } +# Run CHECK against WF and assert the expected pass/fail outcome in $1, using $2 +# as the test label. Print captured diagnostics and exit 1 on an unexpected result. assert_status() { expected=$1; label=$2 rc=0 diff --git a/scripts/update-actions-lock.sh b/scripts/update-actions-lock.sh index 4c30939..7818af9 100755 --- a/scripts/update-actions-lock.sh +++ b/scripts/update-actions-lock.sh @@ -114,6 +114,8 @@ workflow_local_uses_resolve() { done <<< "$local_refs" } +# Return 0 only when the finding category in $1 is the known sha-as-ref advisory; +# return 1 for every other category, regardless of its reported severity. is_advisory_category() { # Advisory findings never affect the tool's own `valid` bit: a tree whose # only findings are `sha-as-ref` reports `"valid": true` (measured From 3fac083b3478af034968bd0756750fdb6d49352a Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 17:29:14 +0000 Subject: [PATCH 10/12] fix(security): preserve canonical lock serialization and constrain build-service egress Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- .github/ISSUE_TEMPLATE/config.yml | 2 +- .github/workflows/actions.lock | 387 +++++++++++----------- .github/workflows/boj-build.yml | 5 + docs/STANDARDS-ALIGNMENT.adoc | 9 +- scripts/render-actions-lock.jq | 24 ++ scripts/restore-reusable-lock-coverage.sh | 2 +- 6 files changed, 231 insertions(+), 198 deletions(-) create mode 100644 scripts/render-actions-lock.jq diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index ae64a67..1d3c234 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,4 +1,4 @@ -# SPDX-License-Identifier: CC-BY-SA-4.0 +# SPDX-License-Identifier: MPL-2.0 # SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell # # Issue chooser configuration. Blank issues stay enabled so that reports which diff --git a/.github/workflows/actions.lock b/.github/workflows/actions.lock index c28ac36..075bf10 100644 --- a/.github/workflows/actions.lock +++ b/.github/workflows/actions.lock @@ -1,267 +1,268 @@ # SPDX-License-Identifier: MPL-2.0 # Resolved action graph; regenerate with scripts/update-actions-lock.sh. -version: v0.0.3 +version: 'v0.0.3' workflows: - .github/workflows/boj-build.yml: [] - .github/workflows/cargo-audit.yml: - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - .github/workflows/casket-pages.yml: - - actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d - - actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 - - actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 - - haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d - .github/workflows/cflite_batch.yml: - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d - - google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1 - .github/workflows/cflite_pr.yml: - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d - - google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1 - .github/workflows/codeql.yml: - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d - .github/workflows/dogfood-gate.yml: - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - .github/workflows/governance.yml: - - hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a - .github/workflows/hypatia-scan.yml: - - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a - .github/workflows/instant-sync.yml: - - peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697 - .github/workflows/label-triage.yml: [] - .github/workflows/labels.yml: [] - .github/workflows/lock-sync-gate.yml: [] - .github/workflows/mirror.yml: - - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a - .github/workflows/push-email-notify.yml: - - hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef - .github/workflows/rust-ci.yml: - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a - .github/workflows/scorecard.yml: - - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a - .github/workflows/secret-scanner.yml: - - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a - .github/workflows/workflow-linter.yml: - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + '.github/workflows/boj-build.yml': + - 'step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25' + '.github/workflows/cargo-audit.yml': + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + '.github/workflows/casket-pages.yml': + - 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9' + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d' + - 'actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346' + - 'actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9' + - 'haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' + '.github/workflows/cflite_batch.yml': + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d' + - 'google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1' + '.github/workflows/cflite_pr.yml': + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d' + - 'google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1' + '.github/workflows/codeql.yml': + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d' + '.github/workflows/dogfood-gate.yml': + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + '.github/workflows/governance.yml': + - 'hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a' + '.github/workflows/hypatia-scan.yml': + - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' + '.github/workflows/instant-sync.yml': + - 'peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697' + '.github/workflows/label-triage.yml': [] + '.github/workflows/labels.yml': [] + '.github/workflows/lock-sync-gate.yml': [] + '.github/workflows/mirror.yml': + - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' + '.github/workflows/push-email-notify.yml': + - 'hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef' + '.github/workflows/rust-ci.yml': + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' + '.github/workflows/scorecard.yml': + - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' + '.github/workflows/secret-scanner.yml': + - 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a' + '.github/workflows/workflow-linter.yml': + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' dependencies: - actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9: - ref: 55cc8345863c7cc4c66a329aec7e433d2d1c52a9 - commit: sha1-55cc8345863c7cc4c66a329aec7e433d2d1c52a9 + 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9': + ref: '55cc8345863c7cc4c66a329aec7e433d2d1c52a9' + commit: 'sha1-55cc8345863c7cc4c66a329aec7e433d2d1c52a9' owner_id: 44036562 repo_id: 215566462 - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1: - ref: 3d3c42e5aac5ba805825da76410c181273ba90b1 - commit: sha1-3d3c42e5aac5ba805825da76410c181273ba90b1 + 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1': + ref: '3d3c42e5aac5ba805825da76410c181273ba90b1' + commit: 'sha1-3d3c42e5aac5ba805825da76410c181273ba90b1' owner_id: 44036562 repo_id: 197814629 - actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d: - ref: 45bfe0192ca1faeb007ade9deae92b16b8254a0d - commit: sha1-45bfe0192ca1faeb007ade9deae92b16b8254a0d + 'actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d': + ref: '45bfe0192ca1faeb007ade9deae92b16b8254a0d' + commit: 'sha1-45bfe0192ca1faeb007ade9deae92b16b8254a0d' owner_id: 44036562 repo_id: 513659658 - actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1: - ref: bcd2ba49218906704ab6c1aa796996da409d3eb1 - commit: sha1-bcd2ba49218906704ab6c1aa796996da409d3eb1 + 'actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1': + ref: 'bcd2ba49218906704ab6c1aa796996da409d3eb1' + commit: 'sha1-bcd2ba49218906704ab6c1aa796996da409d3eb1' owner_id: 44036562 repo_id: 642580244 - actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346: - ref: 368f82528645a54fb793d4d04e342629a3f51346 - commit: sha1-368f82528645a54fb793d4d04e342629a3f51346 + 'actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346': + ref: '368f82528645a54fb793d4d04e342629a3f51346' + commit: 'sha1-368f82528645a54fb793d4d04e342629a3f51346' owner_id: 44036562 repo_id: 438112499 - actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333: - ref: v8.0.2 - commit: sha1-9000827ccba6bdab643e8b6fd33ac0654aef8333 + 'actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333': + ref: 'v8.0.2' + commit: 'sha1-9000827ccba6bdab643e8b6fd33ac0654aef8333' owner_id: 44036562 repo_id: 192626254 - actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3: - ref: v9.0.0 - commit: sha1-3a2844b7e9c422d3c10d287c895573f7108da1b3 + 'actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3': + ref: 'v9.0.0' + commit: 'sha1-3a2844b7e9c422d3c10d287c895573f7108da1b3' owner_id: 44036562 repo_id: 205262760 - actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a: - ref: 043fb46d1a93c77aae656e7c1c64a875d1fc6a0a - commit: sha1-043fb46d1a93c77aae656e7c1c64a875d1fc6a0a + 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a': + ref: '043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' + commit: 'sha1-043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' owner_id: 44036562 repo_id: 192625955 - actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f: - ref: v7.0.0 - commit: sha1-bbbca2ddaa5d8feaa63e36b76fdaad77386f024f + 'actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f': + ref: 'v7.0.0' + commit: 'sha1-bbbca2ddaa5d8feaa63e36b76fdaad77386f024f' owner_id: 44036562 repo_id: 192625955 - actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9: - ref: v7.0.2 - commit: sha1-cf430e030ddbb5b0abf93d22962f4752f3646cd9 + 'actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9': + ref: 'v7.0.2' + commit: 'sha1-cf430e030ddbb5b0abf93d22962f4752f3646cd9' owner_id: 44036562 repo_id: 192625955 - actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9: - ref: fc324d3547104276b827a68afc52ff2a11cc49c9 - commit: sha1-fc324d3547104276b827a68afc52ff2a11cc49c9 + 'actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9': + ref: 'fc324d3547104276b827a68afc52ff2a11cc49c9' + commit: 'sha1-fc324d3547104276b827a68afc52ff2a11cc49c9' owner_id: 44036562 repo_id: 496012378 uses: - - actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f - dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772: - ref: 6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 - commit: sha1-6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 + - 'actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f' + 'dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772': + ref: '6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772' + commit: 'sha1-6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772' owner_id: 1940490 repo_id: 260749683 - dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067: - ref: v1 - commit: sha1-7e38f4b43b4db5c8dd498af069a4f6196df1d067 + 'dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067': + ref: 'v1' + commit: 'sha1-7e38f4b43b4db5c8dd498af069a4f6196df1d067' owner_id: 1940490 repo_id: 260749683 - dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f: - ref: v1 - commit: sha1-e2a55d2ffb04f378e9626c28d38b36d230d1e12f + 'dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f': + ref: 'v1' + commit: 'sha1-e2a55d2ffb04f378e9626c28d38b36d230d1e12f' owner_id: 1940490 repo_id: 260749683 - editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393: - ref: v3.0.0 - commit: sha1-51f63319f592f97930c73d9c46184d20bd206393 + 'editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393': + ref: 'v3.0.0' + commit: 'sha1-51f63319f592f97930c73d9c46184d20bd206393' owner_id: 26415196 repo_id: 297874902 - erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124: - ref: 54075bcc5e249e4758d363f27d099f55d843f124 - commit: sha1-54075bcc5e249e4758d363f27d099f55d843f124 + 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124': + ref: '54075bcc5e249e4758d363f27d099f55d843f124' + commit: 'sha1-54075bcc5e249e4758d363f27d099f55d843f124' owner_id: 47606891 repo_id: 331103973 - github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d: - ref: v4.38.3 - commit: sha1-24c54180a607b1449ed407dd24f251e4e9147c8d + 'github/codeql-action@24c54180a607b1449ed407dd24f251e4e9147c8d': + ref: 'v4.38.3' + commit: 'sha1-24c54180a607b1449ed407dd24f251e4e9147c8d' owner_id: 9919 repo_id: 259445878 - github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63: - ref: b96794f015dfd88f77b49b1c93e0fa7110f94c63 - commit: sha1-b96794f015dfd88f77b49b1c93e0fa7110f94c63 + 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63': + ref: 'b96794f015dfd88f77b49b1c93e0fa7110f94c63' + commit: 'sha1-b96794f015dfd88f77b49b1c93e0fa7110f94c63' owner_id: 9919 repo_id: 259445878 - github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28: - ref: db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 - commit: sha1-db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 + 'github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28': + ref: 'db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28' + commit: 'sha1-db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28' owner_id: 9919 repo_id: 259445878 - goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406: - ref: abea47f85e598557f500fa1fd2ab7464fcb39406 - commit: sha1-abea47f85e598557f500fa1fd2ab7464fcb39406 + 'google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1': + ref: 'v1' + commit: 'sha1-884713a6c30a92e5e8544c39945cd7cb630abcd1' + owner_id: 1342004 + repo_id: 400046858 + 'goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406': + ref: 'abea47f85e598557f500fa1fd2ab7464fcb39406' + commit: 'sha1-abea47f85e598557f500fa1fd2ab7464fcb39406' owner_id: 1006268 repo_id: 212984112 - haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d: - ref: v2.12.1 - commit: sha1-0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d + 'haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d': + ref: 'v2.12.1' + commit: 'sha1-0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' owner_id: 75048950 repo_id: 623796603 - hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd: - ref: 571cc734cd69fb846032ec77a662aa8ee4fc32cd - commit: sha1-571cc734cd69fb846032ec77a662aa8ee4fc32cd + 'hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef': + ref: 'v0.5.0' + commit: 'sha1-c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef' + owner_id: 6759885 + repo_id: 1352485172 + 'hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd': + ref: '571cc734cd69fb846032ec77a662aa8ee4fc32cd' + commit: 'sha1-571cc734cd69fb846032ec77a662aa8ee4fc32cd' owner_id: 6759885 repo_id: 1116521501 - hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a: - ref: c11c255e1b5546854e874d1486d61d6d5a4da29a - commit: sha1-c11c255e1b5546854e874d1486d61d6d5a4da29a + 'hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a': + ref: '84355587cb2a1f86e6882de83514a32db2646e7a' + commit: 'sha1-84355587cb2a1f86e6882de83514a32db2646e7a' owner_id: 6759885 repo_id: 1116521501 uses: - - actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d - - actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 - - actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 - - actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 - - actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 - - actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 - - actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 - - dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f - - editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393 - - erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124 - - github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63 - - goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406 - - haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d - - hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd - - hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f - - ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7 - - ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc - - oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 - - peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697 - - step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25 - - swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 - - tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd - - webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555 - hyperpolymath/standards@84355587cb2a1f86e6882de83514a32db2646e7a: - ref: 84355587cb2a1f86e6882de83514a32db2646e7a - commit: sha1-84355587cb2a1f86e6882de83514a32db2646e7a + - 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9' + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' + - 'dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772' + - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124' + - 'github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28' + - 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc' + - 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6' + - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' + 'hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f': + ref: 'b935e63937b1f1b5cbaeea7e375947d7b924038f' + commit: 'sha1-b935e63937b1f1b5cbaeea7e375947d7b924038f' owner_id: 6759885 repo_id: 1116521501 uses: - - actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a - - dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 - - erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124 - - github/codeql-action@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 - - ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc - - swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 - - webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555 - hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f: - ref: b935e63937b1f1b5cbaeea7e375947d7b924038f - commit: sha1-b935e63937b1f1b5cbaeea7e375947d7b924038f + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067' + - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' + 'hyperpolymath/standards@c11c255e1b5546854e874d1486d61d6d5a4da29a': + ref: 'c11c255e1b5546854e874d1486d61d6d5a4da29a' + commit: 'sha1-c11c255e1b5546854e874d1486d61d6d5a4da29a' owner_id: 6759885 repo_id: 1116521501 uses: - - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - dtolnay/rust-toolchain@7e38f4b43b4db5c8dd498af069a4f6196df1d067 - - webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555 - ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7: - ref: 93303b622b2522e4411e295f9e77411a24912ac7 - commit: sha1-93303b622b2522e4411e295f9e77411a24912ac7 + - 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9' + - 'actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1' + - 'actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d' + - 'actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1' + - 'actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346' + - 'actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333' + - 'actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3' + - 'actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9' + - 'actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9' + - 'dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f' + - 'editorconfig-checker/action-editorconfig-checker@51f63319f592f97930c73d9c46184d20bd206393' + - 'erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124' + - 'github/codeql-action@b96794f015dfd88f77b49b1c93e0fa7110f94c63' + - 'goto-bus-stop/setup-zig@abea47f85e598557f500fa1fd2ab7464fcb39406' + - 'haskell-actions/setup@0f8e8c99d88aeb3fbfd523f1ef2c6f762d10d64d' + - 'hyperpolymath/standards@571cc734cd69fb846032ec77a662aa8ee4fc32cd' + - 'hyperpolymath/standards@b935e63937b1f1b5cbaeea7e375947d7b924038f' + - 'ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7' + - 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc' + - 'oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6' + - 'peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697' + - 'step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25' + - 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6' + - 'tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd' + - 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555' + 'ocaml/setup-ocaml@93303b622b2522e4411e295f9e77411a24912ac7': + ref: '93303b622b2522e4411e295f9e77411a24912ac7' + commit: 'sha1-93303b622b2522e4411e295f9e77411a24912ac7' owner_id: 1841483 repo_id: 220799100 - ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc: - ref: 2d1146689b8cda280b9bc96326124645441f03bc - commit: sha1-2d1146689b8cda280b9bc96326124645441f03bc + 'ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc': + ref: '2d1146689b8cda280b9bc96326124645441f03bc' + commit: 'sha1-2d1146689b8cda280b9bc96326124645441f03bc' owner_id: 67707773 repo_id: 421101922 - oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6: - ref: v2.2.0 - commit: sha1-0c5077e51419868618aeaa5fe8019c62421857d6 + 'oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6': + ref: 'v2.2.0' + commit: 'sha1-0c5077e51419868618aeaa5fe8019c62421857d6' owner_id: 108928776 repo_id: 512644635 - peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697: - ref: v4.0.1 - commit: sha1-28959ce8df70de7be546dd1250a005dd32156697 + 'peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697': + ref: 'v4.0.1' + commit: 'sha1-28959ce8df70de7be546dd1250a005dd32156697' owner_id: 18365890 repo_id: 220359305 - step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25: - ref: v2.22.1 - commit: sha1-ccd8616d44fd3846e67624a50d5aad6d37bf2d25 + 'step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25': + ref: 'v2.22.1' + commit: 'sha1-ccd8616d44fd3846e67624a50d5aad6d37bf2d25' owner_id: 88700172 repo_id: 422287306 - swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6: - ref: 6323deb102c322ba6fcbdcafc7e3dddab59af2b6 - commit: sha1-6323deb102c322ba6fcbdcafc7e3dddab59af2b6 + 'swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6': + ref: '6323deb102c322ba6fcbdcafc7e3dddab59af2b6' + commit: 'sha1-6323deb102c322ba6fcbdcafc7e3dddab59af2b6' owner_id: 580492 repo_id: 298565987 - tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd: - ref: v4.2.0 - commit: sha1-d1b6cd204f8dceda5b3eaad7f1f767be390056cd + 'tailscale/github-action@d1b6cd204f8dceda5b3eaad7f1f767be390056cd': + ref: 'v4.2.0' + commit: 'sha1-d1b6cd204f8dceda5b3eaad7f1f767be390056cd' owner_id: 48932923 repo_id: 360548653 - webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555: - ref: e83874834305fe9a4a2997156cb26c5de65a8555 - commit: sha1-e83874834305fe9a4a2997156cb26c5de65a8555 + 'webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555': + ref: 'e83874834305fe9a4a2997156cb26c5de65a8555' + commit: 'sha1-e83874834305fe9a4a2997156cb26c5de65a8555' owner_id: 135788 repo_id: 208510314 - google/clusterfuzzlite@884713a6c30a92e5e8544c39945cd7cb630abcd1: - ref: v1 - commit: sha1-884713a6c30a92e5e8544c39945cd7cb630abcd1 - owner_id: 1342004 - repo_id: 400046858 - hyperpolymath/smtp-notify-action@c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef: - ref: v0.5.0 - commit: sha1-c1c9fa07992a02c1fd3d67a0dc1b08cccb852aef - owner_id: 6759885 - repo_id: 1352485172 diff --git a/.github/workflows/boj-build.yml b/.github/workflows/boj-build.yml index ee0f358..83eff5e 100644 --- a/.github/workflows/boj-build.yml +++ b/.github/workflows/boj-build.yml @@ -11,6 +11,11 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 5 steps: + - name: Monitor build-service egress + uses: step-security/harden-runner@ccd8616d44fd3846e67624a50d5aad6d37bf2d25 # v2.22.1 + with: + egress-policy: block + allowed-endpoints: ${{ vars.BOJ_BUILD_ALLOWED_ENDPOINTS }} - name: Trigger the configured build service securely env: BUILD_URL: ${{ vars.BOJ_BUILD_URL }} diff --git a/docs/STANDARDS-ALIGNMENT.adoc b/docs/STANDARDS-ALIGNMENT.adoc index 2a7e2c2..a000cdf 100644 --- a/docs/STANDARDS-ALIGNMENT.adoc +++ b/docs/STANDARDS-ALIGNMENT.adoc @@ -59,8 +59,11 @@ team, stable-release backports or third-party legal immunity without evidence. privileged PR execution has been added. * Audit issue creation is disabled for PR events, where writable issue tokens may be unavailable; the audit remains blocking on PRs. +* Local external action refs are commit-pinned as well as locked; the site + builder source checkout is pinned to `3dcade85400cef62949a6a0ab6900f5e7f065e56`. * The broken, unauthenticated HTTP BoJ trigger is replaced by a manual opt-in - HTTPS/authenticated integration with a bounded request and JSON-safe inputs. + HTTPS/authenticated integration with a bounded request, JSON-safe inputs and + block-mode egress restricted by `BOJ_BUILD_ALLOWED_ENDPOINTS`. It is not a claimed working deployment until a maintainer configures it. * Developer tasks now fail on the actual Rust failure instead of falling back to unrelated runtimes. Unused generic Python/Go/Java/yarn tooling was removed. @@ -86,8 +89,8 @@ that every remote setting is enabled. == Explicit remaining canonical-layout gaps The current Standards profile checker expects Rust at `src/**/*.rs` rather than -workspace `crates/*/src/`, FFI at `src/interface/ffi/`, an `abi.ipkg`, Idris at -`src/interface/abi/` and a `src/interface/generated/` tree. This repository uses +workspace `crates/*/src/`, FFI at the canonical interface FFI directory, an `abi.ipkg`, Idris at +the canonical interface ABI directory and a the canonical generated-interface directory tree. This repository uses `crates/`, `ffi/zig/`, `rpa-elysium-abi.ipkg` and `src/abi/`; no generated ABI artefacts are claimed. The exact upstream checker therefore reports these as *MISSING*. We do not create empty scaffolds, change declared capabilities to diff --git a/scripts/render-actions-lock.jq b/scripts/render-actions-lock.jq new file mode 100644 index 0000000..a39f829 --- /dev/null +++ b/scripts/render-actions-lock.jq @@ -0,0 +1,24 @@ +# SPDX-License-Identifier: MPL-2.0 +# Emit the official single-quoted, four-space-indented lockfile dialect. Native +# YAML parsers accept other styles, but Hypatia's deployed lock reader does not. +def quote: "'" + (tostring | gsub("'"; "''")) + "'"; +if any(.dependencies[]; ((keys - ["hostname", "ref", "commit", "owner_id", "repo_id", "uses"]) | length) > 0) +then error("unknown dependency fields; review the lock schema before rendering") +else + "# SPDX-License-Identifier: MPL-2.0", + "# Resolved action graph; regenerate with scripts/update-actions-lock.sh.", + ("version: " + (.version | quote)), + ("workflows:" + (if (.workflows | length) == 0 then " {}" else "" end)), + (.workflows | to_entries | sort_by(.key)[] | + (" " + (.key | quote) + ":" + (if (.value | length) == 0 then " []" else "" end)), + (.value | sort[] | " - " + quote)), + ("dependencies:" + (if (.dependencies | length) == 0 then " {}" else "" end)), + (.dependencies | to_entries | sort_by(.key)[] | + (" " + (.key | quote) + ":"), + (.value as $d | ["hostname", "ref", "commit", "owner_id", "repo_id"][] as $field | + select($d[$field] != null) | + " " + $field + ": " + ($d[$field] | if type == "number" then tostring else quote end)), + (if (.value.uses // [] | length) > 0 then + " uses:", (.value.uses | sort[] | " - " + quote) + else empty end)) +end diff --git a/scripts/restore-reusable-lock-coverage.sh b/scripts/restore-reusable-lock-coverage.sh index c538fc3..8a7a3d9 100644 --- a/scripts/restore-reusable-lock-coverage.sh +++ b/scripts/restore-reusable-lock-coverage.sh @@ -37,5 +37,5 @@ jq -L "$(dirname "${BASH_SOURCE[0]}")" --slurpfile old "$scratch/old.json" --slu ' "$scratch/current.json" > "$scratch/merged.json" # Write only when parsing and merging both succeeded. The parent updater owns # rollback if its subsequent authoritative or structural verification fails. -yq -P -o=yaml '.' "$scratch/merged.json" > "$scratch/actions.lock" +jq -r -f "$(dirname "${BASH_SOURCE[0]}")/render-actions-lock.jq" "$scratch/merged.json" > "$scratch/actions.lock" cp "$scratch/actions.lock" "$wf_dir/actions.lock" From e0b40947678c968869f016f3f34c76f46cfc6ae7 Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 17:31:51 +0000 Subject: [PATCH 11/12] test(security): guard deployed lock dialect and reject unknown renderer fields Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- scripts/tests/actions-lock-update-test.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/scripts/tests/actions-lock-update-test.sh b/scripts/tests/actions-lock-update-test.sh index 5249c82..cb5134c 100644 --- a/scripts/tests/actions-lock-update-test.sh +++ b/scripts/tests/actions-lock-update-test.sh @@ -80,3 +80,14 @@ bash "$SCRIPTS/check-lock-sync.sh" echo 'PASS: update preserves reusable closure, SPDX ordering, and discards verifier mutations' yq -o=json '.' .github/workflows/actions.lock | jq -e '.dependencies["owner/transitive@v1"] != null and .dependencies["owner/dead@v1"] == null' >/dev/null echo 'PASS: restore retains reachable transitive nodes and prunes stale old records' +# The deployed Hypatia reader needs the official quoted lock dialect. +grep -q "^version: 'v0.0.3'$" .github/workflows/actions.lock +grep -q "^ 'owner/transitive@v1':$" .github/workflows/actions.lock +yq -o=json '.' .github/workflows/actions.lock | jq -e '.dependencies["owner/transitive@v1"].owner_id | type == "number"' >/dev/null +if jq -r -f "$SCRIPTS/render-actions-lock.jq" <<'JSON' > "$ROOT/unexpected-lock" 2> "$ROOT/renderer-error" +{"version":"v0.0.3","workflows":{},"dependencies":{"owner/action@v1":{"unknown_field":true}}} +JSON +then + echo 'FAIL: renderer dropped unknown schema fields'; exit 1 +fi +echo 'PASS: canonical quote formatting, numeric identities and unknown-field rejection' From 473d95e25a33eac10a5d223560969006e51c2734 Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Wed, 14 Oct 2026 17:34:00 +0000 Subject: [PATCH 12/12] chore(standards): align runtime provisioning and retire Nix policy drift Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- .claude/CLAUDE.md | 2 +- .tool-versions | 1 + docs/STANDARDS-ALIGNMENT.adoc | 4 ++++ mise.toml | 2 ++ 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index 38e2382..ded5fd1 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -78,7 +78,7 @@ Both are FOSS with independent governance (no Big Tech). ### Package Management - **Primary**: Guix (guix.scm) -- **Fallback**: Nix (flake.nix) +- **Nix**: Retired estate-wide; do not introduce flakes. A Guix build is not yet implemented here, so no reproducible-build capability is claimed. - **JS deps**: Bun (`package.json` + `bun.lock`). Declare tooling as a devDependency and run `bunx --no-install --bun ` — a bare `bunx ` can fetch an unpinned package and may start Node via its shebang. ### Security Requirements diff --git a/.tool-versions b/.tool-versions index 3cd07d4..054374d 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1,2 @@ +bun 1.4.2 rust stable diff --git a/docs/STANDARDS-ALIGNMENT.adoc b/docs/STANDARDS-ALIGNMENT.adoc index a000cdf..c5bb642 100644 --- a/docs/STANDARDS-ALIGNMENT.adoc +++ b/docs/STANDARDS-ALIGNMENT.adoc @@ -65,6 +65,8 @@ team, stable-release backports or third-party legal immunity without evidence. HTTPS/authenticated integration with a bounded request, JSON-safe inputs and block-mode egress restricted by `BOJ_BUILD_ALLOWED_ENDPOINTS`. It is not a claimed working deployment until a maintainer configures it. +* Environment definitions provision pinned Bun first as required by the estate + runtime policy; this does not claim a JavaScript application capability. * Developer tasks now fail on the actual Rust failure instead of falling back to unrelated runtimes. Unused generic Python/Go/Java/yarn tooling was removed. * `just ci-check` validates the lock graph, regression controls and local @@ -98,6 +100,8 @@ hide real source, or weaken the upstream checker to report a false pass. Resolve these layout differences through a reviewed source/build migration or upstream capability-table support for workspace/named-package alternatives. +The concrete capability decision and generated-output gap are tracked in +https://github.com/hyperpolymath/standards/issues/1262[Standards #1262]. Rust CI does not compile all Idris2/Zig targets; use `just verify-abi-ffi` with those toolchains and record evidence before claiming that tier validated. Latest Standards HEAD also adds a JS-runtime checker whose build previously diff --git a/mise.toml b/mise.toml index d8bf164..fb46739 100644 --- a/mise.toml +++ b/mise.toml @@ -1,6 +1,8 @@ # SPDX-License-Identifier: MPL-2.0 # Minimal Rust development environment; ABI/site tools are installed only when used. [tools] +# Estate environment policy provisions Bun first, even in Rust workspaces. +bun = "1.4.2" rust = "stable" [tasks.build]