Fix 2 bugs, remove 7 dead code blocks, add formal verification #23
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ReqProof Audit | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| jobs: | |
| audit: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| # Go 1.25+ required for code-level MC/DC instrumentation. | |
| # jsonparser library itself supports Go 1.13+ but the verification | |
| # tooling needs modern Go for source-to-source rewriting. | |
| - name: Set up Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25' | |
| - name: Cache ReqProof solvers | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.proof/solvers | |
| key: proof-solvers-${{ runner.os }} | |
| - name: Cache ReqProof index | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| .proof/index.db | |
| .proof/index.db-shm | |
| .proof/index.db-wal | |
| key: proof-index-${{ runner.os }}-${{ hashFiles('specs/**/*.req.yaml') }} | |
| restore-keys: | | |
| proof-index-${{ runner.os }}- | |
| - name: Install Z3 solver | |
| run: sudo apt-get update -qq && sudo apt-get install -y -qq z3 | |
| - uses: probelabs/proof-action@v1 | |
| with: | |
| fail-level: warn | |
| scope: full | |
| format: markdown |