Problem
Once the unit/fuzz/integration test suites from other issues in this batch land, there's still no visibility into how much of scripts/ is actually exercised, and no guardrail preventing coverage from silently eroding as new scripts are added without matching tests.
Requirements
- Add
c8 (Node's built-in-friendly coverage tool, pairs cleanly with node:test) as a dev dependency.
- Add
npm run test:coverage producing a text summary and an lcov report.
- Set and enforce a minimum threshold (propose 90% given the small, testable surface area of this repo's scripts) that fails the command if not met.
- Add the coverage run to
.github/workflows/ci.yml and upload the lcov report as a workflow artifact (or wire to a coverage-comment action) for PR visibility.
Acceptance Criteria
npm run test:coverage fails if coverage drops below the configured threshold.
- Coverage report is visible from the CI run (artifact or PR comment).
Part of the Gryd-lock organization. This repo supplies the labelled testnet fixtures and stub scores consumed by grydlock-oracle-adapter's StubOracle and evaluated end-to-end by grydlock-research.
Problem
Once the unit/fuzz/integration test suites from other issues in this batch land, there's still no visibility into how much of
scripts/is actually exercised, and no guardrail preventing coverage from silently eroding as new scripts are added without matching tests.Requirements
c8(Node's built-in-friendly coverage tool, pairs cleanly withnode:test) as a dev dependency.npm run test:coverageproducing a text summary and anlcovreport..github/workflows/ci.ymland upload thelcovreport as a workflow artifact (or wire to a coverage-comment action) for PR visibility.Acceptance Criteria
npm run test:coveragefails if coverage drops below the configured threshold.Part of the Gryd-lock organization. This repo supplies the labelled testnet fixtures and stub scores consumed by
grydlock-oracle-adapter'sStubOracleand evaluated end-to-end bygrydlock-research.