You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
ci: measure branch coverage and enforce 90% line coverage #1104
Canonical verification records only statement coverage, enforces a 50% aggregate floor, and omits repository-owned Python entry points such as Nox and the Hatch build hook. The gate therefore does not represent the repository’s 90% line-coverage policy and provides no branch-coverage visibility.
Scope
OpenRAE implementation and repository tooling only. This is repository verification governance under ADR-014, not an implementation of ASR-505.
Chosen Architecture
Adopt ADR-103. Use Coverage.py as the authority for statement, exclusion, and branch semantics; measure shipped packages and repository-owned Python tooling; combine unit and integration data; enforce a fixed 90% aggregate line-coverage floor; and publish canonical XML and JSON reports containing branch data.
Do not add a manual ratchet, blanket 100% changed-code requirement, custom semantic diff checker, or adversarial hardening for repository-mutable policy. The threat model remains the accidental-regression boundary established by ADR-015.
Verification Plan
Test the branch-aware repository scope, canonical XML/JSON report commands, and the fixed line-only threshold. Run the canonical completion and repository-policy gates and verify the hosted Sonar quality gate.
Superseded Approach
PR #1139 established useful evidence for branch measurement and report scope, but its manual ratchet, 100% changed-code policy, and mutable-policy hardening are replaced by this narrower architecture.
changed the title [-]ci: require branch coverage and 100% changed-code coverage[/-][+]ci: measure branch coverage and enforce 90% line coverage[/+]on Aug 13, 2026
Replaced the superseded PR #1139 approach with ADR-103 and a minimal Coverage.py-based policy: canonical verification now measures repository-wide Python branches, enforces the fixed 90% aggregate line floor, publishes XML and JSON, and keeps requirement-free quickfix policy gates valid without weakening repository checks.
Completed by merged PR #1143 at merge commit 8c9365c. The accepted policy uses the maintainer-selected branch-aware 90 percent coverage gate; superseded PR #1139 is closed.
Activity
fix(coverage): close coverage gate bypasses (#1104)
fix(coverage): close remaining semantic bypasses (#1104)
fix(coverage): enforce eager protocol annotations (#1104)
style(coverage): match project import order (#1104)
fix(coverage): close structural exclusion gaps (#1104)
fix(coverage): harden structural trust and reports (#1104)
fix(coverage): make reports Sonar-compatible (#1104)
Brad-Edwards commentedon Aug 13, 2026
🛠️ Picked up by /implement - driver codex, branch
1104-minimal-coverage-policy, 2026-08-13T03:53:14.945Z.[-]ci: require branch coverage and 100% changed-code coverage[/-][+]ci: measure branch coverage and enforce 90% line coverage[/+]test(coverage): enforce changed-code ratchet (#1104)
fix(coverage): close coverage gate bypasses (#1104)
fix(coverage): close remaining semantic bypasses (#1104)
fix(coverage): enforce eager protocol annotations (#1104)
style(coverage): match project import order (#1104)
fix(coverage): close structural exclusion gaps (#1104)
fix(coverage): harden structural trust and reports (#1104)
fix(coverage): make reports Sonar-compatible (#1104)
Enforce branch-aware coverage policy (#1104)
Brad-Edwards commentedon Aug 13, 2026
Pre-PR base synchronization
refs/remotes/origin/devat96b20ae8422fae9936bae928bbd8a1c14d2001daalready_current4eec71455e6a6fe2d4bd725a97447413b51bc4528da55309532721bf4c2427b0da1ec2dfe5d93a77Brad-Edwards commentedon Aug 13, 2026
Quickfix close — issue #1104 complete
PR: #1143
Replaced the superseded PR #1139 approach with ADR-103 and a minimal Coverage.py-based policy: canonical verification now measures repository-wide Python branches, enforces the fixed 90% aggregate line floor, publishes XML and JSON, and keeps requirement-free quickfix policy gates valid without weakening repository checks.
Files changed
Added:
docs/decisions/adrs/adr-103-branch-aware-python-coverage-policy.mdModified:
.github/workflows/ci.yml.gitignoreMakefiledocs/decisions/adrs/README.mddocs/decisions/adrs/adr-index.yamlimplementations/python/pyproject.tomlimplementations/python/tests/test_repo_policy_tools.pynoxfile.pytools/policy/historical_identity_records.jsonStatus
test(coverage): enforce branch-aware 90% policy (#1143)
doublewhy commentedon Aug 13, 2026
Completed by merged PR #1143 at merge commit 8c9365c. The accepted policy uses the maintainer-selected branch-aware 90 percent coverage gate; superseded PR #1139 is closed.