From e45d57bfb9cdb65640ccdb59e51c1ff765e643be Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 4 Apr 2026 12:21:03 +0000 Subject: [PATCH] huskies: create 474_story_per_file_test_coverage_report_with_improvement_targets --- ...overage_report_with_improvement_targets.md | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .huskies/work/1_backlog/474_story_per_file_test_coverage_report_with_improvement_targets.md diff --git a/.huskies/work/1_backlog/474_story_per_file_test_coverage_report_with_improvement_targets.md b/.huskies/work/1_backlog/474_story_per_file_test_coverage_report_with_improvement_targets.md new file mode 100644 index 00000000..365147d7 --- /dev/null +++ b/.huskies/work/1_backlog/474_story_per_file_test_coverage_report_with_improvement_targets.md @@ -0,0 +1,21 @@ +--- +name: "Per-file test coverage report with improvement targets" +--- + +# Story 474: Per-file test coverage report with improvement targets + +## User Story + +As a developer, I want `script/test_coverage` to save per-file coverage data so the `coverage` bot command can show the lowest-covered files as targets for improvement. + +## Acceptance Criteria + +- [ ] script/test_coverage saves per-file coverage data to .coverage_files.json (language-agnostic format) +- [ ] Rust coverage: uses cargo llvm-cov --json to extract per-file line coverage +- [ ] Frontend coverage: parses vitest coverage output for per-file data +- [ ] coverage bot command shows top N lowest-covered files when cached data is available +- [ ] Format is extensible for other languages (Go, Python, etc.) — each entry has file path and line coverage percentage + +## Out of Scope + +- TBD