feat(campaign): record unmatched file disposition

This commit is contained in:
2026-08-20 01:57:12 +02:00
parent b6af7665f4
commit f4fe534ee1
9 changed files with 177 additions and 3 deletions
+23 -1
View File
@@ -15,7 +15,10 @@ from govoplan_campaign.backend.persistence.campaigns import (
_verify_build_storage_manifest,
_verify_storage_keys_absent,
)
from govoplan_campaign.backend.routes.versions import _campaign_build_recovery_plan
from govoplan_campaign.backend.routes.versions import (
_campaign_build_recovery_plan,
_residual_file_audit_evidence,
)
def test_object_only_and_managed_output_builds_use_distinct_recovery_modes() -> None:
@@ -34,6 +37,25 @@ def test_object_only_and_managed_output_builds_use_distinct_recovery_modes() ->
)
def test_residual_file_audit_evidence_omits_recipient_identity() -> None:
assert _residual_file_audit_evidence({
"contract_version": "1",
"action": "route_report",
"routing_mode": "report",
"validation_behavior": "warn",
"watched_source_count": 2,
"residual_file_count": 3,
"recipient": {"email": "operator@example.org"},
}) == {
"contract_version": "1",
"action": "route_report",
"routing_mode": "report",
"validation_behavior": "warn",
"watched_source_count": 2,
"residual_file_count": 3,
}
def test_generated_object_manifest_verifies_exact_bytes(tmp_path: Path) -> None:
storage = LocalFilesystemStorageBackend(tmp_path)
payload = b"Message-ID: <build@example.test>\r\n\r\nbody"