teleo-infrastructure/tests/test_verify_working_leo_apply_readiness.py
twentyOne2x fd7ab67b44
Some checks are pending
CI / lint-and-test (push) Waiting to run
Verify Working Leo apply readiness gate
- Add retained-artifact verifier for integrated apply packet readiness
- Record ready=true while preserving production_apply_executed=false
- Cover success and authorization-boundary failure paths with focused tests

Files:
- docs/reports/leo-working-state-20260709/current-truth-index.md
- docs/reports/leo-working-state-20260709/working-leo-apply-readiness-current.json
- docs/reports/leo-working-state-20260709/working-leo-apply-readiness-current.md
- docs/reports/leo-working-state-20260709/working-leo-current-state-20260709.md
- docs/reports/leo-working-state-20260709/working-leo-execution-plan-current.md
- scripts/verify_working_leo_apply_readiness.py
- tests/test_verify_working_leo_apply_readiness.py
2026-07-10 00:58:38 +02:00

68 lines
2.5 KiB
Python

"""Tests for scripts/verify_working_leo_apply_readiness.py."""
from __future__ import annotations
import json
import shutil
import sys
from pathlib import Path
REPO_ROOT = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(REPO_ROOT / "scripts"))
import verify_working_leo_apply_readiness as readiness # noqa: E402
def _copy_readiness_fixture(tmp_path: Path) -> Path:
source_dir = REPO_ROOT / readiness.REPO_REPORT_DIR
fixture_dir = tmp_path / "reports"
fixture_dir.mkdir()
manifest = json.loads((source_dir / "working-leo-integrated-packet.json").read_text())
files = {
"working-leo-integrated-packet.json",
readiness.CLONE_LOG,
readiness.CLONE_REPORT,
}
for packet in manifest["packets"]:
files.add(packet["apply_sql"])
files.add(packet["rollback_sql"])
files.add(packet["packet_json"])
for filename in files:
shutil.copy2(source_dir / filename, fixture_dir / filename)
return fixture_dir
def test_readiness_passes_current_retained_artifacts():
result = readiness.build_readiness()
assert result["ready_for_authorized_production_apply_packet"] is True
assert result["production_apply_executed"] is False
assert result["production_apply_authorization_present"] is False
assert all(result["checks"].values())
assert result["missing_apply_markers"] == []
assert result["missing_rollback_markers"] == []
def test_readiness_fails_if_manifest_says_executed(tmp_path: Path):
fixture_dir = _copy_readiness_fixture(tmp_path)
manifest_path = fixture_dir / "working-leo-integrated-packet.json"
manifest = json.loads(manifest_path.read_text())
manifest["production_apply_status"] = "executed"
manifest_path.write_text(json.dumps(manifest, indent=2, sort_keys=True) + "\n")
result = readiness.build_readiness(fixture_dir)
assert result["ready_for_authorized_production_apply_packet"] is False
assert result["checks"]["manifest_status_not_executed"] is False
assert result["checks"]["all_packet_files_ok"] is True
def test_markdown_report_keeps_authorization_boundary(tmp_path: Path):
result = readiness.build_readiness()
out = tmp_path / "readiness.md"
readiness.write_markdown_report(out, result)
text = out.read_text()
assert "Ready for separately authorized production apply packet: `True`" in text
assert "Production apply executed: `False`" in text
assert "It does not authorize or prove production DB mutation." in text