Gap Claim
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.
Gap Claim
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.