Background
As the contract grows, untested code paths become security risks. We need a CI gate that fails PRs if test coverage drops below a threshold.
Goal
Integrate cargo-tarpaulin (or llvm-cov) into the CI pipeline and enforce a minimum 80% line coverage threshold.
Acceptance Criteria
cargo tarpaulin runs in the GitHub Actions workflow.
- Coverage report uploaded as a PR artifact.
- PR fails if coverage < 80%.
- Coverage badge added to
contracts/README.md.
Key Files
.github/workflows/soroban.yml, contracts/README.md
Background
As the contract grows, untested code paths become security risks. We need a CI gate that fails PRs if test coverage drops below a threshold.
Goal
Integrate
cargo-tarpaulin(orllvm-cov) into the CI pipeline and enforce a minimum 80% line coverage threshold.Acceptance Criteria
cargo tarpaulinruns in the GitHub Actions workflow.contracts/README.md.Key Files
.github/workflows/soroban.yml,contracts/README.md