Summary
Add Codecov integration for Rust code coverage reporting on the cortex-tensor crate.
Currently CI runs cargo test (in .github/workflows/rust.yml) but produces no coverage data or reports.
See: https://about.codecov.io/language/rust/
Motivation
- Track and improve test coverage over time
- Surface untested paths in critical areas (MoE routing, GGUF parsing, dequantization, tensor ops, transformer blocks)
- Get PR comments / status checks from Codecov
- Align with org practices (other Limen-Neural / rmems repos have used Codecov)
Recommended approach (modern Rust + Codecov)
Preferred tool: cargo-llvm-cov (excellent support for recent Rust editions, including 2024; produces clean LCOV).
Example steps in CI:
- name: Install cargo-llvm-cov
uses: taiki-e/install-action@cargo-llvm-cov
- name: Generate coverage
run: cargo llvm-cov --all-features --workspace --lcov --output-path lcov.info
- name: Upload to Codecov
uses: codecov/codecov-action@v4
with:
files: lcov.info
fail_ci_if_error: true
token: ${{ secrets.CODECOV_TOKEN }}
Handle missing token gracefully (like the existing Snyk steps) so forks/PRs from external contributors don't break.
Scope / Tasks
Non-goals
- Do not change the public API or add runtime dependencies for coverage
- Do not enforce strict coverage gates on day one (can be added later)
Acceptance Criteria
References
Suggested branch: feat/add-codecov
Created via agent request for structured coverage addition.
Summary
Add Codecov integration for Rust code coverage reporting on the
cortex-tensorcrate.Currently CI runs
cargo test(in.github/workflows/rust.yml) but produces no coverage data or reports.See: https://about.codecov.io/language/rust/
Motivation
Recommended approach (modern Rust + Codecov)
Preferred tool:
cargo-llvm-cov(excellent support for recent Rust editions, including 2024; produces clean LCOV).Example steps in CI:
Handle missing token gracefully (like the existing Snyk steps) so forks/PRs from external contributors don't break.
Scope / Tasks
codecov.ymlat repo root with Rust-appropriate settings:cargo testbehavior is unchanged when coverage is not collectedNon-goals
Acceptance Criteria
cargo llvm-cov(or equivalent) runs successfully in CI and produceslcov.infomainand for PRscodecov.ymlpresent and committedCODECOV_TOKENis not set (usecontinue-on-erroror conditional like Snyk)References
.github/workflows/rust.ymlSuggested branch:
feat/add-codecovCreated via agent request for structured coverage addition.