chore: apply pre-commit formatting collateral

This commit is contained in:
rookiestar28
2026-02-26 16:27:31 +08:00
parent d1a0b460e1
commit 4651bbb5ff
5 changed files with 70 additions and 30 deletions
-1
View File
@@ -121,4 +121,3 @@ def main() -> int:
if __name__ == "__main__":
raise SystemExit(main())
+31 -12
View File
@@ -74,7 +74,9 @@ def format_metadata_block(metadata: Dict[str, Any]) -> str:
)
def extract_metadata_block(text: str) -> Tuple[Optional[Dict[str, Any]], List[str], Optional[str]]:
def extract_metadata_block(
text: str,
) -> Tuple[Optional[Dict[str, Any]], List[str], Optional[str]]:
"""
Extract JSON metadata block.
@@ -121,12 +123,16 @@ def read_matrix_document(path: Path | str) -> Dict[str, Any]:
"metadata": metadata,
"issues": issues,
"raw_metadata": raw,
"body_sha256": hashlib.sha256(_body_without_meta(text).encode("utf-8")).hexdigest(),
"body_sha256": hashlib.sha256(
_body_without_meta(text).encode("utf-8")
).hexdigest(),
"has_meta": metadata is not None,
}
def validate_metadata(metadata: Optional[Dict[str, Any]], *, today: Optional[date] = None) -> Dict[str, Any]:
def validate_metadata(
metadata: Optional[Dict[str, Any]], *, today: Optional[date] = None
) -> Dict[str, Any]:
today = today or _utc_now().date()
violations: List[Dict[str, Any]] = []
if not isinstance(metadata, dict):
@@ -148,7 +154,9 @@ def validate_metadata(metadata: Optional[Dict[str, Any]], *, today: Optional[dat
)
last_validated = metadata.get("last_validated_date")
parsed_last = _parse_date(last_validated) if isinstance(last_validated, str) else None
parsed_last = (
_parse_date(last_validated) if isinstance(last_validated, str) else None
)
if parsed_last is None:
violations.append(
{
@@ -160,7 +168,9 @@ def validate_metadata(metadata: Optional[Dict[str, Any]], *, today: Optional[dat
policy = metadata.get("policy")
if not isinstance(policy, dict):
policy = {}
violations.append({"code": "R90_META_POLICY", "message": "Missing policy object"})
violations.append(
{"code": "R90_META_POLICY", "message": "Missing policy object"}
)
try:
warn_age_days = int(policy.get("warn_age_days", DEFAULT_WARN_AGE_DAYS))
@@ -187,12 +197,17 @@ def validate_metadata(metadata: Optional[Dict[str, Any]], *, today: Optional[dat
anchors = metadata.get("anchors")
if not isinstance(anchors, dict):
anchors = {}
violations.append({"code": "R90_META_ANCHORS", "message": "Missing anchors object"})
violations.append(
{"code": "R90_META_ANCHORS", "message": "Missing anchors object"}
)
else:
for key in ANCHOR_KEYS:
if key not in anchors:
violations.append(
{"code": "R90_META_ANCHOR_MISSING", "message": f"Missing anchors.{key}"}
{
"code": "R90_META_ANCHOR_MISSING",
"message": f"Missing anchors.{key}",
}
)
age_days: Optional[int] = None
@@ -314,7 +329,9 @@ def run_refresh_workflow(
observed = dict(observed_anchors or normalize_observed_anchors())
doc = read_matrix_document(p)
metadata = copy.deepcopy(doc["metadata"]) if isinstance(doc["metadata"], dict) else None
metadata = (
copy.deepcopy(doc["metadata"]) if isinstance(doc["metadata"], dict) else None
)
if metadata is None:
metadata = _default_metadata()
# Preserve compatibility for first adoption while making missing metadata visible.
@@ -333,7 +350,9 @@ def run_refresh_workflow(
"doc_issues": list(doc["issues"]),
}
diff_stage = {
"metadata_hash_before": _json_hash(doc["metadata"]) if doc["metadata"] is not None else None,
"metadata_hash_before": (
_json_hash(doc["metadata"]) if doc["metadata"] is not None else None
),
"drift": drift_before,
"bootstrap_metadata": bootstrap_mode,
}
@@ -352,9 +371,9 @@ def run_refresh_workflow(
metadata_after["anchors"][key] = observed.get(key, "unknown")
metadata_after["evidence"]["updated_by"] = updated_by
metadata_after["evidence"]["updated_at"] = _utc_now().isoformat()
metadata_after["evidence"]["evidence_id"] = (
f"compat-matrix-refresh-{today.strftime('%Y%m%d')}"
)
metadata_after["evidence"][
"evidence_id"
] = f"compat-matrix-refresh-{today.strftime('%Y%m%d')}"
validate_after = validate_metadata(metadata_after, today=today)
drift_after = detect_anchor_drift(metadata_after.get("anchors"), observed)
+6 -3
View File
@@ -73,7 +73,9 @@ def normalize_limit_offset(
limit = _parse_int(raw_limit)
if limit is None:
if raw_limit is not None:
warnings.append(_warn("R95_INVALID_LIMIT", "limit", raw_limit, default_limit))
warnings.append(
_warn("R95_INVALID_LIMIT", "limit", raw_limit, default_limit)
)
limit = default_limit
if limit < 1:
warnings.append(_warn("R95_LIMIT_BELOW_MIN", "limit", raw_limit, 1))
@@ -129,7 +131,9 @@ def normalize_cursor_limit(
)
cursor = default_cursor
if cursor < min_cursor:
page.warnings.append(_warn("R95_CURSOR_BELOW_MIN", cursor_key, raw_cursor, min_cursor))
page.warnings.append(
_warn("R95_CURSOR_BELOW_MIN", cursor_key, raw_cursor, min_cursor)
)
cursor = min_cursor
page.cursor = cursor
return page
@@ -176,4 +180,3 @@ def bounded_scan_collect(
skipped_malformed=skipped_malformed,
truncated=truncated,
)
@@ -19,13 +19,14 @@ from services.compatibility_matrix_governance import (
)
from services.operator_doctor import DoctorReport, check_compatibility_matrix_governance
REPO_ROOT = Path(__file__).resolve().parents[1]
class TestR90CompatMatrixGovernance(unittest.TestCase):
def test_repo_matrix_has_valid_metadata(self):
doc = read_matrix_document(REPO_ROOT / "docs" / "release" / "compatibility_matrix.md")
doc = read_matrix_document(
REPO_ROOT / "docs" / "release" / "compatibility_matrix.md"
)
self.assertTrue(doc["has_meta"], msg=doc["issues"])
validation = validate_metadata(doc["metadata"])
self.assertTrue(validation["ok"], msg=validation)
@@ -129,7 +130,9 @@ class TestR90CompatMatrixGovernance(unittest.TestCase):
checks = {c.name: c for c in report.checks}
self.assertIn("compatibility_matrix_governance", checks)
self.assertEqual(checks["compatibility_matrix_governance"].severity, "warn")
self.assertEqual(report.environment["compat_matrix_validation_code"], "R90_MATRIX_STALE")
self.assertEqual(
report.environment["compat_matrix_validation_code"], "R90_MATRIX_STALE"
)
def test_script_smoke_emits_evidence(self):
with tempfile.TemporaryDirectory() as td:
@@ -170,4 +173,3 @@ class TestR90CompatMatrixGovernance(unittest.TestCase):
if __name__ == "__main__":
unittest.main()
+27 -10
View File
@@ -124,12 +124,16 @@ class TestR95EventsApi(unittest.IsolatedAsyncioTestCase):
}
store = StubStore()
fake_web = SimpleNamespace(json_response=MagicMock(return_value=SimpleNamespace(status=200)))
fake_web = SimpleNamespace(
json_response=MagicMock(return_value=SimpleNamespace(status=200))
)
with (
patch.object(api.events, "web", fake_web),
patch.object(api.events, "check_rate_limit", return_value=True),
patch.object(api.events, "require_observability_access", return_value=(True, None)),
patch.object(
api.events, "require_observability_access", return_value=(True, None)
),
patch.object(api.events, "get_job_event_store", return_value=store),
):
resp = await api.events.events_poll_handler(req)
@@ -161,11 +165,15 @@ class TestR95EventsApi(unittest.IsolatedAsyncioTestCase):
"latest_retained_seq": 10,
}
fake_web = SimpleNamespace(json_response=MagicMock(return_value=SimpleNamespace(status=200)))
fake_web = SimpleNamespace(
json_response=MagicMock(return_value=SimpleNamespace(status=200))
)
with (
patch.object(api.events, "web", fake_web),
patch.object(api.events, "check_rate_limit", return_value=True),
patch.object(api.events, "require_observability_access", return_value=(True, None)),
patch.object(
api.events, "require_observability_access", return_value=(True, None)
),
patch.object(api.events, "get_job_event_store", return_value=StubStore()),
):
await api.events.events_poll_handler(req)
@@ -191,7 +199,9 @@ class TestR95EventsApi(unittest.IsolatedAsyncioTestCase):
with (
patch.object(api.events, "check_rate_limit", return_value=True),
patch.object(api.events, "require_observability_access", return_value=(True, None)),
patch.object(
api.events, "require_observability_access", return_value=(True, None)
),
patch.object(api.events, "get_job_event_store", return_value=StubStore()),
):
with self.assertRaises(RuntimeError):
@@ -203,7 +213,9 @@ class TestR95ApprovalsApi(unittest.IsolatedAsyncioTestCase):
req = MagicMock()
req.query = {"limit": "9999", "offset": "-7"}
handler = api.approvals.ApprovalHandlers(require_admin_token_fn=lambda _r: (True, None))
handler = api.approvals.ApprovalHandlers(
require_admin_token_fn=lambda _r: (True, None)
)
handler._service = MagicMock()
handler._service.list_all.return_value = [
_DummyApproval("a1"),
@@ -212,7 +224,9 @@ class TestR95ApprovalsApi(unittest.IsolatedAsyncioTestCase):
]
handler._service.count_pending.return_value = 1
fake_web = SimpleNamespace(json_response=MagicMock(return_value=SimpleNamespace(status=200)))
fake_web = SimpleNamespace(
json_response=MagicMock(return_value=SimpleNamespace(status=200))
)
with patch.object(api.approvals, "web", fake_web):
resp = await handler.list_approvals(req)
self.assertEqual(resp.status, 200)
@@ -231,7 +245,9 @@ class TestR95ApprovalsApi(unittest.IsolatedAsyncioTestCase):
req = MagicMock()
req.query = {"status": "not-a-status"}
handler = api.approvals.ApprovalHandlers(require_admin_token_fn=lambda _r: (True, None))
handler = api.approvals.ApprovalHandlers(
require_admin_token_fn=lambda _r: (True, None)
)
fake_web = SimpleNamespace(
json_response=MagicMock(return_value=SimpleNamespace(status=400))
)
@@ -243,7 +259,9 @@ class TestR95ApprovalsApi(unittest.IsolatedAsyncioTestCase):
req = MagicMock()
req.query = {}
handler = api.approvals.ApprovalHandlers(require_admin_token_fn=lambda _r: (True, None))
handler = api.approvals.ApprovalHandlers(
require_admin_token_fn=lambda _r: (True, None)
)
handler._service = MagicMock()
handler._service.list_all.side_effect = RuntimeError("db failed")
@@ -253,4 +271,3 @@ class TestR95ApprovalsApi(unittest.IsolatedAsyncioTestCase):
if __name__ == "__main__":
unittest.main()