feat(web): add IwoooS host handoff packets

This commit is contained in:
Your Name
2026-05-19 22:34:09 +08:00
parent b4c2c3d7e8
commit 94d83ca49b
11 changed files with 575 additions and 66 deletions

View File

@@ -171,6 +171,7 @@ def validate(root: Path) -> None:
"s2_17_iwooos_host_evidence_collection_order",
"s2_18_iwooos_host_evidence_intake_preflight",
"s2_19_iwooos_host_evidence_review_outcome_lanes",
"s2_20_iwooos_host_evidence_review_handoff_packets",
]
assert_equal(
"progress_delta_ledger.delta_ids",
@@ -388,6 +389,15 @@ def validate(root: Path) -> None:
"host_reject_credential_plaintext_lane",
"host_waiting_runtime_gate_lane",
]
expected_iwooos_host_evidence_review_handoff_packet_ids = [
"host_scope_summary_handoff_packet",
"host_owner_decision_handoff_packet",
"host_credential_handling_handoff_packet",
"host_maintenance_rollback_handoff_packet",
"host_validation_metrics_handoff_packet",
"host_redaction_attestation_handoff_packet",
"host_runtime_gate_pointer_handoff_packet",
]
assert_equal(
"iwooos_projection.summary.frontend_surface_coverage_group_count",
iwooos_projection["summary"]["frontend_surface_coverage_group_count"],
@@ -438,6 +448,11 @@ def validate(root: Path) -> None:
iwooos_projection["summary"]["host_evidence_review_outcome_lane_count"],
len(expected_iwooos_host_evidence_review_outcome_lane_ids),
)
assert_equal(
"iwooos_projection.summary.host_evidence_review_handoff_packet_count",
iwooos_projection["summary"]["host_evidence_review_handoff_packet_count"],
len(expected_iwooos_host_evidence_review_handoff_packet_ids),
)
iwooos_progress = iwooos_projection["progress"]
assert_equal("iwooos_projection.progress.overall_percent", iwooos_progress["overall_percent"], progress["overall_percent"])
assert_equal(
@@ -962,6 +977,71 @@ def validate(root: Path) -> None:
f"iwooos_projection.host_evidence_review_outcome_lanes.{item['lane_id']}.not_authorization",
item["not_authorization"],
)
iwooos_host_evidence_review_handoff_packets = iwooos_projection["host_evidence_review_handoff_packets"]
assert_equal(
"iwooos_projection.host_evidence_review_handoff_packets.ids",
[item["packet_id"] for item in iwooos_host_evidence_review_handoff_packets],
expected_iwooos_host_evidence_review_handoff_packet_ids,
)
assert_equal(
"iwooos_projection.host_evidence_review_handoff_packets.display_order",
[item["display_order"] for item in iwooos_host_evidence_review_handoff_packets],
list(range(1, len(expected_iwooos_host_evidence_review_handoff_packet_ids) + 1)),
)
expected_iwooos_host_evidence_review_handoff_requirements = [
"redacted_scope_boundary_summary",
"owner_decision_record_pointer",
"credential_handling_metadata_only_statement",
"maintenance_window_and_rollback_pointer",
"post_review_validation_metrics_pointer",
"redaction_attestation_metadata_only",
"followup_runtime_gate_pointer_only",
]
assert_equal(
"iwooos_projection.host_evidence_review_handoff_packets.packet_requirements",
[item["packet_requirement"] for item in iwooos_host_evidence_review_handoff_packets],
expected_iwooos_host_evidence_review_handoff_requirements,
)
for item in iwooos_host_evidence_review_handoff_packets:
assert_equal(
f"iwooos_projection.host_evidence_review_handoff_packets.{item['packet_id']}.display_mode",
item["display_mode"],
"review_handoff_only",
)
assert_equal(
f"iwooos_projection.host_evidence_review_handoff_packets.{item['packet_id']}.received_count",
item["received_count"],
0,
)
assert_equal(
f"iwooos_projection.host_evidence_review_handoff_packets.{item['packet_id']}.accepted_count",
item["accepted_count"],
0,
)
assert_false(
f"iwooos_projection.host_evidence_review_handoff_packets.{item['packet_id']}.approval_record_created",
item["approval_record_created"],
)
assert_false(
f"iwooos_projection.host_evidence_review_handoff_packets.{item['packet_id']}.raw_payload_allowed",
item["raw_payload_allowed"],
)
assert_false(
f"iwooos_projection.host_evidence_review_handoff_packets.{item['packet_id']}.secret_value_collection_allowed",
item["secret_value_collection_allowed"],
)
assert_false(
f"iwooos_projection.host_evidence_review_handoff_packets.{item['packet_id']}.runtime_execution_authorized",
item["runtime_execution_authorized"],
)
assert_false(
f"iwooos_projection.host_evidence_review_handoff_packets.{item['packet_id']}.action_buttons_allowed",
item["action_buttons_allowed"],
)
assert_true(
f"iwooos_projection.host_evidence_review_handoff_packets.{item['packet_id']}.not_authorization",
item["not_authorization"],
)
assert_equal(
"iwooos_projection.non_blocking_lane_ids",
iwooos_projection["non_blocking_lane_ids"],
@@ -990,6 +1070,7 @@ def validate(root: Path) -> None:
"display_host_evidence_collection_order",
"display_host_evidence_intake_preflight_checks",
"display_host_evidence_review_outcome_lanes",
"display_host_evidence_review_handoff_packets",
"display_evidence_refs",
"display_forbidden_actions",
]:
@@ -1022,6 +1103,9 @@ def validate(root: Path) -> None:
"create_host_approval_from_review_lane",
"treat_host_review_lane_as_runtime_gate",
"mark_host_review_outcome_accepted",
"treat_host_handoff_packet_as_approval",
"mark_host_handoff_packet_received",
"store_host_handoff_sensitive_payload",
"apply_runtime_blocking_control",
"switch_github_primary",
"production_deploy",