Add auto-updated core coverage badge (ADR 0004) #301
Reference in New Issue
Block a user
Delete Branch "core-coverage-badge"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Stacked on #300 (base =
ratchet-supervise-90).Summary
Adds an auto-updated
core coveragebadge to the README — the metric ADR 0004 says matters (the critical security/logic core, currently 95%), distinct from the informational globalcoveragebadge.Done the responsible way (allowlist, single source of truth, auto-generated):
scripts/critical-modules.txt— the one place the core-module list lives.scripts/coverage.shnow reads it instead of a hardcoded string, andupdate-badges.ymlreads the same file, so the badge and thecriticalreport can't silently drift.update-badges.yml— acore coveragestep reuses the unit-coverage data (every core module is unit-tested, so the unit-only run is accurate for it) andsed-updates the new badge exactly like the existing pylint/pyright/coverage badges.core coverage 95%badge, linked to ADR 0004 so a reader can discover what "core" means.Verified end-to-end: the list file →
coverage report --include→TOTAL 95%, matching the badge; the badgesedreplacement was dry-run against the real README.Not done (deliberately)
No additional
omits. Per ADR 0004, narrowing to the core is done with an allowlist (this badge / the--includereport), not by growing the omit denylist — so the global number stays honest and the CLI/backend never go invisible.View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.