Let a flow config name the coverage sources its vPlan annotation reads
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 13
- Forks
- 21
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 8
Description
Part of lowRISC/dvplan#129, which tracks formal support end to end.
`report/vplan.py` builds the annotation command with one vendor coverage report and one evidence file, and it derives the format name from the simulator. A formal run has its own report in its own format, and a config bundling a simulation run with a formal run has several. So the flow config should say what its sources are, and the command builder should splat them.
## Scope
- A `vplan_sources()` method on `FlowCfg` returning the coverage sources this config produced, each as a format name and one or more paths. The default is empty.
- `SimCfg` returns its vendor coverage report directory when coverage ran, plus the evidence file. Same two sources as today, same order, so the command it produces is unchanged.
- `VPlanInputs` takes the list, and `_process_command` stops naming `cov_report_dir` and `tool` itself.
- Replace the `f"{inputs.tool}_report"` concatenation with an explicit map from tool to format name. Right now the coupling to DVPlan's format names is invisible, and it is about to grow two formal entries whose tool names differ from the simulator ones.
## Done when
- The generated command for a simulation config is byte for byte what it is today, pinned by the existing tests in `tests/report/test_vplan.py` and `tests/job/test_cov_vplan.py`.
- An unknown tool name gives a clear error naming the tools that map to a format, which is the same complaint as #233.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with report/vplan.py, then trace FlowCfg, SimCfg, VPlanInputs, and _process_command to understand the current source and format handling. Run tests/report/test_vplan.py and tests/job/test_cov_vplan.py before changes. Done means simulation commands remain byte-for-byte unchanged and unknown tools produce a clear mapping error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 68/100