Skip to content

fix(parser): guard Delete leading-comma panic + empty-string key path components; L3 strict proof review #36

fix(parser): guard Delete leading-comma panic + empty-string key path components; L3 strict proof review

fix(parser): guard Delete leading-comma panic + empty-string key path components; L3 strict proof review #36

Workflow file for this run

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