Dogfood proof-pr receipt workflow#87
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 976ae751e2
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| uses: saagpatel/proof-pr/.github/workflows/proof-pr-receipt.yml@v0.1.3 | ||
| with: | ||
| receipt_path: proof-pr.json | ||
| proof_pr_ref: v0.1.3 |
There was a problem hiding this comment.
Pin the proof-pr workflow and installer to immutable SHAs
When this manual workflow is dispatched, both the reusable workflow reference and the proof_pr_ref input execute code from the mutable v0.1.3 tag. GitHub’s Actions hardening guidance notes that full-length commit SHAs are the only immutable action references and that tags can be moved or deleted, so a retagged or compromised proof-pr release would let this repo validate/upload evidence with code that was not reviewed here; this is especially risky for a proof receipt workflow where reproducibility is the point. Pin both references to the exact commit SHA for the intended release, matching the existing SHA-pinned style in the other workflows.
Useful? React with 👍 / 👎.
What
Adds a manual
proof-prdogfood workflow plus a committedproof-pr.jsonreceipt for GitHub Repo Auditor.Why
This gives
proof-prits second public consumer repo and validates the v0.2 stable dogfood contract against a proof-adjacent project, not justbridge-db.Review Of What Was Built
.github/workflows/proof-pr.ymlusingsaagpatel/proof-pr/.github/workflows/proof-pr-receipt.yml@v0.1.3.proof-pr.jsonas an advisory T3 receipt for this workflow/receipt-only change.Cleanup Review
No generated portfolio truth, application code, release config, or private proof package content was changed. The existing tracked
.github/.DS_Storeis intentionally untouched in this scoped dogfood lane.Verification Summary
Proof Bundle
Risk:
T3Receipt:
proof-pr.v1for976ae751e2421f5c8a7be2bd3ee55a964ce8c5c7Decision:
ready_with_operator_awarenessEvidence:
PYTHONDONTWRITEBYTECODE=1 python3 /Users/d/Projects/proof-pr/scripts/proof_pr.py validate proof-pr.json->passed(Committed receipt validates against proof-pr.v1 schema.)PYTHONDONTWRITEBYTECODE=1 python3 /Users/d/Projects/proof-pr/scripts/proof_pr.py render proof-pr.json->passed(Receipt renders into the standard Markdown PR block.)ruby -e "require 'yaml'; YAML.load_file('.github/workflows/proof-pr.yml')"->passed(New workflow YAML parses.)PYTHONDONTWRITEBYTECODE=1 python3 scripts/validate_proof_package.py docs/demo-proof/public-fixture/proof-package.json->passed(Existing public fixture proof package remains valid.)gitleaks detect --source . --no-banner --redact --verbose->passed(No leaks found.)passed(no matches.)gh pr checks 87 -R saagpatel/GithubRepoAuditor --watch --interval 10->passed(CodeQL andtest (3.11)passed.)passed(GitHub PR CI ran the repository test/lint/typecheck lane.)not_applicable(No UI, workbook, dashboard, or visual artifact changed.)documented(Revert this PR or remove.github/workflows/proof-pr.ymlandproof-pr.json.)Known gaps:
pending-pr-head; a receipt committed in the same change cannot know its final commit SHA before the commit exists. The PR proof block is anchored to the remote head SHA.Shipped Summary
If merged, GitHub Repo Auditor will have an advisory proof-pr receipt workflow that can be manually dispatched on
mainand upload the committed receipt as a proof artifact.Next Phase
Run the manual
proof-prworkflow frommainafter merge. If it passes,proof-prhas two consumer repos satisfying the v0.2 dogfood readiness criterion.Remaining Roadmap
proof-prto model committed-receipt head SHA anchoring more cleanly.v0.2.0is ready to tag after the second consumer run.