Repository navigation
chore: land feat/assurance-recovery (estate branch triage) #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -46,6 +46,10 @@ jobs: | |||||
| run: python3 proofs/agda/verify.py --ci | ||||||
| - name: Exercise water-warning continuity and acknowledgement scenarios | ||||||
| run: mix run -e 'Firmboot.WaterLeak.Experiment.run()' | ||||||
| - name: Exercise journal recovery, gaps and measured resource use | ||||||
| run: mix run -e 'Firmboot.WaterLeak.RecoveryExperiment.run(".ci-results/recovery")' | ||||||
| - name: Check the assurance register and its negative controls | ||||||
| run: python3 scripts/assurance.py check --ci --output .ci-results/assurance-check.json | ||||||
| - name: Ensure observed witnesses are reproducible | ||||||
| run: | | ||||||
| git -c safe.directory="$GITHUB_WORKSPACE" -C "$GITHUB_WORKSPACE" rev-parse --show-toplevel | ||||||
|
|
@@ -55,7 +59,7 @@ jobs: | |||||
| uses: actions/upload-artifact@v7.0.1 | ||||||
| with: | ||||||
| name: agda-elixir-verification | ||||||
| path: .ci-results/agda | ||||||
| path: .ci-results | ||||||
| include-hidden-files: true | ||||||
| if-no-files-found: error | ||||||
| retention-days: 30 | ||||||
|
|
@@ -84,7 +88,20 @@ jobs: | |||||
| tar --zstd -xf "$RUNNER_TEMP/firmboot-lean.tar.zst" --strip-components=1 -C "$FIRMBOOT_LEAN_DIR" | ||||||
| echo "$FIRMBOOT_LEAN_DIR/bin" >> "$GITHUB_PATH" | ||||||
| - name: Build all Lean proofs, audit axioms and reject false claims | ||||||
| run: bash proofs/lean/verify.sh | ||||||
| shell: bash | ||||||
| run: | | ||||||
| set -o pipefail | ||||||
| mkdir -p .ci-results/lean | ||||||
| bash proofs/lean/verify.sh | tee .ci-results/lean/verify.log | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win 🔎 Supported by static analysis🏁 Script executed: sed -n '1,140p' .github/workflows/verify.yml
sed -n '1,120p' proofs/lean/verify.sh
rg -n 'verify.sh|stderr|>&2|2>' proofs/lean scripts .github 2>/dev/nullRepository: hyperpolymath/firmboot Length of output: 8967 Capture stderr in the Lean audit log. When - bash proofs/lean/verify.sh | tee .ci-results/lean/verify.log
+ bash proofs/lean/verify.sh 2>&1 | tee .ci-results/lean/verify.log📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||
| - name: Retain the complete Lean proof audit log | ||||||
| if: always() | ||||||
| uses: actions/upload-artifact@v7.0.1 | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🔒 Security & Privacy | 🛡️ Analyzed with Security Review | 🟠 Major | ⚡ Quick win 🧩 Analysis chain🏁 Script executed: find . -name AGENTS.md -o -name CONTRIBUTING.md -o -name SECURITY.md -o -name README.md -o -name actionlint.yaml -o -name actionlint.yml | head -80
rg -n -i 'pin(ned|ning)|immutable|full.{0,20}sha|github actions|upload-artifact|zizmor|scorecard' .github . 2>/dev/null | head -240
sed -n '1,140p' .github/workflows/verify.ymlRepository: hyperpolymath/firmboot Length of output: 7816 🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- .github/workflows/actions.lock ---'
cat -n .github/workflows/actions.lock
printf '%s\n' '--- VERIFICATION.md relevant lines ---'
sed -n '1,60p' VERIFICATION.md
printf '%s\n' '--- workflow action references ---'
sed -n '1,145p' .github/workflows/verify.ymlRepository: hyperpolymath/firmboot Length of output: 10512 🤖 get_repo_knowledge executed:
Length of output: 7898 Security Misconfiguration Reachability: Internal Pin both The lockfile records the current commit for 🧰 Tools🪛 zizmor (1.30.0)[error] 98-98: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy) (unpinned-uses) 🤖 Prompt for AI Agents |
||||||
| with: | ||||||
| name: lean-verification | ||||||
| path: .ci-results/lean | ||||||
| include-hidden-files: true | ||||||
| if-no-files-found: error | ||||||
| retention-days: 30 | ||||||
|
|
||||||
| actions-lock: | ||||||
| name: Actions dependency lock | ||||||
|
|
||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
🔎 Supported by static analysis
🏁 Script executed:
Repository: hyperpolymath/firmboot
Length of output: 3577
🏁 Script executed:
Repository: hyperpolymath/firmboot
Length of output: 3077
Restore or remove the missing verification targets.
The
agda-elixirjob checks outhyperpolymath/firmbootand runs both commands from its root. This checkout defines noFirmboot.WaterLeak.RecoveryExperimentmodule and contains noscripts/assurance.py. The recovery step therefore fails before the assurance step runs, so the job cannot complete verification.Correct
.github/workflows/verify.yml, or add both targets within the repository boundary checked out by this job.🤖 Prompt for AI Agents