Skip to content

feat(health): one severity per Do next row, one meaning of stale coverage, a band on every headline score - #4365

Merged
swati510 merged 1 commit into
mainfrom
fix/a6-health-wording
Oct 22, 2026
Merged

swati510 merged 1 commit into
mainfrom
fix/a6-health-wording

Conversation

@RaghavChamadiya

Copy link
Copy Markdown
Member

What

Three places where Repowise printed two answers for one fact:

  • A Do next row's severity disagreed with its own evidence. The GraphFlow Fix first row said medium while its severity fact said high. The week's code-shape row was always medium, even when its findings were critical.
  • "Stale" coverage had two meanings. Rows said "(older report)" whenever the report came from another commit, while the coverage_stale rule said "Coverage is recent enough." for the same report.
  • repowise health printed a band only on the all-files score. Production code at 6.89 is Fair but showed no band beside a Good headline, and the docs sample left that figure out.

How

  • actions.model.evidence_severity is the one mapping. A row's severity is the worst of the findings it rests on, held at high, because critical is kept for a live credential. A row with no findings keeps its rule's own default. Fix first reads its finding's severity fact, and every fresh_regressions row reads its details. Ordering is unchanged: these rules already set their own value, and the Fix first ceiling still reads the tier.
  • Coverage is stale when it was measured at an earlier commit than the index, as build_coverage and TEST_INTELLIGENCE.md define it. Rows say "(measured at an earlier commit)". The rule's reason says the same and names when it asks for a refresh: once the report is 14 days older than the latest commit.
  • Each score on the headline (Code health, Production code, Hotspot, Worst) carries its band from grading. If too little of the repo was analysed, all the bands are left off together. The CODE_HEALTH.md sample now matches the real line.

Verification

Measured on a copy of this repository's index, with the actions view rebuilt from stored facts by main and by this branch.

Before:

fix_first          sev=medium  why.severity=high      | Break up GraphFlow (CCN 261, 1,094 lines)
fresh_regressions  sev=medium  details=critical,high  | Tidy the code shape this week's commits left: 157 findings in 104 files
fragile_file       line coverage: 96% (older report)
coverage_stale     reason: Coverage is recent enough.
Code health: 7.99/10 [Good] · Production code: 6.89/10 · Hotspot: 6.68/10 · Worst: 1.0/10 (...)

After:

fix_first          sev=high    why.severity=high      | Break up GraphFlow (CCN 261, 1,094 lines)
fresh_regressions  sev=high    details=critical,high  | Tidy the code shape this week's commits left: 157 findings in 104 files
fragile_file       line coverage: 96% (measured at an earlier commit)
coverage_stale     reason: Coverage was measured at an earlier commit; a refresh is asked for once the report is 14 days older than the latest commit.
Code health: 7.99/10 [Good] · Production code: 6.89/10 [Fair] · Hotspot: 6.68/10 [Fair] · Worst: 1.0/10 [At risk] (...)
  • Both horizons keep the same action ids in the same order with the same priorities (week and quarter compared id by id).
  • Ran the targeted tests: actions rules, actions loader and build, read snapshots, wire vocabulary parity, and the health and next CLI tests (303 passed). Ruff is clean on the touched files.

…age, a band on every headline score

A Do next row's severity is the worst of the findings it rests on, held at high, so a Fix first row no longer says medium beside a high finding and the week's code-shape row no longer reads medium over critical findings. Ordering is unchanged.

Coverage rows say a report was measured at an earlier commit, and the refresh rule's reason says the same instead of calling it recent enough.

repowise health prints the band beside Production code, Hotspot and Worst as well as Code health, and the docs sample matches the real line.
@RaghavChamadiya RaghavChamadiya changed the title fix(health): one severity per Do next row, one meaning of stale coverage, a band on every headline score feat(health): one severity per Do next row, one meaning of stale coverage, a band on every headline score Oct 22, 2026
@swati510
swati510 merged commit 36ea67d into main Oct 22, 2026
10 checks passed
@swati510
swati510 deleted the fix/a6-health-wording branch October 22, 2026 07:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants