63 lines
2.5 KiB
Markdown
63 lines
2.5 KiB
Markdown
# PR#64: No Classifier Section Without Units; werkcrappit and werkprobe Choose Their Risk Categories
|
|
|
|
> **WARNING:** This document describes only the change applied in this PR.
|
|
> It may already be outdated once the next PR is merged.
|
|
> Historic PR documentation is not maintained along with new PRs; treat it as a snapshot.
|
|
|
|
## Related Links
|
|
|
|
- [werkcrappit PR#46](https://git.javagil.de/mi/werkcrappit/pulls/46): werkcrappit chooses and tunes its risk categories.
|
|
- [werkprobe PR#12](https://git.javagil.de/mi/werkprobe/pulls/12): werkprobe chooses and tunes its risk categories.
|
|
|
|
## The Problem
|
|
|
|
A PR without a PR document has no unit for Jev's classifier questions.
|
|
The result comment still shows a section "Classifier" with "0 of 0 units passed all questions (0 PR document(s))",
|
|
e.g. werkprobe PR#12 before it got its PR document.
|
|
The line says nothing and makes the reader look for a problem.
|
|
|
|
The Werkbaum does not show that werkcrappit and werkprobe now choose their risk categories in their `.werkrevisor.toml`.
|
|
|
|
## Non-Goals
|
|
|
|
- No change to the classifier questions or to the verdicts.
|
|
- No change to the risk templates.
|
|
|
|
## The Scenarios
|
|
|
|
### Feature: the result comment shows the classifier only when it judged something
|
|
|
|
#### Scenario#64.01: a PR without a PR document shows no classifier section
|
|
|
|
So that the result comment holds no line without information.
|
|
|
|
- **Given** the classifier is configured
|
|
- **And** a PR changes no PR document
|
|
- **When** werkrevisor writes the result comment
|
|
- **Then** the comment has no section "Classifier"
|
|
|
|
##### Verified by
|
|
|
|
- [test_classifier.ClassifierFlowTest.test_no_section_without_units](../../tests/test_classifier.py)
|
|
|
|
#### Scenario#64.02: a PR with a PR document still shows the section
|
|
|
|
So that the reader sees how many units passed.
|
|
|
|
- **Given** the classifier is configured
|
|
- **And** a PR changes a PR document
|
|
- **When** werkrevisor writes the result comment
|
|
- **Then** the comment shows the section "Classifier" with the number of units that passed all questions
|
|
|
|
##### Verified by
|
|
|
|
- [test_classifier.ClassifierFlowTest.test_docs_only_can_pass_without_llm](../../tests/test_classifier.py)
|
|
|
|
## The Solution
|
|
|
|
- `classifier.render_table` gives no lines when no unit was judged, no answer was ignored and nothing was flagged.
|
|
- The Werkbaum records werkcrappit PR#46 and werkprobe PR#12:
|
|
both choose `jvm-spring-backend` in their `.werkrevisor.toml` and switch off categories that cannot apply;
|
|
werkcrappit adds `metric_integrity`, and `plugin_compatibility` is dropped because it did not separate.
|
|
- Version 0.30.1.
|