fix(parser): guard Delete leading-comma panic + empty-string key path components; L3 strict proof review #36
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 | |
| - name: Install probe (autolink enrichment) | |
| run: npm install -g @probelabs/probe | |
| # Build proof from source instead of downloading the pre-built release. | |
| # The latest published release (June 2026, catalog 1.0.0) lags behind the | |
| # current main branch (catalog 1.9.0) and does not support the overlay | |
| # catalog, verification_method schema, or MC/DC languages.go config this | |
| # project relies on. Building from main keeps CI in sync with the dev | |
| # build. Pin to a commit SHA for reproducibility if main drifts. | |
| - name: Build proof from source | |
| run: go install github.com/probelabs/proof/cmd/proof@main | |
| - name: Verify proof version | |
| run: proof --version | |
| - uses: probelabs/proof-action@v1 | |
| with: | |
| fail-level: warn | |
| scope: full | |
| format: markdown | |
| proof-path: /home/runner/go/bin/proof |