test_governance_drift.py
python
sha256:4671b7f787ddbe63ced31c895b688c77ab495653b65a730b423329f26b3c1439
feat: K1-P1 complete — agent provenance, build-verification…
Sonnet 4.6
patch
54 days ago
| 1 | """Unit tests for governance drift detection (§8 unit tier).""" |
| 2 | |
| 3 | from __future__ import annotations |
| 4 | |
| 5 | from tools.governance_hygiene.drift import detect_drift |
| 6 | from tools.governance_hygiene.types import MergedPullRequest, VerifiedReads |
| 7 | |
| 8 | |
| 9 | def _reads(github_main: str = "cafebabe") -> VerifiedReads: |
| 10 | return VerifiedReads( |
| 11 | regime="git-only", |
| 12 | r1_github_main_sha=github_main, |
| 13 | r1_command="git rev-parse origin/main", |
| 14 | r2_anchor_sha=github_main, |
| 15 | r2_source="origin/main", |
| 16 | r3_canonical_main_sha=github_main, |
| 17 | r3_command="git rev-parse origin/main", |
| 18 | r4_merged_prs=(), |
| 19 | r5_branch="main", |
| 20 | r5_dirty=False, |
| 21 | r5_regime="git-only", |
| 22 | ) |
| 23 | |
| 24 | |
| 25 | def test_detect_drift_d1_drifted_d2_d3_aligned() -> None: |
| 26 | handover = "| **main HEAD** | `deadbeef` |" |
| 27 | roadmap = "| **9A-5 Governance Hygiene Agent** | Auto | **TODO** | x |" |
| 28 | drift = detect_drift(_reads("cafebabe"), handover, roadmap) |
| 29 | assert drift.d1_handover_vs_git == "drifted" |
| 30 | assert drift.d2_anchor_vs_canonical == "aligned" |
| 31 | assert drift.d3_queue_vs_merged == "aligned" |
| 32 | |
| 33 | |
| 34 | def test_detect_drift_fully_aligned() -> None: |
| 35 | handover = "| **main HEAD** | `cafebabe` |" |
| 36 | roadmap = "| **9A-5 Governance Hygiene Agent** | Auto | **TODO** | x |" |
| 37 | drift = detect_drift(_reads(), handover, roadmap) |
| 38 | assert drift.fully_aligned is True |
File History
1 commit
sha256:4671b7f787ddbe63ced31c895b688c77ab495653b65a730b423329f26b3c1439
feat: K1-P1 complete — agent provenance, build-verification…
Sonnet 4.6
patch
54 days ago