#!/usr/bin/env python3
"""Validate the mirror-only security progress guardrails.

This script is intentionally read-only. It checks committed snapshots only and
does not call GitHub, Gitea, Kali, AwoooP, or any runtime API.
"""

from __future__ import annotations

import argparse
import json
from pathlib import Path
from typing import Any


def load_json(path: Path) -> dict[str, Any]:
    return json.loads(path.read_text(encoding="utf-8"))


def assert_equal(label: str, actual: Any, expected: Any) -> None:
    if actual != expected:
        raise SystemExit(f"BLOCKED {label}: expected {expected!r}, got {actual!r}")


def assert_false(label: str, actual: Any) -> None:
    assert_equal(label, actual, False)


def assert_true(label: str, actual: Any) -> None:
    assert_equal(label, actual, True)


def assert_contains(label: str, values: list[Any], expected: Any) -> None:
    if expected not in values:
        raise SystemExit(f"BLOCKED {label}: missing {expected!r}")


def assert_text_contains(label: str, text: str, expected: str) -> None:
    if expected not in text:
        raise SystemExit(f"BLOCKED {label}: missing {expected!r}")


def assert_text_not_contains(label: str, text: str, forbidden: str) -> None:
    if forbidden in text:
        raise SystemExit(f"BLOCKED {label}: forbidden {forbidden!r}")


def assert_text_before(label: str, text: str, first: str, second: str) -> None:
    first_index = text.find(first)
    second_index = text.find(second)
    if first_index == -1:
        raise SystemExit(f"BLOCKED {label}: missing first marker {first!r}")
    if second_index == -1:
        raise SystemExit(f"BLOCKED {label}: missing second marker {second!r}")
    if first_index >= second_index:
        raise SystemExit(f"BLOCKED {label}: expected {first!r} before {second!r}")


def collect_string_values(value: Any) -> list[str]:
    if isinstance(value, str):
        return [value]
    if isinstance(value, list):
        collected: list[str] = []
        for item in value:
            collected.extend(collect_string_values(item))
        return collected
    if isinstance(value, dict):
        collected = []
        for item in value.values():
            collected.extend(collect_string_values(item))
        return collected
    return []


def validate(root: Path) -> None:
    security_dir = root / "docs" / "security"

    manifest = load_json(security_dir / "security-supply-chain-contract-manifest.snapshot.json")
    readiness = load_json(security_dir / "security-mirror-readiness.snapshot.json")
    rollup = load_json(security_dir / "security-mirror-status-rollup.snapshot.json")
    intake = load_json(security_dir / "security-mirror-intake-plan.snapshot.json")
    event_sample = load_json(security_dir / "security-mirror-event-sample.snapshot.json")
    route = load_json(security_dir / "security-mirror-route.snapshot.json")
    acceptance = load_json(security_dir / "security-mirror-acceptance.snapshot.json")
    dry_run = load_json(security_dir / "security-mirror-dry-run.snapshot.json")
    owner_rollup = load_json(security_dir / "source-control-owner-response-validation-rollup.snapshot.json")
    primary_gate = load_json(security_dir / "source-control-primary-readiness-gate.snapshot.json")
    rollout_policy = load_json(security_dir / "security-rollout-policy.snapshot.json")
    iwooos_projection = load_json(security_dir / "iwooos-posture-projection.snapshot.json")
    high_value_config_coverage = load_json(security_dir / "high-value-config-control-coverage.snapshot.json")
    host_service_config_inventory = load_json(security_dir / "host-service-config-inventory.snapshot.json")
    ssh_network_access_inventory = load_json(security_dir / "ssh-network-access-inventory.snapshot.json")
    backup_restore_escrow_inventory = load_json(security_dir / "backup-restore-escrow-inventory.snapshot.json")
    monitoring_alerting_observability_inventory = load_json(
        security_dir / "monitoring-alerting-observability-inventory.snapshot.json"
    )
    domain_tls_inventory = load_json(security_dir / "domain-tls-certbot-inventory.snapshot.json")
    public_gateway_preflight_inventory = load_json(
        security_dir / "public-gateway-preflight-inventory.snapshot.json"
    )
    s49_request_draft = load_json(security_dir / "gitea-inventory-owner-attestation-request-draft.snapshot.json")
    kali_status = load_json(security_dir / "kali-integration-status.snapshot.json")
    iwooos_projection_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "iwooos" / "page.tsx"
    ).read_text(encoding="utf-8")
    security_compliance_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "security-compliance" / "page.tsx"
    ).read_text(encoding="utf-8")
    awooop_home_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "awooop" / "page.tsx"
    ).read_text(encoding="utf-8")
    awooop_work_items_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "awooop" / "work-items" / "page.tsx"
    ).read_text(encoding="utf-8")
    awooop_tenants_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "awooop" / "tenants" / "page.tsx"
    ).read_text(encoding="utf-8")
    awooop_runs_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "awooop" / "runs" / "page.tsx"
    ).read_text(encoding="utf-8")
    awooop_run_detail_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "awooop" / "runs" / "[run_id]" / "page.tsx"
    ).read_text(encoding="utf-8")
    awooop_approvals_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "awooop" / "approvals" / "page.tsx"
    ).read_text(encoding="utf-8")
    awooop_approval_detail_page = (
        root
        / "apps"
        / "web"
        / "src"
        / "app"
        / "[locale]"
        / "awooop"
        / "approvals"
        / "[run_id]"
        / "page.tsx"
    ).read_text(encoding="utf-8")
    awooop_contracts_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "awooop" / "contracts" / "page.tsx"
    ).read_text(encoding="utf-8")
    security_panel = (root / "apps" / "web" / "src" / "components" / "panels" / "SecurityPanel.tsx").read_text(
        encoding="utf-8"
    )
    compliance_panel = (
        root / "apps" / "web" / "src" / "components" / "panels" / "CompliancePanel.tsx"
    ).read_text(encoding="utf-8")
    standalone_security_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "security" / "page.tsx"
    ).read_text(encoding="utf-8")
    standalone_compliance_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "compliance" / "page.tsx"
    ).read_text(encoding="utf-8")
    alerts_page = (root / "apps" / "web" / "src" / "app" / "[locale]" / "alerts" / "page.tsx").read_text(
        encoding="utf-8"
    )
    authorizations_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "authorizations" / "page.tsx"
    ).read_text(encoding="utf-8")
    governance_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "governance" / "page.tsx"
    ).read_text(encoding="utf-8")
    alert_operation_logs_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "alert-operation-logs" / "page.tsx"
    ).read_text(encoding="utf-8")
    code_review_page = (
        root / "apps" / "web" / "src" / "app" / "[locale]" / "code-review" / "page.tsx"
    ).read_text(encoding="utf-8")
    errors_panel = (root / "apps" / "web" / "src" / "components" / "panels" / "ErrorsPanel.tsx").read_text(
        encoding="utf-8"
    )
    iwooos_bridge = (
        root / "apps" / "web" / "src" / "components" / "security" / "iwooos-read-only-bridge.tsx"
    ).read_text(encoding="utf-8")
    sidebar = (root / "apps" / "web" / "src" / "components" / "layout" / "sidebar.tsx").read_text(
        encoding="utf-8"
    )
    command_palette = (
        root / "apps" / "web" / "src" / "components" / "command-palette" / "CommandPalette.tsx"
    ).read_text(encoding="utf-8")
    web_messages_zh = load_json(root / "apps" / "web" / "messages" / "zh-TW.json")
    web_messages_en = load_json(root / "apps" / "web" / "messages" / "en.json")

    manifest_count = manifest["contract_count"]
    readiness_summary = readiness["summary"]
    rollup_summary = rollup["summary"]

    assert_equal("manifest.contract_count", manifest_count, 36)
    assert_equal("readiness.total_contracts", readiness_summary["total_contracts"], manifest_count)
    assert_equal("rollup.total_contracts", rollup_summary["total_contracts"], manifest_count)
    assert_equal("rollup.ready_for_mirror_count", rollup_summary["ready_for_mirror_count"], 33)
    assert_equal("rollup.partial_ready_count", rollup_summary["partial_ready_count"], 2)
    assert_equal("rollup.contract_only_count", rollup_summary["contract_only_count"], 1)
    assert_equal("rollup.blocked_count", rollup_summary["blocked_count"], 0)
    assert_contains(
        "manifest.contracts",
        [item["contract"] for item in manifest["contracts"]],
        "iwooos_posture_projection_v1",
    )
    assert_contains(
        "readiness.contract_readiness",
        [item["contract"] for item in readiness["contract_readiness"]],
        "iwooos_posture_projection_v1",
    )
    assert_contains(
        "rollup.source_indexes",
        rollup["source_indexes"],
        "docs/security/iwooos-posture-projection.snapshot.json",
    )
    assert_equal("event_sample.payload_summary.total_contracts", event_sample["payload_summary"]["total_contracts"], manifest_count)
    assert_equal(
        "event_sample.payload_summary.ready_for_mirror_count",
        event_sample["payload_summary"]["ready_for_mirror_count"],
        readiness_summary["ready_for_mirror_count"],
    )
    assert_contains(
        "event_sample.evidence_refs",
        event_sample["evidence_refs"],
        "docs/security/IWOOOS-POSTURE-PROJECTION.md",
    )
    assert_equal("route.summary.total_contracts", route["summary"]["total_contracts"], manifest_count)
    route_contracts = sorted({contract for group in route["route_groups"] for contract in group["contracts"]})
    assert_equal("route.contract_coverage", route_contracts, sorted(item["contract"] for item in manifest["contracts"]))
    assert_contains(
        "intake.source_indexes",
        intake["source_indexes"],
        "docs/security/iwooos-posture-projection.snapshot.json",
    )
    intake_contracts = [contract for wave in intake["intake_waves"] for contract in wave["contracts"]]
    assert_contains("intake.contracts", intake_contracts, "iwooos_posture_projection_v1")

    assert_text_contains("sidebar.iwooos_security_unified_entry", sidebar, "id: 'iwooos-security'")
    assert_text_contains("sidebar.iwooos_security_label", sidebar, "labelKey: 'iwooos'")
    assert_text_not_contains("sidebar.iwooos_security_duplicate_label", sidebar, "labelKey: 'iwooosSecurityCompliance'")
    assert_text_contains("sidebar.security_compliance_alias", sidebar, "aliases: ['/security-compliance']")
    assert_text_not_contains("sidebar.duplicate_security_compliance_entry", sidebar, "id: 'security-compliance'")
    assert_text_contains("command_palette.iwooos_entry", command_palette, "id: 'iwooos'")
    assert_text_contains("command_palette.iwooos_route", command_palette, "nav('/iwooos')")
    assert_text_contains("command_palette.security_keyword", command_palette, "'安全合規'")
    assert_text_not_contains("command_palette.legacy_security_entry", command_palette, "id: 'security'")
    assert_text_not_contains("command_palette.legacy_security_compliance_route", command_palette, "nav('/security-compliance')")
    assert_equal(
        "web_messages.zh-TW.nav.iwooos",
        web_messages_zh["nav"]["iwooos"],
        "IwoooS",
    )
    assert_equal(
        "web_messages.en.nav.iwooos",
        web_messages_en["nav"]["iwooos"],
        "IwoooS",
    )
    assert_equal("web_messages.en.nav.traditional_chinese_mirror", web_messages_en["nav"], web_messages_zh["nav"])
    assert_equal("web_messages.en.iwooos.traditional_chinese_mirror", web_messages_en["iwooos"], web_messages_zh["iwooos"])
    assert_equal(
        "web_messages.en.full_site_traditional_chinese_mirror",
        web_messages_en,
        web_messages_zh,
    )
    product_voice_sections = [
        web_messages_zh["dashboard"]["homeCommandMap"],
        web_messages_zh["dashboard"]["automationDelivery"],
        web_messages_zh["dashboard"]["automationDiagrams"],
        web_messages_zh["securityCompliance"],
        web_messages_zh["iwooos"],
    ]
    iwooos_visible_text = "\n".join(collect_string_values(web_messages_zh["iwooos"]))
    product_visible_text = "\n".join(
        text for section in product_voice_sections for text in collect_string_values(section)
    )
    for forbidden in [
        "S2.",
        "回應「",
        "專業建議",
        "本輪",
        "這裡",
        "到底",
        "空泛",
        "不再只",
        "卡在哪",
        "初期框架",
        "Claude",
        "Codex",
        "交辦",
        "對話",
        "不用讀",
        "不用翻對話",
        "使用者最",
        "使用者可以",
        "使用者能",
        "使用者已",
        "使用者現在",
        "使用者不用",
        "使用者感覺",
        "使用者第一眼",
        "使用者先",
        "讓使用者",
        "給使用者",
        "最關心",
        "抱怨",
        "一堆文字",
        "不要只是",
        "長頁面",
        "不是再加文字",
        "目前到底",
        "真正卡點",
        "目前卡點",
        "主要卡點",
    ]:
        assert_text_not_contains("web_messages.zh-TW.product_voice", product_visible_text, forbidden)
    iwooos_first_screen_text = "\n".join(
        collect_string_values(
            {
                "subtitle": web_messages_zh["iwooos"]["subtitle"],
                "boundary": web_messages_zh["iwooos"]["boundary"],
                **{
                    key: web_messages_zh["iwooos"][key]
                    for key in [
                        "progressIntegrityRibbon",
                        "executiveSnapshot",
                        "focusDeck",
                        "immediateVisualMesh",
                        "topologyAtlas",
                        "decisionRunway",
                        "gateRadar",
                        "visualCommandDashboard",
                        "professionalSecurityExperience",
                        "concreteWorkSnapshot",
                        "concreteSecurityWorkMap",
                        "informationArchitecture",
                        "metrics",
                    ]
                },
            }
        )
    )
    for forbidden in [
        "Gate",
        "evidence",
        "workflow",
        "Runtime",
        "Primary",
        "owner evidence",
        "owner ",
        "reviewer acceptance",
        "reviewer",
        "source-control mutation",
        "runtime gate",
        "runtime ",
        "Runtime Gate",
        "Runtime 動作",
        "Runtime 阻擋",
        "Gate 0",
        "schema",
        "contract-only",
        "partial",
        "Session",
        "drill-down",
        "refs",
        "repo",
        "source-control",
        "readiness",
        "queue/candidate/assigned",
    ]:
        assert_text_not_contains(
            "web_messages.zh-TW.iwooos.first_screen_traditional_chinese",
            iwooos_first_screen_text,
            forbidden,
        )
    for text in [
        'id="iwooos-decision-gate-visuals"',
        'id="iwooos-scope-evidence-visuals"',
        "decisionGateVisuals",
        "scopeEvidenceVisuals",
        "iwooos-decision-gate-visuals",
        "iwooos-scope-evidence-visuals",
    ]:
        assert_text_contains("iwooos_projection_page.progressive_disclosure_groups", iwooos_projection_page, text)
    for key in ["decisionGateVisuals", "scopeEvidenceVisuals"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.informationArchitecture.progressive_disclosure",
            list(web_messages_zh["iwooos"]["informationArchitecture"].keys()),
            key,
        )
    for text in [
        "IwoooSVisualCommandDashboard",
        'data-testid="iwooos-visual-command-dashboard"',
        "visualDashboardMetrics",
        "visualDashboardNodes",
        "visualDashboardGates",
        "conic-gradient",
        "visualCommandDashboard",
    ]:
        assert_text_contains("iwooos_projection_page.visual_command_dashboard", iwooos_projection_page, text)
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "metrics",
        "nodes",
        "gateMatrix",
        "gates",
        "drilldown",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.visualCommandDashboard",
            list(web_messages_zh["iwooos"]["visualCommandDashboard"].keys()),
            key,
        )
    for key in ["overall", "framework", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.visualCommandDashboard.metrics",
            list(web_messages_zh["iwooos"]["visualCommandDashboard"]["metrics"].keys()),
            key,
        )
    for key in ["awoooiCore", "websites", "vibeWork", "kali112", "devHosts", "githubPrimary", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.visualCommandDashboard.nodes",
            list(web_messages_zh["iwooos"]["visualCommandDashboard"]["nodes"].keys()),
            key,
        )
    for key in ["kaliMaintenance", "ownerResponse", "githubPrimary", "runtimeExecution"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.visualCommandDashboard.gates",
            list(web_messages_zh["iwooos"]["visualCommandDashboard"]["gates"].keys()),
            key,
        )
    for text in [
        "IwoooSProfessionalSecurityExperience",
        'data-testid="iwooos-professional-security-experience"',
        "IwoooSAttackPathVisual",
        "IwoooSAssetHeatVisual",
        "IwoooSResponseFlowVisual",
        "visualExperienceTabs",
        "attackPathNodes",
        "assetHeatCells",
        "responseFlowSteps",
        "role=\"tab\"",
        "aria-selected",
    ]:
        assert_text_contains("iwooos_projection_page.professional_security_experience", iwooos_projection_page, text)
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "tabsLabel",
        "tabs",
        "attackPath",
        "assetHeat",
        "responseFlow",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.professionalSecurityExperience",
            list(web_messages_zh["iwooos"]["professionalSecurityExperience"].keys()),
            key,
        )
    for key in ["attackPath", "assetHeat", "responseFlow"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.professionalSecurityExperience.tabs",
            list(web_messages_zh["iwooos"]["professionalSecurityExperience"]["tabs"].keys()),
            key,
        )
    for key in ["publicWeb", "apiRuntime", "projectSource", "devHosts", "kali112", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.professionalSecurityExperience.attackPath.nodes",
            list(web_messages_zh["iwooos"]["professionalSecurityExperience"]["attackPath"]["nodes"].keys()),
            key,
        )
    for key in [
        "awoooi",
        "awooop",
        "iwooos",
        "websites",
        "vibeWork",
        "kali112",
        "devHosts",
        "githubPrimary",
        "runtimeActions",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.professionalSecurityExperience.assetHeat.cells",
            list(web_messages_zh["iwooos"]["professionalSecurityExperience"]["assetHeat"]["cells"].keys()),
            key,
        )
    for key in ["observe", "triage", "evidence", "approval", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.professionalSecurityExperience.responseFlow.steps",
            list(web_messages_zh["iwooos"]["professionalSecurityExperience"]["responseFlow"]["steps"].keys()),
            key,
        )
    for text in [
        "IwoooSConcreteWorkSnapshot",
        'data-testid="iwooos-concrete-work-snapshot"',
        "iwooosConcreteSecurityWorkStreams.map",
        "concreteWorkSnapshot",
        "IwoooSConcreteWorkSnapshot />",
    ]:
        assert_text_contains("iwooos_projection_page.concrete_work_snapshot", iwooos_projection_page, text)
    for key in ["eyebrow", "title", "subtitle", "summary"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteWorkSnapshot",
            list(web_messages_zh["iwooos"]["concreteWorkSnapshot"].keys()),
            key,
        )
    for key in ["visible", "delivered", "nextGate", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteWorkSnapshot.summary",
            list(web_messages_zh["iwooos"]["concreteWorkSnapshot"]["summary"].keys()),
            key,
        )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "maintenanceGateLabel",
        "maintenanceGate",
        "nextEvidenceLabel",
        "nextEvidence",
        "runwayLabel",
        "boundaryTitle",
        "boundaryIntro",
        "runway",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.kaliMaintenanceReadiness",
            list(web_messages_zh["iwooos"]["kaliMaintenanceReadiness"].keys()),
            key,
        )
    for key in [
        "readOnlySnapshot",
        "scannerHealth",
        "upgradablePackages",
        "failedSystemdUnits",
        "serviceHardening",
        "runtimeGate",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.kaliMaintenanceReadiness.items",
            list(web_messages_zh["iwooos"]["kaliMaintenanceReadiness"]["items"].keys()),
            key,
        )
    for text in [
        "KaliMaintenanceReadinessBoard",
        'data-testid="iwooos-kali-maintenance-readiness-board"',
        "kaliMaintenanceRunwaySteps",
        "2026-06-04 08:55",
        "kali_112_read_only_observed_at=2026-06-04T08:55:43+08:00",
        "kali_112_scanner_health=healthy",
        "kali_112_scanner_health_endpoint=127.0.0.1:8080/health",
        "kali_112_scanner_service_active=active",
        "kali_112_scanner_service_enabled=enabled",
        "kali_112_upgradable_package_count=1994",
        "kali_112_failed_systemd_unit_count=1",
        "kali_112_failed_systemd_unit=networking.service",
        "kali_112_systemd_hardening_enabled=0/4",
        "kali_112_full_upgrade_authorized=false",
        "kali_112_reboot_authorized=false",
        "kali_112_package_update_executed=false",
        "kali_112_host_reboot_executed=false",
        "kali_112_active_scan_executed=false",
        "kali_112_runtime_execution_authorized=false",
    ]:
        assert_text_contains("iwooos_projection_page.kali_maintenance_readiness", iwooos_projection_page, text)

    progress = rollup["progress_estimate"]
    assert_equal("progress.overall_percent", progress["overall_percent"], 64)
    assert_equal("progress.framework_percent_min", progress["framework_percent_min"], 92)
    assert_equal("progress.framework_percent_max", progress["framework_percent_max"], 92)
    assert_equal("progress.runtime_landing_percent_min", progress["runtime_landing_percent_min"], 40)
    assert_equal("progress.runtime_landing_percent_max", progress["runtime_landing_percent_max"], 45)
    assert_true("progress.not_authorization", progress["not_authorization"])

    progress_display_policy = rollup["progress_display_policy"]
    assert_equal("progress_display_policy.headline_percent", progress_display_policy["headline_percent"], 64)
    assert_equal(
        "progress_display_policy.headline_status",
        progress_display_policy["headline_status"],
        "reviewed_after_kali_112_read_only_production_evidence",
    )
    assert_true("progress_display_policy.recent_micro_progress_visible", progress_display_policy["recent_micro_progress_visible"])
    assert_false(
        "progress_display_policy.runtime_execution_authorized",
        progress_display_policy["runtime_execution_authorized"],
    )
    assert_true("progress_display_policy.not_authorization", progress_display_policy["not_authorization"])

    progress_delta_ledger = rollup["progress_delta_ledger"]
    expected_delta_ids = [
        "s4_10_owner_response_request_packet",
        "s4_10_owner_response_template_status_ledger",
        "s4_10_owner_response_audit_event_templates",
        "s4_10_owner_response_redaction_examples",
        "s4_10_owner_response_collection_checks",
        "s4_10_owner_response_intake_preflight_checks",
        "s4_11_ref_truth_owner_response_request_packet",
        "s4_11_ref_truth_owner_response_template_status_ledger",
        "s4_11_ref_truth_owner_response_audit_event_templates",
        "s4_11_ref_truth_owner_response_redaction_examples",
        "s4_11_ref_truth_owner_response_collection_checks",
        "s4_11_ref_truth_owner_response_intake_preflight_checks",
        "s4_12_workflow_secret_name_owner_response_request_packet",
        "s4_12_workflow_secret_name_owner_response_template_status_ledger",
        "s4_12_workflow_secret_name_owner_response_audit_event_templates",
        "s4_12_workflow_secret_name_owner_response_redaction_examples",
        "s4_12_workflow_secret_name_owner_response_collection_checks",
        "s4_12_workflow_secret_name_owner_response_intake_preflight_checks",
        "s4_13_owner_response_validation_evidence_routing_rules",
        "s4_13_owner_response_validation_display_sections",
        "s4_13_owner_response_validation_state_transition_rules",
        "s4_13_owner_response_validation_reviewer_checklist",
        "s4_13_owner_response_validation_reviewer_outcome_lanes",
        "s4_13_owner_response_validation_reviewer_audit_event_templates",
        "s4_13_owner_response_validation_reviewer_audit_display_sections",
        "s4_13_owner_response_validation_reviewer_audit_collection_checks",
        "s4_13_owner_response_validation_reviewer_audit_redaction_examples",
        "s4_13_owner_response_validation_reviewer_audit_retention_rules",
        "s4_13_owner_response_validation_reviewer_audit_retention_checks",
        "s4_13_owner_response_validation_reviewer_audit_handoff_packets",
        "s4_13_owner_response_validation_reviewer_audit_handoff_checks",
        "s4_13_owner_response_validation_parallel_session_sync_checks",
        "s4_13_owner_response_validation_parallel_session_conflict_lanes",
        "s4_13_owner_response_validation_parallel_session_recovery_checks",
        "s4_13_owner_response_validation_parallel_session_recovery_outcome_lanes",
        "s1_3_low_friction_non_blocking_escalation_lanes",
        "s2_8_iwooos_frontend_posture_entry",
        "s2_9_iwooos_posture_projection_contract",
        "s2_10_iwooos_existing_frontend_surface_integration",
        "s2_11_iwooos_surface_coverage_boundary_matrix",
        "s2_12_iwooos_operator_journey_projection",
        "s2_13_iwooos_owner_evidence_readiness_board",
        "s2_14_iwooos_host_coverage_view",
        "s2_15_iwooos_host_action_gate_matrix",
        "s2_16_iwooos_host_evidence_readiness_board",
        "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",
        "s2_21_iwooos_host_evidence_reviewer_checklist",
        "s2_22_iwooos_host_evidence_reviewer_outcome_lanes",
        "s2_23_iwooos_host_owner_decision_candidate_packets",
        "s2_24_iwooos_host_owner_decision_review_checklist",
        "s2_25_iwooos_host_owner_decision_review_outcome_lanes",
        "s2_26_iwooos_host_owner_decision_record_draft_packets",
        "s2_27_iwooos_host_owner_decision_record_draft_review_checklist",
        "s2_28_iwooos_host_owner_decision_record_draft_review_outcome_lanes",
        "s2_29_iwooos_host_owner_decision_record_writeup_packets",
        "s2_30_iwooos_host_owner_decision_record_writeup_review_checklist",
        "s2_31_iwooos_host_owner_decision_record_writeup_review_outcome_lanes",
        "s2_32_iwooos_host_owner_decision_record_formal_candidate_packets",
        "s2_33_iwooos_host_owner_decision_record_formal_candidate_review_checklist",
        "s2_34_iwooos_host_owner_decision_record_formal_candidate_review_outcome_lanes",
        "s2_35_iwooos_host_owner_decision_record_formal_record_queue_packets",
        "s2_36_iwooos_host_owner_decision_record_formal_record_queue_review_checklist",
        "s2_37_iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lanes",
        "s2_38_iwooos_host_owner_decision_record_human_handoff_readiness_packets",
        "s2_39_iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist",
        "s2_40_iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lanes",
        "s2_41_iwooos_host_owner_decision_record_human_record_owner_review_candidate_packets",
        "s2_42_iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist",
        "s2_43_iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes",
        "s2_44_iwooos_host_owner_decision_record_human_record_owner_review_preparation_packets",
        "s2_45_iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist",
        "s2_46_iwooos_progress_acceleration_lanes",
        "s2_47_iwooos_owner_response_next_action_focus",
        "s2_48_iwooos_s4_9_owner_response_preflight",
        "s2_49_iwooos_s4_9_owner_response_request_templates",
        "s2_50_iwooos_progress_hold_movement_gates",
        "s2_51_iwooos_awooop_read_only_landing_readiness",
        "s2_52_iwooos_awooop_cross_session_handoff_packets",
        "s2_53_awooop_home_iwooos_security_mirror_candidate",
        "s2_54_awooop_work_items_iwooos_security_mirror_candidate",
        "s2_55_awooop_approvals_iwooos_owner_response_gate_candidate",
        "s2_56_awooop_contracts_iwooos_security_contract_candidate",
        "s2_57_awooop_tenants_iwooos_tenant_scope_candidate",
        "s2_58_awooop_runs_iwooos_run_state_candidate",
        "s2_59_existing_security_pages_iwooos_reverse_bridge",
        "s2_60_security_control_pages_iwooos_reverse_bridge",
        "s2_61_audit_engineering_pages_iwooos_reverse_bridge",
        "s2_62_iwooos_frontend_surface_connection_board",
        "s2_63_iwooos_github_primary_readiness_board",
        "s2_64_awooop_work_items_github_primary_readiness_candidate",
        "s2_65_awooop_contracts_github_primary_readiness_candidate",
        "s2_66_awooop_approvals_github_primary_readiness_boundary",
        "s2_67_awooop_home_github_primary_readiness_summary",
        "s2_68_awooop_tenants_github_primary_readiness_scope",
        "s2_69_awooop_runs_github_primary_readiness_boundary",
        "s2_70_traditional_chinese_security_surface_wording_guard",
        "s2_71_awooop_run_detail_traditional_chinese_wording_guard",
        "s2_72_awooop_home_owner_response_validation_rollup",
        "s2_73_awooop_work_items_owner_response_validation_candidate",
        "s2_74_awooop_contracts_owner_response_validation_candidate",
        "s2_75_awooop_approvals_owner_response_validation_boundary",
        "s2_76_awooop_tenants_owner_response_validation_scope",
        "s2_77_awooop_runs_owner_response_validation_boundary",
        "s2_78_awooop_run_detail_owner_response_validation_boundary",
        "s2_79_awooop_approval_detail_owner_response_validation_boundary",
        "s2_80_iwooos_awooop_route_coverage_board",
        "s2_81_iwooos_gradual_convergence_roadmap",
        "s2_82_iwooos_owner_response_collection_board",
        "s2_83_iwooos_owner_response_intake_safety_board",
        "s2_84_iwooos_owner_response_review_outcome_board",
        "s2_85_iwooos_owner_response_human_decision_queue_board",
        "s2_86_iwooos_owner_response_decision_record_draft_guard_board",
        "s2_87_iwooos_owner_response_formal_record_candidate_preflight_board",
        "s2_88_iwooos_owner_response_formal_record_candidate_outcome_board",
        "s2_89_iwooos_owner_response_formal_record_owner_handoff_board",
        "s2_90_iwooos_owner_response_formal_record_owner_handoff_review_board",
        "s2_91_iwooos_owner_response_formal_record_owner_handoff_review_outcome_board",
        "s2_92_iwooos_owner_response_formal_record_owner_review_preparation_board",
        "s2_93_iwooos_owner_response_formal_record_owner_review_checklist_board",
        "s2_94_iwooos_owner_response_formal_record_owner_review_outcome_board",
        "s2_95_iwooos_owner_response_formal_record_owner_assignment_preparation_board",
        "s2_96_iwooos_owner_response_formal_record_owner_assignment_checklist_board",
        "s2_97_iwooos_owner_response_formal_record_owner_assignment_outcome_board",
        "s2_98_iwooos_owner_response_formal_record_owner_assignment_decision_preparation_board",
        "s2_99_iwooos_owner_response_formal_record_owner_assignment_decision_checklist_board",
        "s2_100_iwooos_headline_movement_acceptance_gate_board",
        "s2_101_iwooos_s49_owner_response_work_order_board",
        "s2_102_iwooos_s49_owner_response_envelope_board",
        "s2_103_iwooos_s49_owner_response_envelope_preflight_board",
        "s2_104_iwooos_s49_owner_response_envelope_preflight_outcome_board",
        "s2_105_iwooos_s49_owner_response_request_draft_board",
        "s2_106_iwooos_s49_owner_response_dispatch_flow_board",
        "s2_107_security_compliance_iwooos_frontstage_bridge",
        "s2_108_iwooos_frontstage_security_entry_roles",
        "s2_109_security_compliance_frontstage_route_role_map",
        "s2_110_security_compliance_low_friction_rollout_ladder",
        "s2_111_iwooos_low_friction_rollout_ladder",
        "s2_112_iwooos_low_friction_next_action_boundary",
        "s2_113_iwooos_progress_movement_signal_strip",
        "s2_114_iwooos_first_progress_unlock_path",
        "s2_115_iwooos_first_unlock_evidence_packet",
        "s2_116_iwooos_first_unlock_evidence_packet_preflight_outcomes",
        "s2_117_iwooos_first_unlock_evidence_packet_supplement_path",
        "s2_118_iwooos_first_unlock_evidence_packet_supplement_pre_review",
        "s2_119_iwooos_first_unlock_evidence_packet_supplement_pre_review_outcomes",
        "s2_120_iwooos_first_unlock_evidence_packet_reviewer_assignment_preparation",
        "s2_121_iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight",
        "s2_122_iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_outcomes",
        "s2_123_iwooos_concrete_security_work_map",
        "s2_124_iwooos_concrete_security_delivery_checklist",
        "s2_125_iwooos_concrete_security_blocker_resolution",
        "s2_126_iwooos_three_axis_product_progress",
        "s2_127_iwooos_product_rollout_wave_ledger",
        "s2_128_iwooos_product_rollout_acceptance_gates",
        "s2_129_iwooos_product_rollout_acceptance_outcomes",
        "s2_130_iwooos_product_evidence_wiring_map",
        "s2_131_iwooos_product_evidence_wiring_preflight",
        "s2_132_iwooos_product_evidence_wiring_preflight_outcomes",
        "s2_133_iwooos_product_evidence_wiring_preflight_recovery_ledger",
        "s2_134_iwooos_product_evidence_wiring_preflight_retry_gates",
        "s2_135_iwooos_product_evidence_wiring_preflight_retry_outcomes",
        "s2_136_iwooos_product_evidence_wiring_preflight_retry_review_candidate",
        "s2_137_iwooos_product_evidence_wiring_preflight_retry_review_candidate_preflight",
        "s2_138_iwooos_product_evidence_wiring_preflight_retry_review_candidate_preflight_outcomes",
        "s2_139_iwooos_product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_ledger",
        "s2_140_iwooos_product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_retry_gates",
        "s2_141_iwooos_all_product_coverage_snapshot",
        "s2_142_iwooos_first_unlock_path_first_layer",
        "s2_143_iwooos_command_map_first_layer",
        "s2_144_iwooos_command_palette_security_entry_unified",
        "s2_145_iwooos_first_layer_focus_deck",
        "s2_146_iwooos_immediate_visual_mesh",
        "s2_147_iwooos_gate_radar_first_layer",
        "s2_148_iwooos_professional_topology_atlas",
        "s2_149_iwooos_topology_node_drilldown",
        "s2_150_iwooos_topology_path_explorer",
        "s2_151_iwooos_topology_intelligence_deck",
        "s2_152_iwooos_decision_runway",
        "s2_153_iwooos_executive_snapshot",
        "s2_154_iwooos_first_screen_language_polish",
        "s2_155_iwooos_first_layer_progressive_disclosure",
        "s2_156_iwooos_first_screen_depth_map",
        "s2_157_iwooos_progress_evidence_rail",
        "s2_158_iwooos_evidence_unlock_queue",
        "s2_159_iwooos_s49_request_draft_package",
        "s2_160_iwooos_s49_request_draft_frontstage_radar",
        "s2_161_iwooos_s49_request_draft_detail_layer",
        "s2_162_iwooos_s49_owner_response_intake_first_layer",
        "s2_163_iwooos_s49_owner_response_intake_next_gates",
        "s2_164_iwooos_s49_owner_response_intake_blocker_focus",
        "s2_165_iwooos_s49_owner_response_delivery_cards",
        "s2_166_iwooos_progress_integrity_ribbon",
        "s2_167_iwooos_kali_112_live_read_only_recheck",
        "s2_168_iwooos_kali_112_maintenance_runway",
        "s2_169_iwooos_kali_112_progress_recalibration",
    ]
    assert_equal(
        "progress_delta_ledger.delta_ids",
        [item["delta_id"] for item in progress_delta_ledger],
        expected_delta_ids,
    )
    assert_equal(
        "progress_delta_ledger.display_order",
        [item["display_order"] for item in progress_delta_ledger],
        list(range(1, len(expected_delta_ids) + 1)),
    )
    for item in progress_delta_ledger:
        if item["delta_id"] == "s2_169_iwooos_kali_112_progress_recalibration":
            assert_equal(
                f"progress_delta_ledger.{item['delta_id']}.progress_axis",
                item["progress_axis"],
                "headline_read_only_evidence",
            )
            assert_equal(f"progress_delta_ledger.{item['delta_id']}.headline_percent_delta", item["headline_percent_delta"], 3)
        else:
            assert_equal(f"progress_delta_ledger.{item['delta_id']}.progress_axis", item["progress_axis"], "framework_detail")
            assert_equal(f"progress_delta_ledger.{item['delta_id']}.headline_percent_delta", item["headline_percent_delta"], 0)
        assert_true(f"progress_delta_ledger.{item['delta_id']}.framework_delta_visible", item["framework_delta_visible"])
        assert_false(f"progress_delta_ledger.{item['delta_id']}.runtime_delta", item["runtime_delta"])
        assert_false(f"progress_delta_ledger.{item['delta_id']}.execution_authorized", item["execution_authorized"])
        assert_true(f"progress_delta_ledger.{item['delta_id']}.not_authorization", item["not_authorization"])

    assert_false("rollup.runtime_execution_authorized", rollup["runtime_execution_authorized"])
    assert_equal("rollup.active_runtime_gate_count", rollup_summary["active_runtime_gate_count"], 0)
    assert_false("rollup.runtime_actions_executed", rollup_summary["runtime_actions_executed"])
    assert_false("rollup.payloads_ingested", rollup_summary["payloads_ingested"])
    assert_equal("rollup.github_primary_ready_count", rollup_summary["github_primary_ready_count"], 0)
    assert_equal("rollup.owner_response_validation_received_count", rollup_summary["owner_response_validation_received_count"], 0)
    assert_equal("rollup.owner_response_validation_accepted_count", rollup_summary["owner_response_validation_accepted_count"], 0)
    assert_equal("rollup.workflow_secret_inventory_complete_count", rollup_summary["workflow_secret_inventory_complete_count"], 0)
    assert_false("rollup.secret_value_collection_allowed", rollup_summary["secret_value_collection_allowed"])
    assert_false("rollup.secret_value_detected", rollup_summary["secret_value_detected"])
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "mirror_owner_response_validation_rollup",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_home_iwooos_security_mirror_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_work_items_iwooos_security_mirror_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_approvals_iwooos_owner_response_gate_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_contracts_iwooos_security_contract_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_tenants_iwooos_tenant_scope_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_runs_iwooos_run_state_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_existing_security_pages_iwooos_reverse_bridge",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_security_control_pages_iwooos_reverse_bridge",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_audit_engineering_pages_iwooos_reverse_bridge",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_frontend_surface_connection_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_github_primary_readiness_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_work_items_github_primary_readiness_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_work_items_owner_response_validation_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_contracts_github_primary_readiness_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_contracts_owner_response_validation_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_approvals_github_primary_readiness_boundary",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_approvals_owner_response_validation_boundary",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_home_github_primary_readiness_summary",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_tenants_github_primary_readiness_scope",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_tenants_owner_response_validation_scope",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_runs_github_primary_readiness_boundary",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_runs_owner_response_validation_boundary",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_run_detail_owner_response_validation_boundary",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_awooop_approval_detail_owner_response_validation_boundary",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_awooop_route_coverage_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_gradual_convergence_roadmap",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_collection_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_intake_safety_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_review_outcome_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_human_decision_queue_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_decision_record_draft_guard_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_candidate_preflight_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_candidate_outcome_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_handoff_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_handoff_review_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_handoff_review_outcome_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_review_preparation_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_review_checklist_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_review_outcome_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_assignment_preparation_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_assignment_checklist_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_assignment_outcome_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_assignment_decision_preparation_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_owner_response_formal_record_owner_assignment_decision_checklist_board",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_security_compliance_frontstage_bridge",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_frontstage_security_entry_roles",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_security_compliance_frontstage_route_role_map",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_security_compliance_low_friction_rollout_ladder",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_low_friction_rollout_ladder",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_low_friction_next_action_boundary",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_progress_movement_signal_strip",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_first_progress_unlock_path",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_first_unlock_evidence_packet",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_first_unlock_evidence_packet_preflight_outcomes",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_first_unlock_evidence_packet_supplement_path",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_first_unlock_evidence_packet_supplement_pre_review",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_first_unlock_evidence_packet_supplement_pre_review_outcomes",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_first_unlock_evidence_packet_reviewer_assignment_preparation",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_outcomes",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_concrete_security_work_map",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_concrete_security_delivery_checklist",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_concrete_security_blocker_resolution",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_three_axis_product_progress",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_all_product_coverage_snapshot",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_rollout_wave_ledger",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_rollout_acceptance_gates",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_rollout_acceptance_outcomes",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_map",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight_outcomes",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight_recovery_ledger",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight_retry_gates",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight_retry_outcomes",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight_retry_review_candidate",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight_retry_review_candidate_preflight",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight_retry_review_candidate_preflight_outcomes",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_ledger",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "show_iwooos_product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_retry_gates",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "enforce_traditional_chinese_security_surface_wording",
    )
    assert_contains(
        "rollup.next_safe_actions.action_ids",
        [item["action_id"] for item in rollup["next_safe_actions"] if isinstance(item, dict)],
        "enforce_awooop_run_detail_traditional_chinese_wording",
    )

    zh_security_surface_text = json.dumps(
        {
            "iwooos": web_messages_zh["iwooos"],
            "awooop": web_messages_zh["awooop"],
        },
        ensure_ascii=False,
    )
    for forbidden in [
        "Information Security Mesh",
        "Mirror-only / Observe-first",
        "Exposure Posture",
        "Source-control Supply Chain",
        "Owner response missing",
        "GitHub Primary Readiness",
        "Active runtime gates",
        "Candidate repos",
        "In-scope repos",
        "Owner responses",
        "Owner response",
        "Workflow inventory",
        "Security runs",
        "Run visibility",
        "Run State",
        "Readiness evidence refs",
        "Owner response lanes",
        "Source-control 邊界",
        "Ready for mirror",
        "Primary ready",
        "AwoooP Operator Console",
        "Control Plane",
        "Shadow First",
        "Operator Runs",
        "Run Detail",
        "Project / Agent",
        "Incident ID",
        "Incident Evidence",
        "Run Timeline",
    ]:
        assert_text_not_contains("web_messages.zh-TW.security_surface_wording", zh_security_surface_text, forbidden)

    zh_awooop_tenants_text = json.dumps(web_messages_zh["awooop"]["tenants"], ensure_ascii=False)
    for forbidden in [
        "security mirror",
        "migration mode",
        "tenant policy",
        "platform tenants API",
        "primary switch",
        "refs action",
        "runtime tenant",
        "posture mirror",
        "Host coverage",
        "observe-only",
        "Tenant policy changes",
        "owner response",
        "runtime gate",
        "secret value",
        "workflow / secret",
        "received / accepted",
        "GitHub repo",
        "Project ID",
    ]:
        assert_text_not_contains("web_messages.zh-TW.awooop.tenants_wording", zh_awooop_tenants_text, forbidden)

    zh_awooop_runs_text = json.dumps(web_messages_zh["awooop"]["runs"], ensure_ascii=False)
    for forbidden in [
        "Run Monitor",
        "Run Boundary",
        "Run visibility",
        "Security runs",
        "Active runtime gates",
        "Owner accepted",
        "owner response",
        "runtime gate",
        "post-check evidence",
        "dry-run evidence",
        "action button",
        "repo",
        "secrets",
        "secret value",
        "workflow / secret",
        "received / accepted",
        "Candidate Repos",
        "In-scope Repos",
        "Workflow Inventory",
    ]:
        assert_text_not_contains("web_messages.zh-TW.awooop.runs_wording", zh_awooop_runs_text, forbidden)

    zh_awooop_run_detail_text = "\n".join(
        collect_string_values(
            {
                "incidentEvidence": web_messages_zh["awooop"]["incidentEvidence"],
                "runDetail": web_messages_zh["awooop"]["runDetail"],
                "approvalDecision": web_messages_zh["awooop"]["approvalDecision"],
            }
        )
    )
    for forbidden in [
        "Trace ID",
        "Trigger Ref",
        "Trigger",
        "Tool",
        "Scope",
        "First-class",
        "Policy enforced",
        "Approval executor",
        "Legacy bridge",
        "Dry-run",
        "Tools",
        "Incident Evidence",
        "Run state",
        "audit trail",
        "resume",
        "Run 會",
    ]:
        assert_text_not_contains("web_messages.zh-TW.awooop_run_detail_wording", zh_awooop_run_detail_text, forbidden)

    zh_awooop_work_items_text = json.dumps(
        web_messages_zh["awooop"]["workItems"],
        ensure_ascii=False,
    )
    for forbidden in [
        "Production 證據",
        "Link",
        "truth-chain",
        "truth-first",
        "MCP Gateway",
        "Timeline",
        "GitHub Primary Readiness",
        "active runtime gates",
        "Workflow / secret",
        "secret value",
        "pending dispatch",
        "channel events",
        "DB truth",
        "dispatch 與",
    ]:
        assert_text_not_contains(
            "web_messages.zh-TW.awooop_work_items_wording",
            zh_awooop_work_items_text,
            forbidden,
        )

    zh_awooop_contracts_value_text = "\n".join(collect_string_values(web_messages_zh["awooop"]["contracts"]))
    for forbidden in [
        "secret value",
        "workflow / secret",
        "runtime gate",
        "runtime enforcement",
        "候選 repo",
        "範圍內 repo",
        "repo 建立",
        "repo / refs",
        "refs 變更",
        "refs 動作",
        "sync / delete / force push",
        "received / accepted",
        "received / accepted / rejected",
        "waiting owner response",
        "未 complete",
    ]:
        assert_text_not_contains(
            "web_messages.zh-TW.awooop_contracts_wording",
            zh_awooop_contracts_value_text,
            forbidden,
        )

    zh_awooop_approvals_owner_validation_text = "\n".join(
        collect_string_values(web_messages_zh["awooop"]["approvals"]["ownerResponseValidationBoundary"])
    )
    for forbidden in [
        "secret value",
        "workflow / secret",
        "runtime gate",
        "runtime enforcement",
        "approval record",
        "repo action",
        "repo 建立",
        "repo / refs",
        "refs action",
        "refs 動作",
        "sync / delete / force push",
        "received / accepted",
        "received / accepted / rejected",
        "waiting owner response",
    ]:
        assert_text_not_contains(
            "web_messages.zh-TW.awooop_approvals_owner_validation_wording",
            zh_awooop_approvals_owner_validation_text,
            forbidden,
        )

    zh_awooop_home_security_text = json.dumps(
        {
            "securityMirror": web_messages_zh["awooop"]["home"]["securityMirror"],
            "githubPrimaryReadiness": web_messages_zh["awooop"]["home"]["githubPrimaryReadiness"],
            "ownerResponseValidation": web_messages_zh["awooop"]["home"]["ownerResponseValidation"],
        },
        ensure_ascii=False,
    )
    for forbidden in [
        "secret value",
        "secret 明文",
        "received / accepted",
        "0 received",
        "0 accepted",
        "Production landing",
        "production landing",
        "runtime ingestion",
        "deployment proof",
        "evidence refs",
        "Workflow / secret",
        "workflow / secret",
        "ready count",
        "Owner Response Validation",
        "Response Packets",
        "Owner Attestation",
        "Owner Decision",
        "Owner Response",
        "Reviewer Checklist",
        "Reviewer Outcomes",
        "Cross-Packet Checks",
        "owner evidence",
        "owner response",
        "owner attestation",
        "owner decision",
        "checklist items",
        "outcome lanes",
    ]:
        assert_text_not_contains(
            "web_messages.zh-TW.awooop_home_security_wording",
            zh_awooop_home_security_text,
            forbidden,
        )

    zh_awooop_owner_response_validation_text = json.dumps(
        web_messages_zh["awooop"]["home"]["ownerResponseValidation"],
        ensure_ascii=False,
    )
    for forbidden in [
        "Owner Response Validation",
        "Response Packets",
        "Owner Attestation",
        "Owner Decision",
        "Owner Response",
        "Reviewer Checklist",
        "Reviewer Outcomes",
        "Cross-Packet Checks",
        "owner evidence",
        "owner response",
        "owner attestation",
        "owner decision",
        "secret value",
        "checklist items",
        "outcome lanes",
    ]:
        assert_text_not_contains(
            "web_messages.zh-TW.awooop_owner_response_validation_wording",
            zh_awooop_owner_response_validation_text,
            forbidden,
        )

    assert_equal("rollout_policy.schema_version", rollout_policy["schema_version"], "security_rollout_policy_v1")
    assert_equal("rollout_policy.default_mode", rollout_policy["default_mode"], "observe")
    assert_equal("rollout_policy.enforcement_level", rollout_policy["enforcement_level"], "mirror_only")
    assert_equal("rollout_policy.non_blocking_escalation_lane_count", rollout_policy["non_blocking_escalation_lane_count"], 7)
    expected_low_friction_lane_ids = [
        "lane-low-medium-observation",
        "lane-owner-response-missing",
        "lane-mirror-data-incomplete",
        "lane-source-control-drift-draft",
        "lane-kali-observe-finding",
        "lane-workflow-secret-name-gap",
        "lane-progress-display-holding",
    ]
    non_blocking_lanes = rollout_policy["non_blocking_escalation_lanes"]
    assert_equal(
        "rollout_policy.non_blocking_escalation_lanes.ids",
        [item["lane_id"] for item in non_blocking_lanes],
        expected_low_friction_lane_ids,
    )
    assert_equal(
        "rollout_policy.non_blocking_escalation_lanes.display_order",
        [item["display_order"] for item in non_blocking_lanes],
        list(range(1, len(expected_low_friction_lane_ids) + 1)),
    )
    for item in non_blocking_lanes:
        if item["initial_mode"] not in {"observe", "warn"}:
            raise SystemExit(
                f"BLOCKED rollout_policy.non_blocking_escalation_lanes.{item['lane_id']}.initial_mode: "
                f"expected observe/warn, got {item['initial_mode']!r}"
            )
        assert_true(
            f"rollout_policy.non_blocking_escalation_lanes.{item['lane_id']}.owner_review_required_before_blocking",
            item["owner_review_required_before_blocking"],
        )
        assert_false(
            f"rollout_policy.non_blocking_escalation_lanes.{item['lane_id']}.runtime_blocking_allowed",
            item["runtime_blocking_allowed"],
        )
        assert_equal(
            f"rollout_policy.non_blocking_escalation_lanes.{item['lane_id']}.awooop_display_mode",
            item["awooop_display_mode"],
            "display_low_friction_non_blocking_lane_only",
        )
        assert_true(
            f"rollout_policy.non_blocking_escalation_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    rollout_outputs = rollout_policy["allowed_awooop_outputs"]
    for output in [
        "display_non_blocking_escalation_lanes",
        "create_followup_without_blocking",
        "show_owner_review_required_before_blocking",
        "keep_runtime_blocking_false",
    ]:
        assert_contains("rollout_policy.allowed_awooop_outputs", rollout_outputs, output)

    assert_equal("iwooos_projection.schema_version", iwooos_projection["schema_version"], "iwooos_posture_projection_v1")
    assert_equal("iwooos_projection.product_id", iwooos_projection["product_id"], "iwooos")
    assert_equal("iwooos_projection.display_name", iwooos_projection["display_name"], "IwoooS")
    assert_equal("iwooos_projection.mode", iwooos_projection["mode"], "mirror_only")
    assert_false("iwooos_projection.runtime_execution_authorized", iwooos_projection["runtime_execution_authorized"])
    assert_false("iwooos_projection.action_buttons_allowed", iwooos_projection["action_buttons_allowed"])
    assert_true("iwooos_projection.not_authorization", iwooos_projection["not_authorization"])
    assert_equal("iwooos_projection.summary.route_path", iwooos_projection["summary"]["route_path"], "/iwooos")
    assert_true("iwooos_projection.summary.nav_entry_added", iwooos_projection["summary"]["nav_entry_added"])
    assert_true(
        "iwooos_projection.summary.command_palette_entry_added",
        iwooos_projection["summary"]["command_palette_entry_added"],
    )
    assert_true(
        "iwooos_projection.summary.command_palette_security_action_unified_to_iwooos",
        iwooos_projection["summary"]["command_palette_security_action_unified_to_iwooos"],
    )
    assert_false(
        "iwooos_projection.summary.command_palette_security_compliance_direct_action_allowed",
        iwooos_projection["summary"]["command_palette_security_compliance_direct_action_allowed"],
    )
    assert_true(
        "iwooos_projection.summary.command_palette_security_keywords_route_to_iwooos",
        iwooos_projection["summary"]["command_palette_security_keywords_route_to_iwooos"],
    )
    assert_equal("iwooos_projection.summary.contract_count", iwooos_projection["summary"]["contract_count"], manifest_count)
    assert_equal(
        "iwooos_projection.summary.active_runtime_gate_count",
        iwooos_projection["summary"]["active_runtime_gate_count"],
        rollup_summary["active_runtime_gate_count"],
    )
    assert_equal(
        "iwooos_projection.summary.owner_response_validation_received_count",
        iwooos_projection["summary"]["owner_response_validation_received_count"],
        rollup_summary["owner_response_validation_received_count"],
    )
    assert_equal(
        "iwooos_projection.summary.owner_response_validation_accepted_count",
        iwooos_projection["summary"]["owner_response_validation_accepted_count"],
        rollup_summary["owner_response_validation_accepted_count"],
    )
    assert_equal(
        "iwooos_projection.summary.github_primary_ready_count",
        iwooos_projection["summary"]["github_primary_ready_count"],
        rollup_summary["github_primary_ready_count"],
    )
    expected_iwooos_source_control_primary_readiness_item_ids = [
        "candidate_repo_inventory",
        "primary_ready_counter_locked",
        "owner_response_validation_waiting",
        "refs_truth_waiting_owner",
        "workflow_secret_name_inventory_missing",
        "rollback_adr_waiting_owner_approval",
    ]
    assert_equal(
        "iwooos_projection.summary.source_control_primary_readiness_item_count",
        iwooos_projection["summary"]["source_control_primary_readiness_item_count"],
        len(expected_iwooos_source_control_primary_readiness_item_ids),
    )
    assert_false("iwooos_projection.summary.action_buttons_allowed", iwooos_projection["summary"]["action_buttons_allowed"])
    assert_true(
        "iwooos_projection.summary.progress_integrity_ribbon_first_layer",
        iwooos_projection["summary"]["progress_integrity_ribbon_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.progress_integrity_ribbon_signal_count",
        iwooos_projection["summary"]["progress_integrity_ribbon_signal_count"],
        3,
    )
    assert_equal(
        "iwooos_projection.summary.progress_integrity_ribbon_headline_percent",
        iwooos_projection["summary"]["progress_integrity_ribbon_headline_percent"],
        64,
    )
    assert_equal(
        "iwooos_projection.summary.progress_integrity_ribbon_headline_delta",
        iwooos_projection["summary"]["progress_integrity_ribbon_headline_delta"],
        3,
    )
    assert_equal(
        "iwooos_projection.summary.progress_integrity_ribbon_read_only_scope_count",
        iwooos_projection["summary"]["progress_integrity_ribbon_read_only_scope_count"],
        9,
    )
    assert_equal(
        "iwooos_projection.summary.progress_integrity_ribbon_pending_evidence_gate_count",
        iwooos_projection["summary"]["progress_integrity_ribbon_pending_evidence_gate_count"],
        3,
    )
    assert_equal(
        "iwooos_projection.summary.progress_integrity_ribbon_runtime_gate_count",
        iwooos_projection["summary"]["progress_integrity_ribbon_runtime_gate_count"],
        0,
    )
    assert_false(
        "iwooos_projection.summary.progress_integrity_ribbon_action_buttons_allowed",
        iwooos_projection["summary"]["progress_integrity_ribbon_action_buttons_allowed"],
    )
    assert_true(
        "iwooos_projection.summary.executive_snapshot_first_layer",
        iwooos_projection["summary"]["executive_snapshot_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.executive_snapshot_card_count",
        iwooos_projection["summary"]["executive_snapshot_card_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.executive_snapshot_axis_count",
        iwooos_projection["summary"]["executive_snapshot_axis_count"],
        3,
    )
    assert_true(
        "iwooos_projection.summary.executive_snapshot_above_focus_deck",
        iwooos_projection["summary"]["executive_snapshot_above_focus_deck"],
    )
    assert_true(
        "iwooos_projection.summary.executive_snapshot_explains_done_next_blocked",
        iwooos_projection["summary"]["executive_snapshot_explains_done_next_blocked"],
    )
    assert_equal(
        "iwooos_projection.summary.executive_snapshot_runtime_gate_count",
        iwooos_projection["summary"]["executive_snapshot_runtime_gate_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.executive_snapshot_owner_response_received_count",
        iwooos_projection["summary"]["executive_snapshot_owner_response_received_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.executive_snapshot_owner_response_accepted_count",
        iwooos_projection["summary"]["executive_snapshot_owner_response_accepted_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.all_product_coverage_snapshot_scope_count",
        iwooos_projection["summary"]["all_product_coverage_snapshot_scope_count"],
        8,
    )
    assert_equal(
        "iwooos_projection.summary.all_product_coverage_snapshot_read_only_count",
        iwooos_projection["summary"]["all_product_coverage_snapshot_read_only_count"],
        8,
    )
    assert_equal(
        "iwooos_projection.summary.all_product_coverage_snapshot_runtime_ready_count",
        iwooos_projection["summary"]["all_product_coverage_snapshot_runtime_ready_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.first_screen_depth_map_first_layer",
        iwooos_projection["summary"]["first_screen_depth_map_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.first_screen_depth_map_layer_count",
        iwooos_projection["summary"]["first_screen_depth_map_layer_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.first_screen_depth_map_visible_layer_count",
        iwooos_projection["summary"]["first_screen_depth_map_visible_layer_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.first_screen_depth_map_advanced_group_count",
        iwooos_projection["summary"]["first_screen_depth_map_advanced_group_count"],
        2,
    )
    assert_equal(
        "iwooos_projection.summary.first_screen_depth_map_ledger_group_count",
        iwooos_projection["summary"]["first_screen_depth_map_ledger_group_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.first_screen_depth_map_runtime_gate_count",
        iwooos_projection["summary"]["first_screen_depth_map_runtime_gate_count"],
        0,
    )
    assert_false(
        "iwooos_projection.summary.first_screen_depth_map_advanced_default_visible",
        iwooos_projection["summary"]["first_screen_depth_map_advanced_default_visible"],
    )
    assert_false(
        "iwooos_projection.summary.first_screen_depth_map_scope_evidence_default_visible",
        iwooos_projection["summary"]["first_screen_depth_map_scope_evidence_default_visible"],
    )
    assert_true(
        "iwooos_projection.summary.progress_evidence_rail_first_layer",
        iwooos_projection["summary"]["progress_evidence_rail_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.progress_evidence_rail_item_count",
        iwooos_projection["summary"]["progress_evidence_rail_item_count"],
        5,
    )
    assert_equal(
        "iwooos_projection.summary.progress_evidence_rail_owner_response_received_count",
        iwooos_projection["summary"]["progress_evidence_rail_owner_response_received_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.progress_evidence_rail_owner_response_accepted_count",
        iwooos_projection["summary"]["progress_evidence_rail_owner_response_accepted_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.progress_evidence_rail_redacted_evidence_count",
        iwooos_projection["summary"]["progress_evidence_rail_redacted_evidence_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.progress_evidence_rail_review_acceptance_count",
        iwooos_projection["summary"]["progress_evidence_rail_review_acceptance_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.progress_evidence_rail_github_primary_ready_count",
        iwooos_projection["summary"]["progress_evidence_rail_github_primary_ready_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.progress_evidence_rail_runtime_gate_count",
        iwooos_projection["summary"]["progress_evidence_rail_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.evidence_unlock_queue_first_layer",
        iwooos_projection["summary"]["evidence_unlock_queue_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.evidence_unlock_queue_item_count",
        iwooos_projection["summary"]["evidence_unlock_queue_item_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.evidence_unlock_queue_s4_9_request_draft_template_count",
        iwooos_projection["summary"]["evidence_unlock_queue_s4_9_request_draft_template_count"],
        5,
    )
    assert_equal(
        "iwooos_projection.summary.evidence_unlock_queue_s4_9_request_draft_ready_count",
        iwooos_projection["summary"]["evidence_unlock_queue_s4_9_request_draft_ready_count"],
        1,
    )
    assert_equal(
        "iwooos_projection.summary.evidence_unlock_queue_request_sent_count",
        iwooos_projection["summary"]["evidence_unlock_queue_request_sent_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.evidence_unlock_queue_received_count",
        iwooos_projection["summary"]["evidence_unlock_queue_received_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.evidence_unlock_queue_accepted_count",
        iwooos_projection["summary"]["evidence_unlock_queue_accepted_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.evidence_unlock_queue_github_primary_ready_count",
        iwooos_projection["summary"]["evidence_unlock_queue_github_primary_ready_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.evidence_unlock_queue_runtime_gate_count",
        iwooos_projection["summary"]["evidence_unlock_queue_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.s4_9_request_draft_package_first_layer",
        iwooos_projection["summary"]["s4_9_request_draft_package_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_request_draft_package_card_count",
        iwooos_projection["summary"]["s4_9_request_draft_package_card_count"],
        5,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_request_draft_package_template_ready_count",
        iwooos_projection["summary"]["s4_9_request_draft_package_template_ready_count"],
        5,
    )
    for count_key in [
        "s4_9_request_draft_package_request_sent_count",
        "s4_9_request_draft_package_owner_response_received_count",
        "s4_9_request_draft_package_owner_response_accepted_count",
        "s4_9_request_draft_package_runtime_gate_count",
    ]:
        assert_equal(
            f"iwooos_projection.summary.{count_key}",
            iwooos_projection["summary"][count_key],
            0,
        )
    assert_true(
        "iwooos_projection.summary.s4_9_request_draft_detail_first_layer",
        iwooos_projection["summary"]["s4_9_request_draft_detail_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_request_draft_detail_row_count",
        iwooos_projection["summary"]["s4_9_request_draft_detail_row_count"],
        5,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_request_draft_detail_required_field_total",
        iwooos_projection["summary"]["s4_9_request_draft_detail_required_field_total"],
        30,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_request_draft_detail_forbidden_action_count",
        iwooos_projection["summary"]["s4_9_request_draft_detail_forbidden_action_count"],
        10,
    )
    for count_key in [
        "s4_9_request_draft_detail_request_sent_count",
        "s4_9_request_draft_detail_owner_response_received_count",
        "s4_9_request_draft_detail_owner_response_accepted_count",
        "s4_9_request_draft_detail_runtime_gate_count",
    ]:
        assert_equal(
            f"iwooos_projection.summary.{count_key}",
            iwooos_projection["summary"][count_key],
            0,
        )
    assert_true(
        "iwooos_projection.summary.s4_9_owner_response_intake_first_layer",
        iwooos_projection["summary"]["s4_9_owner_response_intake_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_lane_count",
        iwooos_projection["summary"]["s4_9_owner_response_intake_lane_count"],
        5,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_next_gate_count",
        iwooos_projection["summary"]["s4_9_owner_response_intake_next_gate_count"],
        3,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_next_gate_passed_count",
        iwooos_projection["summary"]["s4_9_owner_response_intake_next_gate_passed_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_blocker_focus_count",
        iwooos_projection["summary"]["s4_9_owner_response_intake_blocker_focus_count"],
        1,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_current_blocker_gate",
        iwooos_projection["summary"]["s4_9_owner_response_intake_current_blocker_gate"],
        "G1",
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_next_gate_completion_count",
        iwooos_projection["summary"]["s4_9_owner_response_intake_next_gate_completion_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_next_gate_total",
        iwooos_projection["summary"]["s4_9_owner_response_intake_next_gate_total"],
        3,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_delivery_card_count",
        iwooos_projection["summary"]["s4_9_owner_response_intake_delivery_card_count"],
        3,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_delivery_card_completed_count",
        iwooos_projection["summary"]["s4_9_owner_response_intake_delivery_card_completed_count"],
        0,
    )
    assert_false(
        "iwooos_projection.summary.s4_9_owner_response_intake_delivery_raw_payload_allowed",
        iwooos_projection["summary"]["s4_9_owner_response_intake_delivery_raw_payload_allowed"],
    )
    for count_key in [
        "s4_9_owner_response_intake_received_count",
        "s4_9_owner_response_intake_preflight_passed_count",
        "s4_9_owner_response_intake_accepted_count",
        "s4_9_owner_response_intake_rejected_count",
        "s4_9_owner_response_intake_runtime_gate_count",
    ]:
        assert_equal(
            f"iwooos_projection.summary.{count_key}",
            iwooos_projection["summary"][count_key],
            0,
        )
    assert_true(
        "iwooos_projection.summary.s4_9_owner_response_intake_source_bound",
        iwooos_projection["summary"]["s4_9_owner_response_intake_source_bound"],
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_intake_handoff_queue_count",
        iwooos_projection["summary"]["s4_9_owner_response_intake_handoff_queue_count"],
        5,
    )
    for count_key in [
        "s4_9_owner_response_intake_handoff_queue_ready_count",
        "s4_9_owner_response_intake_handoff_queue_received_count",
        "s4_9_owner_response_intake_handoff_queue_accepted_count",
        "s4_9_owner_response_intake_handoff_queue_runtime_gate_count",
    ]:
        assert_equal(
            f"iwooos_projection.summary.{count_key}",
            iwooos_projection["summary"][count_key],
            0,
        )
    assert_false(
        "iwooos_projection.summary.s4_9_owner_response_intake_handoff_queue_raw_payload_allowed",
        iwooos_projection["summary"]["s4_9_owner_response_intake_handoff_queue_raw_payload_allowed"],
    )
    assert_false(
        "iwooos_projection.summary.s4_9_owner_response_intake_handoff_queue_action_buttons_allowed",
        iwooos_projection["summary"]["s4_9_owner_response_intake_handoff_queue_action_buttons_allowed"],
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_metadata_intake_field_count",
        iwooos_projection["summary"]["s4_9_owner_response_metadata_intake_field_count"],
        6,
    )
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_metadata_intake_required_count",
        iwooos_projection["summary"]["s4_9_owner_response_metadata_intake_required_count"],
        6,
    )
    for count_key in [
        "s4_9_owner_response_metadata_intake_filled_count",
        "s4_9_owner_response_metadata_intake_received_count",
        "s4_9_owner_response_metadata_intake_accepted_count",
        "s4_9_owner_response_metadata_intake_runtime_gate_count",
    ]:
        assert_equal(
            f"iwooos_projection.summary.{count_key}",
            iwooos_projection["summary"][count_key],
            0,
        )
    assert_true(
        "iwooos_projection.summary.s4_9_owner_response_metadata_intake_redacted_ref_required",
        iwooos_projection["summary"]["s4_9_owner_response_metadata_intake_redacted_ref_required"],
    )
    for false_key in [
        "s4_9_owner_response_metadata_intake_raw_payload_allowed",
        "s4_9_owner_response_metadata_intake_secret_plaintext_allowed",
        "s4_9_owner_response_metadata_intake_action_buttons_allowed",
    ]:
        assert_false(
            f"iwooos_projection.summary.{false_key}",
            iwooos_projection["summary"][false_key],
        )
    assert_equal(
        "iwooos_projection.summary.all_product_coverage_snapshot_default_summary_mode",
        iwooos_projection["summary"]["all_product_coverage_snapshot_default_summary_mode"],
        "compact_first",
    )
    assert_true(
        "iwooos_projection.summary.first_progress_unlock_path_first_layer",
        iwooos_projection["summary"]["first_progress_unlock_path_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.first_progress_unlock_path_default_visible",
        iwooos_projection["summary"]["first_progress_unlock_path_default_visible"],
    )
    assert_true(
        "iwooos_projection.summary.first_progress_unlock_path_above_visual_dashboard",
        iwooos_projection["summary"]["first_progress_unlock_path_above_visual_dashboard"],
    )
    assert_equal(
        "iwooos_projection.summary.first_progress_unlock_path_step_count",
        iwooos_projection["summary"]["first_progress_unlock_path_step_count"],
        5,
    )
    assert_true(
        "iwooos_projection.summary.first_progress_unlock_path_boundary_details_collapsed",
        iwooos_projection["summary"]["first_progress_unlock_path_boundary_details_collapsed"],
    )
    assert_equal(
        "iwooos_projection.summary.first_progress_unlock_path_owner_response_received_count",
        iwooos_projection["summary"]["first_progress_unlock_path_owner_response_received_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.first_progress_unlock_path_owner_response_accepted_count",
        iwooos_projection["summary"]["first_progress_unlock_path_owner_response_accepted_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.first_progress_unlock_path_runtime_gate_count",
        iwooos_projection["summary"]["first_progress_unlock_path_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.command_map_first_layer",
        iwooos_projection["summary"]["command_map_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.command_map_default_visible",
        iwooos_projection["summary"]["command_map_default_visible"],
    )
    assert_equal(
        "iwooos_projection.summary.command_map_mode_count",
        iwooos_projection["summary"]["command_map_mode_count"],
        6,
    )
    assert_equal(
        "iwooos_projection.summary.command_map_default_mode",
        iwooos_projection["summary"]["command_map_default_mode"],
        "unlock",
    )
    assert_true(
        "iwooos_projection.summary.command_map_above_first_progress_unlock_path",
        iwooos_projection["summary"]["command_map_above_first_progress_unlock_path"],
    )
    assert_true(
        "iwooos_projection.summary.command_map_navigation_controls_allowed",
        iwooos_projection["summary"]["command_map_navigation_controls_allowed"],
    )
    assert_false(
        "iwooos_projection.summary.command_map_execution_action_buttons_allowed",
        iwooos_projection["summary"]["command_map_execution_action_buttons_allowed"],
    )
    assert_equal(
        "iwooos_projection.summary.command_map_runtime_gate_count",
        iwooos_projection["summary"]["command_map_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.focus_deck_first_layer",
        iwooos_projection["summary"]["focus_deck_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.focus_deck_item_count",
        iwooos_projection["summary"]["focus_deck_item_count"],
        5,
    )
    assert_true(
        "iwooos_projection.summary.focus_deck_anchor_navigation_allowed",
        iwooos_projection["summary"]["focus_deck_anchor_navigation_allowed"],
    )
    assert_false(
        "iwooos_projection.summary.focus_deck_execution_action_buttons_allowed",
        iwooos_projection["summary"]["focus_deck_execution_action_buttons_allowed"],
    )
    assert_equal(
        "iwooos_projection.summary.focus_deck_runtime_gate_count",
        iwooos_projection["summary"]["focus_deck_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.focus_deck_above_command_map",
        iwooos_projection["summary"]["focus_deck_above_command_map"],
    )
    assert_true(
        "iwooos_projection.summary.immediate_visual_mesh_first_layer",
        iwooos_projection["summary"]["immediate_visual_mesh_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.immediate_visual_mesh_node_count",
        iwooos_projection["summary"]["immediate_visual_mesh_node_count"],
        7,
    )
    assert_equal(
        "iwooos_projection.summary.immediate_visual_mesh_link_count",
        iwooos_projection["summary"]["immediate_visual_mesh_link_count"],
        6,
    )
    assert_true(
        "iwooos_projection.summary.immediate_visual_mesh_above_command_map",
        iwooos_projection["summary"]["immediate_visual_mesh_above_command_map"],
    )
    assert_equal(
        "iwooos_projection.summary.immediate_visual_mesh_runtime_gate_count",
        iwooos_projection["summary"]["immediate_visual_mesh_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.topology_atlas_first_layer",
        iwooos_projection["summary"]["topology_atlas_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.topology_atlas_lens_count",
        iwooos_projection["summary"]["topology_atlas_lens_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.topology_atlas_node_count",
        iwooos_projection["summary"]["topology_atlas_node_count"],
        7,
    )
    assert_equal(
        "iwooos_projection.summary.topology_drilldown_node_count",
        iwooos_projection["summary"]["topology_drilldown_node_count"],
        7,
    )
    assert_equal(
        "iwooos_projection.summary.topology_drilldown_default_node",
        iwooos_projection["summary"]["topology_drilldown_default_node"],
        "productSurface",
    )
    assert_true(
        "iwooos_projection.summary.topology_drilldown_interactive_node_allowed",
        iwooos_projection["summary"]["topology_drilldown_interactive_node_allowed"],
    )
    assert_equal(
        "iwooos_projection.summary.topology_path_explorer_path_count",
        iwooos_projection["summary"]["topology_path_explorer_path_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.topology_path_explorer_default_path",
        iwooos_projection["summary"]["topology_path_explorer_default_path"],
        "externalToGate",
    )
    assert_true(
        "iwooos_projection.summary.topology_path_explorer_interactive_path_allowed",
        iwooos_projection["summary"]["topology_path_explorer_interactive_path_allowed"],
    )
    assert_equal(
        "iwooos_projection.summary.topology_intelligence_deck_count",
        iwooos_projection["summary"]["topology_intelligence_deck_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.topology_intelligence_default_item",
        iwooos_projection["summary"]["topology_intelligence_default_item"],
        "assetContext",
    )
    assert_true(
        "iwooos_projection.summary.topology_intelligence_interactive_item_allowed",
        iwooos_projection["summary"]["topology_intelligence_interactive_item_allowed"],
    )
    assert_equal(
        "iwooos_projection.summary.topology_atlas_layer_count",
        iwooos_projection["summary"]["topology_atlas_layer_count"],
        5,
    )
    assert_equal(
        "iwooos_projection.summary.topology_atlas_technical_chart_count",
        iwooos_projection["summary"]["topology_atlas_technical_chart_count"],
        3,
    )
    assert_true(
        "iwooos_projection.summary.topology_atlas_interactive_lens_allowed",
        iwooos_projection["summary"]["topology_atlas_interactive_lens_allowed"],
    )
    assert_true(
        "iwooos_projection.summary.topology_atlas_above_gate_radar",
        iwooos_projection["summary"]["topology_atlas_above_gate_radar"],
    )
    assert_equal(
        "iwooos_projection.summary.topology_atlas_runtime_gate_count",
        iwooos_projection["summary"]["topology_atlas_runtime_gate_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.topology_drilldown_runtime_gate_count",
        iwooos_projection["summary"]["topology_drilldown_runtime_gate_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.topology_path_explorer_runtime_gate_count",
        iwooos_projection["summary"]["topology_path_explorer_runtime_gate_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.topology_intelligence_runtime_gate_count",
        iwooos_projection["summary"]["topology_intelligence_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.decision_runway_first_layer",
        iwooos_projection["summary"]["decision_runway_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.decision_runway_default_visible",
        iwooos_projection["summary"]["decision_runway_default_visible"],
    )
    assert_equal(
        "iwooos_projection.summary.decision_runway_step_count",
        iwooos_projection["summary"]["decision_runway_step_count"],
        5,
    )
    assert_equal(
        "iwooos_projection.summary.decision_runway_default_step",
        iwooos_projection["summary"]["decision_runway_default_step"],
        "ownerEvidence",
    )
    assert_equal(
        "iwooos_projection.summary.decision_runway_dependency_count",
        iwooos_projection["summary"]["decision_runway_dependency_count"],
        7,
    )
    assert_equal(
        "iwooos_projection.summary.decision_runway_boundary_signal_count",
        iwooos_projection["summary"]["decision_runway_boundary_signal_count"],
        4,
    )
    assert_true(
        "iwooos_projection.summary.decision_runway_above_gate_radar",
        iwooos_projection["summary"]["decision_runway_above_gate_radar"],
    )
    assert_true(
        "iwooos_projection.summary.decision_runway_interactive_step_allowed",
        iwooos_projection["summary"]["decision_runway_interactive_step_allowed"],
    )
    assert_equal(
        "iwooos_projection.summary.decision_runway_runtime_gate_count",
        iwooos_projection["summary"]["decision_runway_runtime_gate_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.decision_runway_owner_response_received_count",
        iwooos_projection["summary"]["decision_runway_owner_response_received_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.decision_runway_owner_response_accepted_count",
        iwooos_projection["summary"]["decision_runway_owner_response_accepted_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.gate_radar_first_layer",
        iwooos_projection["summary"]["gate_radar_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.gate_radar_default_visible",
        iwooos_projection["summary"]["gate_radar_default_visible"],
    )
    assert_equal(
        "iwooos_projection.summary.gate_radar_lane_count",
        iwooos_projection["summary"]["gate_radar_lane_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.gate_radar_default_lane",
        iwooos_projection["summary"]["gate_radar_default_lane"],
        "visible",
    )
    assert_true(
        "iwooos_projection.summary.gate_radar_above_command_map",
        iwooos_projection["summary"]["gate_radar_above_command_map"],
    )
    assert_true(
        "iwooos_projection.summary.gate_radar_interactive_lens_allowed",
        iwooos_projection["summary"]["gate_radar_interactive_lens_allowed"],
    )
    assert_equal(
        "iwooos_projection.summary.gate_radar_runtime_gate_count",
        iwooos_projection["summary"]["gate_radar_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.all_product_coverage_snapshot_detail_ledger_collapsed",
        iwooos_projection["summary"]["all_product_coverage_snapshot_detail_ledger_collapsed"],
    )
    assert_true(
        "iwooos_projection.summary.global_security_mesh_matrix_first_layer",
        iwooos_projection["summary"]["global_security_mesh_matrix_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.global_security_mesh_matrix_default_visible",
        iwooos_projection["summary"]["global_security_mesh_matrix_default_visible"],
    )
    assert_equal(
        "iwooos_projection.summary.global_security_mesh_matrix_asset_count",
        iwooos_projection["summary"]["global_security_mesh_matrix_asset_count"],
        9,
    )
    assert_equal(
        "iwooos_projection.summary.global_security_mesh_matrix_read_only_count",
        iwooos_projection["summary"]["global_security_mesh_matrix_read_only_count"],
        9,
    )
    assert_equal(
        "iwooos_projection.summary.global_security_mesh_matrix_runtime_gate_count",
        iwooos_projection["summary"]["global_security_mesh_matrix_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.host_tool_evidence_chain_first_layer",
        iwooos_projection["summary"]["host_tool_evidence_chain_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.host_tool_evidence_chain_default_visible",
        iwooos_projection["summary"]["host_tool_evidence_chain_default_visible"],
    )
    assert_equal(
        "iwooos_projection.summary.host_tool_evidence_chain_host_count",
        iwooos_projection["summary"]["host_tool_evidence_chain_host_count"],
        3,
    )
    assert_equal(
        "iwooos_projection.summary.host_tool_evidence_chain_tool_lane_count",
        iwooos_projection["summary"]["host_tool_evidence_chain_tool_lane_count"],
        6,
    )
    assert_equal(
        "iwooos_projection.summary.host_tool_evidence_chain_step_count",
        iwooos_projection["summary"]["host_tool_evidence_chain_step_count"],
        5,
    )
    assert_true(
        "iwooos_projection.summary.vibework_security_onboarding_first_layer",
        iwooos_projection["summary"]["vibework_security_onboarding_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.vibework_security_onboarding_default_visible",
        iwooos_projection["summary"]["vibework_security_onboarding_default_visible"],
    )
    assert_equal(
        "iwooos_projection.summary.vibework_security_onboarding_item_count",
        iwooos_projection["summary"]["vibework_security_onboarding_item_count"],
        6,
    )
    assert_equal(
        "iwooos_projection.summary.vibework_security_onboarding_runtime_gate_count",
        iwooos_projection["summary"]["vibework_security_onboarding_runtime_gate_count"],
        0,
    )
    assert_true(
        "iwooos_projection.summary.agent_bounty_security_onboarding_first_layer",
        iwooos_projection["summary"]["agent_bounty_security_onboarding_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.agent_bounty_security_onboarding_default_visible",
        iwooos_projection["summary"]["agent_bounty_security_onboarding_default_visible"],
    )
    assert_equal(
        "iwooos_projection.summary.agent_bounty_security_onboarding_item_count",
        iwooos_projection["summary"]["agent_bounty_security_onboarding_item_count"],
        7,
    )
    assert_equal(
        "iwooos_projection.summary.agent_bounty_security_onboarding_runtime_gate_count",
        iwooos_projection["summary"]["agent_bounty_security_onboarding_runtime_gate_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.summary.rollout_risk_read_only_card_count",
        iwooos_projection["summary"]["rollout_risk_read_only_card_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.rollout_risk_awoooi_rollout_risk",
        iwooos_projection["summary"]["rollout_risk_awoooi_rollout_risk"],
        1,
    )
    assert_equal(
        "iwooos_projection.summary.rollout_risk_runtime_gate_count",
        iwooos_projection["summary"]["rollout_risk_runtime_gate_count"],
        0,
    )
    assert_equal(
        "high_value_config_coverage.schema",
        high_value_config_coverage["schema_version"],
        "high_value_config_control_coverage_v1",
    )
    assert_equal(
        "high_value_config_coverage.summary.category_count",
        high_value_config_coverage["summary"]["category_count"],
        14,
    )
    assert_equal(
        "high_value_config_coverage.summary.c0_category_count",
        high_value_config_coverage["summary"]["c0_category_count"],
        8,
    )
    assert_equal(
        "high_value_config_coverage.summary.c1_category_count",
        high_value_config_coverage["summary"]["c1_category_count"],
        4,
    )
    assert_equal(
        "high_value_config_coverage.summary.average_coverage_percent",
        high_value_config_coverage["summary"]["average_coverage_percent"],
        66,
    )
    assert_equal(
        "high_value_config_coverage.summary.needs_live_evidence_count",
        high_value_config_coverage["summary"]["needs_live_evidence_count"],
        7,
    )
    for key in [
        "owner_response_received_count",
        "owner_response_accepted_count",
        "runtime_gate_count",
        "action_button_count",
    ]:
        assert_equal(
            f"high_value_config_coverage.summary.{key}",
            high_value_config_coverage["summary"][key],
            0,
        )
    for key, value in high_value_config_coverage["execution_boundaries"].items():
        assert_false(f"high_value_config_coverage.execution_boundaries.{key}", value)
    assert_equal(
        "high_value_config_coverage.coverage_categories.count",
        len(high_value_config_coverage["coverage_categories"]),
        14,
    )
    assert_contains(
        "high_value_config_coverage.coverage_categories.agent_bounty",
        [item["category_id"] for item in high_value_config_coverage["coverage_categories"]],
        "agent_bounty_protocol_runtime",
    )
    nginx_gateway_category = next(
        item
        for item in high_value_config_coverage["coverage_categories"]
        if item["category_id"] == "nginx_public_gateway"
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.nginx.coverage_percent",
        nginx_gateway_category["coverage_percent"],
        84,
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.nginx.coverage_status",
        nginx_gateway_category["coverage_status"],
        "repo_only_preflight_contract_ready_needs_owner_live_diff",
    )
    for evidence_ref in [
        "docs/security/PUBLIC-GATEWAY-PREFLIGHT-INVENTORY.md",
        "docs/security/public-gateway-preflight-inventory.snapshot.json",
        "docs/schemas/public_gateway_preflight_inventory_v1.schema.json",
    ]:
        assert_contains(
            "high_value_config_coverage.coverage_categories.nginx.evidence_refs",
            nginx_gateway_category["evidence_refs"],
            evidence_ref,
        )
    assert_contains(
        "high_value_config_coverage.lowest_coverage_categories.docker",
        [item["category_id"] for item in high_value_config_coverage["lowest_coverage_categories"]],
        "docker_compose_systemd_host_config",
    )
    docker_systemd_category = next(
        item
        for item in high_value_config_coverage["coverage_categories"]
        if item["category_id"] == "docker_compose_systemd_host_config"
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.docker.coverage_percent",
        docker_systemd_category["coverage_percent"],
        50,
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.docker.coverage_status",
        docker_systemd_category["coverage_status"],
        "repo_only_inventory_ready_needs_live_owner_evidence",
    )
    for evidence_ref in [
        "docs/security/HOST-SERVICE-CONFIG-INVENTORY.md",
        "docs/security/host-service-config-inventory.snapshot.json",
    ]:
        assert_contains(
            "high_value_config_coverage.coverage_categories.docker.evidence_refs",
            docker_systemd_category["evidence_refs"],
            evidence_ref,
        )
    ssh_network_category = next(
        item
        for item in high_value_config_coverage["coverage_categories"]
        if item["category_id"] == "ssh_firewall_network_access"
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.ssh_network.coverage_percent",
        ssh_network_category["coverage_percent"],
        54,
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.ssh_network.coverage_status",
        ssh_network_category["coverage_status"],
        "repo_only_inventory_ready_needs_live_owner_evidence",
    )
    for evidence_ref in [
        "docs/security/SSH-NETWORK-ACCESS-INVENTORY.md",
        "docs/security/ssh-network-access-inventory.snapshot.json",
    ]:
        assert_contains(
            "high_value_config_coverage.coverage_categories.ssh_network.evidence_refs",
            ssh_network_category["evidence_refs"],
            evidence_ref,
        )
    backup_restore_category = next(
        item
        for item in high_value_config_coverage["coverage_categories"]
        if item["category_id"] == "backup_restore_credential"
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.backup_restore.coverage_percent",
        backup_restore_category["coverage_percent"],
        58,
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.backup_restore.coverage_status",
        backup_restore_category["coverage_status"],
        "repo_only_inventory_ready_needs_restore_drill_owner",
    )
    for evidence_ref in [
        "docs/security/BACKUP-RESTORE-ESCROW-INVENTORY.md",
        "docs/security/backup-restore-escrow-inventory.snapshot.json",
        "docs/schemas/backup_restore_escrow_inventory_v1.schema.json",
    ]:
        assert_contains(
            "high_value_config_coverage.coverage_categories.backup_restore.evidence_refs",
            backup_restore_category["evidence_refs"],
            evidence_ref,
        )
    monitoring_category = next(
        item
        for item in high_value_config_coverage["coverage_categories"]
        if item["category_id"] == "monitoring_alerting_observability"
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.monitoring.coverage_percent",
        monitoring_category["coverage_percent"],
        62,
    )
    assert_equal(
        "high_value_config_coverage.coverage_categories.monitoring.coverage_status",
        monitoring_category["coverage_status"],
        "repo_only_inventory_ready_needs_live_route_evidence",
    )
    for evidence_ref in [
        "docs/security/MONITORING-ALERTING-OBSERVABILITY-INVENTORY.md",
        "docs/security/monitoring-alerting-observability-inventory.snapshot.json",
        "docs/schemas/monitoring_alerting_observability_inventory_v1.schema.json",
    ]:
        assert_contains(
            "high_value_config_coverage.coverage_categories.monitoring.evidence_refs",
            monitoring_category["evidence_refs"],
            evidence_ref,
        )
    assert_equal(
        "host_service_config_inventory.schema",
        host_service_config_inventory["schema_version"],
        "host_service_config_inventory_v1",
    )
    assert_equal(
        "host_service_config_inventory.status",
        host_service_config_inventory["status"],
        "repo_only_inventory_ready",
    )
    assert_equal(
        "host_service_config_inventory.source_scope",
        host_service_config_inventory["source_scope"],
        "committed_repo_files_only",
    )
    expected_host_service_config_summary = {
        "surface_count": 9,
        "source_exists_count": 9,
        "expected_host_scope_count": 5,
        "docker_compose_source_count": 5,
        "host_repair_whitelist_count": 2,
        "systemd_restart_surface_count": 1,
        "write_capable_surface_count": 3,
        "surfaces_requiring_owner_response_count": 9,
        "surfaces_requiring_live_evidence_count": 8,
        "owner_response_received_count": 0,
        "owner_response_accepted_count": 0,
        "live_evidence_received_count": 0,
        "restart_window_accepted_count": 0,
        "rollback_owner_accepted_count": 0,
        "runtime_gate_count": 0,
        "action_button_count": 0,
        "coverage_percent_before_inventory": 42,
        "coverage_percent_after_inventory": 50,
    }
    for key, expected in expected_host_service_config_summary.items():
        assert_equal(
            f"host_service_config_inventory.summary.{key}",
            host_service_config_inventory["summary"][key],
            expected,
        )
    for key, value in host_service_config_inventory["execution_boundaries"].items():
        assert_false(f"host_service_config_inventory.execution_boundaries.{key}", value)
    assert_equal(
        "host_service_config_inventory.config_surfaces.count",
        len(host_service_config_inventory["config_surfaces"]),
        9,
    )
    host_service_surface_ids = [item["surface_id"] for item in host_service_config_inventory["config_surfaces"]]
    for surface_id in [
        "repair_bot_110_whitelist",
        "repair_bot_188_whitelist",
        "monitoring_110_compose",
        "config_backup_host_capture",
    ]:
        assert_contains(
            "host_service_config_inventory.config_surfaces",
            host_service_surface_ids,
            surface_id,
        )
    for surface in host_service_config_inventory["config_surfaces"]:
        assert_true(
            f"host_service_config_inventory.config_surfaces.{surface['surface_id']}.source_exists",
            surface["source_exists"],
        )
        assert_equal(
            f"host_service_config_inventory.config_surfaces.{surface['surface_id']}.sha256_length",
            len(surface["sha256"]),
            64,
        )
        assert_true(
            f"host_service_config_inventory.config_surfaces.{surface['surface_id']}.requires_owner_response",
            surface["requires_owner_response"],
        )
        for key in [
            "owner_response_received",
            "owner_response_accepted",
            "live_evidence_received",
            "restart_window_accepted",
            "rollback_owner_accepted",
            "runtime_gate_open",
            "action_buttons_allowed",
        ]:
            assert_false(
                f"host_service_config_inventory.config_surfaces.{surface['surface_id']}.{key}",
                surface[key],
            )
    assert_equal(
        "host_service_config_inventory.write_capable_surfaces.count",
        len(host_service_config_inventory["write_capable_surfaces"]),
        3,
    )
    for surface_id in [
        "ansible_docker_compose_service_role",
        "repair_bot_110_whitelist",
        "repair_bot_188_whitelist",
    ]:
        assert_contains(
            "host_service_config_inventory.write_capable_surfaces",
            [item["surface_id"] for item in host_service_config_inventory["write_capable_surfaces"]],
            surface_id,
        )
    assert_equal(
        "ssh_network_access_inventory.schema",
        ssh_network_access_inventory["schema_version"],
        "ssh_network_access_inventory_v1",
    )
    assert_equal(
        "ssh_network_access_inventory.status",
        ssh_network_access_inventory["status"],
        "repo_only_inventory_ready",
    )
    assert_equal(
        "ssh_network_access_inventory.source_scope",
        ssh_network_access_inventory["source_scope"],
        "committed_repo_files_only",
    )
    expected_ssh_network_access_summary = {
        "surface_count": 16,
        "source_exists_count": 16,
        "expected_scope_count": 16,
        "ssh_source_surface_count": 11,
        "network_policy_surface_count": 2,
        "nodeport_surface_count": 2,
        "sudoers_surface_count": 1,
        "wireguard_surface_count": 1,
        "write_capable_surface_count": 6,
        "surfaces_requiring_owner_response_count": 16,
        "surfaces_requiring_live_evidence_count": 16,
        "owner_response_received_count": 0,
        "owner_response_accepted_count": 0,
        "live_evidence_received_count": 0,
        "maintenance_window_accepted_count": 0,
        "rollback_owner_accepted_count": 0,
        "runtime_gate_count": 0,
        "action_button_count": 0,
        "coverage_percent_before_inventory": 48,
        "coverage_percent_after_inventory": 54,
    }
    for key, expected in expected_ssh_network_access_summary.items():
        assert_equal(
            f"ssh_network_access_inventory.summary.{key}",
            ssh_network_access_inventory["summary"][key],
            expected,
        )
    for key, value in ssh_network_access_inventory["execution_boundaries"].items():
        assert_false(f"ssh_network_access_inventory.execution_boundaries.{key}", value)
    assert_equal(
        "ssh_network_access_inventory.access_surfaces.count",
        len(ssh_network_access_inventory["access_surfaces"]),
        16,
    )
    ssh_network_surface_ids = [item["surface_id"] for item in ssh_network_access_inventory["access_surfaces"]]
    for surface_id in [
        "ansible_inventory_ssh_targets",
        "gitea_cd_known_hosts_secret",
        "host_ops_sudoers_wrapper",
        "k8s_prod_network_policy",
        "argocd_metrics_nodeport",
        "velero_metrics_nodeport",
        "wireguard_mesh_runbook",
        "alert_rules_ssh_actions",
    ]:
        assert_contains(
            "ssh_network_access_inventory.access_surfaces",
            ssh_network_surface_ids,
            surface_id,
        )
    for surface in ssh_network_access_inventory["access_surfaces"]:
        assert_true(
            f"ssh_network_access_inventory.access_surfaces.{surface['surface_id']}.source_exists",
            surface["source_exists"],
        )
        assert_equal(
            f"ssh_network_access_inventory.access_surfaces.{surface['surface_id']}.sha256_length",
            len(surface["sha256"]),
            64,
        )
        assert_true(
            f"ssh_network_access_inventory.access_surfaces.{surface['surface_id']}.requires_live_evidence",
            surface["requires_live_evidence"],
        )
        assert_true(
            f"ssh_network_access_inventory.access_surfaces.{surface['surface_id']}.requires_owner_response",
            surface["requires_owner_response"],
        )
        for key in [
            "owner_response_received",
            "owner_response_accepted",
            "live_evidence_received",
            "maintenance_window_accepted",
            "rollback_owner_accepted",
            "runtime_gate_open",
            "action_buttons_allowed",
        ]:
            assert_false(
                f"ssh_network_access_inventory.access_surfaces.{surface['surface_id']}.{key}",
                surface[key],
            )
    assert_equal(
        "ssh_network_access_inventory.write_capable_surfaces.count",
        len(ssh_network_access_inventory["write_capable_surfaces"]),
        6,
    )
    for surface_id in [
        "gitea_cd_deploy_ssh",
        "gitea_cd_dev_ssh",
        "deploy_alerts_ssh_path",
        "monitoring_exporter_deploy_ssh",
        "host_ops_sudoers_wrapper",
        "alert_rules_ssh_actions",
    ]:
        assert_contains(
            "ssh_network_access_inventory.write_capable_surfaces",
            [item["surface_id"] for item in ssh_network_access_inventory["write_capable_surfaces"]],
            surface_id,
        )
    assert_equal(
        "backup_restore_escrow_inventory.schema",
        backup_restore_escrow_inventory["schema_version"],
        "backup_restore_escrow_inventory_v1",
    )
    assert_equal(
        "backup_restore_escrow_inventory.status",
        backup_restore_escrow_inventory["status"],
        "repo_only_inventory_ready",
    )
    assert_equal(
        "backup_restore_escrow_inventory.source_scope",
        backup_restore_escrow_inventory["source_scope"],
        "committed_repo_files_only",
    )
    expected_backup_restore_escrow_summary = {
        "surface_count": 38,
        "source_exists_count": 38,
        "expected_scope_count": 38,
        "backup_script_surface_count": 15,
        "restore_drill_surface_count": 4,
        "offsite_escrow_surface_count": 8,
        "velero_surface_count": 5,
        "retention_surface_count": 3,
        "credential_surface_count": 5,
        "alert_surface_count": 1,
        "dr_readiness_contract_surface_count": 3,
        "write_capable_surface_count": 27,
        "surfaces_requiring_owner_response_count": 38,
        "surfaces_requiring_live_evidence_count": 38,
        "owner_response_received_count": 0,
        "owner_response_accepted_count": 0,
        "live_evidence_received_count": 0,
        "restore_drill_accepted_count": 0,
        "offsite_sync_accepted_count": 0,
        "credential_escrow_accepted_count": 0,
        "retention_change_accepted_count": 0,
        "maintenance_window_accepted_count": 0,
        "rollback_owner_accepted_count": 0,
        "runtime_gate_count": 0,
        "action_button_count": 0,
        "coverage_percent_before_inventory": 52,
        "coverage_percent_after_inventory": 58,
    }
    for key, expected in expected_backup_restore_escrow_summary.items():
        assert_equal(
            f"backup_restore_escrow_inventory.summary.{key}",
            backup_restore_escrow_inventory["summary"][key],
            expected,
        )
    for key, value in backup_restore_escrow_inventory["execution_boundaries"].items():
        assert_false(f"backup_restore_escrow_inventory.execution_boundaries.{key}", value)
    assert_equal(
        "backup_restore_escrow_inventory.backup_surfaces.count",
        len(backup_restore_escrow_inventory["backup_surfaces"]),
        38,
    )
    backup_restore_surface_ids = [item["surface_id"] for item in backup_restore_escrow_inventory["backup_surfaces"]]
    for surface_id in [
        "backup_all_orchestrator",
        "backup_common_restic_retention",
        "offsite_sync_controller",
        "credential_escrow_marker",
        "velero_restore_test_script_configmap",
        "velero_credentials_manifest",
        "backup_restore_alert_rules",
        "backup_restore_drill_approval_template",
        "cold_start_sop",
    ]:
        assert_contains(
            "backup_restore_escrow_inventory.backup_surfaces",
            backup_restore_surface_ids,
            surface_id,
        )
    for surface in backup_restore_escrow_inventory["backup_surfaces"]:
        assert_true(
            f"backup_restore_escrow_inventory.backup_surfaces.{surface['surface_id']}.source_exists",
            surface["source_exists"],
        )
        assert_equal(
            f"backup_restore_escrow_inventory.backup_surfaces.{surface['surface_id']}.sha256_length",
            len(surface["sha256"]),
            64,
        )
        assert_true(
            f"backup_restore_escrow_inventory.backup_surfaces.{surface['surface_id']}.requires_live_evidence",
            surface["requires_live_evidence"],
        )
        assert_true(
            f"backup_restore_escrow_inventory.backup_surfaces.{surface['surface_id']}.requires_owner_response",
            surface["requires_owner_response"],
        )
        for key in [
            "owner_response_received",
            "owner_response_accepted",
            "live_evidence_received",
            "restore_drill_accepted",
            "offsite_sync_accepted",
            "credential_escrow_accepted",
            "retention_change_accepted",
            "maintenance_window_accepted",
            "rollback_owner_accepted",
            "runtime_gate_open",
            "action_buttons_allowed",
        ]:
            assert_false(
                f"backup_restore_escrow_inventory.backup_surfaces.{surface['surface_id']}.{key}",
                surface[key],
            )
    assert_equal(
        "backup_restore_escrow_inventory.write_capable_surfaces.count",
        len(backup_restore_escrow_inventory["write_capable_surfaces"]),
        27,
    )
    for surface_id in [
        "backup_all_orchestrator",
        "backup_awoooi_service_script",
        "latest_only_retention_enforcer",
        "offsite_sync_controller",
        "credential_escrow_marker",
        "offsite_rclone_config",
        "backup_health_textfile_exporter",
        "velero_restore_test_cronjob",
        "velero_restore_test_script_configmap",
        "velero_standalone_restore_test_script",
        "velero_credentials_manifest",
        "velero_install_manifest",
    ]:
        assert_contains(
            "backup_restore_escrow_inventory.write_capable_surfaces",
            [item["surface_id"] for item in backup_restore_escrow_inventory["write_capable_surfaces"]],
            surface_id,
        )
    assert_equal(
        "monitoring_alerting_observability_inventory.schema",
        monitoring_alerting_observability_inventory["schema_version"],
        "monitoring_alerting_observability_inventory_v1",
    )
    assert_equal(
        "monitoring_alerting_observability_inventory.status",
        monitoring_alerting_observability_inventory["status"],
        "repo_only_inventory_ready",
    )
    assert_equal(
        "monitoring_alerting_observability_inventory.source_scope",
        monitoring_alerting_observability_inventory["source_scope"],
        "committed_repo_files_only",
    )
    expected_monitoring_alerting_observability_summary = {
        "surface_count": 60,
        "source_exists_count": 60,
        "expected_scope_count": 60,
        "prometheus_config_surface_count": 8,
        "alert_rule_surface_count": 13,
        "alertmanager_receiver_surface_count": 1,
        "grafana_surface_count": 6,
        "signoz_surface_count": 3,
        "sentry_surface_count": 4,
        "langfuse_surface_count": 3,
        "notification_policy_surface_count": 4,
        "telegram_surface_count": 3,
        "otel_surface_count": 1,
        "deploy_or_reload_surface_count": 6,
        "drift_guard_surface_count": 1,
        "smoke_surface_count": 4,
        "write_capable_surface_count": 11,
        "surfaces_requiring_owner_response_count": 60,
        "surfaces_requiring_live_evidence_count": 60,
        "owner_response_received_count": 0,
        "owner_response_accepted_count": 0,
        "live_evidence_received_count": 0,
        "reload_owner_accepted_count": 0,
        "receiver_owner_accepted_count": 0,
        "route_smoke_accepted_count": 0,
        "maintenance_window_accepted_count": 0,
        "rollback_owner_accepted_count": 0,
        "runtime_gate_count": 0,
        "action_button_count": 0,
        "coverage_percent_before_inventory": 56,
        "coverage_percent_after_inventory": 62,
    }
    for key, expected in expected_monitoring_alerting_observability_summary.items():
        assert_equal(
            f"monitoring_alerting_observability_inventory.summary.{key}",
            monitoring_alerting_observability_inventory["summary"][key],
            expected,
        )
    for key, value in monitoring_alerting_observability_inventory["execution_boundaries"].items():
        assert_false(f"monitoring_alerting_observability_inventory.execution_boundaries.{key}", value)
    assert_equal(
        "monitoring_alerting_observability_inventory.observability_surfaces.count",
        len(monitoring_alerting_observability_inventory["observability_surfaces"]),
        60,
    )
    monitoring_surface_ids = [
        item["surface_id"] for item in monitoring_alerting_observability_inventory["observability_surfaces"]
    ]
    for surface_id in [
        "prometheus_k8s_base_config",
        "alertmanager_receiver_config",
        "prometheus_alerts_ops",
        "grafana_ai_slo_dashboard",
        "signoz_otel_collector_config",
        "sentry_self_hosted_compose",
        "langfuse_compose",
        "telegram_gateway_service",
        "deploy_alertmanager_config_script",
        "prometheus_rule_drift_guard_script",
        "alert_chain_smoke_script",
    ]:
        assert_contains(
            "monitoring_alerting_observability_inventory.observability_surfaces",
            monitoring_surface_ids,
            surface_id,
        )
    for surface in monitoring_alerting_observability_inventory["observability_surfaces"]:
        assert_true(
            f"monitoring_alerting_observability_inventory.observability_surfaces.{surface['surface_id']}.source_exists",
            surface["source_exists"],
        )
        assert_equal(
            f"monitoring_alerting_observability_inventory.observability_surfaces.{surface['surface_id']}.sha256_length",
            len(surface["sha256"]),
            64,
        )
        assert_true(
            f"monitoring_alerting_observability_inventory.observability_surfaces.{surface['surface_id']}.requires_live_evidence",
            surface["requires_live_evidence"],
        )
        assert_true(
            f"monitoring_alerting_observability_inventory.observability_surfaces.{surface['surface_id']}.requires_owner_response",
            surface["requires_owner_response"],
        )
        for key in [
            "owner_response_received",
            "owner_response_accepted",
            "live_evidence_received",
            "reload_owner_accepted",
            "receiver_owner_accepted",
            "route_smoke_accepted",
            "maintenance_window_accepted",
            "rollback_owner_accepted",
            "runtime_gate_open",
            "action_buttons_allowed",
        ]:
            assert_false(
                f"monitoring_alerting_observability_inventory.observability_surfaces.{surface['surface_id']}.{key}",
                surface[key],
            )
    assert_equal(
        "monitoring_alerting_observability_inventory.write_capable_surfaces.count",
        len(monitoring_alerting_observability_inventory["write_capable_surfaces"]),
        11,
    )
    for surface_id in [
        "deploy_alertmanager_config_script",
        "deploy_prometheus_alerts_script",
        "k8s_deploy_prometheus_config_script",
        "api_apply_prometheus_config_script",
        "monitoring_exporter_deploy_script",
        "sentry_self_hosted_deploy",
        "telegram_gateway_service",
        "notification_manager_service",
        "converged_alert_recurrence_notifier",
        "fire_live_alert_script",
        "fire_test_alert_script",
    ]:
        assert_contains(
            "monitoring_alerting_observability_inventory.write_capable_surfaces",
            [item["surface_id"] for item in monitoring_alerting_observability_inventory["write_capable_surfaces"]],
            surface_id,
        )
    assert_equal(
        "public_gateway_preflight_inventory.schema",
        public_gateway_preflight_inventory["schema_version"],
        "public_gateway_preflight_inventory_v1",
    )
    assert_equal(
        "public_gateway_preflight_inventory.status",
        public_gateway_preflight_inventory["status"],
        "repo_only_preflight_contract_ready",
    )
    assert_equal(
        "public_gateway_preflight_inventory.source_scope",
        public_gateway_preflight_inventory["source_scope"],
        "committed_nginx_and_domain_tls_snapshots_only",
    )
    expected_public_gateway_preflight_summary = {
        "source_config_count": 3,
        "c0_source_config_count": 2,
        "managed_domain_count": 14,
        "route_impact_count": 14,
        "unique_upstream_count": 14,
        "tls_certificate_path_count": 10,
        "certificate_owner_confirmation_required_count": 4,
        "admin_route_domain_count": 1,
        "websocket_route_domain_count": 6,
        "acme_challenge_domain_count": 7,
        "preflight_gate_count": 12,
        "repo_only_preflight_ready_count": 2,
        "owner_acceptance_required_gate_count": 10,
        "preflight_gate_accepted_count": 0,
        "owner_response_received_count": 0,
        "owner_response_accepted_count": 0,
        "owner_provided_live_conf_received_count": 0,
        "rendered_diff_ready_count": 0,
        "nginx_test_evidence_count": 0,
        "route_smoke_evidence_count": 0,
        "maintenance_window_accepted_count": 0,
        "rollback_owner_accepted_count": 0,
        "runtime_gate_count": 0,
        "action_button_count": 0,
        "coverage_percent_before_preflight": 78,
        "coverage_percent_after_preflight": 84,
    }
    for key, expected in expected_public_gateway_preflight_summary.items():
        assert_equal(
            f"public_gateway_preflight_inventory.summary.{key}",
            public_gateway_preflight_inventory["summary"][key],
            expected,
        )
    for key, value in public_gateway_preflight_inventory["execution_boundaries"].items():
        assert_false(f"public_gateway_preflight_inventory.execution_boundaries.{key}", value)
    assert_equal(
        "public_gateway_preflight_inventory.required_preflight_gates.count",
        len(public_gateway_preflight_inventory["required_preflight_gates"]),
        12,
    )
    assert_equal(
        "public_gateway_preflight_inventory.config_preflight_rows.count",
        len(public_gateway_preflight_inventory["config_preflight_rows"]),
        3,
    )
    assert_equal(
        "public_gateway_preflight_inventory.route_impacts.count",
        len(public_gateway_preflight_inventory["route_impacts"]),
        14,
    )
    for row in public_gateway_preflight_inventory["config_preflight_rows"]:
        assert_true(
            f"public_gateway_preflight_inventory.config_preflight_rows.{row['config_id']}.repo_source_hash_ready",
            row["repo_source_hash_ready"],
        )
        for key in [
            "owner_response_received",
            "owner_response_accepted",
            "live_conf_evidence_received",
            "rendered_diff_ready",
            "nginx_test_evidence_received",
            "route_smoke_evidence_received",
            "maintenance_window_accepted",
            "rollback_owner_accepted",
            "runtime_gate_open",
        ]:
            assert_false(f"public_gateway_preflight_inventory.config_preflight_rows.{row['config_id']}.{key}", row[key])
    for route_impact in public_gateway_preflight_inventory["route_impacts"]:
        assert_true(
            f"public_gateway_preflight_inventory.route_impacts.{route_impact['domain']}.public_route_smoke_required",
            route_impact["public_route_smoke_required"],
        )
        assert_false(
            f"public_gateway_preflight_inventory.route_impacts.{route_impact['domain']}.owner_response_accepted",
            route_impact["owner_response_accepted"],
        )
        assert_false(
            f"public_gateway_preflight_inventory.route_impacts.{route_impact['domain']}.route_smoke_accepted",
            route_impact["route_smoke_accepted"],
        )
    for source_path in [
        "docs/security/public-gateway-preflight-inventory.snapshot.json",
        "docs/security/PUBLIC-GATEWAY-PREFLIGHT-INVENTORY.md",
        "docs/schemas/public_gateway_preflight_inventory_v1.schema.json",
        "docs/security/host-service-config-inventory.snapshot.json",
        "docs/security/HOST-SERVICE-CONFIG-INVENTORY.md",
        "docs/schemas/host_service_config_inventory_v1.schema.json",
        "docs/security/ssh-network-access-inventory.snapshot.json",
        "docs/security/SSH-NETWORK-ACCESS-INVENTORY.md",
        "docs/schemas/ssh_network_access_inventory_v1.schema.json",
        "docs/security/backup-restore-escrow-inventory.snapshot.json",
        "docs/security/BACKUP-RESTORE-ESCROW-INVENTORY.md",
        "docs/schemas/backup_restore_escrow_inventory_v1.schema.json",
        "docs/security/monitoring-alerting-observability-inventory.snapshot.json",
        "docs/security/MONITORING-ALERTING-OBSERVABILITY-INVENTORY.md",
        "docs/schemas/monitoring_alerting_observability_inventory_v1.schema.json",
    ]:
        assert_contains(
            "iwooos_projection.source_paths.config_inventory",
            iwooos_projection["source_paths"],
            source_path,
        )
    assert_true(
        "iwooos_projection.summary.high_value_config_control_coverage_first_layer",
        iwooos_projection["summary"]["high_value_config_control_coverage_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.high_value_config_control_coverage_summary_count",
        iwooos_projection["summary"]["high_value_config_control_coverage_summary_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.high_value_config_control_coverage_item_count",
        iwooos_projection["summary"]["high_value_config_control_coverage_item_count"],
        4,
    )
    expected_high_value_config_coverage_summary = {
        "high_value_config_control_coverage_category_count": 14,
        "high_value_config_control_coverage_c0_category_count": 8,
        "high_value_config_control_coverage_c1_category_count": 4,
        "high_value_config_control_coverage_average_percent": 66,
        "high_value_config_control_coverage_needs_live_evidence_count": 7,
        "high_value_config_control_coverage_owner_response_required_count": 14,
        "high_value_config_control_coverage_owner_response_received_count": 0,
        "high_value_config_control_coverage_owner_response_accepted_count": 0,
        "high_value_config_control_coverage_runtime_gate_count": 0,
        "high_value_config_control_coverage_action_button_count": 0,
        "high_value_config_control_coverage_lowest_category_count": 4,
    }
    for key, expected in expected_high_value_config_coverage_summary.items():
        assert_equal(
            f"iwooos_projection.summary.{key}",
            iwooos_projection["summary"][key],
            expected,
        )
    expected_host_service_projection_summary = {
        "host_service_config_inventory_first_layer": True,
        "host_service_config_inventory_surface_count": 9,
        "host_service_config_inventory_source_exists_count": 9,
        "host_service_config_inventory_expected_host_scope_count": 5,
        "host_service_config_inventory_docker_compose_source_count": 5,
        "host_service_config_inventory_host_repair_whitelist_count": 2,
        "host_service_config_inventory_systemd_restart_surface_count": 1,
        "host_service_config_inventory_write_capable_surface_count": 3,
        "host_service_config_inventory_owner_response_required_count": 9,
        "host_service_config_inventory_owner_response_received_count": 0,
        "host_service_config_inventory_owner_response_accepted_count": 0,
        "host_service_config_inventory_live_evidence_required_count": 8,
        "host_service_config_inventory_live_evidence_received_count": 0,
        "host_service_config_inventory_restart_window_accepted_count": 0,
        "host_service_config_inventory_rollback_owner_accepted_count": 0,
        "host_service_config_inventory_runtime_gate_count": 0,
        "host_service_config_inventory_action_button_count": 0,
        "host_service_config_inventory_coverage_percent_before_inventory": 42,
        "host_service_config_inventory_coverage_percent_after_inventory": 50,
    }
    for key, expected in expected_host_service_projection_summary.items():
        assert_equal(
            f"iwooos_projection.summary.{key}",
            iwooos_projection["summary"][key],
            expected,
        )
    expected_ssh_network_projection_summary = {
        "ssh_network_access_inventory_first_layer": True,
        "ssh_network_access_inventory_surface_count": 16,
        "ssh_network_access_inventory_source_exists_count": 16,
        "ssh_network_access_inventory_expected_scope_count": 16,
        "ssh_network_access_inventory_ssh_source_surface_count": 11,
        "ssh_network_access_inventory_network_policy_surface_count": 2,
        "ssh_network_access_inventory_nodeport_surface_count": 2,
        "ssh_network_access_inventory_sudoers_surface_count": 1,
        "ssh_network_access_inventory_wireguard_surface_count": 1,
        "ssh_network_access_inventory_write_capable_surface_count": 6,
        "ssh_network_access_inventory_owner_response_required_count": 16,
        "ssh_network_access_inventory_owner_response_received_count": 0,
        "ssh_network_access_inventory_owner_response_accepted_count": 0,
        "ssh_network_access_inventory_live_evidence_required_count": 16,
        "ssh_network_access_inventory_live_evidence_received_count": 0,
        "ssh_network_access_inventory_maintenance_window_accepted_count": 0,
        "ssh_network_access_inventory_rollback_owner_accepted_count": 0,
        "ssh_network_access_inventory_runtime_gate_count": 0,
        "ssh_network_access_inventory_action_button_count": 0,
        "ssh_network_access_inventory_coverage_percent_before_inventory": 48,
        "ssh_network_access_inventory_coverage_percent_after_inventory": 54,
    }
    for key, expected in expected_ssh_network_projection_summary.items():
        assert_equal(
            f"iwooos_projection.summary.{key}",
            iwooos_projection["summary"][key],
            expected,
        )
    expected_backup_restore_projection_summary = {
        "backup_restore_escrow_inventory_first_layer": True,
        "backup_restore_escrow_inventory_surface_count": 38,
        "backup_restore_escrow_inventory_source_exists_count": 38,
        "backup_restore_escrow_inventory_expected_scope_count": 38,
        "backup_restore_escrow_inventory_backup_script_surface_count": 15,
        "backup_restore_escrow_inventory_restore_drill_surface_count": 4,
        "backup_restore_escrow_inventory_offsite_escrow_surface_count": 8,
        "backup_restore_escrow_inventory_velero_surface_count": 5,
        "backup_restore_escrow_inventory_retention_surface_count": 3,
        "backup_restore_escrow_inventory_credential_surface_count": 5,
        "backup_restore_escrow_inventory_alert_surface_count": 1,
        "backup_restore_escrow_inventory_dr_readiness_contract_surface_count": 3,
        "backup_restore_escrow_inventory_write_capable_surface_count": 27,
        "backup_restore_escrow_inventory_owner_response_required_count": 38,
        "backup_restore_escrow_inventory_owner_response_received_count": 0,
        "backup_restore_escrow_inventory_owner_response_accepted_count": 0,
        "backup_restore_escrow_inventory_live_evidence_required_count": 38,
        "backup_restore_escrow_inventory_live_evidence_received_count": 0,
        "backup_restore_escrow_inventory_restore_drill_accepted_count": 0,
        "backup_restore_escrow_inventory_offsite_sync_accepted_count": 0,
        "backup_restore_escrow_inventory_credential_escrow_accepted_count": 0,
        "backup_restore_escrow_inventory_retention_change_accepted_count": 0,
        "backup_restore_escrow_inventory_maintenance_window_accepted_count": 0,
        "backup_restore_escrow_inventory_rollback_owner_accepted_count": 0,
        "backup_restore_escrow_inventory_runtime_gate_count": 0,
        "backup_restore_escrow_inventory_action_button_count": 0,
        "backup_restore_escrow_inventory_coverage_percent_before_inventory": 52,
        "backup_restore_escrow_inventory_coverage_percent_after_inventory": 58,
    }
    for key, expected in expected_backup_restore_projection_summary.items():
        assert_equal(
            f"iwooos_projection.summary.{key}",
            iwooos_projection["summary"][key],
            expected,
        )
    expected_monitoring_alerting_observability_projection_summary = {
        "monitoring_alerting_observability_inventory_first_layer": True,
        "monitoring_alerting_observability_inventory_surface_count": 60,
        "monitoring_alerting_observability_inventory_source_exists_count": 60,
        "monitoring_alerting_observability_inventory_expected_scope_count": 60,
        "monitoring_alerting_observability_inventory_prometheus_config_surface_count": 8,
        "monitoring_alerting_observability_inventory_alert_rule_surface_count": 13,
        "monitoring_alerting_observability_inventory_alertmanager_receiver_surface_count": 1,
        "monitoring_alerting_observability_inventory_grafana_surface_count": 6,
        "monitoring_alerting_observability_inventory_signoz_surface_count": 3,
        "monitoring_alerting_observability_inventory_sentry_surface_count": 4,
        "monitoring_alerting_observability_inventory_langfuse_surface_count": 3,
        "monitoring_alerting_observability_inventory_notification_policy_surface_count": 4,
        "monitoring_alerting_observability_inventory_telegram_surface_count": 3,
        "monitoring_alerting_observability_inventory_otel_surface_count": 1,
        "monitoring_alerting_observability_inventory_deploy_or_reload_surface_count": 6,
        "monitoring_alerting_observability_inventory_drift_guard_surface_count": 1,
        "monitoring_alerting_observability_inventory_smoke_surface_count": 4,
        "monitoring_alerting_observability_inventory_write_capable_surface_count": 11,
        "monitoring_alerting_observability_inventory_surfaces_requiring_owner_response_count": 60,
        "monitoring_alerting_observability_inventory_surfaces_requiring_live_evidence_count": 60,
        "monitoring_alerting_observability_inventory_owner_response_received_count": 0,
        "monitoring_alerting_observability_inventory_owner_response_accepted_count": 0,
        "monitoring_alerting_observability_inventory_live_evidence_received_count": 0,
        "monitoring_alerting_observability_inventory_reload_owner_accepted_count": 0,
        "monitoring_alerting_observability_inventory_receiver_owner_accepted_count": 0,
        "monitoring_alerting_observability_inventory_route_smoke_accepted_count": 0,
        "monitoring_alerting_observability_inventory_maintenance_window_accepted_count": 0,
        "monitoring_alerting_observability_inventory_rollback_owner_accepted_count": 0,
        "monitoring_alerting_observability_inventory_runtime_gate_count": 0,
        "monitoring_alerting_observability_inventory_action_button_count": 0,
        "monitoring_alerting_observability_inventory_coverage_percent_before_inventory": 56,
        "monitoring_alerting_observability_inventory_coverage_percent_after_inventory": 62,
    }
    for key, expected in expected_monitoring_alerting_observability_projection_summary.items():
        assert_equal(
            f"iwooos_projection.summary.{key}",
            iwooos_projection["summary"][key],
            expected,
        )
    expected_public_gateway_preflight_projection_summary = {
        "public_gateway_preflight_first_layer": True,
        "public_gateway_preflight_summary_count": 4,
        "public_gateway_preflight_item_count": 6,
        "public_gateway_preflight_source_config_count": 3,
        "public_gateway_preflight_c0_source_config_count": 2,
        "public_gateway_preflight_managed_domain_count": 14,
        "public_gateway_preflight_route_impact_count": 14,
        "public_gateway_preflight_unique_upstream_count": 14,
        "public_gateway_preflight_tls_certificate_path_count": 10,
        "public_gateway_preflight_certificate_owner_confirmation_required_count": 4,
        "public_gateway_preflight_admin_route_domain_count": 1,
        "public_gateway_preflight_websocket_route_domain_count": 6,
        "public_gateway_preflight_acme_challenge_domain_count": 7,
        "public_gateway_preflight_gate_count": 12,
        "public_gateway_preflight_repo_only_ready_count": 2,
        "public_gateway_preflight_owner_acceptance_required_gate_count": 10,
        "public_gateway_preflight_gate_accepted_count": 0,
        "public_gateway_preflight_owner_response_received_count": 0,
        "public_gateway_preflight_owner_response_accepted_count": 0,
        "public_gateway_preflight_owner_provided_live_conf_received_count": 0,
        "public_gateway_preflight_rendered_diff_ready_count": 0,
        "public_gateway_preflight_nginx_test_evidence_count": 0,
        "public_gateway_preflight_route_smoke_evidence_count": 0,
        "public_gateway_preflight_maintenance_window_accepted_count": 0,
        "public_gateway_preflight_rollback_owner_accepted_count": 0,
        "public_gateway_preflight_runtime_gate_count": 0,
        "public_gateway_preflight_action_button_count": 0,
        "public_gateway_preflight_coverage_percent_before_preflight": 78,
        "public_gateway_preflight_coverage_percent_after_preflight": 84,
    }
    for key, expected in expected_public_gateway_preflight_projection_summary.items():
        assert_equal(
            f"iwooos_projection.summary.{key}",
            iwooos_projection["summary"][key],
            expected,
        )
    assert_true(
        "iwooos_projection.summary.high_value_config_owner_packet_first_layer",
        iwooos_projection["summary"]["high_value_config_owner_packet_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.high_value_config_owner_packet_summary_count",
        iwooos_projection["summary"]["high_value_config_owner_packet_summary_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.high_value_config_owner_packet_item_count",
        iwooos_projection["summary"]["high_value_config_owner_packet_item_count"],
        6,
    )
    assert_equal(
        "iwooos_projection.summary.high_value_config_owner_packet_count",
        iwooos_projection["summary"]["high_value_config_owner_packet_count"],
        1,
    )
    for key in [
        "high_value_config_owner_packet_c0_packet_count",
        "high_value_config_owner_packet_c1_packet_count",
        "high_value_config_owner_packet_request_sent_count",
        "high_value_config_owner_packet_received_response_count",
        "high_value_config_owner_packet_accepted_response_count",
        "high_value_config_owner_packet_runtime_gate_count",
    ]:
        assert_equal(
            f"iwooos_projection.summary.{key}",
            iwooos_projection["summary"][key],
            0,
        )
    assert_true(
        "iwooos_projection.summary.awooop_high_value_config_owner_packet_first_layer",
        iwooos_projection["summary"]["awooop_high_value_config_owner_packet_first_layer"],
    )
    assert_equal(
        "iwooos_projection.summary.awooop_high_value_config_owner_packet_summary_count",
        iwooos_projection["summary"]["awooop_high_value_config_owner_packet_summary_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.awooop_high_value_config_owner_packet_ref_count",
        iwooos_projection["summary"]["awooop_high_value_config_owner_packet_ref_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.awooop_high_value_config_owner_packet_boundary_count",
        iwooos_projection["summary"]["awooop_high_value_config_owner_packet_boundary_count"],
        15,
    )
    for key in [
        "awooop_high_value_config_owner_packet_request_sent_count",
        "awooop_high_value_config_owner_packet_received_response_count",
        "awooop_high_value_config_owner_packet_accepted_response_count",
        "awooop_high_value_config_owner_packet_runtime_gate_count",
    ]:
        assert_equal(
            f"iwooos_projection.summary.{key}",
            iwooos_projection["summary"][key],
            0,
        )
    expected_iwooos_surface_ids = [
        "security_compliance",
        "legacy_security",
        "legacy_compliance",
        "alerts",
        "errors",
        "authorizations",
        "governance",
        "alert_operation_logs",
        "awooop_approvals",
        "code_review",
    ]
    assert_equal(
        "iwooos_projection.summary.existing_frontend_surface_count",
        iwooos_projection["summary"]["existing_frontend_surface_count"],
        len(expected_iwooos_surface_ids),
    )
    assert_equal(
        "iwooos_projection.summary.frontend_surface_reverse_bridge_status_count",
        iwooos_projection["summary"]["frontend_surface_reverse_bridge_status_count"],
        len(expected_iwooos_surface_ids),
    )
    expected_iwooos_coverage_group_ids = [
        "signals_and_exposure",
        "human_control_boundary",
        "governance_and_audit",
        "engineering_review",
    ]
    expected_iwooos_conflict_control_ids = [
        "preserve_original_route_ownership",
        "no_runtime_lift_from_index",
        "code_review_not_deploy_gate",
        "awooop_approval_not_security_approval",
        "frontend_index_does_not_call_kali",
    ]
    expected_iwooos_journey_step_ids = [
        "read_current_posture",
        "open_existing_security_surface",
        "triage_non_blocking_lane",
        "collect_owner_evidence",
        "wait_for_human_decision",
        "prepare_followup_runtime_gate",
    ]
    expected_iwooos_evidence_readiness_item_ids = [
        "s4_9_gitea_owner_attestation_response",
        "s4_10_github_target_owner_response",
        "s4_11_refs_truth_owner_response",
        "s4_12_workflow_secret_owner_response",
        "s1_6_redacted_finding_ingestion",
        "s1_6_kali_scan_scope_approval",
        "s3_4_followup_runtime_gate",
    ]
    expected_iwooos_host_coverage_item_ids = [
        "kali_112_security_host",
        "dev_168_development_host",
        "dev_111_development_host",
    ]
    expected_iwooos_kali_maintenance_readiness_item_ids = [
        "kali_112_read_only_snapshot",
        "kali_112_scanner_health",
        "kali_112_upgradable_package_count",
        "kali_112_failed_systemd_unit_count",
        "kali_112_service_hardening_gap",
        "kali_112_full_upgrade_reboot_gate",
    ]
    expected_iwooos_host_action_gate_item_ids = [
        "host_active_scan_gate",
        "host_credentialed_scan_gate",
        "kali_execute_gate",
        "ssh_host_change_gate",
        "kali_host_update_gate",
        "runtime_blocking_control_gate",
    ]
    expected_iwooos_host_evidence_readiness_item_ids = [
        "host_scope_boundary_evidence",
        "host_owner_decision_record_evidence",
        "host_credential_handling_evidence",
        "host_maintenance_window_evidence",
        "host_rollback_plan_evidence",
        "host_validation_metrics_evidence",
        "host_redacted_ingestion_evidence",
    ]
    expected_iwooos_host_evidence_collection_step_ids = [
        "collect_scope_boundary_first",
        "collect_owner_decision_second",
        "collect_credential_handling_third",
        "collect_maintenance_window_fourth",
        "collect_rollback_plan_fifth",
        "collect_validation_metrics_sixth",
        "collect_redacted_ingestion_seventh",
    ]
    expected_iwooos_host_evidence_intake_preflight_check_ids = [
        "host_metadata_pointer_shape_check",
        "host_collection_dependency_order_check",
        "host_scope_boundary_before_scan_check",
        "host_owner_decision_before_change_check",
        "host_credential_plaintext_rejection_check",
        "host_raw_payload_rejection_check",
        "host_counter_transition_freeze_check",
    ]
    expected_iwooos_host_evidence_review_outcome_lane_ids = [
        "host_ready_for_human_review_lane",
        "host_needs_scope_evidence_lane",
        "host_needs_owner_decision_lane",
        "host_quarantine_dependency_skip_lane",
        "host_reject_raw_payload_lane",
        "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",
    ]
    expected_iwooos_host_evidence_reviewer_checklist_item_ids = [
        "host_scope_boundary_match_check",
        "host_owner_decision_scope_expiry_check",
        "host_credential_handling_metadata_only_check",
        "host_redaction_attestation_pass_check",
        "host_maintenance_rollback_complete_check",
        "host_validation_metrics_linked_check",
        "host_runtime_gate_separated_check",
    ]
    expected_iwooos_host_evidence_reviewer_outcome_lane_ids = [
        "host_ready_for_owner_decision_outcome_lane",
        "host_scope_mismatch_outcome_lane",
        "host_owner_decision_expired_outcome_lane",
        "host_credential_metadata_failed_outcome_lane",
        "host_redaction_failed_outcome_lane",
        "host_rollback_missing_outcome_lane",
        "host_runtime_gate_required_outcome_lane",
    ]
    expected_iwooos_host_owner_decision_candidate_packet_ids = [
        "host_scope_approval_candidate_packet",
        "host_scan_mode_candidate_packet",
        "host_credential_handling_candidate_packet",
        "host_maintenance_window_candidate_packet",
        "host_rollback_owner_candidate_packet",
        "host_validation_metrics_candidate_packet",
        "host_runtime_gate_candidate_packet",
    ]
    expected_iwooos_host_owner_decision_review_checklist_item_ids = [
        "host_scope_boundary_readable_review_check",
        "host_scan_mode_not_authorization_review_check",
        "host_credential_boundary_metadata_only_review_check",
        "host_maintenance_window_not_change_review_check",
        "host_rollback_owner_readable_review_check",
        "host_validation_metrics_predefined_review_check",
        "host_runtime_gate_still_separate_review_check",
    ]
    expected_iwooos_host_owner_decision_review_outcome_lane_ids = [
        "host_ready_for_decision_record_outcome_lane",
        "host_scope_refresh_required_decision_outcome_lane",
        "host_scan_mode_scope_required_decision_outcome_lane",
        "host_credential_boundary_failed_decision_outcome_lane",
        "host_maintenance_window_required_decision_outcome_lane",
        "host_rollback_owner_required_decision_outcome_lane",
        "host_runtime_gate_required_decision_outcome_lane",
    ]
    expected_iwooos_host_owner_decision_record_draft_packet_ids = [
        "host_decision_record_scope_draft_packet",
        "host_decision_record_scan_mode_draft_packet",
        "host_decision_record_credential_boundary_draft_packet",
        "host_decision_record_maintenance_constraints_draft_packet",
        "host_decision_record_rollback_owner_draft_packet",
        "host_decision_record_validation_metrics_draft_packet",
        "host_decision_record_runtime_gate_draft_packet",
    ]
    expected_iwooos_host_owner_decision_record_draft_review_checklist_item_ids = [
        "host_decision_record_scope_statement_review_check",
        "host_decision_record_scan_mode_review_check",
        "host_decision_record_credential_boundary_review_check",
        "host_decision_record_maintenance_constraints_review_check",
        "host_decision_record_rollback_owner_review_check",
        "host_decision_record_validation_metrics_review_check",
        "host_decision_record_runtime_gate_review_check",
    ]
    expected_iwooos_host_owner_decision_record_draft_review_outcome_lane_ids = [
        "host_decision_record_ready_for_writeup_outcome_lane",
        "host_decision_record_scope_draft_incomplete_outcome_lane",
        "host_decision_record_scan_mode_ambiguous_outcome_lane",
        "host_decision_record_credential_boundary_incomplete_outcome_lane",
        "host_decision_record_maintenance_constraints_incomplete_outcome_lane",
        "host_decision_record_rollback_owner_incomplete_outcome_lane",
        "host_decision_record_runtime_gate_required_outcome_lane",
    ]
    expected_iwooos_host_owner_decision_record_writeup_packet_ids = [
        "host_decision_record_summary_writeup_packet",
        "host_decision_record_scope_writeup_packet",
        "host_decision_record_scan_mode_limits_writeup_packet",
        "host_decision_record_credential_boundary_writeup_packet",
        "host_decision_record_maintenance_rollback_writeup_packet",
        "host_decision_record_validation_evidence_writeup_packet",
        "host_decision_record_runtime_gate_pointer_writeup_packet",
    ]
    expected_iwooos_host_owner_decision_record_writeup_review_checklist_item_ids = [
        "host_decision_record_summary_writeup_review_check",
        "host_decision_record_scope_writeup_review_check",
        "host_decision_record_scan_mode_limits_writeup_review_check",
        "host_decision_record_credential_boundary_writeup_review_check",
        "host_decision_record_maintenance_rollback_writeup_review_check",
        "host_decision_record_validation_evidence_writeup_review_check",
        "host_decision_record_runtime_gate_writeup_review_check",
    ]
    expected_iwooos_host_owner_decision_record_writeup_review_outcome_lane_ids = [
        "host_decision_record_writeup_review_ready_for_formal_record_outcome_lane",
        "host_decision_record_writeup_summary_needs_clarification_outcome_lane",
        "host_decision_record_writeup_scope_expiry_needs_refresh_outcome_lane",
        "host_decision_record_writeup_scan_mode_ambiguous_outcome_lane",
        "host_decision_record_writeup_credential_boundary_failed_outcome_lane",
        "host_decision_record_writeup_maintenance_rollback_incomplete_outcome_lane",
        "host_decision_record_writeup_runtime_gate_required_outcome_lane",
    ]
    expected_iwooos_host_owner_decision_record_formal_candidate_packet_ids = [
        "host_decision_record_formal_candidate_identity_packet",
        "host_decision_record_formal_candidate_decision_summary_packet",
        "host_decision_record_formal_candidate_approved_scope_packet",
        "host_decision_record_formal_candidate_scan_mode_limits_packet",
        "host_decision_record_formal_candidate_credential_boundary_packet",
        "host_decision_record_formal_candidate_maintenance_rollback_packet",
        "host_decision_record_formal_candidate_validation_runtime_gate_packet",
    ]
    expected_iwooos_host_owner_decision_record_formal_candidate_review_checklist_item_ids = [
        "host_decision_record_formal_candidate_identity_review_check",
        "host_decision_record_formal_candidate_summary_review_check",
        "host_decision_record_formal_candidate_scope_review_check",
        "host_decision_record_formal_candidate_scan_limits_review_check",
        "host_decision_record_formal_candidate_credential_boundary_review_check",
        "host_decision_record_formal_candidate_maintenance_rollback_review_check",
        "host_decision_record_formal_candidate_runtime_gate_review_check",
    ]
    expected_iwooos_host_owner_decision_record_formal_candidate_review_outcome_lane_ids = [
        "host_decision_record_formal_candidate_review_ready_for_record_queue_outcome_lane",
        "host_decision_record_formal_candidate_review_identity_needs_trace_outcome_lane",
        "host_decision_record_formal_candidate_review_summary_needs_clarification_outcome_lane",
        "host_decision_record_formal_candidate_review_scope_expiry_needs_refresh_outcome_lane",
        "host_decision_record_formal_candidate_review_scan_limits_ambiguous_outcome_lane",
        "host_decision_record_formal_candidate_review_credential_boundary_failed_outcome_lane",
        "host_decision_record_formal_candidate_review_maintenance_rollback_incomplete_outcome_lane",
        "host_decision_record_formal_candidate_review_runtime_gate_required_outcome_lane",
    ]
    expected_iwooos_host_owner_decision_record_formal_record_queue_packet_ids = [
        "host_decision_record_formal_record_queue_identity_packet",
        "host_decision_record_formal_record_queue_decision_summary_packet",
        "host_decision_record_formal_record_queue_scope_expiry_packet",
        "host_decision_record_formal_record_queue_scan_limits_packet",
        "host_decision_record_formal_record_queue_credential_boundary_packet",
        "host_decision_record_formal_record_queue_maintenance_rollback_packet",
        "host_decision_record_formal_record_queue_validation_runtime_gate_packet",
        "host_decision_record_formal_record_queue_no_execution_attestation_packet",
    ]
    expected_iwooos_host_owner_decision_record_formal_record_queue_review_checklist_item_ids = [
        "host_decision_record_formal_record_queue_review_identity_traceable_check",
        "host_decision_record_formal_record_queue_review_decision_summary_readable_check",
        "host_decision_record_formal_record_queue_review_scope_expiry_fresh_check",
        "host_decision_record_formal_record_queue_review_scan_limits_not_authorization_check",
        "host_decision_record_formal_record_queue_review_credential_boundary_metadata_only_check",
        "host_decision_record_formal_record_queue_review_maintenance_rollback_linked_check",
        "host_decision_record_formal_record_queue_review_validation_runtime_gate_separate_check",
        "host_decision_record_formal_record_queue_review_no_execution_attestation_present_check",
    ]
    expected_iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lane_ids = [
        "host_decision_record_formal_record_queue_review_ready_for_human_record_owner_handoff_outcome_lane",
        "host_decision_record_formal_record_queue_review_identity_needs_trace_refresh_outcome_lane",
        "host_decision_record_formal_record_queue_review_summary_needs_clarification_outcome_lane",
        "host_decision_record_formal_record_queue_review_scope_expiry_needs_refresh_outcome_lane",
        "host_decision_record_formal_record_queue_review_scan_limits_ambiguous_outcome_lane",
        "host_decision_record_formal_record_queue_review_credential_boundary_failed_outcome_lane",
        "host_decision_record_formal_record_queue_review_maintenance_rollback_incomplete_outcome_lane",
        "host_decision_record_formal_record_queue_review_runtime_gate_required_outcome_lane",
    ]
    expected_iwooos_host_owner_decision_record_human_handoff_readiness_packet_ids = [
        "host_decision_record_handoff_readiness_identity_trace_packet",
        "host_decision_record_handoff_readiness_owner_boundary_packet",
        "host_decision_record_handoff_readiness_decision_summary_packet",
        "host_decision_record_handoff_readiness_scope_expiry_packet",
        "host_decision_record_handoff_readiness_scan_limits_packet",
        "host_decision_record_handoff_readiness_credential_boundary_packet",
        "host_decision_record_handoff_readiness_maintenance_rollback_packet",
        "host_decision_record_handoff_readiness_runtime_gate_packet",
    ]
    expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist_item_ids = [
        "host_decision_record_handoff_readiness_review_identity_trace_readable_check",
        "host_decision_record_handoff_readiness_review_owner_boundary_readable_check",
        "host_decision_record_handoff_readiness_review_decision_summary_readable_check",
        "host_decision_record_handoff_readiness_review_scope_expiry_current_check",
        "host_decision_record_handoff_readiness_review_scan_limits_not_authorization_check",
        "host_decision_record_handoff_readiness_review_credential_boundary_metadata_only_check",
        "host_decision_record_handoff_readiness_review_maintenance_rollback_traceable_check",
        "host_decision_record_handoff_readiness_review_runtime_gate_separate_check",
    ]
    expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lane_ids = [
        "host_decision_record_handoff_readiness_review_ready_for_human_record_owner_review_candidate_outcome_lane",
        "host_decision_record_handoff_readiness_review_identity_trace_needs_refresh_outcome_lane",
        "host_decision_record_handoff_readiness_review_owner_boundary_needs_clarification_outcome_lane",
        "host_decision_record_handoff_readiness_review_decision_summary_needs_clarification_outcome_lane",
        "host_decision_record_handoff_readiness_review_scope_expiry_needs_refresh_outcome_lane",
        "host_decision_record_handoff_readiness_review_scan_limits_ambiguous_outcome_lane",
        "host_decision_record_handoff_readiness_review_credential_boundary_failed_outcome_lane",
        "host_decision_record_handoff_readiness_review_maintenance_rollback_incomplete_outcome_lane",
        "host_decision_record_handoff_readiness_review_runtime_gate_required_outcome_lane",
    ]
    expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_packet_ids = [
        "host_decision_record_human_record_owner_review_candidate_identity_packet",
        "host_decision_record_human_record_owner_review_candidate_owner_boundary_packet",
        "host_decision_record_human_record_owner_review_candidate_decision_summary_packet",
        "host_decision_record_human_record_owner_review_candidate_scope_expiry_packet",
        "host_decision_record_human_record_owner_review_candidate_scan_limits_packet",
        "host_decision_record_human_record_owner_review_candidate_credential_boundary_packet",
        "host_decision_record_human_record_owner_review_candidate_maintenance_rollback_packet",
        "host_decision_record_human_record_owner_review_candidate_validation_runtime_gate_packet",
        "host_decision_record_human_record_owner_review_candidate_no_execution_attestation_packet",
    ]
    expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist_item_ids = [
        "host_decision_record_human_record_owner_review_candidate_identity_traceable_check",
        "host_decision_record_human_record_owner_review_candidate_owner_boundary_readable_check",
        "host_decision_record_human_record_owner_review_candidate_decision_summary_readable_check",
        "host_decision_record_human_record_owner_review_candidate_scope_expiry_current_check",
        "host_decision_record_human_record_owner_review_candidate_scan_limits_not_authorization_check",
        "host_decision_record_human_record_owner_review_candidate_credential_boundary_metadata_only_check",
        "host_decision_record_human_record_owner_review_candidate_maintenance_rollback_traceable_check",
        "host_decision_record_human_record_owner_review_candidate_validation_runtime_gate_separate_check",
        "host_decision_record_human_record_owner_review_candidate_no_execution_attestation_present_check",
    ]
    expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lane_ids = [
        "host_decision_record_human_record_owner_review_candidate_ready_for_human_record_owner_review_preparation_outcome_lane",
        "host_decision_record_human_record_owner_review_candidate_identity_trace_needs_refresh_outcome_lane",
        "host_decision_record_human_record_owner_review_candidate_owner_boundary_needs_clarification_outcome_lane",
        "host_decision_record_human_record_owner_review_candidate_decision_summary_needs_clarification_outcome_lane",
        "host_decision_record_human_record_owner_review_candidate_scope_expiry_needs_refresh_outcome_lane",
        "host_decision_record_human_record_owner_review_candidate_scan_limits_ambiguous_outcome_lane",
        "host_decision_record_human_record_owner_review_candidate_credential_boundary_failed_outcome_lane",
        "host_decision_record_human_record_owner_review_candidate_maintenance_rollback_incomplete_outcome_lane",
        "host_decision_record_human_record_owner_review_candidate_runtime_gate_required_outcome_lane",
    ]
    expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_packet_ids = [
        "host_decision_record_human_record_owner_review_preparation_identity_trace_packet",
        "host_decision_record_human_record_owner_review_preparation_owner_boundary_packet",
        "host_decision_record_human_record_owner_review_preparation_decision_summary_packet",
        "host_decision_record_human_record_owner_review_preparation_scope_expiry_packet",
        "host_decision_record_human_record_owner_review_preparation_scan_limits_packet",
        "host_decision_record_human_record_owner_review_preparation_credential_boundary_packet",
        "host_decision_record_human_record_owner_review_preparation_maintenance_rollback_packet",
        "host_decision_record_human_record_owner_review_preparation_validation_runtime_gate_packet",
        "host_decision_record_human_record_owner_review_preparation_no_execution_attestation_packet",
    ]
    expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_item_ids = [
        "host_decision_record_human_record_owner_review_preparation_identity_trace_readable_check",
        "host_decision_record_human_record_owner_review_preparation_owner_boundary_readable_check",
        "host_decision_record_human_record_owner_review_preparation_decision_summary_readable_check",
        "host_decision_record_human_record_owner_review_preparation_scope_expiry_current_check",
        "host_decision_record_human_record_owner_review_preparation_scan_limits_not_authorization_check",
        "host_decision_record_human_record_owner_review_preparation_credential_boundary_metadata_only_check",
        "host_decision_record_human_record_owner_review_preparation_maintenance_rollback_traceable_check",
        "host_decision_record_human_record_owner_review_preparation_validation_runtime_gate_separate_check",
        "host_decision_record_human_record_owner_review_preparation_no_execution_attestation_present_check",
    ]
    assert_equal(
        "iwooos_projection.summary.visual_command_dashboard_widget_count",
        iwooos_projection["summary"]["visual_command_dashboard_widget_count"],
        14,
    )
    assert_true(
        "iwooos_projection.summary.visual_command_dashboard_first_layer",
        iwooos_projection["summary"]["visual_command_dashboard_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.visual_command_dashboard_default_visible",
        iwooos_projection["summary"]["visual_command_dashboard_default_visible"],
    )
    assert_true(
        "iwooos_projection.summary.professional_security_experience_first_layer",
        iwooos_projection["summary"]["professional_security_experience_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.professional_security_experience_default_visible",
        iwooos_projection["summary"]["professional_security_experience_default_visible"],
    )
    assert_equal(
        "iwooos_projection.summary.professional_security_experience_tab_count",
        iwooos_projection["summary"]["professional_security_experience_tab_count"],
        3,
    )
    assert_equal(
        "iwooos_projection.summary.professional_security_experience_attack_path_node_count",
        iwooos_projection["summary"]["professional_security_experience_attack_path_node_count"],
        6,
    )
    assert_equal(
        "iwooos_projection.summary.professional_security_experience_asset_heat_cell_count",
        iwooos_projection["summary"]["professional_security_experience_asset_heat_cell_count"],
        9,
    )
    assert_equal(
        "iwooos_projection.summary.professional_security_experience_response_flow_step_count",
        iwooos_projection["summary"]["professional_security_experience_response_flow_step_count"],
        5,
    )
    assert_true(
        "iwooos_projection.summary.concrete_work_snapshot_first_layer",
        iwooos_projection["summary"]["concrete_work_snapshot_first_layer"],
    )
    assert_false(
        "iwooos_projection.summary.concrete_work_snapshot_default_visible",
        iwooos_projection["summary"]["concrete_work_snapshot_default_visible"],
    )
    assert_equal(
        "iwooos_projection.summary.concrete_work_snapshot_workstream_count",
        iwooos_projection["summary"]["concrete_work_snapshot_workstream_count"],
        6,
    )
    assert_true(
        "iwooos_projection.summary.long_form_sections_default_collapsed",
        iwooos_projection["summary"]["long_form_sections_default_collapsed"],
    )
    assert_equal(
        "iwooos_projection.summary.frontend_surface_coverage_group_count",
        iwooos_projection["summary"]["frontend_surface_coverage_group_count"],
        len(expected_iwooos_coverage_group_ids),
    )
    assert_equal(
        "iwooos_projection.summary.frontend_surface_conflict_control_count",
        iwooos_projection["summary"]["frontend_surface_conflict_control_count"],
        len(expected_iwooos_conflict_control_ids),
    )
    assert_equal(
        "iwooos_projection.summary.operator_journey_step_count",
        iwooos_projection["summary"]["operator_journey_step_count"],
        len(expected_iwooos_journey_step_ids),
    )
    assert_equal(
        "iwooos_projection.summary.owner_evidence_readiness_item_count",
        iwooos_projection["summary"]["owner_evidence_readiness_item_count"],
        len(expected_iwooos_evidence_readiness_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_coverage_item_count",
        iwooos_projection["summary"]["host_coverage_item_count"],
        len(expected_iwooos_host_coverage_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.kali_maintenance_readiness_item_count",
        iwooos_projection["summary"]["kali_maintenance_readiness_item_count"],
        len(expected_iwooos_kali_maintenance_readiness_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_action_gate_item_count",
        iwooos_projection["summary"]["host_action_gate_item_count"],
        len(expected_iwooos_host_action_gate_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_evidence_readiness_item_count",
        iwooos_projection["summary"]["host_evidence_readiness_item_count"],
        len(expected_iwooos_host_evidence_readiness_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_evidence_collection_step_count",
        iwooos_projection["summary"]["host_evidence_collection_step_count"],
        len(expected_iwooos_host_evidence_collection_step_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_evidence_intake_preflight_check_count",
        iwooos_projection["summary"]["host_evidence_intake_preflight_check_count"],
        len(expected_iwooos_host_evidence_intake_preflight_check_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_evidence_review_outcome_lane_count",
        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),
    )
    assert_equal(
        "iwooos_projection.summary.host_evidence_reviewer_checklist_item_count",
        iwooos_projection["summary"]["host_evidence_reviewer_checklist_item_count"],
        len(expected_iwooos_host_evidence_reviewer_checklist_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_evidence_reviewer_outcome_lane_count",
        iwooos_projection["summary"]["host_evidence_reviewer_outcome_lane_count"],
        len(expected_iwooos_host_evidence_reviewer_outcome_lane_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_candidate_packet_count",
        iwooos_projection["summary"]["host_owner_decision_candidate_packet_count"],
        len(expected_iwooos_host_owner_decision_candidate_packet_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_review_checklist_item_count",
        iwooos_projection["summary"]["host_owner_decision_review_checklist_item_count"],
        len(expected_iwooos_host_owner_decision_review_checklist_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_review_outcome_lane_count",
        iwooos_projection["summary"]["host_owner_decision_review_outcome_lane_count"],
        len(expected_iwooos_host_owner_decision_review_outcome_lane_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_draft_packet_count",
        iwooos_projection["summary"]["host_owner_decision_record_draft_packet_count"],
        len(expected_iwooos_host_owner_decision_record_draft_packet_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_draft_review_checklist_item_count",
        iwooos_projection["summary"]["host_owner_decision_record_draft_review_checklist_item_count"],
        len(expected_iwooos_host_owner_decision_record_draft_review_checklist_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_draft_review_outcome_lane_count",
        iwooos_projection["summary"]["host_owner_decision_record_draft_review_outcome_lane_count"],
        len(expected_iwooos_host_owner_decision_record_draft_review_outcome_lane_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_writeup_packet_count",
        iwooos_projection["summary"]["host_owner_decision_record_writeup_packet_count"],
        len(expected_iwooos_host_owner_decision_record_writeup_packet_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_writeup_review_checklist_item_count",
        iwooos_projection["summary"]["host_owner_decision_record_writeup_review_checklist_item_count"],
        len(expected_iwooos_host_owner_decision_record_writeup_review_checklist_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_writeup_review_outcome_lane_count",
        iwooos_projection["summary"]["host_owner_decision_record_writeup_review_outcome_lane_count"],
        len(expected_iwooos_host_owner_decision_record_writeup_review_outcome_lane_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_formal_candidate_packet_count",
        iwooos_projection["summary"]["host_owner_decision_record_formal_candidate_packet_count"],
        len(expected_iwooos_host_owner_decision_record_formal_candidate_packet_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_formal_candidate_review_checklist_item_count",
        iwooos_projection["summary"]["host_owner_decision_record_formal_candidate_review_checklist_item_count"],
        len(expected_iwooos_host_owner_decision_record_formal_candidate_review_checklist_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_formal_candidate_review_outcome_lane_count",
        iwooos_projection["summary"]["host_owner_decision_record_formal_candidate_review_outcome_lane_count"],
        len(expected_iwooos_host_owner_decision_record_formal_candidate_review_outcome_lane_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_formal_record_queue_packet_count",
        iwooos_projection["summary"]["host_owner_decision_record_formal_record_queue_packet_count"],
        len(expected_iwooos_host_owner_decision_record_formal_record_queue_packet_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_formal_record_queue_review_checklist_item_count",
        iwooos_projection["summary"]["host_owner_decision_record_formal_record_queue_review_checklist_item_count"],
        len(expected_iwooos_host_owner_decision_record_formal_record_queue_review_checklist_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_formal_record_queue_review_outcome_lane_count",
        iwooos_projection["summary"]["host_owner_decision_record_formal_record_queue_review_outcome_lane_count"],
        len(expected_iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lane_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_human_handoff_readiness_packet_count",
        iwooos_projection["summary"]["host_owner_decision_record_human_handoff_readiness_packet_count"],
        len(expected_iwooos_host_owner_decision_record_human_handoff_readiness_packet_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_human_handoff_readiness_review_checklist_item_count",
        iwooos_projection["summary"]["host_owner_decision_record_human_handoff_readiness_review_checklist_item_count"],
        len(expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_human_handoff_readiness_review_outcome_lane_count",
        iwooos_projection["summary"]["host_owner_decision_record_human_handoff_readiness_review_outcome_lane_count"],
        len(expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lane_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_human_record_owner_review_candidate_packet_count",
        iwooos_projection["summary"]["host_owner_decision_record_human_record_owner_review_candidate_packet_count"],
        len(expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_packet_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_human_record_owner_review_candidate_checklist_item_count",
        iwooos_projection["summary"][
            "host_owner_decision_record_human_record_owner_review_candidate_checklist_item_count"
        ],
        len(expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist_item_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_human_record_owner_review_candidate_outcome_lane_count",
        iwooos_projection["summary"][
            "host_owner_decision_record_human_record_owner_review_candidate_outcome_lane_count"
        ],
        len(expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lane_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_human_record_owner_review_preparation_packet_count",
        iwooos_projection["summary"]["host_owner_decision_record_human_record_owner_review_preparation_packet_count"],
        len(expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_packet_ids),
    )
    assert_equal(
        "iwooos_projection.summary.host_owner_decision_record_human_record_owner_review_preparation_checklist_item_count",
        iwooos_projection["summary"][
            "host_owner_decision_record_human_record_owner_review_preparation_checklist_item_count"
        ],
        len(expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_item_ids),
    )
    iwooos_progress = iwooos_projection["progress"]
    assert_equal("iwooos_projection.progress.overall_percent", iwooos_progress["overall_percent"], progress["overall_percent"])
    assert_equal(
        "iwooos_projection.progress.framework_percent_min",
        iwooos_progress["framework_percent_min"],
        progress["framework_percent_min"],
    )
    assert_equal(
        "iwooos_projection.progress.framework_percent_max",
        iwooos_progress["framework_percent_max"],
        progress["framework_percent_max"],
    )
    assert_equal(
        "iwooos_projection.progress.runtime_landing_percent_min",
        iwooos_progress["runtime_landing_percent_min"],
        progress["runtime_landing_percent_min"],
    )
    assert_equal(
        "iwooos_projection.progress.runtime_landing_percent_max",
        iwooos_progress["runtime_landing_percent_max"],
        progress["runtime_landing_percent_max"],
    )
    assert_equal(
        "iwooos_projection.progress.headline_status",
        iwooos_progress["headline_status"],
        progress_display_policy["headline_status"],
    )
    assert_true("iwooos_projection.progress.not_authorization", iwooos_progress["not_authorization"])
    expected_awooop_read_only_landing_item_ids = [
        "awooop_landing_rollup_snapshot_readable",
        "awooop_landing_evidence_refs_readable",
        "awooop_landing_guard_checks_known",
        "awooop_landing_route_groups_known",
        "awooop_landing_forbidden_outputs_locked",
        "awooop_landing_production_handoff_pending",
    ]
    assert_equal(
        "iwooos_projection.summary.awooop_read_only_landing_readiness_item_count",
        iwooos_projection["summary"]["awooop_read_only_landing_readiness_item_count"],
        len(expected_awooop_read_only_landing_item_ids),
    )
    awooop_read_only_landing_items = iwooos_projection["awooop_read_only_landing_readiness_items"]
    assert_equal(
        "iwooos_projection.awooop_read_only_landing_readiness_items.item_ids",
        [item["item_id"] for item in awooop_read_only_landing_items],
        expected_awooop_read_only_landing_item_ids,
    )
    assert_equal(
        "iwooos_projection.awooop_read_only_landing_readiness_items.display_order",
        [item["display_order"] for item in awooop_read_only_landing_items],
        list(range(1, len(expected_awooop_read_only_landing_item_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.awooop_read_only_landing_readiness_items.current_states",
        [item["current_state"] for item in awooop_read_only_landing_items],
        [
            "ready_for_read_only_intake",
            "ready_for_read_only_intake",
            "ready_for_read_only_intake",
            "ready_for_read_only_intake",
            "ready_for_read_only_intake",
            "production_read_only_consumption_verified",
        ],
    )
    assert_equal(
        "iwooos_projection.awooop_read_only_landing_readiness_items.landing_dependencies",
        [item["landing_dependency"] for item in awooop_read_only_landing_items],
        [
            "security_mirror_status_rollup_snapshot",
            "evidence_refs",
            "guard_checks",
            "security_mirror_route_groups",
            "forbidden_outputs",
            "awooop_mainline_consumption",
        ],
    )
    for item in awooop_read_only_landing_items:
        landing_completed = item["item_id"] == "awooop_landing_production_handoff_pending"
        assert_equal(
            f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "awooop_read_only_landing_readiness_only",
        )
        assert_equal(
            f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.headline_percent_delta",
            item["headline_percent_delta"],
            3 if landing_completed else 0,
        )
        if landing_completed:
            assert_true(
                f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.production_landing_enabled",
                item["production_landing_enabled"],
            )
        else:
            assert_false(
                f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.production_landing_enabled",
                item["production_landing_enabled"],
            )
        assert_false(
            f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.execution_router_linked",
            item["execution_router_linked"],
        )
        if landing_completed:
            assert_true(
                f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.progress_change_applied",
                item["progress_change_applied"],
            )
        else:
            assert_false(
                f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.progress_change_applied",
                item["progress_change_applied"],
            )
        assert_false(
            f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.awooop_read_only_landing_readiness_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    expected_awooop_cross_session_handoff_packet_ids = [
        "awooop_handoff_branch_and_pr_anchor",
        "awooop_handoff_progress_semantics",
        "awooop_handoff_required_guard_commands",
        "awooop_handoff_forbidden_runtime_actions",
        "awooop_handoff_read_only_inputs",
        "awooop_handoff_next_coordination_gate",
    ]
    assert_equal(
        "iwooos_projection.summary.awooop_cross_session_handoff_packet_count",
        iwooos_projection["summary"]["awooop_cross_session_handoff_packet_count"],
        len(expected_awooop_cross_session_handoff_packet_ids),
    )
    awooop_cross_session_handoff_packets = iwooos_projection["awooop_cross_session_handoff_packets"]
    assert_equal(
        "iwooos_projection.awooop_cross_session_handoff_packets.packet_ids",
        [item["packet_id"] for item in awooop_cross_session_handoff_packets],
        expected_awooop_cross_session_handoff_packet_ids,
    )
    assert_equal(
        "iwooos_projection.awooop_cross_session_handoff_packets.display_order",
        [item["display_order"] for item in awooop_cross_session_handoff_packets],
        list(range(1, len(expected_awooop_cross_session_handoff_packet_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.awooop_cross_session_handoff_packets.handoff_axes",
        [item["handoff_axis"] for item in awooop_cross_session_handoff_packets],
        [
            "branch_and_pr_anchor",
            "progress_semantics",
            "required_guard_commands",
            "forbidden_runtime_actions",
            "read_only_inputs",
            "next_coordination_gate",
        ],
    )
    assert_equal(
        "iwooos_projection.awooop_cross_session_handoff_packets.current_states",
        [item["current_state"] for item in awooop_cross_session_handoff_packets],
        [
            "ready_for_parallel_session_sync",
            "ready_for_parallel_session_sync",
            "ready_for_parallel_session_sync",
            "ready_for_parallel_session_sync",
            "ready_for_parallel_session_sync",
            "production_landing_evidence_recorded_waiting_remaining_gates",
        ],
    )
    for item in awooop_cross_session_handoff_packets:
        assert_equal(
            f"iwooos_projection.awooop_cross_session_handoff_packets.{item['packet_id']}.display_mode",
            item["display_mode"],
            "awooop_cross_session_handoff_packet_only",
        )
        assert_equal(
            f"iwooos_projection.awooop_cross_session_handoff_packets.{item['packet_id']}.headline_percent_delta",
            item["headline_percent_delta"],
            0,
        )
        assert_false(
            f"iwooos_projection.awooop_cross_session_handoff_packets.{item['packet_id']}.production_landing_enabled",
            item["production_landing_enabled"],
        )
        assert_false(
            f"iwooos_projection.awooop_cross_session_handoff_packets.{item['packet_id']}.execution_router_linked",
            item["execution_router_linked"],
        )
        assert_false(
            f"iwooos_projection.awooop_cross_session_handoff_packets.{item['packet_id']}.progress_change_applied",
            item["progress_change_applied"],
        )
        assert_false(
            f"iwooos_projection.awooop_cross_session_handoff_packets.{item['packet_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.awooop_cross_session_handoff_packets.{item['packet_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.awooop_cross_session_handoff_packets.{item['packet_id']}.not_authorization",
            item["not_authorization"],
        )
    expected_progress_hold_movement_gate_ids = [
        "progress_hold_owner_response_accepted",
        "progress_hold_redacted_payload_ingested",
        "progress_hold_active_runtime_gate",
        "progress_hold_github_primary_ready",
        "progress_hold_awooop_read_only_landing",
    ]
    assert_equal(
        "iwooos_projection.summary.progress_hold_movement_gate_count",
        iwooos_projection["summary"]["progress_hold_movement_gate_count"],
        len(expected_progress_hold_movement_gate_ids),
    )
    progress_hold_movement_gates = iwooos_projection["progress_hold_movement_gates"]
    assert_equal(
        "iwooos_projection.progress_hold_movement_gates.gate_ids",
        [item["gate_id"] for item in progress_hold_movement_gates],
        expected_progress_hold_movement_gate_ids,
    )
    assert_equal(
        "iwooos_projection.progress_hold_movement_gates.display_order",
        [item["display_order"] for item in progress_hold_movement_gates],
        list(range(1, len(expected_progress_hold_movement_gate_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.progress_hold_movement_gates.movement_signals",
        [item["movement_signal"] for item in progress_hold_movement_gates],
        [
            "owner_response_accepted",
            "redacted_payload_ingested",
            "active_runtime_gate",
            "github_primary_ready",
            "awooop_read_only_landing",
        ],
    )
    assert_equal(
        "iwooos_projection.progress_hold_movement_gates.current_counter_names",
        [item["current_counter_name"] for item in progress_hold_movement_gates],
        [
            "owner_response_validation_accepted_count",
            "payloads_ingested",
            "active_runtime_gate_count",
            "github_primary_ready_count",
            "awooop_read_only_production_landing_evidence_count",
        ],
    )
    assert_equal(
        "iwooos_projection.progress_hold_movement_gates.current_counter_values",
        [item["current_counter_value"] for item in progress_hold_movement_gates],
        [0, False, 0, 0, 1],
    )
    for item in progress_hold_movement_gates:
        awooop_landing_gate = item["gate_id"] == "progress_hold_awooop_read_only_landing"
        assert_equal(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.display_mode",
            item["display_mode"],
            "progress_hold_movement_gate_only",
        )
        assert_equal(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.headline_percent_delta",
            item["headline_percent_delta"],
            3 if awooop_landing_gate else 0,
        )
        assert_equal(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.owner_response_received_count",
            item["owner_response_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.owner_response_accepted_count",
            item["owner_response_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.payloads_ingested",
            item["payloads_ingested"],
        )
        assert_equal(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.active_runtime_gate_count",
            item["active_runtime_gate_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.github_primary_ready_count",
            item["github_primary_ready_count"],
            0,
        )
        if awooop_landing_gate:
            assert_true(
                f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.production_landing_enabled",
                item["production_landing_enabled"],
            )
            assert_true(
                f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.progress_change_applied",
                item["progress_change_applied"],
            )
        else:
            assert_false(
                f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.production_landing_enabled",
                item["production_landing_enabled"],
            )
            assert_false(
                f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.progress_change_applied",
                item["progress_change_applied"],
            )
        assert_false(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.progress_hold_movement_gates.{item['gate_id']}.not_authorization",
            item["not_authorization"],
        )
    assert_equal(
        "iwooos_projection.summary.progress_acceleration_lane_count",
        iwooos_projection["summary"]["progress_acceleration_lane_count"],
        6,
    )
    progress_acceleration_lanes = iwooos_projection["progress_acceleration_lanes"]
    expected_progress_acceleration_lane_ids = [
        "progress_acceleration_owner_responses",
        "progress_acceleration_redacted_ingestion",
        "progress_acceleration_runtime_gate",
        "progress_acceleration_github_readiness",
        "progress_acceleration_awooop_landing",
        "progress_acceleration_cadence_compression",
    ]
    assert_equal(
        "iwooos_projection.progress_acceleration_lanes.lane_ids",
        [item["lane_id"] for item in progress_acceleration_lanes],
        expected_progress_acceleration_lane_ids,
    )
    assert_equal(
        "iwooos_projection.progress_acceleration_lanes.display_order",
        [item["display_order"] for item in progress_acceleration_lanes],
        list(range(1, len(expected_progress_acceleration_lane_ids) + 1)),
    )
    for item in progress_acceleration_lanes:
        assert_equal(
            f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "progress_acceleration_only",
        )
        assert_equal(
            f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.owner_response_received_count",
            item["owner_response_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.owner_response_accepted_count",
            item["owner_response_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.payloads_ingested",
            item["payloads_ingested"],
        )
        assert_equal(
            f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.active_runtime_gate_count",
            item["active_runtime_gate_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.github_primary_ready_count",
            item["github_primary_ready_count"],
            0,
        )
        if item["lane_id"] == "progress_acceleration_awooop_landing":
            assert_true(
                f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.production_landing_enabled",
                item["production_landing_enabled"],
            )
        else:
            assert_false(
                f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.production_landing_enabled",
                item["production_landing_enabled"],
            )
        assert_false(
            f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.progress_acceleration_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    expected_owner_response_next_action_focus_ids = [
        "owner_response_focus_s4_9_gitea_owner_attestation",
        "owner_response_focus_s4_10_github_target_owner_decision",
        "owner_response_focus_s4_11_refs_truth_owner_response",
        "owner_response_focus_s4_12_workflow_secret_name_owner_response",
    ]
    assert_equal(
        "iwooos_projection.summary.owner_response_next_action_focus_item_count",
        iwooos_projection["summary"]["owner_response_next_action_focus_item_count"],
        len(expected_owner_response_next_action_focus_ids),
    )
    owner_response_focus_items = iwooos_projection["owner_response_next_action_focus_items"]
    assert_equal(
        "iwooos_projection.owner_response_next_action_focus_items.ids",
        [item["focus_id"] for item in owner_response_focus_items],
        expected_owner_response_next_action_focus_ids,
    )
    assert_equal(
        "iwooos_projection.owner_response_next_action_focus_items.display_order",
        [item["display_order"] for item in owner_response_focus_items],
        list(range(1, len(expected_owner_response_next_action_focus_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.owner_response_next_action_focus_items.source_rollup_lane_ids",
        [item["source_rollup_lane_id"] for item in owner_response_focus_items],
        [
            "s4_9_gitea_inventory_owner_attestation_response",
            "s4_10_github_target_owner_decision_response",
            "s4_11_ref_truth_owner_response",
            "s4_12_workflow_secret_name_owner_response",
        ],
    )
    assert_equal(
        "iwooos_projection.owner_response_next_action_focus_items.blocked_until_previous_focus_accepted",
        [item["blocked_until_previous_focus_accepted"] for item in owner_response_focus_items],
        [False, True, True, True],
    )
    for item in owner_response_focus_items:
        assert_equal(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.display_mode",
            item["display_mode"],
            "owner_response_next_action_focus_only",
        )
        assert_equal(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.owner_response_received_count",
            item["owner_response_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.owner_response_accepted_count",
            item["owner_response_accepted_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.owner_response_rejected_count",
            item["owner_response_rejected_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.audit_events_emitted_count",
            item["audit_events_emitted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.auto_chase_allowed",
            item["auto_chase_allowed"],
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.autofill_allowed",
            item["autofill_allowed"],
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.mark_received_allowed",
            item["mark_received_allowed"],
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.mark_accepted_allowed",
            item["mark_accepted_allowed"],
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.approval_record_created",
            item["approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.repo_or_refs_mutation_allowed",
            item["repo_or_refs_mutation_allowed"],
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.owner_response_next_action_focus_items.{item['focus_id']}.not_authorization",
            item["not_authorization"],
        )
    source_control_readiness_items = iwooos_projection["source_control_primary_readiness_items"]
    assert_equal(
        "iwooos_projection.source_control_primary_readiness_items.ids",
        [item["item_id"] for item in source_control_readiness_items],
        expected_iwooos_source_control_primary_readiness_item_ids,
    )
    assert_equal(
        "iwooos_projection.source_control_primary_readiness_items.display_order",
        [item["display_order"] for item in source_control_readiness_items],
        list(range(1, len(expected_iwooos_source_control_primary_readiness_item_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.source_control_primary_readiness_items.gate_ids",
        [item["gate_id"] for item in source_control_readiness_items],
        ["S4.0", "S4.0", "S4.13", "S4.11", "S4.12", "S4.4"],
    )
    for item in source_control_readiness_items:
        assert_equal(
            f"iwooos_projection.source_control_primary_readiness_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "github_primary_readiness_only",
        )
        assert_equal(
            f"iwooos_projection.source_control_primary_readiness_items.{item['item_id']}.primary_ready_count",
            item["primary_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.source_control_primary_readiness_items.{item['item_id']}.owner_response_received_count",
            item["owner_response_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.source_control_primary_readiness_items.{item['item_id']}.owner_response_accepted_count",
            item["owner_response_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.source_control_primary_readiness_items.{item['item_id']}.github_primary_switch_authorized",
            item["github_primary_switch_authorized"],
        )
        assert_false(
            f"iwooos_projection.source_control_primary_readiness_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.source_control_primary_readiness_items.{item['item_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.source_control_primary_readiness_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    expected_s4_9_owner_response_request_template_ids = [
        "response-public-only-vs-local-gitea-gap",
        "response-org-user-endpoint-identity",
        "response-internal-110-adjacent-scope",
        "response-repo-owner-canonical-scope",
        "response-legacy-or-inaccessible-disposition",
    ]
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_request_template_count",
        iwooos_projection["summary"]["s4_9_owner_response_request_template_count"],
        len(expected_s4_9_owner_response_request_template_ids),
    )
    assert_equal(
        "s49_request_draft.schema_version",
        s49_request_draft["schema_version"],
        "gitea_inventory_owner_attestation_request_draft_v1",
    )
    assert_equal("s49_request_draft.status", s49_request_draft["status"], "request_draft_ready_not_sent")
    assert_equal("s49_request_draft.stage_id", s49_request_draft["stage_id"], "S4.9")
    assert_equal("s49_request_draft.mode", s49_request_draft["mode"], "owner_request_draft_only")
    assert_false("s49_request_draft.runtime_execution_authorized", s49_request_draft["runtime_execution_authorized"])
    assert_true(
        "s49_request_draft.summary.request_draft_package_ready",
        s49_request_draft["summary"]["request_draft_package_ready"],
    )
    assert_equal(
        "s49_request_draft.summary.request_draft_template_count",
        s49_request_draft["summary"]["request_draft_template_count"],
        len(expected_s4_9_owner_response_request_template_ids),
    )
    assert_equal(
        "s49_request_draft.summary.request_draft_template_ready_count",
        s49_request_draft["summary"]["request_draft_template_ready_count"],
        len(expected_s4_9_owner_response_request_template_ids),
    )
    assert_true(
        "s49_request_draft.summary.frontstage_package_visible",
        s49_request_draft["summary"]["frontstage_package_visible"],
    )
    assert_equal(
        "s49_request_draft.summary.frontstage_card_count",
        s49_request_draft["summary"]["frontstage_card_count"],
        len(expected_s4_9_owner_response_request_template_ids),
    )
    assert_true(
        "s49_request_draft.summary.frontstage_detail_visible",
        s49_request_draft["summary"]["frontstage_detail_visible"],
    )
    assert_equal(
        "s49_request_draft.summary.frontstage_detail_row_count",
        s49_request_draft["summary"]["frontstage_detail_row_count"],
        len(expected_s4_9_owner_response_request_template_ids),
    )
    assert_equal(
        "s49_request_draft.summary.frontstage_required_field_total",
        s49_request_draft["summary"]["frontstage_required_field_total"],
        30,
    )
    assert_equal(
        "s49_request_draft.summary.frontstage_forbidden_action_count",
        s49_request_draft["summary"]["frontstage_forbidden_action_count"],
        10,
    )
    assert_false("s49_request_draft.summary.request_sent", s49_request_draft["summary"]["request_sent"])
    assert_equal("s49_request_draft.summary.request_sent_count", s49_request_draft["summary"]["request_sent_count"], 0)
    assert_equal(
        "s49_request_draft.summary.owner_response_received_count",
        s49_request_draft["summary"]["owner_response_received_count"],
        0,
    )
    assert_equal(
        "s49_request_draft.summary.owner_response_accepted_count",
        s49_request_draft["summary"]["owner_response_accepted_count"],
        0,
    )
    assert_equal(
        "s49_request_draft.summary.owner_response_rejected_count",
        s49_request_draft["summary"]["owner_response_rejected_count"],
        0,
    )
    assert_equal(
        "s49_request_draft.summary.audit_events_emitted_count",
        s49_request_draft["summary"]["audit_events_emitted_count"],
        0,
    )
    assert_false("s49_request_draft.summary.runtime_gate_opened", s49_request_draft["summary"]["runtime_gate_opened"])
    assert_false("s49_request_draft.summary.action_buttons_allowed", s49_request_draft["summary"]["action_buttons_allowed"])
    assert_true("s49_request_draft.summary.not_authorization", s49_request_draft["summary"]["not_authorization"])
    assert_equal(
        "s49_request_draft.request_draft_templates.ids",
        [item["template_id"] for item in s49_request_draft["request_draft_templates"]],
        expected_s4_9_owner_response_request_template_ids,
    )
    assert_equal(
        "s49_request_draft.request_draft_templates.display_order",
        [item["display_order"] for item in s49_request_draft["request_draft_templates"]],
        list(range(1, len(expected_s4_9_owner_response_request_template_ids) + 1)),
    )
    for item in s49_request_draft["request_draft_templates"]:
        assert_equal(
            f"s49_request_draft.request_draft_templates.{item['template_id']}.draft_status",
            item["draft_status"],
            "ready_not_sent",
        )
    s4_9_owner_response_request_templates = iwooos_projection["s4_9_owner_response_request_templates"]
    assert_equal(
        "iwooos_projection.s4_9_owner_response_request_templates.ids",
        [item["template_id"] for item in s4_9_owner_response_request_templates],
        expected_s4_9_owner_response_request_template_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_request_templates.display_order",
        [item["display_order"] for item in s4_9_owner_response_request_templates],
        list(range(1, len(expected_s4_9_owner_response_request_template_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_request_templates.source_template_status_ids",
        [item["source_template_status_id"] for item in s4_9_owner_response_request_templates],
        expected_s4_9_owner_response_request_template_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_request_templates.attestation_item_ids",
        [item["attestation_item_id"] for item in s4_9_owner_response_request_templates],
        [
            "public_only_vs_local_gitea_gap",
            "org_user_endpoint_identity",
            "internal_110_adjacent_scope",
            "repo_owner_canonical_scope",
            "legacy_or_inaccessible_repo_disposition",
        ],
    )
    for item in s4_9_owner_response_request_templates:
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.request_status",
            item["request_status"],
            "request_ready_not_sent",
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.current_state",
            item["current_state"],
            "waiting_owner_response",
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.display_mode",
            item["display_mode"],
            "s4_9_owner_response_request_template_only",
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.request_sent_count",
            item["request_sent_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.owner_response_received_count",
            item["owner_response_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.owner_response_accepted_count",
            item["owner_response_accepted_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.owner_response_rejected_count",
            item["owner_response_rejected_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.audit_events_emitted_count",
            item["audit_events_emitted_count"],
            0,
        )
        for flag in [
            "auto_chase_allowed",
            "autofill_allowed",
            "request_send_allowed",
            "mark_received_allowed",
            "mark_accepted_allowed",
            "approval_record_created",
            "gitea_inventory_completed",
            "gitea_write_allowed",
            "repo_or_refs_mutation_allowed",
            "github_primary_ready",
            "secret_value_collection_allowed",
            "runtime_execution_authorized",
            "action_buttons_allowed",
        ]:
            assert_false(
                f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.{flag}",
                item[flag],
            )
        assert_true(
            f"iwooos_projection.s4_9_owner_response_request_templates.{item['template_id']}.not_authorization",
            item["not_authorization"],
        )
    expected_s4_9_owner_response_preflight_ids = [
        "s4_9_preflight_known_attestation_item",
        "s4_9_preflight_required_owner_fields",
        "s4_9_preflight_allowed_decision",
        "s4_9_preflight_redacted_evidence_only",
        "s4_9_preflight_no_execution_request",
        "s4_9_preflight_all_five_items_before_accepted",
    ]
    assert_equal(
        "iwooos_projection.summary.s4_9_owner_response_preflight_check_count",
        iwooos_projection["summary"]["s4_9_owner_response_preflight_check_count"],
        len(expected_s4_9_owner_response_preflight_ids),
    )
    s4_9_owner_response_preflight_checks = iwooos_projection["s4_9_owner_response_preflight_checks"]
    assert_equal(
        "iwooos_projection.s4_9_owner_response_preflight_checks.ids",
        [item["preflight_id"] for item in s4_9_owner_response_preflight_checks],
        expected_s4_9_owner_response_preflight_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_preflight_checks.display_order",
        [item["display_order"] for item in s4_9_owner_response_preflight_checks],
        list(range(1, len(expected_s4_9_owner_response_preflight_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_preflight_checks.source_check_ids",
        [item["source_check_id"] for item in s4_9_owner_response_preflight_checks],
        [
            "preflight-known-attestation-item",
            "preflight-required-owner-fields",
            "preflight-allowed-decision",
            "preflight-redacted-evidence-only",
            "preflight-no-execution-request",
            "preflight-all-five-items-before-accepted",
        ],
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_preflight_checks.failure_lanes",
        [item["failure_lane"] for item in s4_9_owner_response_preflight_checks],
        [
            "request_owner_correction",
            "request_more_evidence",
            "request_owner_correction",
            "quarantine_sensitive_payload",
            "reject_execution_request",
            "keep_waiting_owner_response",
        ],
    )
    for item in s4_9_owner_response_preflight_checks:
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.source_packet",
            item["source_packet"],
            "docs/security/GITEA-INVENTORY-OWNER-ATTESTATION-RESPONSE.md",
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.display_mode",
            item["display_mode"],
            "s4_9_owner_response_preflight_only",
        )
        assert_true(f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.required", item["required"])
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.request_sent_count",
            item["request_sent_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.owner_response_received_count",
            item["owner_response_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.owner_response_accepted_count",
            item["owner_response_accepted_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.owner_response_rejected_count",
            item["owner_response_rejected_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.preflight_passed_count",
            item["preflight_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.audit_events_emitted_count",
            item["audit_events_emitted_count"],
            0,
        )
        for flag in [
            "request_sent_allowed",
            "owner_response_collection_allowed",
            "mark_passed_allowed",
            "mark_received_allowed",
            "mark_accepted_allowed",
            "approval_record_created",
            "runtime_gate_opened",
            "gitea_write_allowed",
            "repo_or_refs_mutation_allowed",
            "secret_value_collection_allowed",
            "sensitive_payload_allowed",
            "runtime_execution_authorized",
            "action_buttons_allowed",
        ]:
            assert_false(
                f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.{flag}",
                item[flag],
            )
        assert_true(
            f"iwooos_projection.s4_9_owner_response_preflight_checks.{item['preflight_id']}.not_authorization",
            item["not_authorization"],
        )
    assert_equal(
        "iwooos_projection.posture_pillars.ids",
        [item["pillar_id"] for item in iwooos_projection["posture_pillars"]],
        ["exposure_posture", "source_control_supply_chain", "kali_112_mesh", "approval_boundary"],
    )
    assert_equal(
        "iwooos_projection.posture_pillars.display_order",
        [item["display_order"] for item in iwooos_projection["posture_pillars"]],
        [1, 2, 3, 4],
    )
    for item in iwooos_projection["posture_pillars"]:
        assert_equal(f"iwooos_projection.posture_pillars.{item['pillar_id']}.display_mode", item["display_mode"], "posture_only")
        assert_false(
            f"iwooos_projection.posture_pillars.{item['pillar_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(f"iwooos_projection.posture_pillars.{item['pillar_id']}.not_authorization", item["not_authorization"])
    iwooos_surfaces = iwooos_projection["existing_frontend_surfaces"]
    assert_equal(
        "iwooos_projection.existing_frontend_surfaces.ids",
        [item["surface_id"] for item in iwooos_surfaces],
        expected_iwooos_surface_ids,
    )
    assert_equal(
        "iwooos_projection.existing_frontend_surfaces.display_order",
        [item["display_order"] for item in iwooos_surfaces],
        list(range(1, len(expected_iwooos_surface_ids) + 1)),
    )
    for item in iwooos_surfaces:
        assert_equal(
            f"iwooos_projection.existing_frontend_surfaces.{item['surface_id']}.display_mode",
            item["display_mode"],
            "link_only",
        )
        assert_false(
            f"iwooos_projection.existing_frontend_surfaces.{item['surface_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.existing_frontend_surfaces.{item['surface_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.existing_frontend_surfaces.{item['surface_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_surface_bridge_statuses = iwooos_projection["frontend_surface_reverse_bridge_statuses"]
    assert_equal(
        "iwooos_projection.frontend_surface_reverse_bridge_statuses.ids",
        [item["surface_id"] for item in iwooos_surface_bridge_statuses],
        expected_iwooos_surface_ids,
    )
    assert_equal(
        "iwooos_projection.frontend_surface_reverse_bridge_statuses.display_order",
        [item["display_order"] for item in iwooos_surface_bridge_statuses],
        list(range(1, len(expected_iwooos_surface_ids) + 1)),
    )
    expected_iwooos_surface_bridge_states = [
        "embedded_bridge_visible",
        "direct_bridge_visible",
        "direct_bridge_visible",
        "direct_bridge_visible",
        "direct_bridge_visible",
        "direct_bridge_visible",
        "direct_bridge_visible",
        "direct_bridge_visible",
        "awooop_candidate_visible",
        "review_handoff_candidate_visible",
    ]
    assert_equal(
        "iwooos_projection.frontend_surface_reverse_bridge_statuses.states",
        [item["reverse_bridge_state"] for item in iwooos_surface_bridge_statuses],
        expected_iwooos_surface_bridge_states,
    )
    for item in iwooos_surface_bridge_statuses:
        assert_equal(
            f"iwooos_projection.frontend_surface_reverse_bridge_statuses.{item['surface_id']}.display_mode",
            item["display_mode"],
            "reverse_bridge_status_only",
        )
        assert_false(
            f"iwooos_projection.frontend_surface_reverse_bridge_statuses.{item['surface_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.frontend_surface_reverse_bridge_statuses.{item['surface_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.frontend_surface_reverse_bridge_statuses.{item['surface_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_coverage_groups = iwooos_projection["frontend_surface_coverage_groups"]
    assert_equal(
        "iwooos_projection.frontend_surface_coverage_groups.ids",
        [item["group_id"] for item in iwooos_coverage_groups],
        expected_iwooos_coverage_group_ids,
    )
    assert_equal(
        "iwooos_projection.frontend_surface_coverage_groups.display_order",
        [item["display_order"] for item in iwooos_coverage_groups],
        list(range(1, len(expected_iwooos_coverage_group_ids) + 1)),
    )
    covered_surface_ids = sorted({surface_id for item in iwooos_coverage_groups for surface_id in item["surface_ids"]})
    assert_equal("iwooos_projection.frontend_surface_coverage_groups.coverage", covered_surface_ids, sorted(expected_iwooos_surface_ids))
    for item in iwooos_coverage_groups:
        assert_equal(
            f"iwooos_projection.frontend_surface_coverage_groups.{item['group_id']}.display_mode",
            item["display_mode"],
            "coverage_only",
        )
        assert_false(
            f"iwooos_projection.frontend_surface_coverage_groups.{item['group_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.frontend_surface_coverage_groups.{item['group_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.frontend_surface_coverage_groups.{item['group_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_conflict_controls = iwooos_projection["frontend_surface_conflict_controls"]
    assert_equal(
        "iwooos_projection.frontend_surface_conflict_controls.ids",
        [item["control_id"] for item in iwooos_conflict_controls],
        expected_iwooos_conflict_control_ids,
    )
    assert_equal(
        "iwooos_projection.frontend_surface_conflict_controls.display_order",
        [item["display_order"] for item in iwooos_conflict_controls],
        list(range(1, len(expected_iwooos_conflict_control_ids) + 1)),
    )
    for item in iwooos_conflict_controls:
        assert_equal(
            f"iwooos_projection.frontend_surface_conflict_controls.{item['control_id']}.display_mode",
            item["display_mode"],
            "conflict_control_only",
        )
        assert_false(
            f"iwooos_projection.frontend_surface_conflict_controls.{item['control_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.frontend_surface_conflict_controls.{item['control_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.frontend_surface_conflict_controls.{item['control_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_journey_steps = iwooos_projection["operator_journey_steps"]
    assert_equal(
        "iwooos_projection.operator_journey_steps.ids",
        [item["step_id"] for item in iwooos_journey_steps],
        expected_iwooos_journey_step_ids,
    )
    assert_equal(
        "iwooos_projection.operator_journey_steps.display_order",
        [item["display_order"] for item in iwooos_journey_steps],
        list(range(1, len(expected_iwooos_journey_step_ids) + 1)),
    )
    for item in iwooos_journey_steps:
        assert_equal(
            f"iwooos_projection.operator_journey_steps.{item['step_id']}.display_mode",
            item["display_mode"],
            "journey_only",
        )
        assert_false(
            f"iwooos_projection.operator_journey_steps.{item['step_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.operator_journey_steps.{item['step_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.operator_journey_steps.{item['step_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_evidence_readiness = iwooos_projection["owner_evidence_readiness_items"]
    assert_equal(
        "iwooos_projection.owner_evidence_readiness_items.ids",
        [item["item_id"] for item in iwooos_evidence_readiness],
        expected_iwooos_evidence_readiness_item_ids,
    )
    assert_equal(
        "iwooos_projection.owner_evidence_readiness_items.display_order",
        [item["display_order"] for item in iwooos_evidence_readiness],
        list(range(1, len(expected_iwooos_evidence_readiness_item_ids) + 1)),
    )
    for item in iwooos_evidence_readiness:
        assert_equal(
            f"iwooos_projection.owner_evidence_readiness_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "readiness_only",
        )
        assert_equal(
            f"iwooos_projection.owner_evidence_readiness_items.{item['item_id']}.received_count",
            item["received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.owner_evidence_readiness_items.{item['item_id']}.accepted_count",
            item["accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.owner_evidence_readiness_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.owner_evidence_readiness_items.{item['item_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.owner_evidence_readiness_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_coverage = iwooos_projection["host_coverage_items"]
    assert_equal(
        "iwooos_projection.host_coverage_items.ids",
        [item["host_id"] for item in iwooos_host_coverage],
        expected_iwooos_host_coverage_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_coverage_items.display_order",
        [item["display_order"] for item in iwooos_host_coverage],
        list(range(1, len(expected_iwooos_host_coverage_item_ids) + 1)),
    )
    for item in iwooos_host_coverage:
        assert_equal(
            f"iwooos_projection.host_coverage_items.{item['host_id']}.display_mode",
            item["display_mode"],
            "coverage_only",
        )
        assert_false(
            f"iwooos_projection.host_coverage_items.{item['host_id']}.active_scan_authorized",
            item["active_scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_coverage_items.{item['host_id']}.ssh_change_authorized",
            item["ssh_change_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_coverage_items.{item['host_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_coverage_items.{item['host_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_coverage_items.{item['host_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_kali_maintenance_readiness = iwooos_projection["kali_maintenance_readiness_items"]
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.ids",
        [item["item_id"] for item in iwooos_kali_maintenance_readiness],
        expected_iwooos_kali_maintenance_readiness_item_ids,
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.display_order",
        [item["display_order"] for item in iwooos_kali_maintenance_readiness],
        list(range(1, len(expected_iwooos_kali_maintenance_readiness_item_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.upgradable_package_count",
        iwooos_kali_maintenance_readiness[2]["metric_value"],
        1994,
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.failed_systemd_unit_count",
        iwooos_kali_maintenance_readiness[3]["metric_value"],
        1,
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.scanner_health",
        iwooos_kali_maintenance_readiness[1]["metric_value"],
        "healthy",
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.scanner_api_health_endpoint",
        iwooos_kali_maintenance_readiness[1]["scanner_api_health_endpoint"],
        "127.0.0.1:8080/health",
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.scanner_service_state",
        iwooos_kali_maintenance_readiness[1]["scanner_service_state"],
        "active",
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.scanner_service_enabled",
        iwooos_kali_maintenance_readiness[1]["scanner_service_enabled"],
        "enabled",
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.failed_unit_name",
        iwooos_kali_maintenance_readiness[3]["failed_unit_name"],
        "networking.service",
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.hardening_enabled_count",
        iwooos_kali_maintenance_readiness[4]["enabled_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.hardening_expected_count",
        iwooos_kali_maintenance_readiness[4]["expected_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.hardening_missing_controls",
        iwooos_kali_maintenance_readiness[4]["missing_controls"],
        ["NoNewPrivileges", "PrivateTmp", "ProtectSystem", "ProtectHome"],
    )
    assert_equal(
        "iwooos_projection.kali_maintenance_readiness_items.reboot_gate_queue_item",
        iwooos_kali_maintenance_readiness[5]["source_queue_item_id"],
        "kali-full-upgrade-reboot-approval-20260513",
    )
    for item in iwooos_kali_maintenance_readiness:
        assert_equal(
            f"iwooos_projection.kali_maintenance_readiness_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "maintenance_readiness_only",
        )
        assert_false(
            f"iwooos_projection.kali_maintenance_readiness_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        if "full_upgrade_authorized" in item:
            assert_false(
                f"iwooos_projection.kali_maintenance_readiness_items.{item['item_id']}.full_upgrade_authorized",
                item["full_upgrade_authorized"],
            )
        if "reboot_authorized" in item:
            assert_false(
                f"iwooos_projection.kali_maintenance_readiness_items.{item['item_id']}.reboot_authorized",
                item["reboot_authorized"],
            )
        if "package_update_executed" in item:
            assert_false(
                f"iwooos_projection.kali_maintenance_readiness_items.{item['item_id']}.package_update_executed",
                item["package_update_executed"],
            )
        if "host_reboot_executed" in item:
            assert_false(
                f"iwooos_projection.kali_maintenance_readiness_items.{item['item_id']}.host_reboot_executed",
                item["host_reboot_executed"],
            )
        if "active_scan_executed" in item:
            assert_false(
                f"iwooos_projection.kali_maintenance_readiness_items.{item['item_id']}.active_scan_executed",
                item["active_scan_executed"],
            )
        if "action_buttons_allowed" in item:
            assert_false(
                f"iwooos_projection.kali_maintenance_readiness_items.{item['item_id']}.action_buttons_allowed",
                item["action_buttons_allowed"],
            )
        assert_true(
            f"iwooos_projection.kali_maintenance_readiness_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_action_gates = iwooos_projection["host_action_gate_items"]
    assert_equal(
        "iwooos_projection.host_action_gate_items.ids",
        [item["action_id"] for item in iwooos_host_action_gates],
        expected_iwooos_host_action_gate_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_action_gate_items.display_order",
        [item["display_order"] for item in iwooos_host_action_gates],
        list(range(1, len(expected_iwooos_host_action_gate_item_ids) + 1)),
    )
    for item in iwooos_host_action_gates:
        assert_equal(
            f"iwooos_projection.host_action_gate_items.{item['action_id']}.display_mode",
            item["display_mode"],
            "gate_only",
        )
        assert_false(
            f"iwooos_projection.host_action_gate_items.{item['action_id']}.active_scan_authorized",
            item["active_scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_action_gate_items.{item['action_id']}.credentialed_scan_authorized",
            item["credentialed_scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_action_gate_items.{item['action_id']}.ssh_change_authorized",
            item["ssh_change_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_action_gate_items.{item['action_id']}.host_update_authorized",
            item["host_update_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_action_gate_items.{item['action_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_action_gate_items.{item['action_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_action_gate_items.{item['action_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_evidence_readiness = iwooos_projection["host_evidence_readiness_items"]
    assert_equal(
        "iwooos_projection.host_evidence_readiness_items.ids",
        [item["item_id"] for item in iwooos_host_evidence_readiness],
        expected_iwooos_host_evidence_readiness_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_evidence_readiness_items.display_order",
        [item["display_order"] for item in iwooos_host_evidence_readiness],
        list(range(1, len(expected_iwooos_host_evidence_readiness_item_ids) + 1)),
    )
    for item in iwooos_host_evidence_readiness:
        assert_equal(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "evidence_readiness_only",
        )
        assert_equal(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.received_count",
            item["received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.accepted_count",
            item["accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.active_scan_authorized",
            item["active_scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.credentialed_scan_authorized",
            item["credentialed_scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.ssh_change_authorized",
            item["ssh_change_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.host_update_authorized",
            item["host_update_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_evidence_readiness_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_evidence_collection_order = iwooos_projection["host_evidence_collection_order"]
    assert_equal(
        "iwooos_projection.host_evidence_collection_order.ids",
        [item["step_id"] for item in iwooos_host_evidence_collection_order],
        expected_iwooos_host_evidence_collection_step_ids,
    )
    assert_equal(
        "iwooos_projection.host_evidence_collection_order.display_order",
        [item["display_order"] for item in iwooos_host_evidence_collection_order],
        list(range(1, len(expected_iwooos_host_evidence_collection_step_ids) + 1)),
    )
    expected_iwooos_host_evidence_collection_source_ids = [
        "host_scope_boundary_evidence",
        "host_owner_decision_record_evidence",
        "host_credential_handling_evidence",
        "host_maintenance_window_evidence",
        "host_rollback_plan_evidence",
        "host_validation_metrics_evidence",
        "host_redacted_ingestion_evidence",
    ]
    assert_equal(
        "iwooos_projection.host_evidence_collection_order.source_item_ids",
        [item["source_item_id"] for item in iwooos_host_evidence_collection_order],
        expected_iwooos_host_evidence_collection_source_ids,
    )
    expected_iwooos_host_evidence_collection_dependencies = [
        [],
        ["collect_scope_boundary_first"],
        ["collect_owner_decision_second"],
        ["collect_owner_decision_second"],
        ["collect_maintenance_window_fourth"],
        ["collect_rollback_plan_fifth"],
        ["collect_validation_metrics_sixth"],
    ]
    assert_equal(
        "iwooos_projection.host_evidence_collection_order.depends_on_step_ids",
        [item["depends_on_step_ids"] for item in iwooos_host_evidence_collection_order],
        expected_iwooos_host_evidence_collection_dependencies,
    )
    for item in iwooos_host_evidence_collection_order:
        assert_equal(
            f"iwooos_projection.host_evidence_collection_order.{item['step_id']}.display_mode",
            item["display_mode"],
            "collection_order_only",
        )
        assert_equal(
            f"iwooos_projection.host_evidence_collection_order.{item['step_id']}.received_count",
            item["received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_evidence_collection_order.{item['step_id']}.accepted_count",
            item["accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_evidence_collection_order.{item['step_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_collection_order.{item['step_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_evidence_collection_order.{item['step_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_evidence_intake_preflight = iwooos_projection["host_evidence_intake_preflight_checks"]
    assert_equal(
        "iwooos_projection.host_evidence_intake_preflight_checks.ids",
        [item["check_id"] for item in iwooos_host_evidence_intake_preflight],
        expected_iwooos_host_evidence_intake_preflight_check_ids,
    )
    assert_equal(
        "iwooos_projection.host_evidence_intake_preflight_checks.display_order",
        [item["display_order"] for item in iwooos_host_evidence_intake_preflight],
        list(range(1, len(expected_iwooos_host_evidence_intake_preflight_check_ids) + 1)),
    )
    expected_iwooos_host_evidence_intake_preflight_rejection_lanes = [
        "reject_missing_redacted_metadata_pointer",
        "quarantine_dependency_skip",
        "reject_scan_without_scope",
        "reject_change_without_owner_decision",
        "reject_plaintext_credential_or_secret_value",
        "reject_raw_payload_ingestion",
        "reject_frontend_counter_transition",
    ]
    assert_equal(
        "iwooos_projection.host_evidence_intake_preflight_checks.rejection_lanes",
        [item["rejection_lane"] for item in iwooos_host_evidence_intake_preflight],
        expected_iwooos_host_evidence_intake_preflight_rejection_lanes,
    )
    for item in iwooos_host_evidence_intake_preflight:
        assert_equal(
            f"iwooos_projection.host_evidence_intake_preflight_checks.{item['check_id']}.display_mode",
            item["display_mode"],
            "intake_preflight_only",
        )
        assert_equal(
            f"iwooos_projection.host_evidence_intake_preflight_checks.{item['check_id']}.received_count",
            item["received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_evidence_intake_preflight_checks.{item['check_id']}.accepted_count",
            item["accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_evidence_intake_preflight_checks.{item['check_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_intake_preflight_checks.{item['check_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_intake_preflight_checks.{item['check_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_intake_preflight_checks.{item['check_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_evidence_intake_preflight_checks.{item['check_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_evidence_review_outcome_lanes = iwooos_projection["host_evidence_review_outcome_lanes"]
    assert_equal(
        "iwooos_projection.host_evidence_review_outcome_lanes.ids",
        [item["lane_id"] for item in iwooos_host_evidence_review_outcome_lanes],
        expected_iwooos_host_evidence_review_outcome_lane_ids,
    )
    assert_equal(
        "iwooos_projection.host_evidence_review_outcome_lanes.display_order",
        [item["display_order"] for item in iwooos_host_evidence_review_outcome_lanes],
        list(range(1, len(expected_iwooos_host_evidence_review_outcome_lane_ids) + 1)),
    )
    expected_iwooos_host_evidence_review_outcome_states = [
        "candidate_only_not_received",
        "needs_scope_evidence",
        "needs_owner_decision_pointer",
        "quarantine_dependency_skip",
        "rejected_raw_payload",
        "rejected_plaintext_credential",
        "waiting_followup_runtime_gate",
    ]
    assert_equal(
        "iwooos_projection.host_evidence_review_outcome_lanes.outcome_states",
        [item["outcome_state"] for item in iwooos_host_evidence_review_outcome_lanes],
        expected_iwooos_host_evidence_review_outcome_states,
    )
    for item in iwooos_host_evidence_review_outcome_lanes:
        assert_equal(
            f"iwooos_projection.host_evidence_review_outcome_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "review_outcome_only",
        )
        assert_equal(
            f"iwooos_projection.host_evidence_review_outcome_lanes.{item['lane_id']}.received_count",
            item["received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_evidence_review_outcome_lanes.{item['lane_id']}.accepted_count",
            item["accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_evidence_review_outcome_lanes.{item['lane_id']}.approval_record_created",
            item["approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_review_outcome_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_review_outcome_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            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"],
        )
    iwooos_host_evidence_reviewer_checklist = iwooos_projection["host_evidence_reviewer_checklist_items"]
    assert_equal(
        "iwooos_projection.host_evidence_reviewer_checklist_items.ids",
        [item["check_id"] for item in iwooos_host_evidence_reviewer_checklist],
        expected_iwooos_host_evidence_reviewer_checklist_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_evidence_reviewer_checklist_items.display_order",
        [item["display_order"] for item in iwooos_host_evidence_reviewer_checklist],
        list(range(1, len(expected_iwooos_host_evidence_reviewer_checklist_item_ids) + 1)),
    )
    expected_iwooos_host_evidence_reviewer_checklist_pass_conditions = [
        "redacted_scope_pointer_only_no_scan_started",
        "decision_pointer_only_no_approval_record_created",
        "secret_value_collection_false",
        "raw_payload_allowed_false",
        "future_change_conditions_only_no_change_execution",
        "validation_pointer_only_runtime_gate_closed",
        "active_runtime_gates_zero_action_buttons_false",
    ]
    assert_equal(
        "iwooos_projection.host_evidence_reviewer_checklist_items.pass_conditions",
        [item["pass_condition"] for item in iwooos_host_evidence_reviewer_checklist],
        expected_iwooos_host_evidence_reviewer_checklist_pass_conditions,
    )
    for item in iwooos_host_evidence_reviewer_checklist:
        assert_equal(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.display_mode",
            item["display_mode"],
            "reviewer_checklist_only",
        )
        assert_equal(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.received_count",
            item["received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.accepted_count",
            item["accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.approval_record_created",
            item["approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_evidence_reviewer_checklist_items.{item['check_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_evidence_reviewer_outcome_lanes = iwooos_projection["host_evidence_reviewer_outcome_lanes"]
    assert_equal(
        "iwooos_projection.host_evidence_reviewer_outcome_lanes.ids",
        [item["lane_id"] for item in iwooos_host_evidence_reviewer_outcome_lanes],
        expected_iwooos_host_evidence_reviewer_outcome_lane_ids,
    )
    assert_equal(
        "iwooos_projection.host_evidence_reviewer_outcome_lanes.display_order",
        [item["display_order"] for item in iwooos_host_evidence_reviewer_outcome_lanes],
        list(range(1, len(expected_iwooos_host_evidence_reviewer_outcome_lane_ids) + 1)),
    )
    expected_iwooos_host_evidence_reviewer_outcome_states = [
        "candidate_only_not_accepted",
        "needs_scope_rework",
        "needs_owner_decision_refresh",
        "quarantine_credential_metadata_gap",
        "rejected_redaction_failed",
        "needs_rollback_evidence",
        "waiting_separate_runtime_gate",
    ]
    assert_equal(
        "iwooos_projection.host_evidence_reviewer_outcome_lanes.outcome_states",
        [item["outcome_state"] for item in iwooos_host_evidence_reviewer_outcome_lanes],
        expected_iwooos_host_evidence_reviewer_outcome_states,
    )
    for item in iwooos_host_evidence_reviewer_outcome_lanes:
        assert_equal(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "reviewer_outcome_only",
        )
        assert_equal(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.checklist_passed_count",
            item["checklist_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.received_count",
            item["received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.accepted_count",
            item["accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.approval_record_created",
            item["approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_evidence_reviewer_outcome_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_candidate_packets = iwooos_projection["host_owner_decision_candidate_packets"]
    assert_equal(
        "iwooos_projection.host_owner_decision_candidate_packets.ids",
        [item["packet_id"] for item in iwooos_host_owner_decision_candidate_packets],
        expected_iwooos_host_owner_decision_candidate_packet_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_candidate_packets.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_candidate_packets],
        list(range(1, len(expected_iwooos_host_owner_decision_candidate_packet_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_scopes = [
        "scope_boundary_hosts_networks_services_exclusions",
        "observe_only_future_active_or_credentialed_scan_mode",
        "metadata_only_credential_handling_boundary",
        "future_maintenance_window_constraints",
        "rollback_owner_and_recovery_path",
        "post_check_metrics_and_baseline_pointer",
        "separate_runtime_gate_requirement",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_candidate_packets.decision_scopes",
        [item["decision_scope"] for item in iwooos_host_owner_decision_candidate_packets],
        expected_iwooos_host_owner_decision_scopes,
    )
    for item in iwooos_host_owner_decision_candidate_packets:
        assert_equal(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.display_mode",
            item["display_mode"],
            "owner_decision_candidate_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_candidate_packets.{item['packet_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_review_checklist = iwooos_projection["host_owner_decision_review_checklist_items"]
    assert_equal(
        "iwooos_projection.host_owner_decision_review_checklist_items.ids",
        [item["check_id"] for item in iwooos_host_owner_decision_review_checklist],
        expected_iwooos_host_owner_decision_review_checklist_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_review_checklist_items.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_review_checklist],
        list(range(1, len(expected_iwooos_host_owner_decision_review_checklist_item_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_review_guard_conditions = [
        "scope_review_only_owner_decision_received_zero",
        "active_scan_and_credentialed_scan_authorized_false",
        "secret_value_collection_allowed_false",
        "host_update_authorized_false",
        "owner_approval_record_created_false",
        "runtime_gate_opened_false",
        "action_buttons_allowed_false_runtime_gate_separate",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_review_checklist_items.guard_conditions",
        [item["guard_condition"] for item in iwooos_host_owner_decision_review_checklist],
        expected_iwooos_host_owner_decision_review_guard_conditions,
    )
    for item in iwooos_host_owner_decision_review_checklist:
        assert_equal(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.display_mode",
            item["display_mode"],
            "owner_decision_review_checklist_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_review_checklist_items.{item['check_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_review_outcome_lanes = iwooos_projection["host_owner_decision_review_outcome_lanes"]
    assert_equal(
        "iwooos_projection.host_owner_decision_review_outcome_lanes.ids",
        [item["lane_id"] for item in iwooos_host_owner_decision_review_outcome_lanes],
        expected_iwooos_host_owner_decision_review_outcome_lane_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_review_outcome_lanes.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_review_outcome_lanes],
        list(range(1, len(expected_iwooos_host_owner_decision_review_outcome_lane_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_review_outcome_states = [
        "candidate_decision_record_only",
        "needs_scope_refresh",
        "needs_scan_mode_scope_review",
        "quarantine_credential_boundary_gap",
        "needs_maintenance_window",
        "needs_rollback_owner",
        "waiting_separate_runtime_gate",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_review_outcome_lanes.outcome_states",
        [item["outcome_state"] for item in iwooos_host_owner_decision_review_outcome_lanes],
        expected_iwooos_host_owner_decision_review_outcome_states,
    )
    for item in iwooos_host_owner_decision_review_outcome_lanes:
        assert_equal(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "owner_decision_review_outcome_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.owner_decision_review_passed_count",
            item["owner_decision_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_review_outcome_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_draft_packets = iwooos_projection[
        "host_owner_decision_record_draft_packets"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_draft_packets.ids",
        [item["packet_id"] for item in iwooos_host_owner_decision_record_draft_packets],
        expected_iwooos_host_owner_decision_record_draft_packet_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_draft_packets.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_draft_packets],
        list(range(1, len(expected_iwooos_host_owner_decision_record_draft_packet_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_draft_fields = [
        "scope_statement",
        "scan_mode_statement",
        "credential_boundary_statement",
        "maintenance_constraints_statement",
        "rollback_owner_statement",
        "validation_metrics_statement",
        "runtime_gate_pointer_statement",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_draft_packets.draft_fields",
        [item["draft_field"] for item in iwooos_host_owner_decision_record_draft_packets],
        expected_iwooos_host_owner_decision_record_draft_fields,
    )
    for item in iwooos_host_owner_decision_record_draft_packets:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_draft_only",
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_draft_packets.{item['packet_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_draft_review_checklist = iwooos_projection[
        "host_owner_decision_record_draft_review_checklist_items"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_draft_review_checklist_items.ids",
        [item["check_id"] for item in iwooos_host_owner_decision_record_draft_review_checklist],
        expected_iwooos_host_owner_decision_record_draft_review_checklist_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_draft_review_checklist_items.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_draft_review_checklist],
        list(range(1, len(expected_iwooos_host_owner_decision_record_draft_review_checklist_item_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_draft_review_conditions = [
        "scope_statement_metadata_complete",
        "scan_mode_not_authorization_confirmed",
        "credential_boundary_metadata_only_confirmed",
        "maintenance_constraints_no_change_confirmed",
        "rollback_owner_recovery_pointer_readable",
        "validation_metrics_baseline_linked",
        "runtime_gate_separate_and_closed",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_draft_review_checklist_items.review_conditions",
        [item["review_condition"] for item in iwooos_host_owner_decision_record_draft_review_checklist],
        expected_iwooos_host_owner_decision_record_draft_review_conditions,
    )
    for item in iwooos_host_owner_decision_record_draft_review_checklist:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_draft_review_checklist_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.decision_record_review_passed_count",
            item["decision_record_review_passed_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_draft_review_checklist_items.{item['check_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_draft_review_outcome_lanes = iwooos_projection[
        "host_owner_decision_record_draft_review_outcome_lanes"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.ids",
        [item["lane_id"] for item in iwooos_host_owner_decision_record_draft_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_draft_review_outcome_lane_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_draft_review_outcome_lanes],
        list(range(1, len(expected_iwooos_host_owner_decision_record_draft_review_outcome_lane_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_draft_review_outcome_states = [
        "candidate_decision_record_writeup_only",
        "needs_scope_statement_refresh",
        "needs_scan_mode_wording_refresh",
        "needs_credential_boundary_metadata_refresh",
        "needs_maintenance_constraints_refresh",
        "needs_rollback_owner_refresh",
        "waiting_separate_runtime_gate",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.outcome_states",
        [item["outcome_state"] for item in iwooos_host_owner_decision_record_draft_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_draft_review_outcome_states,
    )
    for item in iwooos_host_owner_decision_record_draft_review_outcome_lanes:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_draft_review_outcome_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.decision_record_review_passed_count",
            item["decision_record_review_passed_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_draft_review_outcome_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_writeup_packets = iwooos_projection[
        "host_owner_decision_record_writeup_packets"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_writeup_packets.ids",
        [item["packet_id"] for item in iwooos_host_owner_decision_record_writeup_packets],
        expected_iwooos_host_owner_decision_record_writeup_packet_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_writeup_packets.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_writeup_packets],
        list(range(1, len(expected_iwooos_host_owner_decision_record_writeup_packet_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_writeup_fields = [
        "decision_summary",
        "approved_scope_statement",
        "scan_mode_limits_statement",
        "credential_boundary_statement",
        "maintenance_and_rollback_statement",
        "validation_evidence_statement",
        "runtime_gate_pointer_statement",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_writeup_packets.writeup_fields",
        [item["writeup_field"] for item in iwooos_host_owner_decision_record_writeup_packets],
        expected_iwooos_host_owner_decision_record_writeup_fields,
    )
    for item in iwooos_host_owner_decision_record_writeup_packets:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_writeup_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.decision_record_writeup_completed_count",
            item["decision_record_writeup_completed_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_writeup_packets.{item['packet_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_writeup_review_checklist_items = iwooos_projection[
        "host_owner_decision_record_writeup_review_checklist_items"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.ids",
        [item["check_id"] for item in iwooos_host_owner_decision_record_writeup_review_checklist_items],
        expected_iwooos_host_owner_decision_record_writeup_review_checklist_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_writeup_review_checklist_items],
        list(range(1, len(expected_iwooos_host_owner_decision_record_writeup_review_checklist_item_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_writeup_review_conditions = [
        "decision_summary_risk_acceptance_and_no_execution_statement_readable",
        "scope_exclusion_observation_intent_and_expiry_complete",
        "scan_mode_limits_explicit_and_not_authorization",
        "credential_boundary_metadata_only_and_no_secret_collection",
        "maintenance_window_constraints_rollback_and_human_contact_linked",
        "validation_metrics_baseline_evidence_and_acceptance_condition_linked",
        "runtime_gate_pointer_separate_and_closed",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.review_conditions",
        [item["review_condition"] for item in iwooos_host_owner_decision_record_writeup_review_checklist_items],
        expected_iwooos_host_owner_decision_record_writeup_review_conditions,
    )
    for item in iwooos_host_owner_decision_record_writeup_review_checklist_items:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_writeup_review_checklist_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.decision_record_writeup_review_passed_count",
            item["decision_record_writeup_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.decision_record_writeup_completed_count",
            item["decision_record_writeup_completed_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_writeup_review_checklist_items.{item['check_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_writeup_review_outcome_lanes = iwooos_projection[
        "host_owner_decision_record_writeup_review_outcome_lanes"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.ids",
        [item["lane_id"] for item in iwooos_host_owner_decision_record_writeup_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_writeup_review_outcome_lane_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_writeup_review_outcome_lanes],
        list(range(1, len(expected_iwooos_host_owner_decision_record_writeup_review_outcome_lane_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_writeup_review_outcome_states = [
        "candidate_formal_decision_record_only",
        "needs_decision_summary_clarification",
        "needs_scope_and_expiry_refresh",
        "needs_scan_mode_limit_wording_refresh",
        "needs_credential_boundary_metadata_refresh",
        "needs_maintenance_rollback_refresh",
        "waiting_separate_runtime_gate",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.outcome_states",
        [item["outcome_state"] for item in iwooos_host_owner_decision_record_writeup_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_writeup_review_outcome_states,
    )
    for item in iwooos_host_owner_decision_record_writeup_review_outcome_lanes:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_writeup_review_outcome_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.decision_record_writeup_review_passed_count",
            item["decision_record_writeup_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.decision_record_writeup_completed_count",
            item["decision_record_writeup_completed_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_writeup_review_outcome_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_formal_candidate_packets = iwooos_projection[
        "host_owner_decision_record_formal_candidate_packets"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_candidate_packets.ids",
        [item["packet_id"] for item in iwooos_host_owner_decision_record_formal_candidate_packets],
        expected_iwooos_host_owner_decision_record_formal_candidate_packet_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_candidate_packets.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_formal_candidate_packets],
        list(range(1, len(expected_iwooos_host_owner_decision_record_formal_candidate_packet_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_formal_candidate_fields = [
        "record_identity_and_version",
        "decision_summary",
        "approved_scope_statement",
        "scan_mode_limits_statement",
        "credential_boundary_statement",
        "maintenance_and_rollback_statement",
        "validation_and_runtime_gate_statement",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_candidate_packets.candidate_fields",
        [item["candidate_field"] for item in iwooos_host_owner_decision_record_formal_candidate_packets],
        expected_iwooos_host_owner_decision_record_formal_candidate_fields,
    )
    for item in iwooos_host_owner_decision_record_formal_candidate_packets:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.source_lane_id",
            item["source_lane_id"],
            "host_decision_record_writeup_review_ready_for_formal_record_outcome_lane",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_formal_candidate_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.formal_record_candidate_finalized_count",
            item["formal_record_candidate_finalized_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_packets.{item['packet_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_formal_candidate_review_checklist_items = iwooos_projection[
        "host_owner_decision_record_formal_candidate_review_checklist_items"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.ids",
        [item["check_id"] for item in iwooos_host_owner_decision_record_formal_candidate_review_checklist_items],
        expected_iwooos_host_owner_decision_record_formal_candidate_review_checklist_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_formal_candidate_review_checklist_items],
        list(range(1, len(expected_iwooos_host_owner_decision_record_formal_candidate_review_checklist_item_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_formal_candidate_review_conditions = [
        "record_identity_version_owner_scope_and_trace_source_readable",
        "decision_summary_risk_acceptance_and_no_execution_statement_readable",
        "scope_exclusion_observation_intent_and_expiry_consistent",
        "scan_limits_explicit_and_not_authorization",
        "credential_boundary_metadata_only_masked_and_no_secret_collection",
        "maintenance_window_constraints_rollback_and_human_contact_traceable",
        "validation_evidence_linked_and_runtime_gate_separate_closed",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.review_conditions",
        [
            item["review_condition"]
            for item in iwooos_host_owner_decision_record_formal_candidate_review_checklist_items
        ],
        expected_iwooos_host_owner_decision_record_formal_candidate_review_conditions,
    )
    for item in iwooos_host_owner_decision_record_formal_candidate_review_checklist_items:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_formal_candidate_review_checklist_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.formal_record_candidate_review_passed_count",
            item["formal_record_candidate_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.formal_record_candidate_finalized_count",
            item["formal_record_candidate_finalized_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_checklist_items.{item['check_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_formal_candidate_review_outcome_lanes = iwooos_projection[
        "host_owner_decision_record_formal_candidate_review_outcome_lanes"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.ids",
        [item["lane_id"] for item in iwooos_host_owner_decision_record_formal_candidate_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_formal_candidate_review_outcome_lane_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_formal_candidate_review_outcome_lanes],
        list(range(1, len(expected_iwooos_host_owner_decision_record_formal_candidate_review_outcome_lane_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_formal_candidate_review_outcome_states = [
        "ready_for_separate_human_record_queue",
        "record_identity_trace_missing",
        "decision_summary_needs_clarification",
        "scope_expiry_needs_refresh",
        "scan_limits_ambiguous_not_authorization",
        "credential_boundary_failed",
        "maintenance_rollback_incomplete",
        "waiting_separate_runtime_gate",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.outcome_states",
        [item["outcome_state"] for item in iwooos_host_owner_decision_record_formal_candidate_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_formal_candidate_review_outcome_states,
    )
    for item in iwooos_host_owner_decision_record_formal_candidate_review_outcome_lanes:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_formal_candidate_review_outcome_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.formal_record_candidate_review_passed_count",
            item["formal_record_candidate_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.formal_record_candidate_finalized_count",
            item["formal_record_candidate_finalized_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_formal_candidate_review_outcome_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_formal_record_queue_packets = iwooos_projection[
        "host_owner_decision_record_formal_record_queue_packets"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_packets.ids",
        [item["packet_id"] for item in iwooos_host_owner_decision_record_formal_record_queue_packets],
        expected_iwooos_host_owner_decision_record_formal_record_queue_packet_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_packets.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_formal_record_queue_packets],
        list(range(1, len(expected_iwooos_host_owner_decision_record_formal_record_queue_packet_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_formal_record_queue_fields = [
        "record_identity_queue_packet",
        "decision_summary_queue_packet",
        "scope_expiry_queue_packet",
        "scan_limits_queue_packet",
        "credential_boundary_queue_packet",
        "maintenance_rollback_queue_packet",
        "validation_runtime_gate_queue_packet",
        "no_execution_attestation_queue_packet",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_packets.queue_fields",
        [item["queue_field"] for item in iwooos_host_owner_decision_record_formal_record_queue_packets],
        expected_iwooos_host_owner_decision_record_formal_record_queue_fields,
    )
    for item in iwooos_host_owner_decision_record_formal_record_queue_packets:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.source_lane_id",
            item["source_lane_id"],
            "host_decision_record_formal_candidate_review_ready_for_record_queue_outcome_lane",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_formal_record_queue_packet_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_packets.{item['packet_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_formal_record_queue_review_checklist_items = iwooos_projection[
        "host_owner_decision_record_formal_record_queue_review_checklist_items"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.ids",
        [item["item_id"] for item in iwooos_host_owner_decision_record_formal_record_queue_review_checklist_items],
        expected_iwooos_host_owner_decision_record_formal_record_queue_review_checklist_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_formal_record_queue_review_checklist_items],
        list(range(1, len(expected_iwooos_host_owner_decision_record_formal_record_queue_review_checklist_item_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.source_packet_ids",
        [item["source_packet_id"] for item in iwooos_host_owner_decision_record_formal_record_queue_review_checklist_items],
        expected_iwooos_host_owner_decision_record_formal_record_queue_packet_ids,
    )
    expected_iwooos_host_owner_decision_record_formal_record_queue_review_conditions = [
        "identity_traceable_to_candidate_source",
        "decision_summary_readable_without_approval_semantics",
        "scope_expiry_current_and_bounded",
        "scan_limits_not_authorization",
        "credential_boundary_metadata_only",
        "maintenance_rollback_pointer_linked",
        "validation_runtime_gate_separate",
        "no_execution_attestation_present",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.review_conditions",
        [item["review_condition"] for item in iwooos_host_owner_decision_record_formal_record_queue_review_checklist_items],
        expected_iwooos_host_owner_decision_record_formal_record_queue_review_conditions,
    )
    for item in iwooos_host_owner_decision_record_formal_record_queue_review_checklist_items:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_formal_record_queue_review_checklist_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_checklist_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lanes = iwooos_projection[
        "host_owner_decision_record_formal_record_queue_review_outcome_lanes"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.ids",
        [item["lane_id"] for item in iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lane_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lanes],
        list(range(1, len(expected_iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lane_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_formal_record_queue_review_outcome_states = [
        "ready_for_human_record_owner_handoff",
        "identity_needs_trace_refresh",
        "decision_summary_needs_clarification",
        "scope_expiry_needs_refresh",
        "scan_limits_remain_ambiguous",
        "credential_boundary_failed",
        "maintenance_rollback_incomplete",
        "runtime_gate_still_required",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.outcome_states",
        [item["outcome_state"] for item in iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_formal_record_queue_review_outcome_states,
    )
    for item in iwooos_host_owner_decision_record_formal_record_queue_review_outcome_lanes:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_formal_record_queue_review_outcome_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_formal_record_queue_review_outcome_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_human_handoff_readiness_packets = iwooos_projection[
        "host_owner_decision_record_human_handoff_readiness_packets"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.ids",
        [item["packet_id"] for item in iwooos_host_owner_decision_record_human_handoff_readiness_packets],
        expected_iwooos_host_owner_decision_record_human_handoff_readiness_packet_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_human_handoff_readiness_packets],
        list(range(1, len(expected_iwooos_host_owner_decision_record_human_handoff_readiness_packet_ids) + 1)),
    )
    expected_iwooos_host_owner_decision_record_human_handoff_readiness_fields = [
        "record_identity_and_trace",
        "human_record_owner_contact_boundary",
        "decision_summary_and_no_execution_statement",
        "approved_scope_and_expiry_window",
        "observe_only_and_future_scan_limits",
        "metadata_only_credential_boundary",
        "maintenance_constraints_and_rollback_owner",
        "independent_runtime_gate_and_no_action_buttons",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.readiness_fields",
        [item["readiness_field"] for item in iwooos_host_owner_decision_record_human_handoff_readiness_packets],
        expected_iwooos_host_owner_decision_record_human_handoff_readiness_fields,
    )
    for item in iwooos_host_owner_decision_record_human_handoff_readiness_packets:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_human_handoff_readiness_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.source_outcome_lane_id",
            item["source_outcome_lane_id"],
            "host_decision_record_formal_record_queue_review_ready_for_human_record_owner_handoff_outcome_lane",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.human_record_owner_handoff_started_count",
            item["human_record_owner_handoff_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.human_record_owner_handoff_ready_count",
            item["human_record_owner_handoff_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_packets.{item['packet_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist_items = iwooos_projection[
        "host_owner_decision_record_human_handoff_readiness_review_checklist_items"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.ids",
        [item["item_id"] for item in iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist_items],
        expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist_items],
        list(
            range(
                1,
                len(expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist_item_ids) + 1,
            )
        ),
    )
    expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_conditions = [
        "identity_trace_readable",
        "owner_boundary_readable",
        "decision_summary_readable",
        "scope_expiry_current",
        "scan_limits_not_authorization",
        "credential_boundary_metadata_only",
        "maintenance_rollback_traceable",
        "runtime_gate_separate",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.review_conditions",
        [
            item["review_condition"]
            for item in iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist_items
        ],
        expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_conditions,
    )
    for item in iwooos_host_owner_decision_record_human_handoff_readiness_review_checklist_items:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_human_handoff_readiness_review_checklist_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.human_record_owner_handoff_review_passed_count",
            item["human_record_owner_handoff_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.human_record_owner_handoff_started_count",
            item["human_record_owner_handoff_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.human_record_owner_handoff_ready_count",
            item["human_record_owner_handoff_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_checklist_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lanes = iwooos_projection[
        "host_owner_decision_record_human_handoff_readiness_review_outcome_lanes"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.ids",
        [item["lane_id"] for item in iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lane_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lanes],
        list(
            range(
                1,
                len(expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lane_ids) + 1,
            )
        ),
    )
    expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_states = [
        "ready_for_human_record_owner_review_candidate",
        "identity_trace_needs_refresh",
        "owner_boundary_needs_clarification",
        "decision_summary_needs_clarification",
        "scope_expiry_needs_refresh",
        "scan_limits_remain_ambiguous",
        "credential_boundary_failed",
        "maintenance_rollback_incomplete",
        "runtime_gate_still_required",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.outcome_states",
        [item["outcome_state"] for item in iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lanes],
        expected_iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_states,
    )
    for item in iwooos_host_owner_decision_record_human_handoff_readiness_review_outcome_lanes:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_human_handoff_readiness_review_outcome_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.human_record_owner_handoff_review_passed_count",
            item["human_record_owner_handoff_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.human_record_owner_handoff_started_count",
            item["human_record_owner_handoff_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.human_record_owner_handoff_ready_count",
            item["human_record_owner_handoff_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_human_handoff_readiness_review_outcome_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_human_record_owner_review_candidate_packets = iwooos_projection[
        "host_owner_decision_record_human_record_owner_review_candidate_packets"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.ids",
        [item["packet_id"] for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_packets],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_packet_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.display_order",
        [item["display_order"] for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_packets],
        list(
            range(
                1,
                len(expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_packet_ids) + 1,
            )
        ),
    )
    expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_fields = [
        "candidate_identity_and_trace",
        "human_record_owner_boundary",
        "decision_summary_and_no_execution_statement",
        "approved_scope_and_expiry_window",
        "observe_only_and_future_scan_limits",
        "metadata_only_credential_boundary",
        "maintenance_constraints_and_rollback_owner",
        "validation_evidence_and_independent_runtime_gate",
        "no_execution_no_approval_attestation",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.review_candidate_fields",
        [
            item["review_candidate_field"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_packets
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_fields,
    )
    for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_packets:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.source_outcome_lane_id",
            item["source_outcome_lane_id"],
            "host_decision_record_handoff_readiness_review_ready_for_human_record_owner_review_candidate_outcome_lane",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_human_record_owner_review_candidate_packet_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.human_record_owner_review_started_count",
            item["human_record_owner_review_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.human_record_owner_review_ready_count",
            item["human_record_owner_review_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.human_record_owner_handoff_review_passed_count",
            item["human_record_owner_handoff_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.human_record_owner_handoff_started_count",
            item["human_record_owner_handoff_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.human_record_owner_handoff_ready_count",
            item["human_record_owner_handoff_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_packets.{item['packet_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist_items = iwooos_projection[
        "host_owner_decision_record_human_record_owner_review_candidate_checklist_items"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.ids",
        [
            item["item_id"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist_items
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.display_order",
        [
            item["display_order"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist_items
        ],
        list(
            range(
                1,
                len(expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist_item_ids)
                + 1,
            )
        ),
    )
    expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_review_conditions = [
        "candidate_identity_traceable",
        "candidate_owner_boundary_readable",
        "candidate_decision_summary_readable",
        "candidate_scope_expiry_current",
        "candidate_scan_limits_not_authorization",
        "candidate_credential_boundary_metadata_only",
        "candidate_maintenance_rollback_traceable",
        "candidate_validation_runtime_gate_separate",
        "candidate_no_execution_attestation_present",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.review_conditions",
        [
            item["review_condition"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist_items
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_review_conditions,
    )
    for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_checklist_items:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_human_record_owner_review_candidate_checklist_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.human_record_owner_review_check_passed_count",
            item["human_record_owner_review_check_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.human_record_owner_review_started_count",
            item["human_record_owner_review_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.human_record_owner_review_ready_count",
            item["human_record_owner_review_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.human_record_owner_handoff_review_passed_count",
            item["human_record_owner_handoff_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.human_record_owner_handoff_started_count",
            item["human_record_owner_handoff_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.human_record_owner_handoff_ready_count",
            item["human_record_owner_handoff_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_checklist_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes = iwooos_projection[
        "host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.ids",
        [
            item["lane_id"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lane_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.display_order",
        [
            item["display_order"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes
        ],
        list(
            range(
                1,
                len(expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lane_ids)
                + 1,
            )
        ),
    )
    expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_states = [
        "ready_for_human_record_owner_review_preparation_candidate",
        "identity_trace_needs_refresh",
        "owner_boundary_needs_clarification",
        "decision_summary_needs_clarification",
        "scope_expiry_needs_refresh",
        "scan_limits_remain_ambiguous",
        "credential_boundary_failed",
        "maintenance_rollback_incomplete",
        "runtime_gate_still_required",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.outcome_states",
        [
            item["outcome_state"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_states,
    )
    for item in iwooos_host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_human_record_owner_review_candidate_outcome_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.human_record_owner_review_check_passed_count",
            item["human_record_owner_review_check_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.human_record_owner_review_started_count",
            item["human_record_owner_review_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.human_record_owner_review_ready_count",
            item["human_record_owner_review_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.human_record_owner_handoff_review_passed_count",
            item["human_record_owner_handoff_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.human_record_owner_handoff_started_count",
            item["human_record_owner_handoff_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.human_record_owner_handoff_ready_count",
            item["human_record_owner_handoff_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_human_record_owner_review_preparation_packets = iwooos_projection[
        "host_owner_decision_record_human_record_owner_review_preparation_packets"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.ids",
        [
            item["packet_id"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_packets
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_packet_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.display_order",
        [
            item["display_order"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_packets
        ],
        list(
            range(
                1,
                len(expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_packet_ids) + 1,
            )
        ),
    )
    expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_fields = [
        "preparation_identity_trace",
        "preparation_owner_boundary",
        "preparation_decision_summary",
        "preparation_scope_expiry",
        "preparation_scan_limits",
        "preparation_credential_boundary",
        "preparation_maintenance_rollback",
        "preparation_validation_runtime_gate",
        "preparation_no_execution_attestation",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.preparation_fields",
        [
            item["preparation_field"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_packets
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_fields,
    )
    for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_packets:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.source_outcome_lane_id",
            item["source_outcome_lane_id"],
            "host_decision_record_human_record_owner_review_candidate_ready_for_human_record_owner_review_preparation_outcome_lane",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_human_record_owner_review_preparation_packet_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.human_record_owner_review_prepared_count",
            item["human_record_owner_review_prepared_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.human_record_owner_review_check_passed_count",
            item["human_record_owner_review_check_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.human_record_owner_review_started_count",
            item["human_record_owner_review_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.human_record_owner_review_ready_count",
            item["human_record_owner_review_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.human_record_owner_handoff_review_passed_count",
            item["human_record_owner_handoff_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.human_record_owner_handoff_started_count",
            item["human_record_owner_handoff_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.human_record_owner_handoff_ready_count",
            item["human_record_owner_handoff_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_packets.{item['packet_id']}.not_authorization",
            item["not_authorization"],
        )
    iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_items = iwooos_projection[
        "host_owner_decision_record_human_record_owner_review_preparation_checklist_items"
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.ids",
        [
            item["item_id"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_items
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_item_ids,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.display_order",
        [
            item["display_order"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_items
        ],
        list(
            range(
                1,
                len(expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_item_ids) + 1,
            )
        ),
    )
    expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_review_conditions = [
        "preparation_identity_trace_readable",
        "preparation_owner_boundary_readable",
        "preparation_decision_summary_readable",
        "preparation_scope_expiry_current",
        "preparation_scan_limits_not_authorization",
        "preparation_credential_boundary_metadata_only",
        "preparation_maintenance_rollback_traceable",
        "preparation_validation_runtime_gate_separate",
        "preparation_no_execution_attestation_present",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.review_conditions",
        [
            item["review_condition"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_items
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_review_conditions,
    )
    expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_failure_routes = [
        "refresh_preparation_identity_trace",
        "clarify_preparation_owner_boundary",
        "clarify_preparation_decision_summary",
        "refresh_preparation_scope_expiry",
        "clarify_preparation_scan_limits",
        "quarantine_preparation_credential_boundary",
        "complete_preparation_maintenance_rollback",
        "keep_runtime_gate_separate",
        "keep_no_execution_attestation_visible",
    ]
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.failure_routes",
        [
            item["failure_route"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_items
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_failure_routes,
    )
    assert_equal(
        "iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.source_preparation_packet_ids",
        [
            item["source_preparation_packet_id"]
            for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_items
        ],
        expected_iwooos_host_owner_decision_record_human_record_owner_review_preparation_packet_ids,
    )
    for item in iwooos_host_owner_decision_record_human_record_owner_review_preparation_checklist_items:
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "owner_decision_record_human_record_owner_review_preparation_checklist_only",
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.human_record_owner_review_prepared_count",
            item["human_record_owner_review_prepared_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.human_record_owner_review_check_passed_count",
            item["human_record_owner_review_check_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.human_record_owner_review_started_count",
            item["human_record_owner_review_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.human_record_owner_review_ready_count",
            item["human_record_owner_review_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.human_record_owner_handoff_review_passed_count",
            item["human_record_owner_handoff_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.human_record_owner_handoff_started_count",
            item["human_record_owner_handoff_started_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.human_record_owner_handoff_ready_count",
            item["human_record_owner_handoff_ready_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.formal_record_queue_review_passed_count",
            item["formal_record_queue_review_passed_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.formal_record_queue_enqueued_count",
            item["formal_record_queue_enqueued_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.decision_record_created",
            item["decision_record_created"],
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.owner_decision_received_count",
            item["owner_decision_received_count"],
            0,
        )
        assert_equal(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.owner_decision_accepted_count",
            item["owner_decision_accepted_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.owner_approval_record_created",
            item["owner_approval_record_created"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.secret_value_collection_allowed",
            item["secret_value_collection_allowed"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.host_owner_decision_record_human_record_owner_review_preparation_checklist_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    assert_equal(
        "iwooos_projection.non_blocking_lane_ids",
        iwooos_projection["non_blocking_lane_ids"],
        expected_low_friction_lane_ids,
    )
    for evidence_ref in [
        "docs/security/iwooos-posture-projection.snapshot.json",
        "docs/security/security-rollout-policy.snapshot.json",
        "docs/security/security-mirror-status-rollup.snapshot.json",
        "docs/security/source-control-owner-response-validation-rollup.snapshot.json",
        "docs/security/kali-integration-status.snapshot.json",
    ]:
        assert_contains("iwooos_projection.evidence_refs", iwooos_projection["evidence_refs"], evidence_ref)
    latest_kali_observation = kali_status["latest_read_only_observation"]
    assert_equal(
        "kali_status.latest_read_only_observation.observed_at_taipei",
        latest_kali_observation["observed_at_taipei"],
        "2026-06-04T08:55:43+08:00",
    )
    assert_equal(
        "kali_status.latest_read_only_observation.collection_mode",
        latest_kali_observation["collection_mode"],
        "ssh_batch_read_only_existing_key",
    )
    assert_equal(
        "kali_status.latest_read_only_observation.upgradable_package_count",
        latest_kali_observation["upgradable_package_count"],
        1994,
    )
    assert_equal(
        "kali_status.latest_read_only_observation.failed_systemd_unit_count",
        latest_kali_observation["failed_systemd_unit_count"],
        1,
    )
    assert_equal(
        "kali_status.latest_read_only_observation.scanner_api_health_status",
        latest_kali_observation["scanner_api_health_status"],
        "healthy",
    )
    assert_equal(
        "kali_status.latest_read_only_observation.scanner_api_health_endpoint",
        latest_kali_observation["scanner_api_health_endpoint"],
        "127.0.0.1:8080/health",
    )
    assert_equal(
        "kali_status.latest_read_only_observation.scanner_service_state",
        latest_kali_observation["scanner_service_state"],
        "active",
    )
    assert_equal(
        "kali_status.latest_read_only_observation.scanner_service_enabled",
        latest_kali_observation["scanner_service_enabled"],
        "enabled",
    )
    assert_equal(
        "kali_status.latest_read_only_observation.failed_systemd_unit_names",
        latest_kali_observation["failed_systemd_unit_names"],
        ["networking.service"],
    )
    assert_equal(
        "kali_status.latest_read_only_observation.scanner_systemd_hardening_enabled_count",
        latest_kali_observation["scanner_systemd_hardening_enabled_count"],
        0,
    )
    assert_equal(
        "kali_status.latest_read_only_observation.scanner_systemd_hardening_expected_count",
        latest_kali_observation["scanner_systemd_hardening_expected_count"],
        4,
    )
    assert_equal(
        "kali_status.latest_read_only_observation.scanner_systemd_hardening_missing",
        latest_kali_observation["scanner_systemd_hardening_missing"],
        ["NoNewPrivileges", "PrivateTmp", "ProtectSystem", "ProtectHome"],
    )
    for forbidden_runtime_flag in [
        "runtime_actions_executed",
        "active_scan_executed",
        "package_update_executed",
        "host_reboot_executed",
    ]:
        assert_false(
            f"kali_status.latest_read_only_observation.{forbidden_runtime_flag}",
            latest_kali_observation[forbidden_runtime_flag],
        )
    for output in [
        "display_security_posture",
        "display_progress_estimate",
        "display_visual_command_dashboard",
        "display_professional_security_experience",
        "display_concrete_work_snapshot",
        "display_global_security_mesh_matrix",
        "display_host_tool_evidence_chain",
        "display_awooop_read_only_landing_readiness",
        "display_awooop_cross_session_handoff_packets",
        "display_progress_hold_movement_gates",
        "display_progress_acceleration_lanes",
        "display_owner_response_next_action_focus",
        "display_s4_9_owner_response_preflight_checks",
        "display_s4_9_owner_response_request_templates",
        "display_non_blocking_lanes",
        "display_existing_frontend_security_surfaces",
        "display_frontend_surface_reverse_bridge_statuses",
        "display_frontend_surface_coverage_matrix",
        "display_frontend_surface_conflict_controls",
        "display_operator_journey_steps",
        "display_owner_evidence_readiness_board",
        "display_host_coverage_view",
        "display_kali_maintenance_readiness_board",
        "display_host_action_gate_matrix",
        "display_host_evidence_readiness_board",
        "display_host_evidence_collection_order",
        "display_host_evidence_intake_preflight_checks",
        "display_host_evidence_review_outcome_lanes",
        "display_host_evidence_review_handoff_packets",
        "display_host_evidence_reviewer_checklist",
        "display_host_evidence_reviewer_outcome_lanes",
        "display_host_owner_decision_candidate_packets",
        "display_host_owner_decision_review_checklist",
        "display_host_owner_decision_review_outcome_lanes",
        "display_host_owner_decision_record_draft_packets",
        "display_host_owner_decision_record_draft_review_checklist",
        "display_host_owner_decision_record_draft_review_outcome_lanes",
        "display_host_owner_decision_record_writeup_packets",
        "display_host_owner_decision_record_writeup_review_checklist",
        "display_host_owner_decision_record_writeup_review_outcome_lanes",
        "display_host_owner_decision_record_formal_candidate_packets",
        "display_host_owner_decision_record_formal_candidate_review_checklist",
        "display_host_owner_decision_record_formal_candidate_review_outcome_lanes",
        "display_host_owner_decision_record_formal_record_queue_packets",
        "display_host_owner_decision_record_formal_record_queue_review_checklist",
        "display_host_owner_decision_record_formal_record_queue_review_outcome_lanes",
        "display_host_owner_decision_record_human_handoff_readiness_packets",
        "display_host_owner_decision_record_human_handoff_readiness_review_checklist",
        "display_host_owner_decision_record_human_handoff_readiness_review_outcome_lanes",
        "display_host_owner_decision_record_human_record_owner_review_candidate_packets",
        "display_host_owner_decision_record_human_record_owner_review_candidate_checklist",
        "display_host_owner_decision_record_human_record_owner_review_candidate_outcome_lanes",
        "display_host_owner_decision_record_human_record_owner_review_preparation_packets",
        "display_host_owner_decision_record_human_record_owner_review_preparation_checklist",
        "display_evidence_refs",
        "display_forbidden_actions",
        "display_source_control_primary_readiness_board",
        "display_vibework_security_onboarding",
        "display_agent_bounty_security_onboarding",
        "display_rollout_risk_read_only",
        "display_high_value_config_owner_packet",
        "display_awooop_high_value_config_owner_packet_read_only",
    ]:
        assert_contains("iwooos_projection.allowed_frontend_outputs", iwooos_projection["allowed_frontend_outputs"], output)
    for output in [
        "add_scan_button",
        "add_execute_button",
        "add_repair_button",
        "start_kali_scan",
        "call_kali_execute_endpoint",
        "create_github_repo",
        "sync_git_refs",
        "modify_workflow_or_secret",
        "reload_nginx_from_owner_packet",
        "rotate_secret_from_owner_packet",
        "run_agent_bounty_runtime_from_owner_packet",
        "send_owner_request_from_awooop_high_value_config_packet",
        "mark_owner_packet_received_from_awooop",
        "mark_owner_packet_accepted_from_awooop",
        "open_runtime_gate_from_awooop_high_value_config_packet",
        "reload_nginx_from_awooop_owner_packet",
        "run_agent_bounty_runtime_from_awooop_owner_packet",
        "enable_runner",
        "ssh_to_host",
        "open_ssh_session",
        "update_kali_host",
        "auto_update_host",
        "run_host_package_upgrade",
        "credentialed_scan_host",
        "mark_host_evidence_received",
        "mark_host_evidence_accepted",
        "ingest_raw_host_evidence",
        "treat_reverse_bridge_status_as_authorization",
        "create_runtime_gate_from_reverse_bridge_status",
        "create_code_review_blocker_from_reverse_bridge_status",
        "create_gitea_or_github_action_from_reverse_bridge_status",
        "advance_host_collection_state",
        "skip_host_evidence_dependency",
        "accept_host_evidence_without_preflight",
        "ingest_host_evidence_raw_payload",
        "collect_host_credential_plaintext",
        "advance_host_evidence_counters_from_frontend",
        "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",
        "treat_host_reviewer_check_as_approval",
        "mark_host_reviewer_check_passed_from_frontend",
        "open_runtime_gate_from_reviewer_check",
        "treat_host_reviewer_outcome_as_approval",
        "mark_host_reviewer_outcome_passed",
        "open_runtime_gate_from_reviewer_outcome",
        "treat_host_owner_decision_candidate_as_approval",
        "mark_host_owner_decision_approved",
        "open_runtime_gate_from_owner_decision_candidate",
        "treat_host_owner_decision_review_check_as_approval",
        "mark_host_owner_decision_review_passed",
        "open_runtime_gate_from_owner_decision_review_check",
        "treat_host_owner_decision_review_outcome_as_approval",
        "mark_host_owner_decision_review_outcome_passed",
        "open_runtime_gate_from_owner_decision_review_outcome",
        "create_host_owner_decision_record_from_draft",
        "mark_host_owner_decision_record_created",
        "open_runtime_gate_from_owner_decision_record_draft",
        "treat_host_owner_decision_record_draft_review_as_approval",
        "mark_host_owner_decision_record_draft_review_passed",
        "create_host_owner_decision_record_from_draft_review",
        "open_runtime_gate_from_owner_decision_record_draft_review",
        "treat_host_owner_decision_record_draft_review_outcome_as_approval",
        "mark_host_owner_decision_record_draft_review_outcome_passed",
        "create_host_owner_decision_record_from_draft_review_outcome",
        "open_runtime_gate_from_owner_decision_record_draft_review_outcome",
        "create_host_owner_decision_record_from_writeup",
        "mark_host_owner_decision_record_writeup_completed",
        "mark_host_owner_decision_record_accepted_from_writeup",
        "open_runtime_gate_from_owner_decision_record_writeup",
        "treat_host_owner_decision_record_writeup_review_as_approval",
        "mark_host_owner_decision_record_writeup_review_passed",
        "mark_host_owner_decision_record_writeup_review_completed",
        "create_host_owner_decision_record_from_writeup_review",
        "open_runtime_gate_from_owner_decision_record_writeup_review",
        "treat_host_owner_decision_record_writeup_review_outcome_as_approval",
        "mark_host_owner_decision_record_writeup_review_outcome_passed",
        "mark_host_owner_decision_record_writeup_review_outcome_completed",
        "create_host_owner_decision_record_from_writeup_review_outcome",
        "open_runtime_gate_from_owner_decision_record_writeup_review_outcome",
        "treat_host_owner_decision_record_formal_candidate_as_approval",
        "mark_host_owner_decision_record_formal_candidate_finalized",
        "create_host_owner_decision_record_from_formal_candidate",
        "accept_host_owner_decision_record_from_formal_candidate",
        "open_runtime_gate_from_owner_decision_record_formal_candidate",
        "treat_host_owner_decision_record_formal_candidate_review_as_approval",
        "mark_host_owner_decision_record_formal_candidate_review_passed",
        "mark_host_owner_decision_record_formal_candidate_review_finalized",
        "create_host_owner_decision_record_from_formal_candidate_review",
        "open_runtime_gate_from_owner_decision_record_formal_candidate_review",
        "treat_host_owner_decision_record_formal_candidate_review_outcome_as_approval",
        "mark_host_owner_decision_record_formal_candidate_review_outcome_passed",
        "mark_host_owner_decision_record_formal_candidate_review_outcome_finalized",
        "create_host_owner_decision_record_from_formal_candidate_review_outcome",
        "open_runtime_gate_from_owner_decision_record_formal_candidate_review_outcome",
        "treat_host_owner_decision_record_formal_record_queue_packet_as_approval",
        "enqueue_host_owner_decision_record_formal_record_queue_from_frontend",
        "create_host_owner_decision_record_from_formal_record_queue_packet",
        "accept_host_owner_decision_record_from_formal_record_queue_packet",
        "open_runtime_gate_from_owner_decision_record_formal_record_queue_packet",
        "treat_host_owner_decision_record_formal_record_queue_review_as_approval",
        "mark_host_owner_decision_record_formal_record_queue_review_passed",
        "enqueue_host_owner_decision_record_from_formal_record_queue_review",
        "create_host_owner_decision_record_from_formal_record_queue_review",
        "open_runtime_gate_from_formal_record_queue_review",
        "treat_host_owner_decision_record_formal_record_queue_review_outcome_as_approval",
        "mark_host_owner_decision_record_formal_record_queue_review_outcome_passed",
        "enqueue_host_owner_decision_record_from_formal_record_queue_review_outcome",
        "create_host_owner_decision_record_from_formal_record_queue_review_outcome",
        "open_runtime_gate_from_formal_record_queue_review_outcome",
        "treat_host_owner_decision_record_handoff_readiness_as_approval",
        "start_human_record_owner_handoff_from_readiness_packet",
        "mark_human_record_owner_handoff_ready_from_frontend",
        "create_host_owner_decision_record_from_handoff_readiness",
        "open_runtime_gate_from_handoff_readiness",
        "treat_host_owner_decision_record_handoff_readiness_review_as_approval",
        "mark_human_record_owner_handoff_readiness_review_passed",
        "start_human_record_owner_handoff_from_readiness_review",
        "create_host_owner_decision_record_from_handoff_readiness_review",
        "open_runtime_gate_from_handoff_readiness_review",
        "treat_host_owner_decision_record_handoff_readiness_review_outcome_as_approval",
        "mark_human_record_owner_handoff_readiness_review_outcome_passed",
        "start_human_record_owner_handoff_from_readiness_review_outcome",
        "create_host_owner_decision_record_from_handoff_readiness_review_outcome",
        "open_runtime_gate_from_handoff_readiness_review_outcome",
        "treat_host_owner_decision_record_human_record_owner_review_candidate_packet_as_approval",
        "start_human_record_owner_review_from_candidate_packet",
        "mark_human_record_owner_review_ready_from_candidate_packet",
        "collect_owner_decision_from_human_record_owner_review_candidate_packet",
        "create_host_owner_decision_record_from_human_record_owner_review_candidate_packet",
        "open_runtime_gate_from_human_record_owner_review_candidate_packet",
        "treat_host_owner_decision_record_human_record_owner_review_candidate_checklist_as_approval",
        "mark_human_record_owner_review_candidate_checklist_passed",
        "start_human_record_owner_review_from_candidate_checklist",
        "mark_human_record_owner_review_ready_from_candidate_checklist",
        "collect_owner_decision_from_human_record_owner_review_candidate_checklist",
        "create_host_owner_decision_record_from_human_record_owner_review_candidate_checklist",
        "open_runtime_gate_from_human_record_owner_review_candidate_checklist",
        "treat_host_owner_decision_record_human_record_owner_review_candidate_outcome_as_approval",
        "mark_human_record_owner_review_candidate_outcome_passed",
        "start_human_record_owner_review_from_candidate_outcome",
        "mark_human_record_owner_review_ready_from_candidate_outcome",
        "collect_owner_decision_from_human_record_owner_review_candidate_outcome",
        "create_host_owner_decision_record_from_human_record_owner_review_candidate_outcome",
        "open_runtime_gate_from_human_record_owner_review_candidate_outcome",
        "treat_host_owner_decision_record_human_record_owner_review_preparation_packet_as_approval",
        "mark_human_record_owner_review_preparation_completed",
        "start_human_record_owner_review_from_preparation_packet",
        "mark_human_record_owner_review_ready_from_preparation_packet",
        "collect_owner_decision_from_human_record_owner_review_preparation_packet",
        "create_host_owner_decision_record_from_human_record_owner_review_preparation_packet",
        "open_runtime_gate_from_human_record_owner_review_preparation_packet",
        "treat_host_owner_decision_record_human_record_owner_review_preparation_checklist_as_approval",
        "mark_human_record_owner_review_preparation_checklist_passed",
        "mark_human_record_owner_review_prepared_from_preparation_checklist",
        "start_human_record_owner_review_from_preparation_checklist",
        "mark_human_record_owner_review_ready_from_preparation_checklist",
        "collect_owner_decision_from_human_record_owner_review_preparation_checklist",
        "create_host_owner_decision_record_from_human_record_owner_review_preparation_checklist",
        "open_runtime_gate_from_human_record_owner_review_preparation_checklist",
        "treat_awooop_landing_readiness_as_production_consumption",
        "enable_awooop_execution_router_from_landing_readiness",
        "mark_production_landing_enabled_from_readiness",
        "create_action_button_from_awooop_landing_readiness",
        "skip_guard_from_awooop_landing_readiness",
        "mark_progress_changed_from_awooop_landing_readiness",
        "treat_awooop_handoff_as_production_consumption",
        "merge_from_awooop_handoff",
        "deploy_from_awooop_handoff",
        "switch_primary_from_awooop_handoff",
        "modify_refs_from_awooop_handoff",
        "skip_guard_from_awooop_handoff",
        "mark_progress_changed_from_awooop_handoff",
        "treat_progress_hold_gate_as_percent_increase",
        "increase_headline_without_gate_evidence",
        "mark_owner_response_received_from_hold_gate",
        "mark_payload_ingested_from_hold_gate",
        "open_runtime_gate_from_hold_gate",
        "mark_github_primary_ready_from_hold_gate",
        "enable_production_landing_from_hold_gate",
        "treat_progress_acceleration_as_authorization",
        "increase_headline_from_progress_acceleration_lane",
        "open_runtime_gate_from_progress_acceleration_lane",
        "mark_owner_response_received_from_progress_acceleration_lane",
        "enable_github_primary_from_progress_acceleration_lane",
        "enable_production_execution_from_progress_acceleration_lane",
        "treat_owner_response_focus_as_received",
        "collect_owner_response_from_iwooos_focus",
        "autofill_owner_response_from_iwooos_focus",
        "mark_owner_response_accepted_from_iwooos_focus",
        "skip_s4_9_from_owner_response_focus",
        "open_runtime_gate_from_owner_response_focus",
        "switch_github_primary_from_owner_response_focus",
        "create_repo_from_owner_response_focus",
        "treat_s4_9_preflight_as_request_sent",
        "treat_s4_9_preflight_as_received",
        "mark_s4_9_preflight_passed_from_frontend",
        "accept_s4_9_owner_response_from_preflight",
        "emit_s4_9_audit_event_from_preflight",
        "open_runtime_gate_from_s4_9_preflight",
        "write_gitea_from_s4_9_preflight",
        "sync_refs_from_s4_9_preflight",
        "switch_primary_from_s4_9_preflight",
        "send_s4_9_owner_response_request_from_iwooos",
        "treat_s4_9_template_as_request_sent",
        "mark_s4_9_template_received_from_iwooos",
        "mark_s4_9_template_accepted_from_iwooos",
        "autofill_s4_9_template_from_iwooos",
        "create_gitea_inventory_from_s4_9_template",
        "write_gitea_from_s4_9_template",
        "sync_refs_from_s4_9_template",
        "switch_primary_from_s4_9_template",
        "collect_token_from_s4_9_template",
        "create_github_repo_from_primary_readiness_board",
        "change_repo_visibility_from_primary_readiness_board",
        "sync_refs_from_primary_readiness_board",
        "delete_refs_from_primary_readiness_board",
        "force_push_from_primary_readiness_board",
        "switch_github_primary_from_primary_readiness_board",
        "collect_secret_value_from_primary_readiness_board",
        "disable_gitea_from_primary_readiness_board",
        "apply_runtime_blocking_control",
        "switch_github_primary",
        "production_deploy",
        "treat_progress_as_authorization",
    ]:
        assert_contains("iwooos_projection.forbidden_frontend_outputs", iwooos_projection["forbidden_frontend_outputs"], output)

    assert_text_contains("awooop_home_page.security_mirror_panel", awooop_home_page, "SecurityMirrorPanel")
    assert_text_contains("awooop_home_page.security_mirror_metrics", awooop_home_page, "securityMirrorMetrics")
    assert_text_contains("awooop_home_page.security_mirror_headline_current", awooop_home_page, 'value: "64%"')
    assert_text_contains("awooop_home_page.security_mirror_framework_current", awooop_home_page, 'value: "92%"')
    assert_text_contains("awooop_home_page.iwooos_link", awooop_home_page, 'href="/iwooos"')
    for text in [
        "read_only_production_landing_evidence_count=1",
        "execution_router_linked=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_home_page.security_mirror_boundary", awooop_home_page, text)
    for key in ["title", "subtitle", "badge", "openIwooos", "metrics", "checkpoints"]:
        assert_contains(
            "web_messages.zh-TW.awooop.home.securityMirror",
            list(web_messages_zh["awooop"]["home"]["securityMirror"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.home.securityMirror",
            list(web_messages_en["awooop"]["home"]["securityMirror"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_home_page.github_primary_panel",
        awooop_home_page,
        "GitHubPrimaryReadinessHomePanel",
    )
    assert_text_contains(
        "awooop_home_page.github_primary_metrics",
        awooop_home_page,
        "githubPrimaryReadinessMetrics",
    )
    assert_text_contains("awooop_home_page.github_primary_iwooos_link", awooop_home_page, 'href="/iwooos"')
    for text in [
        "source_control_primary_readiness_gate_v1",
        "source_control_owner_response_validation_rollup_v1",
        "source_control_primary_rollback_adr_v1",
        "source_control_workflow_secret_name_inventory_v1",
        "repo_creation_authorized=false",
        "refs_mutation_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_home_page.github_primary_boundary", awooop_home_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "openIwooos",
        "metrics",
        "readinessRefsTitle",
        "readinessRefs",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.home.githubPrimaryReadiness",
            list(web_messages_zh["awooop"]["home"]["githubPrimaryReadiness"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.home.githubPrimaryReadiness",
            list(web_messages_en["awooop"]["home"]["githubPrimaryReadiness"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_home_page.owner_response_validation_panel",
        awooop_home_page,
        "OwnerResponseValidationRollupPanel",
    )
    assert_text_contains(
        "awooop_home_page.owner_response_validation_packets",
        awooop_home_page,
        "ownerResponseValidationPackets",
    )
    assert_text_contains(
        "awooop_home_page.owner_response_validation_checks",
        awooop_home_page,
        "ownerResponseValidationChecks",
    )
    assert_text_contains("awooop_home_page.owner_response_validation_iwooos_link", awooop_home_page, 'href="/iwooos"')
    for text in [
        "source_control_owner_response_validation_rollup_v1",
        "S4.9",
        "S4.10",
        "S4.11",
        "S4.12",
        "owner_response_validation_received_count=0",
        "owner_response_validation_accepted_count=0",
        "owner_response_validation_rejected_count=0",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_home_page.owner_response_validation_boundary", awooop_home_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "openIwooos",
        "packetsTitle",
        "validationTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "fields",
        "metrics",
        "packets",
        "checks",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.home.ownerResponseValidation",
            list(web_messages_zh["awooop"]["home"]["ownerResponseValidation"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.home.ownerResponseValidation",
            list(web_messages_en["awooop"]["home"]["ownerResponseValidation"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_home_page.high_value_config_owner_packet_panel",
        awooop_home_page,
        "HighValueConfigOwnerPacketHomePanel",
    )
    assert_text_contains(
        "awooop_home_page.high_value_config_owner_packet_metrics",
        awooop_home_page,
        "highValueConfigOwnerPacketMetrics",
    )
    assert_text_contains(
        "awooop_home_page.high_value_config_owner_packet_refs",
        awooop_home_page,
        "highValueConfigOwnerPacketRefs",
    )
    assert_text_contains(
        "awooop_home_page.high_value_config_owner_packet_testid",
        awooop_home_page,
        'data-testid="awooop-high-value-config-owner-packet-board"',
    )
    assert_text_contains(
        "awooop_home_page.high_value_config_owner_packet_boundary_testid",
        awooop_home_page,
        'data-testid="awooop-high-value-config-owner-packet-boundaries"',
    )
    assert_text_contains("awooop_home_page.high_value_config_owner_packet_iwooos_link", awooop_home_page, 'href="/iwooos"')
    for text in [
        "awooop_high_value_config_owner_packet_summary_count=4",
        "awooop_high_value_config_owner_packet_ref_count=4",
        "high_value_config_owner_packet_count=1",
        "high_value_config_owner_packet_c0_packet_count=0",
        "high_value_config_owner_packet_request_sent_count=0",
        "high_value_config_owner_packet_received_response_count=0",
        "high_value_config_owner_packet_accepted_response_count=0",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
        "send_owner_request_allowed=false",
        "mark_received_allowed=false",
        "mark_accepted_allowed=false",
        "nginx_reload_authorized=false",
        "workflow_modification_authorized=false",
        "agent_bounty_runtime_authorized=false",
    ]:
        assert_text_contains("awooop_home_page.high_value_config_owner_packet_boundary", awooop_home_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "openIwooos",
        "refsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "metrics",
        "refs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.home.highValueConfigOwnerPacket",
            list(web_messages_zh["awooop"]["home"]["highValueConfigOwnerPacket"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.home.highValueConfigOwnerPacket",
            list(web_messages_en["awooop"]["home"]["highValueConfigOwnerPacket"].keys()),
            key,
        )
    for key in ["packetDrafts", "c0Packets", "responses", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.awooop.home.highValueConfigOwnerPacket.metrics",
            list(web_messages_zh["awooop"]["home"]["highValueConfigOwnerPacket"]["metrics"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.home.highValueConfigOwnerPacket.metrics",
            list(web_messages_en["awooop"]["home"]["highValueConfigOwnerPacket"]["metrics"].keys()),
            key,
        )
    for key in ["packetDraft", "c0Scope", "s49Envelope", "runtimeBoundary"]:
        assert_contains(
            "web_messages.zh-TW.awooop.home.highValueConfigOwnerPacket.refs",
            list(web_messages_zh["awooop"]["home"]["highValueConfigOwnerPacket"]["refs"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.home.highValueConfigOwnerPacket.refs",
            list(web_messages_en["awooop"]["home"]["highValueConfigOwnerPacket"]["refs"].keys()),
            key,
        )

    assert_text_contains("awooop_work_items_page.security_mirror_item", awooop_work_items_page, "iwooosSecurityMirror")
    assert_text_contains("awooop_work_items_page.github_primary_item", awooop_work_items_page, "githubPrimaryReadiness")
    assert_text_contains("awooop_work_items_page.owner_response_validation_item", awooop_work_items_page, "ownerResponseValidation")
    assert_text_contains(
        "awooop_work_items_page.telegram_source_traditional_chinese",
        awooop_work_items_page,
        'source: "telegram_callback / 真相鏈鏡像"',
    )
    assert_text_contains(
        "awooop_work_items_page.security_mirror_source",
        awooop_work_items_page,
        "security_mirror_status_rollup_v1 / iwooos_posture_projection_v1",
    )
    assert_text_contains(
        "awooop_work_items_page.github_primary_source",
        awooop_work_items_page,
        "source-control-primary-readiness-gate.snapshot.json / iwooos_posture_projection_v1",
    )
    assert_text_contains(
        "awooop_work_items_page.owner_response_validation_source",
        awooop_work_items_page,
        "source-control-owner-response-validation-rollup.snapshot.json / security_mirror_status_rollup_v1",
    )
    assert_text_contains("awooop_work_items_page.security_mirror_href", awooop_work_items_page, 'href: "/iwooos"')
    assert_text_contains("awooop_work_items_page.security_mirror_status", awooop_work_items_page, 'status: "watching"')
    assert_text_contains("awooop_work_items_page.security_mirror_headline_current", awooop_work_items_page, 'headline: "64%"')
    assert_text_contains("awooop_work_items_page.security_mirror_framework_current", awooop_work_items_page, 'framework: "92%"')
    for key in ["iwooos"]:
        assert_contains(
            "web_messages.zh-TW.awooop.workItems.surfaces",
            list(web_messages_zh["awooop"]["workItems"]["surfaces"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.workItems.surfaces",
            list(web_messages_en["awooop"]["workItems"]["surfaces"].keys()),
            key,
        )
    for section in ["items", "gates", "evidence"]:
        assert_contains(
            f"web_messages.zh-TW.awooop.workItems.{section}",
            list(web_messages_zh["awooop"]["workItems"][section].keys()),
            "iwooosSecurityMirror",
        )
        assert_contains(
            f"web_messages.en.awooop.workItems.{section}",
            list(web_messages_en["awooop"]["workItems"][section].keys()),
            "iwooosSecurityMirror",
        )
        assert_contains(
            f"web_messages.zh-TW.awooop.workItems.{section}",
            list(web_messages_zh["awooop"]["workItems"][section].keys()),
            "githubPrimaryReadiness",
        )
        assert_contains(
            f"web_messages.en.awooop.workItems.{section}",
            list(web_messages_en["awooop"]["workItems"][section].keys()),
            "githubPrimaryReadiness",
        )
        assert_contains(
            f"web_messages.zh-TW.awooop.workItems.{section}",
            list(web_messages_zh["awooop"]["workItems"][section].keys()),
            "ownerResponseValidation",
        )
        assert_contains(
            f"web_messages.en.awooop.workItems.{section}",
            list(web_messages_en["awooop"]["workItems"][section].keys()),
            "ownerResponseValidation",
        )
    for key in ["iwooosSecurityMirrorOwner", "iwooosSecurityMirrorBoundary"]:
        assert_contains(
            "web_messages.zh-TW.awooop.workItems.evidence",
            list(web_messages_zh["awooop"]["workItems"]["evidence"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.workItems.evidence",
            list(web_messages_en["awooop"]["workItems"]["evidence"].keys()),
            key,
        )
    for key in ["githubPrimaryOwnerResponses", "githubPrimaryWorkflowNames", "githubPrimaryBoundary"]:
        assert_contains(
            "web_messages.zh-TW.awooop.workItems.evidence",
            list(web_messages_zh["awooop"]["workItems"]["evidence"].keys()),
            key,
        )
    for key in [
        "ownerResponseValidationChecks",
        "ownerResponseValidationBoundary",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.workItems.evidence",
            list(web_messages_zh["awooop"]["workItems"]["evidence"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.workItems.evidence",
            list(web_messages_en["awooop"]["workItems"]["evidence"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.workItems.evidence",
            list(web_messages_en["awooop"]["workItems"]["evidence"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_tenants_page.security_tenant_scope_panel",
        awooop_tenants_page,
        "SecurityTenantScopeCandidatePanel",
    )
    assert_text_contains("awooop_tenants_page.iwooos_link", awooop_tenants_page, 'href="/iwooos"')
    for text in [
        "tenant_migration_mode_changed=false",
        "tenant_policy_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_tenants_page.security_tenant_boundary", awooop_tenants_page, text)
    for text in [
        "AWOOOI 第一租戶",
        "IwoooS 資安鏡像",
        "Kali 112 / 開發主機 168 / 開發主機 111",
        "S4.9-S4.12 負責人回覆等待中",
    ]:
        assert_text_contains("awooop_tenants_page.security_tenant_scope_refs", awooop_tenants_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "scopeRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "openIwooos",
        "metrics",
        "scopeRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.tenants.securityTenantScopeCandidate",
            list(web_messages_zh["awooop"]["tenants"]["securityTenantScopeCandidate"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.tenants.securityTenantScopeCandidate",
            list(web_messages_en["awooop"]["tenants"]["securityTenantScopeCandidate"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_tenants_page.github_tenant_scope_panel",
        awooop_tenants_page,
        "GitHubTenantReadinessScopePanel",
    )
    assert_text_contains(
        "awooop_tenants_page.github_tenant_scope_metrics",
        awooop_tenants_page,
        "githubTenantReadinessMetrics",
    )
    assert_text_contains(
        "awooop_tenants_page.github_tenant_scope_iwooos_link",
        awooop_tenants_page,
        'href="/iwooos"',
    )
    for text in [
        "AWOOOI 第一租戶原始碼管控範圍",
        "S4.9 Gitea 清冊負責人證明",
        "S4.10 GitHub 目標負責人決策",
        "S4.12 工作流程 / 機密名稱負責人回覆",
        "tenant_source_control_scope_accepted=false",
        "repo_owner_response_accepted=false",
        "repo_creation_authorized=false",
        "refs_mutation_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
        "tenant_policy_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_tenants_page.github_tenant_scope_boundary", awooop_tenants_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "openIwooos",
        "scopeRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "metrics",
        "scopeRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.tenants.githubTenantReadinessScope",
            list(web_messages_zh["awooop"]["tenants"]["githubTenantReadinessScope"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.tenants.githubTenantReadinessScope",
            list(web_messages_en["awooop"]["tenants"]["githubTenantReadinessScope"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_tenants_page.owner_response_validation_scope_panel",
        awooop_tenants_page,
        "OwnerResponseValidationTenantScopePanel",
    )
    assert_text_contains(
        "awooop_tenants_page.owner_response_validation_refs",
        awooop_tenants_page,
        "ownerResponseValidationTenantRefs",
    )
    assert_text_contains(
        "awooop_tenants_page.owner_response_validation_iwooos_link",
        awooop_tenants_page,
        'href="/iwooos"',
    )
    for text in [
        "source_control_owner_response_validation_rollup_v1",
        "gitea_inventory_owner_attestation_response_v1",
        "github_target_owner_decision_response_v1",
        "source_control_ref_truth_owner_response_v1",
        "source_control_workflow_secret_name_owner_response_v1",
        "owner_response_validation_received_count=0",
        "owner_response_validation_accepted_count=0",
        "owner_response_validation_rejected_count=0",
        "tenant_source_control_scope_accepted=false",
        "tenant_policy_mutation_authorized=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_tenants_page.owner_response_validation_boundary", awooop_tenants_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "openIwooos",
        "scopeRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "metrics",
        "scopeRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.tenants.ownerResponseValidationScope",
            list(web_messages_zh["awooop"]["tenants"]["ownerResponseValidationScope"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.tenants.ownerResponseValidationScope",
            list(web_messages_en["awooop"]["tenants"]["ownerResponseValidationScope"].keys()),
            key,
        )
    for key in [
        "validationRollup",
        "giteaAttestation",
        "githubTarget",
        "refsTruth",
        "workflowSecret",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.tenants.ownerResponseValidationScope.scopeRefs",
            list(web_messages_zh["awooop"]["tenants"]["ownerResponseValidationScope"]["scopeRefs"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.tenants.ownerResponseValidationScope.scopeRefs",
            list(web_messages_en["awooop"]["tenants"]["ownerResponseValidationScope"]["scopeRefs"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_runs_page.security_run_state_panel",
        awooop_runs_page,
        "SecurityRunStateCandidatePanel",
    )
    assert_text_contains("awooop_runs_page.iwooos_link", awooop_runs_page, 'href="/iwooos"')
    for text in [
        "security_run_created=false",
        "execution_router_linked=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_runs_page.security_run_boundary", awooop_runs_page, text)
    for text in [
        "security_mirror_run_state_candidate",
        "read_only_dry_run_only",
        "S4.9-S4.12 負責人回覆等待中",
        "主動執行期閘門 0",
    ]:
        assert_text_contains("awooop_runs_page.security_run_refs", awooop_runs_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "runRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "openIwooos",
        "metrics",
        "runRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.runs.securityRunStateCandidate",
            list(web_messages_zh["awooop"]["runs"]["securityRunStateCandidate"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.runs.securityRunStateCandidate",
            list(web_messages_en["awooop"]["runs"]["securityRunStateCandidate"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_runs_page.github_run_boundary_panel",
        awooop_runs_page,
        "GitHubRunReadinessBoundaryPanel",
    )
    assert_text_contains(
        "awooop_runs_page.github_run_boundary_metrics",
        awooop_runs_page,
        "githubRunReadinessMetrics",
    )
    assert_text_contains(
        "awooop_runs_page.github_run_boundary_iwooos_link",
        awooop_runs_page,
        'href="/iwooos"',
    )
    for text in [
        "source_control_primary_readiness_gate_v1",
        "source_control_owner_response_validation_rollup_v1",
        "source_control_workflow_secret_name_inventory_v1",
        "source_control_primary_rollback_adr_v1",
        "security_run_created=false",
        "github_primary_run_created=false",
        "execution_router_linked=false",
        "repo_creation_authorized=false",
        "refs_mutation_authorized=false",
        "workflow_secret_modification_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_runs_page.github_run_boundary", awooop_runs_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "openIwooos",
        "runRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "metrics",
        "runRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.runs.githubRunReadinessBoundary",
            list(web_messages_zh["awooop"]["runs"]["githubRunReadinessBoundary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.runs.githubRunReadinessBoundary",
            list(web_messages_en["awooop"]["runs"]["githubRunReadinessBoundary"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_runs_page.owner_response_validation_run_boundary_panel",
        awooop_runs_page,
        "OwnerResponseValidationRunBoundaryPanel",
    )
    assert_text_contains(
        "awooop_runs_page.owner_response_validation_run_refs",
        awooop_runs_page,
        "ownerResponseValidationRunRefs",
    )
    assert_text_contains(
        "awooop_runs_page.owner_response_validation_run_iwooos_link",
        awooop_runs_page,
        'href="/iwooos"',
    )
    for text in [
        "source_control_owner_response_validation_rollup_v1",
        "gitea_inventory_owner_attestation_response_v1",
        "github_target_owner_decision_response_v1",
        "source_control_ref_truth_owner_response_v1",
        "source_control_workflow_secret_name_owner_response_v1",
        "owner_response_validation_received_count=0",
        "owner_response_validation_accepted_count=0",
        "owner_response_validation_rejected_count=0",
        "security_run_created=false",
        "owner_response_validation_run_created=false",
        "platform_run_creation_authorized=false",
        "execution_router_linked=false",
        "approval_record_created=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_runs_page.owner_response_validation_run_boundary", awooop_runs_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "openIwooos",
        "runRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "metrics",
        "runRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.runs.ownerResponseValidationRunBoundary",
            list(web_messages_zh["awooop"]["runs"]["ownerResponseValidationRunBoundary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.runs.ownerResponseValidationRunBoundary",
            list(web_messages_en["awooop"]["runs"]["ownerResponseValidationRunBoundary"].keys()),
            key,
        )
    for key in [
        "validationRollup",
        "giteaAttestation",
        "githubTarget",
        "refsTruth",
        "workflowSecret",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.runs.ownerResponseValidationRunBoundary.runRefs",
            list(web_messages_zh["awooop"]["runs"]["ownerResponseValidationRunBoundary"]["runRefs"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.runs.ownerResponseValidationRunBoundary.runRefs",
            list(web_messages_en["awooop"]["runs"]["ownerResponseValidationRunBoundary"]["runRefs"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_run_detail_page.owner_response_validation_detail_boundary_panel",
        awooop_run_detail_page,
        "OwnerResponseValidationDetailBoundaryPanel",
    )
    assert_text_contains(
        "awooop_run_detail_page.owner_response_validation_detail_refs",
        awooop_run_detail_page,
        "ownerResponseValidationDetailRefs",
    )
    assert_text_contains(
        "awooop_run_detail_page.owner_response_validation_detail_iwooos_link",
        awooop_run_detail_page,
        'href="/iwooos"',
    )
    for text in [
        "source_control_owner_response_validation_rollup_v1",
        "gitea_inventory_owner_attestation_response_v1",
        "github_target_owner_decision_response_v1",
        "source_control_ref_truth_owner_response_v1",
        "source_control_workflow_secret_name_owner_response_v1",
        "owner_response_validation_received_count=0",
        "owner_response_validation_accepted_count=0",
        "owner_response_validation_rejected_count=0",
        "run_detail_owner_response_linked=false",
        "run_detail_approval_record_created=false",
        "mcp_execution_authorized=false",
        "remediation_execution_authorized=false",
        "platform_run_creation_authorized=false",
        "execution_router_linked=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_run_detail_page.owner_response_validation_detail_boundary", awooop_run_detail_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "openIwooos",
        "detailRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "metrics",
        "detailRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.runDetail.ownerResponseValidationDetailBoundary",
            list(web_messages_zh["awooop"]["runDetail"]["ownerResponseValidationDetailBoundary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.runDetail.ownerResponseValidationDetailBoundary",
            list(web_messages_en["awooop"]["runDetail"]["ownerResponseValidationDetailBoundary"].keys()),
            key,
        )
    for key in [
        "validationRollup",
        "giteaAttestation",
        "githubTarget",
        "refsTruth",
        "workflowSecret",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.runDetail.ownerResponseValidationDetailBoundary.detailRefs",
            list(web_messages_zh["awooop"]["runDetail"]["ownerResponseValidationDetailBoundary"]["detailRefs"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.runDetail.ownerResponseValidationDetailBoundary.detailRefs",
            list(web_messages_en["awooop"]["runDetail"]["ownerResponseValidationDetailBoundary"]["detailRefs"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_approval_detail_page.owner_response_validation_decision_panel",
        awooop_approval_detail_page,
        "OwnerResponseValidationDecisionBoundaryPanel",
    )
    assert_text_contains(
        "awooop_approval_detail_page.owner_response_validation_decision_refs",
        awooop_approval_detail_page,
        "ownerResponseValidationDecisionRefs",
    )
    assert_text_contains(
        "awooop_approval_detail_page.owner_response_validation_decision_iwooos_link",
        awooop_approval_detail_page,
        'href="/iwooos"',
    )
    for text in [
        "source_control_owner_response_validation_rollup_v1",
        "gitea_inventory_owner_attestation_response_v1",
        "github_target_owner_decision_response_v1",
        "source_control_ref_truth_owner_response_v1",
        "source_control_workflow_secret_name_owner_response_v1",
        "owner_response_validation_received_count=0",
        "owner_response_validation_accepted_count=0",
        "owner_response_validation_rejected_count=0",
        "approval_decision_owner_response_linked=false",
        "owner_response_acceptance_authorized=false",
        "security_approval_record_created=false",
        "platform_run_creation_authorized=false",
        "execution_router_linked=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains(
            "awooop_approval_detail_page.owner_response_validation_decision_boundary",
            awooop_approval_detail_page,
            text,
        )
    for key in [
        "title",
        "subtitle",
        "badge",
        "openIwooos",
        "decisionRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "metrics",
        "decisionRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.approvalDecision.ownerResponseValidationDecisionBoundary",
            list(web_messages_zh["awooop"]["approvalDecision"]["ownerResponseValidationDecisionBoundary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.approvalDecision.ownerResponseValidationDecisionBoundary",
            list(web_messages_en["awooop"]["approvalDecision"]["ownerResponseValidationDecisionBoundary"].keys()),
            key,
        )
    for key in [
        "validationRollup",
        "giteaAttestation",
        "githubTarget",
        "refsTruth",
        "workflowSecret",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.approvalDecision.ownerResponseValidationDecisionBoundary.decisionRefs",
            list(
                web_messages_zh["awooop"]["approvalDecision"]["ownerResponseValidationDecisionBoundary"][
                    "decisionRefs"
                ].keys()
            ),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.approvalDecision.ownerResponseValidationDecisionBoundary.decisionRefs",
            list(
                web_messages_en["awooop"]["approvalDecision"]["ownerResponseValidationDecisionBoundary"][
                    "decisionRefs"
                ].keys()
            ),
            key,
        )

    assert_text_contains("awooop_approvals_page.security_owner_response_panel", awooop_approvals_page, "SecurityOwnerResponseGatePanel")
    assert_text_contains("awooop_approvals_page.iwooos_link", awooop_approvals_page, 'href="/iwooos"')
    assert_text_contains("awooop_approvals_page.security_owner_response_headline_current", awooop_approvals_page, 'value: "64%"')
    for text in [
        "approval_record_created=false",
        "owner_response_accepted_count=0",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_approvals_page.security_owner_response_boundary", awooop_approvals_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "ownerChecksTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "openIwooos",
        "metrics",
        "checks",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.approvals.securityOwnerResponseGate",
            list(web_messages_zh["awooop"]["approvals"]["securityOwnerResponseGate"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.approvals.securityOwnerResponseGate",
            list(web_messages_en["awooop"]["approvals"]["securityOwnerResponseGate"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_approvals_page.github_primary_boundary_panel",
        awooop_approvals_page,
        "GitHubPrimaryReadinessApprovalBoundaryPanel",
    )
    for text in [
        "approval_record_created=false",
        "github_primary_approval_granted=false",
        "owner_response_accepted_count=0",
        "repo_creation_authorized=false",
        "refs_mutation_authorized=false",
        "secret_value_collection_allowed=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_approvals_page.github_primary_boundary", awooop_approvals_page, text)
    for text in [
        "S4.9",
        "S4.10",
        "S4.11",
        "S4.12",
        "giteaOwnerAttestation",
        "githubTargetOwner",
        "refsTruthOwner",
        "workflowSecretOwner",
    ]:
        assert_text_contains("awooop_approvals_page.github_primary_response_lanes", awooop_approvals_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "responseLanesTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "openIwooos",
        "metrics",
        "responseLanes",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.approvals.githubPrimaryReadinessGate",
            list(web_messages_zh["awooop"]["approvals"]["githubPrimaryReadinessGate"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.approvals.githubPrimaryReadinessGate",
            list(web_messages_en["awooop"]["approvals"]["githubPrimaryReadinessGate"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_approvals_page.owner_response_validation_boundary_panel",
        awooop_approvals_page,
        "OwnerResponseValidationApprovalBoundaryPanel",
    )
    assert_text_contains("awooop_approvals_page.owner_response_validation_iwooos_link", awooop_approvals_page, 'href="/iwooos"')
    for text in [
        "owner_response_validation_received_count=0",
        "owner_response_validation_accepted_count=0",
        "owner_response_validation_rejected_count=0",
        "approval_record_created=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_approvals_page.owner_response_validation_boundary", awooop_approvals_page, text)
    for text in [
        "source_control_owner_response_validation_rollup_v1",
        "gitea_inventory_owner_attestation_response_v1",
        "github_target_owner_decision_response_v1",
        "source_control_ref_truth_owner_response_v1",
        "source_control_workflow_secret_name_owner_response_v1",
    ]:
        assert_text_contains("awooop_approvals_page.owner_response_validation_refs", awooop_approvals_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "reviewRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "openIwooos",
        "metrics",
        "reviewRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.approvals.ownerResponseValidationBoundary",
            list(web_messages_zh["awooop"]["approvals"]["ownerResponseValidationBoundary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.approvals.ownerResponseValidationBoundary",
            list(web_messages_en["awooop"]["approvals"]["ownerResponseValidationBoundary"].keys()),
            key,
        )

    assert_text_contains("awooop_contracts_page.security_contract_candidate_panel", awooop_contracts_page, "SecurityContractCandidatePanel")
    assert_text_contains("awooop_contracts_page.iwooos_link", awooop_contracts_page, 'href="/iwooos"')
    assert_text_contains("awooop_contracts_page.project_header_traditional_chinese", awooop_contracts_page, "專案 ID")
    assert_text_contains("awooop_contracts_page.hash_header_traditional_chinese", awooop_contracts_page, "雜湊")
    assert_text_not_contains("awooop_contracts_page.project_header_english", awooop_contracts_page, "Project ID")
    assert_text_not_contains("awooop_contracts_page.hash_header_english", awooop_contracts_page, ">Hash<")
    for text in [
        "contract_publish_authorized=false",
        "contract_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_contracts_page.security_contract_boundary", awooop_contracts_page, text)
    for text in [
        "security_mirror_status_rollup_v1",
        "iwooos_posture_projection_v1",
        "source_control_owner_response_validation_rollup_v1",
        "security_rollout_policy_v1",
    ]:
        assert_text_contains("awooop_contracts_page.security_contract_refs", awooop_contracts_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "contractRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "openIwooos",
        "metrics",
        "contractRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.contracts.securityContractCandidate",
            list(web_messages_zh["awooop"]["contracts"]["securityContractCandidate"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.contracts.securityContractCandidate",
            list(web_messages_en["awooop"]["contracts"]["securityContractCandidate"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_contracts_page.github_primary_readiness_candidate_panel",
        awooop_contracts_page,
        "GitHubPrimaryReadinessContractCandidatePanel",
    )
    for text in [
        "repo_creation_authorized=false",
        "refs_mutation_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_contracts_page.github_primary_boundary", awooop_contracts_page, text)
    for text in [
        "source_control_primary_readiness_gate_v1",
        "source_control_owner_response_validation_rollup_v1",
        "source_control_primary_rollback_adr_v1",
        "source_control_workflow_secret_name_inventory_v1",
        "iwooos_posture_projection_v1",
    ]:
        assert_text_contains("awooop_contracts_page.github_primary_refs", awooop_contracts_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "contractRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "openIwooos",
        "metrics",
        "contractRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.contracts.githubPrimaryReadinessCandidate",
            list(web_messages_zh["awooop"]["contracts"]["githubPrimaryReadinessCandidate"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.contracts.githubPrimaryReadinessCandidate",
            list(web_messages_en["awooop"]["contracts"]["githubPrimaryReadinessCandidate"].keys()),
            key,
        )

    assert_text_contains(
        "awooop_contracts_page.owner_response_validation_candidate_panel",
        awooop_contracts_page,
        "OwnerResponseValidationContractCandidatePanel",
    )
    for text in [
        "owner_response_validation_received_count=0",
        "owner_response_validation_accepted_count=0",
        "approval_record_created=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
    ]:
        assert_text_contains("awooop_contracts_page.owner_response_validation_boundary", awooop_contracts_page, text)
    for text in [
        "source_control_owner_response_validation_rollup_v1",
        "gitea_inventory_owner_attestation_response_v1",
        "github_target_owner_decision_response_v1",
        "source_control_ref_truth_owner_response_v1",
        "source_control_workflow_secret_name_owner_response_v1",
    ]:
        assert_text_contains("awooop_contracts_page.owner_response_validation_refs", awooop_contracts_page, text)
    for key in [
        "title",
        "subtitle",
        "badge",
        "contractRefsTitle",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryDetail",
        "openIwooos",
        "metrics",
        "contractRefs",
    ]:
        assert_contains(
            "web_messages.zh-TW.awooop.contracts.ownerResponseValidationCandidate",
            list(web_messages_zh["awooop"]["contracts"]["ownerResponseValidationCandidate"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.awooop.contracts.ownerResponseValidationCandidate",
            list(web_messages_en["awooop"]["contracts"]["ownerResponseValidationCandidate"].keys()),
            key,
        )

    assert_text_contains("iwooos_bridge.component", iwooos_bridge, "IwoooSReadOnlyBridge")
    assert_text_contains("iwooos_bridge.testid", iwooos_bridge, 'data-testid="iwooos-read-only-bridge"')
    assert_text_contains("iwooos_bridge.iwooos_link", iwooos_bridge, 'href="/iwooos"')
    assert_text_contains("iwooos_bridge.overall_current", iwooos_bridge, "value: '64%'")
    assert_text_contains("iwooos_bridge.framework_current", iwooos_bridge, "value: '92%'")
    for text in [
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains("iwooos_bridge.boundary", iwooos_bridge, text)
    for source_text in [
        security_panel,
        compliance_panel,
        standalone_security_page,
        standalone_compliance_page,
    ]:
        assert_text_contains("existing_security_pages.iwooos_bridge_import", source_text, "IwoooSReadOnlyBridge")
        assert_text_contains("existing_security_pages.iwooos_bridge_render", source_text, "<IwoooSReadOnlyBridge />")
    for source_text in [
        alerts_page,
        authorizations_page,
        governance_page,
        errors_panel,
    ]:
        assert_text_contains("security_control_pages.iwooos_bridge_import", source_text, "IwoooSReadOnlyBridge")
        assert_text_contains("security_control_pages.iwooos_bridge_render", source_text, "<IwoooSReadOnlyBridge />")
    for source_text in [
        alert_operation_logs_page,
        code_review_page,
    ]:
        assert_text_contains("audit_engineering_pages.iwooos_bridge_import", source_text, "IwoooSReadOnlyBridge")
        assert_text_contains(
            "audit_engineering_pages.iwooos_bridge_render",
            source_text,
            '<IwoooSReadOnlyBridge variant="dark" />',
        )
    code_review_surface_text = "\n".join(
        [
            code_review_page,
            "\n".join(collect_string_values(web_messages_zh.get("codeReview", {}))),
        ]
    )
    for text in [
        'data-testid="code-review-codex-handoff-board"',
        'data-testid="code-review-codex-candidate-work"',
        "codex_handoff_mode=read_only_candidate",
        "codex_auto_coding_enabled=false",
        "runtime_execution_authorized=false",
        "production_deploy_authorized=false",
        "action_buttons_allowed=false",
        "CR-CX-04",
    ]:
        assert_text_contains("code_review_page.codex_handoff_structure", code_review_page, text)
    for text in [
        "審查後 Coding 工作橋接",
        "Codex 工作草稿",
        "可交給 Codex 起草",
        "需人工批准後接手",
        "禁止自動轉工作",
        "前端體驗、測試補洞、文件同步、低風險重構",
        "Kali 更新、掃描、GitHub primary、正式部署",
        "維持只讀候選與人工閘門",
    ]:
        assert_text_contains("code_review_page.codex_handoff_read_only", code_review_surface_text, text)
    assert_text_contains("iwooos_page.surface_connection_board", iwooos_projection_page, "surfaceConnectionStatuses")
    assert_text_contains("iwooos_page.surface_connection_testid", iwooos_projection_page, 'data-testid="iwooos-surface-connection-board"')
    assert_text_contains("iwooos_page.surface_connection_embedded", iwooos_projection_page, "embeddedBridge")
    assert_text_contains("iwooos_page.surface_connection_direct", iwooos_projection_page, "directBridge")
    assert_text_contains("iwooos_page.surface_connection_awooop", iwooos_projection_page, "awooopCandidate")
    assert_text_contains("iwooos_page.code_review_handoff_surface_testid", iwooos_projection_page, "iwooos-code-review-handoff-surface-card")
    assert_text_contains("iwooos_page.code_review_handoff_surface_state", iwooos_projection_page, "reviewHandoffCandidate")
    assert_text_contains("iwooos_page.source_control_readiness_board", iwooos_projection_page, "sourceControlReadinessItems")
    assert_text_contains(
        "iwooos_page.source_control_readiness_testid",
        iwooos_projection_page,
        'data-testid="iwooos-source-control-readiness-board"',
    )
    assert_text_contains("iwooos_page.source_control_readiness_component", iwooos_projection_page, "SourceControlReadinessCard")
    assert_text_contains("iwooos_page.awooop_coverage_board", iwooos_projection_page, "awooopCoverageStatuses")
    assert_text_contains(
        "iwooos_page.awooop_coverage_testid",
        iwooos_projection_page,
        'data-testid="iwooos-awooop-coverage-board"',
    )
    assert_text_contains("iwooos_page.awooop_coverage_component", iwooos_projection_page, "AwoooPCoverageStatusCard")
    for text in [
        "/awooop",
        "/awooop/work-items",
        "/awooop/contracts",
        "/awooop/tenants",
        "/awooop/runs",
        "/awooop/runs/[run_id]",
        "/awooop/approvals",
        "/awooop/approvals/[run_id]",
        "awooop_route_coverage_count=8",
        "awooop_route_coverage_visible_count=8",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "secret_value_collection_allowed=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains("iwooos_page.awooop_coverage_boundary", iwooos_projection_page, text)
    assert_text_contains("iwooos_page.security_convergence_steps", iwooos_projection_page, "securityConvergenceSteps")
    assert_text_contains(
        "iwooos_page.security_convergence_testid",
        iwooos_projection_page,
        'data-testid="iwooos-security-convergence-roadmap"',
    )
    assert_text_contains(
        "iwooos_page.security_convergence_component",
        iwooos_projection_page,
        "SecurityConvergenceRoadmapBoard",
    )
    for text in [
        "phase_tightening_mode=gradual",
        "initial_enforcement_level=observe_warn_only",
        "blocking_controls_enabled=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "owner_response_required_before_blocking=true",
        "not_authorization=true",
        "kali_execute_authorized=false",
        "host_update_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains("iwooos_page.security_convergence_boundary", iwooos_projection_page, text)
    assert_text_contains(
        "iwooos_page.owner_response_collection_packets",
        iwooos_projection_page,
        "ownerResponseCollectionPackets",
    )
    assert_text_contains(
        "iwooos_page.owner_response_collection_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-collection-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_collection_component",
        iwooos_projection_page,
        "OwnerResponseCollectionBoard",
    )
    for text in [
        "owner_response_collection_packet_count=4",
        "owner_response_required_template_count=24",
        "owner_response_received_count=0",
        "owner_response_accepted_count=0",
        "owner_response_rejected_count=0",
        "owner_response_collection_mode=human_intake_only",
        "request_packet_visible=true",
        "response_packet_created=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
    ]:
        assert_text_contains("iwooos_page.owner_response_collection_boundary", iwooos_projection_page, text)
    assert_text_contains(
        "iwooos_page.owner_response_intake_safety_rules",
        iwooos_projection_page,
        "ownerResponseIntakeSafetyRules",
    )
    assert_text_contains(
        "iwooos_page.owner_response_intake_safety_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-intake-safety-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_intake_safety_component",
        iwooos_projection_page,
        "OwnerResponseIntakeSafetyBoard",
    )
    for text in [
        "owner_response_intake_safety_rule_count=6",
        "owner_response_payload_ingested_count=0",
        "owner_response_quarantine_count=0",
        "owner_response_rejection_count=0",
        "owner_response_auto_accept_allowed=false",
        "owner_response_secret_value_quarantine_required=true",
        "owner_response_mutation_request_allowed=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "kali_execute_authorized=false",
    ]:
        assert_text_contains("iwooos_page.owner_response_intake_safety_boundary", iwooos_projection_page, text)
    assert_text_contains(
        "iwooos_page.owner_response_review_outcome_lanes",
        iwooos_projection_page,
        "ownerResponseReviewOutcomeLanes",
    )
    assert_text_contains(
        "iwooos_page.owner_response_review_outcome_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-review-outcome-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_review_outcome_component",
        iwooos_projection_page,
        "OwnerResponseReviewOutcomeBoard",
    )
    for text in [
        "owner_response_review_outcome_lane_count=7",
        "owner_response_review_ready_count=0",
        "owner_response_review_accepted_count=0",
        "owner_response_review_escalated_count=0",
        "owner_response_review_runtime_gate_count=0",
        "owner_response_review_auto_decision_allowed=false",
        "owner_response_review_human_decision_required=true",
        "owner_response_review_only_updates_readonly_state=true",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
    ]:
        assert_text_contains("iwooos_page.owner_response_review_outcome_boundary", iwooos_projection_page, text)
    assert_text_contains(
        "iwooos_page.owner_response_human_decision_queue_items",
        iwooos_projection_page,
        "ownerResponseHumanDecisionQueueItems",
    )
    assert_text_contains(
        "iwooos_page.owner_response_human_decision_queue_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-human-decision-queue-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_human_decision_queue_component",
        iwooos_projection_page,
        "OwnerResponseHumanDecisionQueueBoard",
    )
    for text in [
        "owner_response_human_decision_queue_item_count=6",
        "owner_response_human_decision_ready_count=0",
        "owner_response_human_decision_approved_count=0",
        "owner_response_human_decision_runtime_gate_count=0",
        "owner_response_human_decision_record_created=false",
        "owner_response_human_decision_auto_approval_allowed=false",
        "owner_response_human_decision_requires_reviewer=true",
        "owner_response_human_decision_only_prepares_packet=true",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains("iwooos_page.owner_response_human_decision_queue_boundary", iwooos_projection_page, text)
    assert_text_contains(
        "iwooos_page.owner_response_decision_record_draft_guard_items",
        iwooos_projection_page,
        "ownerResponseDecisionRecordDraftGuardItems",
    )
    assert_text_contains(
        "iwooos_page.owner_response_decision_record_draft_guard_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-decision-record-draft-guard-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_decision_record_draft_guard_component",
        iwooos_projection_page,
        "OwnerResponseDecisionRecordDraftGuardBoard",
    )
    for text in [
        "owner_response_decision_record_draft_guard_count=6",
        "owner_response_decision_record_draft_created_count=0",
        "owner_response_decision_record_formal_count=0",
        "owner_response_decision_record_approved_count=0",
        "owner_response_decision_record_runtime_gate_count=0",
        "owner_response_decision_record_draft_only=true",
        "owner_response_decision_record_write_authorized=false",
        "owner_response_decision_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_decision_record_draft_guard_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_candidate_preflight_items",
        iwooos_projection_page,
        "ownerResponseFormalRecordCandidatePreflightItems",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_candidate_preflight_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-candidate-preflight-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_candidate_preflight_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordCandidatePreflightBoard",
    )
    for text in [
        "owner_response_formal_record_candidate_preflight_count=7",
        "owner_response_formal_record_candidate_count=0",
        "owner_response_formal_record_created_count=0",
        "owner_response_formal_record_approved_count=0",
        "owner_response_formal_record_runtime_gate_count=0",
        "owner_response_formal_record_candidate_only=true",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_candidate_preflight_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_candidate_outcome_lanes",
        iwooos_projection_page,
        "ownerResponseFormalRecordCandidateOutcomeLanes",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_candidate_outcome_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-candidate-outcome-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_candidate_outcome_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordCandidateOutcomeBoard",
    )
    for text in [
        "owner_response_formal_record_candidate_outcome_lane_count=8",
        "owner_response_formal_record_candidate_ready_count=0",
        "owner_response_formal_record_candidate_returned_count=0",
        "owner_response_formal_record_candidate_quarantine_count=0",
        "owner_response_formal_record_candidate_rejected_count=0",
        "owner_response_formal_record_candidate_promoted_count=0",
        "owner_response_formal_record_candidate_review_only=true",
        "owner_response_formal_record_auto_promotion_allowed=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_candidate_outcome_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_handoff_packets",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerHandoffPackets",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_handoff_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-handoff-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_handoff_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerHandoffBoard",
    )
    for text in [
        "owner_response_formal_record_owner_handoff_packet_count=7",
        "owner_response_formal_record_owner_handoff_ready_count=0",
        "owner_response_formal_record_owner_assigned_count=0",
        "owner_response_formal_record_created_count=0",
        "owner_response_formal_record_approved_count=0",
        "owner_response_formal_record_runtime_gate_count=0",
        "owner_response_formal_record_owner_handoff_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_handoff_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_handoff_review_items",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerHandoffReviewItems",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_handoff_review_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-handoff-review-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_handoff_review_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerHandoffReviewBoard",
    )
    for text in [
        "owner_response_formal_record_owner_handoff_review_check_count=7",
        "owner_response_formal_record_owner_handoff_review_passed_count=0",
        "owner_response_formal_record_owner_assigned_count=0",
        "owner_response_formal_record_created_count=0",
        "owner_response_formal_record_approved_count=0",
        "owner_response_formal_record_runtime_gate_count=0",
        "owner_response_formal_record_owner_handoff_review_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_handoff_review_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_handoff_review_outcome_lanes",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerHandoffReviewOutcomeLanes",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_handoff_review_outcome_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-handoff-review-outcome-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_handoff_review_outcome_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerHandoffReviewOutcomeBoard",
    )
    for text in [
        "owner_response_formal_record_owner_handoff_review_outcome_lane_count=8",
        "owner_response_formal_record_owner_handoff_review_ready_count=0",
        "owner_response_formal_record_owner_handoff_review_returned_count=0",
        "owner_response_formal_record_owner_handoff_review_quarantine_count=0",
        "owner_response_formal_record_owner_handoff_review_rejected_count=0",
        "owner_response_formal_record_owner_handoff_review_promoted_count=0",
        "owner_response_formal_record_owner_handoff_review_outcome_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_handoff_review_outcome_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_review_preparation_packets",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerReviewPreparationPackets",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_review_preparation_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-review-preparation-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_review_preparation_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerReviewPreparationBoard",
    )
    for text in [
        "owner_response_formal_record_owner_review_preparation_packet_count=8",
        "owner_response_formal_record_owner_review_preparation_ready_count=0",
        "owner_response_formal_record_owner_assigned_count=0",
        "owner_response_formal_record_created_count=0",
        "owner_response_formal_record_approved_count=0",
        "owner_response_formal_record_runtime_gate_count=0",
        "owner_response_formal_record_owner_review_preparation_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_review_preparation_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_review_checklist_items",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerReviewChecklistItems",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_review_checklist_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-review-checklist-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_review_checklist_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerReviewChecklistBoard",
    )
    for text in [
        "owner_response_formal_record_owner_review_check_count=8",
        "owner_response_formal_record_owner_review_passed_count=0",
        "owner_response_formal_record_owner_assigned_count=0",
        "owner_response_formal_record_created_count=0",
        "owner_response_formal_record_approved_count=0",
        "owner_response_formal_record_runtime_gate_count=0",
        "owner_response_formal_record_owner_review_checklist_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_review_checklist_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_review_outcome_lanes",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerReviewOutcomeLanes",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_review_outcome_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-review-outcome-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_review_outcome_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerReviewOutcomeBoard",
    )
    for text in [
        "owner_response_formal_record_owner_review_outcome_lane_count=8",
        "owner_response_formal_record_owner_review_outcome_ready_count=0",
        "owner_response_formal_record_owner_review_outcome_returned_count=0",
        "owner_response_formal_record_owner_review_outcome_quarantine_count=0",
        "owner_response_formal_record_owner_review_outcome_rejected_count=0",
        "owner_response_formal_record_owner_review_outcome_promoted_count=0",
        "owner_response_formal_record_owner_review_outcome_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_review_outcome_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_preparation_packets",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerAssignmentPreparationPackets",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_preparation_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-assignment-preparation-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_preparation_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerAssignmentPreparationBoard",
    )
    for text in [
        "owner_response_formal_record_owner_assignment_preparation_packet_count=8",
        "owner_response_formal_record_owner_assignment_preparation_ready_count=0",
        "owner_response_formal_record_owner_assigned_count=0",
        "owner_response_formal_record_created_count=0",
        "owner_response_formal_record_approved_count=0",
        "owner_response_formal_record_runtime_gate_count=0",
        "owner_response_formal_record_owner_assignment_preparation_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_assignment_preparation_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_checklist_items",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerAssignmentChecklistItems",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_checklist_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-assignment-checklist-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_checklist_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerAssignmentChecklistBoard",
    )
    for text in [
        "owner_response_formal_record_owner_assignment_check_count=8",
        "owner_response_formal_record_owner_assignment_check_passed_count=0",
        "owner_response_formal_record_owner_assigned_count=0",
        "owner_response_formal_record_created_count=0",
        "owner_response_formal_record_approved_count=0",
        "owner_response_formal_record_runtime_gate_count=0",
        "owner_response_formal_record_owner_assignment_checklist_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_assignment_checklist_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_outcome_lanes",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerAssignmentOutcomeLanes",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_outcome_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-assignment-outcome-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_outcome_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerAssignmentOutcomeBoard",
    )
    for text in [
        "owner_response_formal_record_owner_assignment_outcome_lane_count=8",
        "owner_response_formal_record_owner_assignment_outcome_ready_count=0",
        "owner_response_formal_record_owner_assignment_outcome_returned_count=0",
        "owner_response_formal_record_owner_assignment_outcome_quarantine_count=0",
        "owner_response_formal_record_owner_assignment_outcome_rejected_count=0",
        "owner_response_formal_record_owner_assignment_outcome_promoted_count=0",
        "owner_response_formal_record_owner_assignment_outcome_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_assignment_outcome_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_decision_preparation_packets",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerAssignmentDecisionPreparationPackets",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_decision_preparation_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-assignment-decision-preparation-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_decision_preparation_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard",
    )
    for text in [
        "owner_response_formal_record_owner_assignment_decision_preparation_packet_count=8",
        "owner_response_formal_record_owner_assignment_decision_preparation_ready_count=0",
        "owner_response_formal_record_owner_assignment_decision_created_count=0",
        "owner_response_formal_record_owner_assigned_count=0",
        "owner_response_formal_record_created_count=0",
        "owner_response_formal_record_approved_count=0",
        "owner_response_formal_record_runtime_gate_count=0",
        "owner_response_formal_record_owner_assignment_decision_preparation_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_assignment_decision_preparation_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_decision_checklist_items",
        iwooos_projection_page,
        "ownerResponseFormalRecordOwnerAssignmentDecisionChecklistItems",
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_decision_checklist_testid",
        iwooos_projection_page,
        'data-testid="iwooos-owner-response-formal-record-owner-assignment-decision-checklist-board"',
    )
    assert_text_contains(
        "iwooos_page.owner_response_formal_record_owner_assignment_decision_checklist_component",
        iwooos_projection_page,
        "OwnerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard",
    )
    for text in [
        "owner_response_formal_record_owner_assignment_decision_check_count=8",
        "owner_response_formal_record_owner_assignment_decision_check_passed_count=0",
        "owner_response_formal_record_owner_assignment_decision_created_count=0",
        "owner_response_formal_record_owner_assigned_count=0",
        "owner_response_formal_record_created_count=0",
        "owner_response_formal_record_approved_count=0",
        "owner_response_formal_record_runtime_gate_count=0",
        "owner_response_formal_record_owner_assignment_decision_checklist_only=true",
        "owner_response_formal_record_owner_assignment_authorized=false",
        "owner_response_formal_record_write_authorized=false",
        "owner_response_formal_record_approval_authorized=false",
        "owner_response_formal_record_execution_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.owner_response_formal_record_owner_assignment_decision_checklist_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.headline_movement_acceptance_gate_items",
        iwooos_projection_page,
        "headlineMovementAcceptanceGates",
    )
    assert_text_contains(
        "iwooos_page.headline_movement_acceptance_gate_testid",
        iwooos_projection_page,
        'data-testid="iwooos-headline-movement-acceptance-gate-board"',
    )
    assert_text_contains(
        "iwooos_page.headline_movement_acceptance_gate_component",
        iwooos_projection_page,
        "HeadlineMovementAcceptanceGateBoard",
    )
    assert_text_contains(
        "iwooos_page.operator_next_tasks_items",
        iwooos_projection_page,
        "operatorNextTasks",
    )
    assert_text_contains(
        "iwooos_page.operator_next_tasks_board",
        iwooos_projection_page,
        "IwoooSOperatorNextTasksBoard",
    )
    assert_text_contains(
        "iwooos_page.operator_next_tasks_testid",
        iwooos_projection_page,
        'data-testid="iwooos-operator-next-tasks-board"',
    )
    assert_text_contains(
        "iwooos_page.stage_completion_report_items",
        iwooos_projection_page,
        "stageCompletionReportItems",
    )
    assert_text_contains(
        "iwooos_page.stage_completion_report_board",
        iwooos_projection_page,
        "IwoooSStageCompletionReportBoard",
    )
    assert_text_contains(
        "iwooos_page.stage_completion_report_testid",
        iwooos_projection_page,
        'data-testid="iwooos-stage-completion-report-board"',
    )
    assert_text_not_contains(
        "iwooos_page.stage_completion_report_stale_cd_run",
        iwooos_projection_page,
        "CD 3261",
    )
    stage_report_messages_zh = json.dumps(
        web_messages_zh["iwooos"]["stageCompletionReport"],
        ensure_ascii=False,
        sort_keys=True,
    )
    stage_report_messages_en = json.dumps(
        web_messages_en["iwooos"]["stageCompletionReport"],
        ensure_ascii=False,
        sort_keys=True,
    )
    assert_text_not_contains(
        "iwooos_messages.stage_completion_report_stale_cd_run_zh",
        stage_report_messages_zh,
        "CD 3261",
    )
    assert_text_not_contains(
        "iwooos_messages.stage_completion_report_stale_cd_run_en",
        stage_report_messages_en,
        "CD 3261",
    )
    assert_text_contains(
        "iwooos_messages.stage_completion_report_deploy_marker_zh",
        stage_report_messages_zh,
        "deploy marker",
    )
    assert_text_contains(
        "iwooos_messages.stage_completion_report_deploy_marker_en",
        stage_report_messages_en,
        "deploy marker",
    )
    for text in [
        "headline_percent_after_this_stage=64",
        "headline_movement_signal_count=2",
        "awooop_read_only_production_landing_evidence_count=1",
        "kali_112_read_only_production_evidence_count=1",
        "owner_response_received_count=0",
        "owner_response_accepted_count=0",
        "owner_response_acceptance_gate_open=false",
        "redacted_payload_ingested=false",
        "active_runtime_gate_count=0",
        "github_primary_ready_count=0",
        "production_landing_enabled=true",
        "execution_router_linked=false",
        "progress_review_authorized=true",
        "runtime_execution_authorized=false",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.headline_movement_acceptance_gate_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.headlineMovementAcceptanceGate",
        list(web_messages_zh["iwooos"].keys()),
        "headlineMovementAcceptanceGate",
    )
    assert_contains(
        "web_messages.en.iwooos.headlineMovementAcceptanceGate",
        list(web_messages_en["iwooos"].keys()),
        "headlineMovementAcceptanceGate",
    )
    for key in ["title", "subtitle", "summary", "items", "boundaryTitle"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.headlineMovementAcceptanceGate.keys",
            list(web_messages_zh["iwooos"]["headlineMovementAcceptanceGate"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.headlineMovementAcceptanceGate.keys",
            list(web_messages_en["iwooos"]["headlineMovementAcceptanceGate"].keys()),
            key,
        )
    for key in [
        "s49OwnerResponseAccepted",
        "redactedPayloadAccepted",
        "runtimeGateApproved",
        "githubPrimaryEvidenceReady",
        "awooopProductionLandingProof",
        "kali112ReadOnlyProof",
        "nextHeadlineReviewRecord",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.headlineMovementAcceptanceGate.items",
            list(web_messages_zh["iwooos"]["headlineMovementAcceptanceGate"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.headlineMovementAcceptanceGate.items",
            list(web_messages_en["iwooos"]["headlineMovementAcceptanceGate"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.s49_owner_response_work_order_items",
        iwooos_projection_page,
        "s49OwnerResponseWorkOrderItems",
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_work_order_testid",
        iwooos_projection_page,
        'data-testid="iwooos-s49-owner-response-work-order-board"',
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_work_order_component",
        iwooos_projection_page,
        "S49OwnerResponseWorkOrderBoard",
    )
    for text in [
        "s4_9_owner_response_work_order_item_count=5",
        "s4_9_owner_response_required_field_count=6",
        "s4_9_owner_response_received_count=0",
        "s4_9_owner_response_accepted_count=0",
        "s4_9_owner_response_rejected_count=0",
        "s4_9_owner_response_request_sent=false",
        "s4_9_owner_response_intake_open=false",
        "owner_response_acceptance_gate_open=false",
        "audit_events_emitted=0",
        "progress_review_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.s49_owner_response_work_order_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.s49OwnerResponseWorkOrder",
        list(web_messages_zh["iwooos"].keys()),
        "s49OwnerResponseWorkOrder",
    )
    assert_contains(
        "web_messages.en.iwooos.s49OwnerResponseWorkOrder",
        list(web_messages_en["iwooos"].keys()),
        "s49OwnerResponseWorkOrder",
    )
    for key in ["title", "subtitle", "summary", "items", "boundaryTitle"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseWorkOrder.keys",
            list(web_messages_zh["iwooos"]["s49OwnerResponseWorkOrder"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseWorkOrder.keys",
            list(web_messages_en["iwooos"]["s49OwnerResponseWorkOrder"].keys()),
            key,
        )
    for key in [
        "scopeGapResponse",
        "endpointIdentityResponse",
        "adjacentSourceResponse",
        "canonicalOwnerResponse",
        "legacyDispositionResponse",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseWorkOrder.items",
            list(web_messages_zh["iwooos"]["s49OwnerResponseWorkOrder"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseWorkOrder.items",
            list(web_messages_en["iwooos"]["s49OwnerResponseWorkOrder"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.s49_owner_response_envelope_fields",
        iwooos_projection_page,
        "s49OwnerResponseEnvelopeFields",
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_envelope_testid",
        iwooos_projection_page,
        'data-testid="iwooos-s49-owner-response-envelope-board"',
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_envelope_component",
        iwooos_projection_page,
        "S49OwnerResponseEnvelopeBoard",
    )
    for text in [
        "s4_9_owner_response_envelope_field_count=6",
        "s4_9_owner_response_envelope_filled_count=0",
        "s4_9_owner_response_envelope_submitted_count=0",
        "s4_9_owner_response_envelope_accepted_count=0",
        "s4_9_owner_response_envelope_rejected_count=0",
        "s4_9_owner_response_request_sent=false",
        "s4_9_owner_response_received_count=0",
        "s4_9_owner_response_accepted_count=0",
        "owner_response_acceptance_gate_open=false",
        "audit_events_emitted=0",
        "progress_review_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.s49_owner_response_envelope_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.s49OwnerResponseEnvelope",
        list(web_messages_zh["iwooos"].keys()),
        "s49OwnerResponseEnvelope",
    )
    assert_contains(
        "web_messages.en.iwooos.s49OwnerResponseEnvelope",
        list(web_messages_en["iwooos"].keys()),
        "s49OwnerResponseEnvelope",
    )
    for key in ["title", "subtitle", "summary", "items", "boundaryTitle"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseEnvelope.keys",
            list(web_messages_zh["iwooos"]["s49OwnerResponseEnvelope"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseEnvelope.keys",
            list(web_messages_en["iwooos"]["s49OwnerResponseEnvelope"].keys()),
            key,
        )
    for key in [
        "ownerRoleTeam",
        "decision",
        "decisionReason",
        "affectedScope",
        "redactedEvidenceRefs",
        "followupOwner",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseEnvelope.items",
            list(web_messages_zh["iwooos"]["s49OwnerResponseEnvelope"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseEnvelope.items",
            list(web_messages_en["iwooos"]["s49OwnerResponseEnvelope"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.s49_owner_response_envelope_preflight_checks",
        iwooos_projection_page,
        "s49OwnerResponseEnvelopePreflightChecks",
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_envelope_preflight_testid",
        iwooos_projection_page,
        'data-testid="iwooos-s49-owner-response-envelope-preflight-board"',
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_envelope_preflight_component",
        iwooos_projection_page,
        "S49OwnerResponseEnvelopePreflightBoard",
    )
    for text in [
        "s4_9_owner_response_envelope_preflight_check_count=6",
        "s4_9_owner_response_envelope_preflight_passed_count=0",
        "s4_9_owner_response_envelope_ready_to_submit_count=0",
        "s4_9_owner_response_envelope_submitted_count=0",
        "s4_9_owner_response_envelope_accepted_count=0",
        "s4_9_owner_response_request_sent=false",
        "s4_9_owner_response_received_count=0",
        "s4_9_owner_response_accepted_count=0",
        "owner_response_acceptance_gate_open=false",
        "audit_events_emitted=0",
        "progress_review_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.s49_owner_response_envelope_preflight_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.s49OwnerResponseEnvelopePreflight",
        list(web_messages_zh["iwooos"].keys()),
        "s49OwnerResponseEnvelopePreflight",
    )
    assert_contains(
        "web_messages.en.iwooos.s49OwnerResponseEnvelopePreflight",
        list(web_messages_en["iwooos"].keys()),
        "s49OwnerResponseEnvelopePreflight",
    )
    for key in ["title", "subtitle", "summary", "items", "boundaryTitle"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseEnvelopePreflight.keys",
            list(web_messages_zh["iwooos"]["s49OwnerResponseEnvelopePreflight"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseEnvelopePreflight.keys",
            list(web_messages_en["iwooos"]["s49OwnerResponseEnvelopePreflight"].keys()),
            key,
        )
    for key in [
        "fieldCompleteness",
        "allowedDisposition",
        "redactedEvidence",
        "scopeTraceability",
        "mutationRequestRejected",
        "followupOwnerTrace",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseEnvelopePreflight.items",
            list(web_messages_zh["iwooos"]["s49OwnerResponseEnvelopePreflight"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseEnvelopePreflight.items",
            list(web_messages_en["iwooos"]["s49OwnerResponseEnvelopePreflight"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.s49_owner_response_envelope_preflight_outcome_lanes",
        iwooos_projection_page,
        "s49OwnerResponseEnvelopePreflightOutcomeLanes",
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_envelope_preflight_outcome_testid",
        iwooos_projection_page,
        'data-testid="iwooos-s49-owner-response-envelope-preflight-outcome-board"',
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_envelope_preflight_outcome_component",
        iwooos_projection_page,
        "S49OwnerResponseEnvelopePreflightOutcomeBoard",
    )
    for text in [
        "s4_9_owner_response_envelope_preflight_outcome_lane_count=7",
        "s4_9_owner_response_envelope_preflight_ready_for_intake_count=0",
        "s4_9_owner_response_envelope_preflight_quarantined_count=0",
        "s4_9_owner_response_envelope_preflight_rejected_count=0",
        "s4_9_owner_response_envelope_submitted_count=0",
        "s4_9_owner_response_envelope_accepted_count=0",
        "s4_9_owner_response_request_sent=false",
        "s4_9_owner_response_received_count=0",
        "s4_9_owner_response_accepted_count=0",
        "owner_response_acceptance_gate_open=false",
        "audit_events_emitted=0",
        "progress_review_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.s49_owner_response_envelope_preflight_outcome_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.s49OwnerResponseEnvelopePreflightOutcome",
        list(web_messages_zh["iwooos"].keys()),
        "s49OwnerResponseEnvelopePreflightOutcome",
    )
    assert_contains(
        "web_messages.en.iwooos.s49OwnerResponseEnvelopePreflightOutcome",
        list(web_messages_en["iwooos"].keys()),
        "s49OwnerResponseEnvelopePreflightOutcome",
    )
    for key in ["title", "subtitle", "summary", "items", "boundaryTitle"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseEnvelopePreflightOutcome.keys",
            list(web_messages_zh["iwooos"]["s49OwnerResponseEnvelopePreflightOutcome"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseEnvelopePreflightOutcome.keys",
            list(web_messages_en["iwooos"]["s49OwnerResponseEnvelopePreflightOutcome"].keys()),
            key,
        )
    for key in [
        "keepEnvelopeWaiting",
        "requestFieldCompletion",
        "requestDispositionCorrection",
        "quarantineSensitiveEvidence",
        "requestScopeCorrection",
        "rejectMutationRequest",
        "keepFollowupOwnerWaiting",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseEnvelopePreflightOutcome.items",
            list(web_messages_zh["iwooos"]["s49OwnerResponseEnvelopePreflightOutcome"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseEnvelopePreflightOutcome.items",
            list(web_messages_en["iwooos"]["s49OwnerResponseEnvelopePreflightOutcome"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.s49_owner_response_request_draft_items",
        iwooos_projection_page,
        "s49OwnerResponseRequestDraftItems",
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_request_draft_testid",
        iwooos_projection_page,
        'data-testid="iwooos-s49-owner-response-request-draft-board"',
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_request_draft_component",
        iwooos_projection_page,
        "S49OwnerResponseRequestDraftBoard",
    )
    for text in [
        "s4_9_owner_response_request_draft_item_count=6",
        "s4_9_owner_response_request_draft_ready_count=0",
        "s4_9_owner_response_request_dispatch_authorized=false",
        "s4_9_owner_response_request_sent=false",
        "s4_9_owner_response_request_sent_count=0",
        "s4_9_owner_response_request_recipients_confirmed_count=0",
        "s4_9_owner_response_request_audit_event_draft_count=1",
        "s4_9_owner_response_request_audit_events_emitted=0",
        "s4_9_owner_response_received_count=0",
        "s4_9_owner_response_accepted_count=0",
        "owner_response_acceptance_gate_open=false",
        "audit_events_emitted=0",
        "progress_review_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.s49_owner_response_request_draft_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.s49OwnerResponseRequestDraft",
        list(web_messages_zh["iwooos"].keys()),
        "s49OwnerResponseRequestDraft",
    )
    assert_contains(
        "web_messages.en.iwooos.s49OwnerResponseRequestDraft",
        list(web_messages_en["iwooos"].keys()),
        "s49OwnerResponseRequestDraft",
    )
    for key in ["title", "subtitle", "summary", "items", "boundaryTitle"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseRequestDraft.keys",
            list(web_messages_zh["iwooos"]["s49OwnerResponseRequestDraft"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseRequestDraft.keys",
            list(web_messages_en["iwooos"]["s49OwnerResponseRequestDraft"].keys()),
            key,
        )
    for key in [
        "scopeMappingDraft",
        "ownerRecipientDraft",
        "redactedEvidenceDraft",
        "noMutationClauseDraft",
        "auditTemplateDraft",
        "manualDispatchGateDraft",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseRequestDraft.items",
            list(web_messages_zh["iwooos"]["s49OwnerResponseRequestDraft"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseRequestDraft.items",
            list(web_messages_en["iwooos"]["s49OwnerResponseRequestDraft"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.s49_owner_response_dispatch_flow_steps",
        iwooos_projection_page,
        "s49OwnerResponseDispatchFlowSteps",
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_dispatch_flow_testid",
        iwooos_projection_page,
        'data-testid="iwooos-s49-owner-response-dispatch-flow-board"',
    )
    assert_text_contains(
        "iwooos_page.s49_owner_response_dispatch_flow_component",
        iwooos_projection_page,
        "S49OwnerResponseDispatchFlowBoard",
    )
    for text in [
        "s4_9_owner_response_dispatch_flow_step_count=6",
        "s4_9_owner_response_dispatch_flow_current_step=request_draft",
        "s4_9_owner_response_dispatch_flow_completed_count=0",
        "s4_9_owner_response_dispatch_flow_blocked_count=0",
        "s4_9_owner_response_request_sent=false",
        "s4_9_owner_response_request_sent_count=0",
        "s4_9_owner_response_received_count=0",
        "s4_9_owner_response_accepted_count=0",
        "s4_9_owner_response_request_dispatch_authorized=false",
        "owner_response_acceptance_gate_open=false",
        "audit_events_emitted=0",
        "progress_review_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.s49_owner_response_dispatch_flow_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.s49OwnerResponseDispatchFlow",
        list(web_messages_zh["iwooos"].keys()),
        "s49OwnerResponseDispatchFlow",
    )
    assert_contains(
        "web_messages.en.iwooos.s49OwnerResponseDispatchFlow",
        list(web_messages_en["iwooos"].keys()),
        "s49OwnerResponseDispatchFlow",
    )
    for key in ["title", "subtitle", "summary", "items", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseDispatchFlow.keys",
            list(web_messages_zh["iwooos"]["s49OwnerResponseDispatchFlow"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseDispatchFlow.keys",
            list(web_messages_en["iwooos"]["s49OwnerResponseDispatchFlow"].keys()),
            key,
        )
    for key in [
        "workOrder",
        "envelope",
        "preflight",
        "outcome",
        "requestDraft",
        "manualDispatchGate",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseDispatchFlow.items",
            list(web_messages_zh["iwooos"]["s49OwnerResponseDispatchFlow"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.s49OwnerResponseDispatchFlow.items",
            list(web_messages_en["iwooos"]["s49OwnerResponseDispatchFlow"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "security_compliance_page.frontstage_bridge_testid",
        security_compliance_page,
        'data-testid="security-compliance-iwooos-frontstage-bridge"',
    )
    assert_text_contains(
        "security_compliance_page.authoritative_iwooos_strip_testid",
        security_compliance_page,
        'data-testid="security-compliance-authoritative-iwooos-strip"',
    )
    assert_text_contains(
        "security_compliance_page.frontstage_component",
        security_compliance_page,
        "SecurityComplianceFrontStage",
    )
    assert_text_contains(
        "security_compliance_page.authority_progress_current",
        security_compliance_page,
        'value: "64%"',
    )
    assert_text_contains(
        "security_compliance_page.frontstage_route_role_map_testid",
        security_compliance_page,
        'data-testid="security-compliance-frontstage-route-role-map"',
    )
    assert_text_contains(
        "security_compliance_page.low_friction_rollout_ladder_testid",
        security_compliance_page,
        'data-testid="security-compliance-low-friction-rollout-ladder"',
    )
    assert_text_contains(
        "security_compliance_page.frontstage_boundary_codes_testid",
        security_compliance_page,
        'data-testid="security-compliance-frontstage-boundary-codes"',
    )
    assert_text_contains(
        "iwooos_page.security_compliance_frontstage_testid",
        iwooos_projection_page,
        'data-testid="iwooos-security-compliance-frontstage-board"',
    )
    assert_text_contains(
        "iwooos_page.security_compliance_frontstage_component",
        iwooos_projection_page,
        "SecurityComplianceFrontStageBoard",
    )
    for text in [
        "security_compliance_route_preserved=true",
        "security_compliance_removed=false",
        "security_compliance_integration_mode=iwooos_frontstage_bridge",
        "iwooos_authoritative_security_entry=true",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "security_compliance_page.frontstage_boundary",
            security_compliance_page,
            text,
        )
        assert_text_contains(
            "iwooos_page.security_compliance_frontstage_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        "security_compliance_frontstage_route_role_count=5",
        "security_compliance_frontstage_primary_source=iwooos",
        "security_compliance_frontstage_execution_entry_count=0",
        "security_compliance_frontstage_links_read_only=true",
        "security_compliance_authoritative_entry=iwooos",
        "security_compliance_frontstage_summary_mode=compact_first",
        "security_compliance_frontstage_default_detail_collapsed=true",
    ]:
        assert_text_contains(
            "security_compliance_page.frontstage_route_role_boundary",
            security_compliance_page,
            text,
        )
    for text in [
        "security_compliance_rollout_phase_count=5",
        "security_compliance_rollout_current_phase=observe_first",
        "security_compliance_rollout_runtime_phase_enabled=false",
        "security_compliance_rollout_enforcement_enabled=false",
        "security_compliance_rollout_action_buttons_allowed=false",
    ]:
        assert_text_contains(
            "security_compliance_page.low_friction_rollout_boundary",
            security_compliance_page,
            text,
        )
    for text in [
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.security_compliance_frontstage_hard_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.securityCompliance",
        list(web_messages_zh.keys()),
        "securityCompliance",
    )
    assert_contains(
        "web_messages.en.securityCompliance",
        list(web_messages_en.keys()),
        "securityCompliance",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "openIwooos",
        "boundaryTitle",
        "boundaryIntro",
        "routeRoleTitle",
        "routeRoleSubtitle",
        "routeLabel",
        "rolloutTitle",
        "rolloutSubtitle",
        "phaseLabel",
        "boundaryCodesSummary",
        "authority",
        "items",
        "routeRoles",
        "rolloutPhases",
    ]:
        assert_contains(
            "web_messages.zh-TW.securityCompliance.frontStage.keys",
            list(web_messages_zh["securityCompliance"]["frontStage"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.securityCompliance.frontStage.keys",
            list(web_messages_en["securityCompliance"]["frontStage"].keys()),
            key,
        )
    for key in ["eyebrow", "title", "body", "open", "signals"]:
        assert_contains(
            "web_messages.zh-TW.securityCompliance.frontStage.authority.keys",
            list(web_messages_zh["securityCompliance"]["frontStage"]["authority"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.securityCompliance.frontStage.authority.keys",
            list(web_messages_en["securityCompliance"]["frontStage"]["authority"].keys()),
            key,
        )
    for key in ["source", "progress", "gate", "mode"]:
        assert_contains(
            "web_messages.zh-TW.securityCompliance.frontStage.authority.signals",
            list(web_messages_zh["securityCompliance"]["frontStage"]["authority"]["signals"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.securityCompliance.frontStage.authority.signals",
            list(web_messages_en["securityCompliance"]["frontStage"]["authority"]["signals"].keys()),
            key,
        )
    for key in ["routePreserved", "iwooosBridge", "dedupeNarrative", "noRuntimeControl"]:
        assert_contains(
            "web_messages.zh-TW.securityCompliance.frontStage.items",
            list(web_messages_zh["securityCompliance"]["frontStage"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.securityCompliance.frontStage.items",
            list(web_messages_en["securityCompliance"]["frontStage"]["items"].keys()),
            key,
        )
    for key in [
        "iwooosOverview",
        "securityComplianceHub",
        "securityMonitor",
        "complianceStats",
        "awooopApprovals",
    ]:
        assert_contains(
            "web_messages.zh-TW.securityCompliance.frontStage.routeRoles",
            list(web_messages_zh["securityCompliance"]["frontStage"]["routeRoles"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.securityCompliance.frontStage.routeRoles",
            list(web_messages_en["securityCompliance"]["frontStage"]["routeRoles"].keys()),
            key,
        )
    for key in [
        "observe",
        "evidence",
        "humanReview",
        "runtimeGate",
        "tightening",
    ]:
        assert_contains(
            "web_messages.zh-TW.securityCompliance.frontStage.rolloutPhases",
            list(web_messages_zh["securityCompliance"]["frontStage"]["rolloutPhases"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.securityCompliance.frontStage.rolloutPhases",
            list(web_messages_en["securityCompliance"]["frontStage"]["rolloutPhases"].keys()),
            key,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.securityComplianceFrontStage",
        list(web_messages_zh["iwooos"].keys()),
        "securityComplianceFrontStage",
    )
    assert_contains(
        "web_messages.en.iwooos.securityComplianceFrontStage",
        list(web_messages_en["iwooos"].keys()),
        "securityComplianceFrontStage",
    )
    for key in ["title", "subtitle", "summary", "items", "decisionLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.securityComplianceFrontStage.keys",
            list(web_messages_zh["iwooos"]["securityComplianceFrontStage"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.securityComplianceFrontStage.keys",
            list(web_messages_en["iwooos"]["securityComplianceFrontStage"].keys()),
            key,
        )
    for key in ["route", "decision", "removed", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.securityComplianceFrontStage.summary",
            list(web_messages_zh["iwooos"]["securityComplianceFrontStage"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.securityComplianceFrontStage.summary",
            list(web_messages_en["iwooos"]["securityComplianceFrontStage"]["summary"].keys()),
            key,
        )
    for key in ["routePreserved", "frontStageBridge", "singleSecurityNarrative", "runtimeControls"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.securityComplianceFrontStage.items",
            list(web_messages_zh["iwooos"]["securityComplianceFrontStage"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.securityComplianceFrontStage.items",
            list(web_messages_en["iwooos"]["securityComplianceFrontStage"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.frontstage_security_entry_roles_testid",
        iwooos_projection_page,
        'data-testid="iwooos-frontstage-security-entry-roles-board"',
    )
    assert_text_contains(
        "iwooos_page.frontstage_security_entry_roles_component",
        iwooos_projection_page,
        "FrontstageSecurityEntryRolesBoard",
    )
    for text in [
        "frontstage_security_entry_role_count=5",
        "frontstage_security_primary_entry=iwooos",
        "frontstage_security_familiar_entry=security_compliance",
        "frontstage_security_execution_entry_count=0",
        "frontstage_security_links_read_only=true",
        "frontstage_security_operator_confusion_reduction=true",
        "frontstage_security_action_buttons_allowed=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.frontstage_security_entry_roles_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.frontstageEntryRoles",
        list(web_messages_zh["iwooos"].keys()),
        "frontstageEntryRoles",
    )
    assert_contains(
        "web_messages.en.iwooos.frontstageEntryRoles",
        list(web_messages_en["iwooos"].keys()),
        "frontstageEntryRoles",
    )
    for key in ["title", "subtitle", "summary", "items", "routeLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.frontstageEntryRoles.keys",
            list(web_messages_zh["iwooos"]["frontstageEntryRoles"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.frontstageEntryRoles.keys",
            list(web_messages_en["iwooos"]["frontstageEntryRoles"].keys()),
            key,
        )
    for key in ["entries", "primary", "familiar", "execution"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.frontstageEntryRoles.summary",
            list(web_messages_zh["iwooos"]["frontstageEntryRoles"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.frontstageEntryRoles.summary",
            list(web_messages_en["iwooos"]["frontstageEntryRoles"]["summary"].keys()),
            key,
        )
    for key in [
        "iwooosOverview",
        "securityComplianceHub",
        "securityMonitor",
        "complianceStats",
        "awooopApprovals",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.frontstageEntryRoles.items",
            list(web_messages_zh["iwooos"]["frontstageEntryRoles"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.frontstageEntryRoles.items",
            list(web_messages_en["iwooos"]["frontstageEntryRoles"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.low_friction_rollout_testid",
        iwooos_projection_page,
        'data-testid="iwooos-low-friction-rollout-ladder-board"',
    )
    assert_text_contains(
        "iwooos_page.low_friction_rollout_component",
        iwooos_projection_page,
        "IwoooSLowFrictionRolloutLadderBoard",
    )
    for text in [
        "iwooos_rollout_phase_count=5",
        "iwooos_rollout_current_phase=observe_first",
        "iwooos_rollout_frontstage_source=security_compliance_s2_110",
        "iwooos_rollout_runtime_phase_enabled=false",
        "iwooos_rollout_enforcement_enabled=false",
        "iwooos_rollout_action_buttons_allowed=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.low_friction_rollout_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.lowFrictionRollout",
        list(web_messages_zh["iwooos"].keys()),
        "lowFrictionRollout",
    )
    assert_contains(
        "web_messages.en.iwooos.lowFrictionRollout",
        list(web_messages_en["iwooos"].keys()),
        "lowFrictionRollout",
    )
    for key in ["title", "subtitle", "summary", "items", "phaseLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.lowFrictionRollout.keys",
            list(web_messages_zh["iwooos"]["lowFrictionRollout"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.lowFrictionRollout.keys",
            list(web_messages_en["iwooos"]["lowFrictionRollout"].keys()),
            key,
        )
    for key in ["phases", "current", "runtime", "enforcement"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.lowFrictionRollout.summary",
            list(web_messages_zh["iwooos"]["lowFrictionRollout"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.lowFrictionRollout.summary",
            list(web_messages_en["iwooos"]["lowFrictionRollout"]["summary"].keys()),
            key,
        )
    for key in ["observe", "evidence", "humanReview", "runtimeGate", "tightening"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.lowFrictionRollout.items",
            list(web_messages_zh["iwooos"]["lowFrictionRollout"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.lowFrictionRollout.items",
            list(web_messages_en["iwooos"]["lowFrictionRollout"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.low_friction_next_actions_testid",
        iwooos_projection_page,
        'data-testid="iwooos-low-friction-next-actions-board"',
    )
    assert_text_contains(
        "iwooos_page.low_friction_next_actions_component",
        iwooos_projection_page,
        "IwoooSLowFrictionNextActionsBoard",
    )
    for text in [
        "iwooos_next_action_item_count=4",
        "iwooos_next_action_allowed_mode=observe_and_evidence_only",
        "iwooos_next_action_runtime_gate_required=true",
        "iwooos_next_action_scan_authorized=false",
        "iwooos_next_action_host_change_authorized=false",
        "iwooos_next_action_deploy_authorized=false",
        "iwooos_next_action_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.low_friction_next_actions_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.lowFrictionNextActions",
        list(web_messages_zh["iwooos"].keys()),
        "lowFrictionNextActions",
    )
    assert_contains(
        "web_messages.en.iwooos.lowFrictionNextActions",
        list(web_messages_en["iwooos"].keys()),
        "lowFrictionNextActions",
    )
    for key in ["title", "subtitle", "summary", "items", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.lowFrictionNextActions.keys",
            list(web_messages_zh["iwooos"]["lowFrictionNextActions"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.lowFrictionNextActions.keys",
            list(web_messages_en["iwooos"]["lowFrictionNextActions"].keys()),
            key,
        )
    for key in ["allowed", "prep", "blocked", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.lowFrictionNextActions.summary",
            list(web_messages_zh["iwooos"]["lowFrictionNextActions"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.lowFrictionNextActions.summary",
            list(web_messages_en["iwooos"]["lowFrictionNextActions"]["summary"].keys()),
            key,
        )
    for key in ["observeInventory", "evidencePacket", "humanReviewPrep", "runtimeClosed"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.lowFrictionNextActions.items",
            list(web_messages_zh["iwooos"]["lowFrictionNextActions"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.lowFrictionNextActions.items",
            list(web_messages_en["iwooos"]["lowFrictionNextActions"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.progress_movement_signals_testid",
        iwooos_projection_page,
        'data-testid="iwooos-progress-movement-signals-board"',
    )
    assert_text_contains(
        "iwooos_page.progress_movement_signals_component",
        iwooos_projection_page,
        "IwoooSProgressMovementSignalsBoard",
    )
    for text in [
        "{ key: 'headline', value: '64%', tone: 'warn' as const }",
        "{ key: 'signals', value: '6', tone: 'warn' as const }",
        "{ key: 'passed', value: '2', tone: 'steady' as const }",
        "{ key: 'runtime', value: '0', tone: 'locked' as const }",
    ]:
        assert_text_contains("iwooos_page.progress_movement_signals_summary", iwooos_projection_page, text)
    for text in [
        "iwooos_progress_movement_signal_count=6",
        "iwooos_progress_current_headline_percent=64",
        "iwooos_progress_owner_response_accepted_count=0",
        "iwooos_progress_redacted_payload_ingested=false",
        "iwooos_progress_active_runtime_gate_count=0",
        "iwooos_progress_github_primary_ready_count=0",
        "iwooos_progress_awooop_landing_evidence_count=1",
        "iwooos_progress_kali_112_read_only_evidence_count=1",
        "iwooos_progress_review_authorized=true",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.progress_movement_signals_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.progressMovementSignals",
        list(web_messages_zh["iwooos"].keys()),
        "progressMovementSignals",
    )
    assert_contains(
        "web_messages.en.iwooos.progressMovementSignals",
        list(web_messages_en["iwooos"].keys()),
        "progressMovementSignals",
    )
    for key in ["title", "subtitle", "summary", "items", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.progressMovementSignals.keys",
            list(web_messages_zh["iwooos"]["progressMovementSignals"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.progressMovementSignals.keys",
            list(web_messages_en["iwooos"]["progressMovementSignals"].keys()),
            key,
        )
    for key in ["headline", "signals", "passed", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.progressMovementSignals.summary",
            list(web_messages_zh["iwooos"]["progressMovementSignals"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.progressMovementSignals.summary",
            list(web_messages_en["iwooos"]["progressMovementSignals"]["summary"].keys()),
            key,
        )
    for key in ["ownerResponse", "redactedEvidence", "runtimeGate", "sourceControl", "awooopLanding"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.progressMovementSignals.items",
            list(web_messages_zh["iwooos"]["progressMovementSignals"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.progressMovementSignals.items",
            list(web_messages_en["iwooos"]["progressMovementSignals"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.concrete_security_work_map_testid",
        iwooos_projection_page,
        'data-testid="iwooos-concrete-security-work-map-board"',
    )
    assert_text_contains(
        "iwooos_page.concrete_security_work_map_component",
        iwooos_projection_page,
        "IwoooSConcreteSecurityWorkMapBoard",
    )
    for text in [
        "iwooos_concrete_security_workstream_count=6",
        "iwooos_concrete_security_visible_workstream_count=6",
        "iwooos_concrete_security_framework_only_stream_count=6",
        "iwooos_concrete_security_runtime_workstream_count=0",
        "iwooos_concrete_security_next_real_gate=s4_9_owner_response_accepted",
        "iwooos_concrete_security_owner_response_received_count=0",
        "iwooos_concrete_security_owner_response_accepted_count=0",
        "iwooos_concrete_security_redacted_payload_ingested=false",
        "iwooos_concrete_security_active_runtime_gate_count=0",
        "iwooos_concrete_security_github_primary_ready_count=0",
        "iwooos_concrete_security_kali_scan_authorized=false",
        "iwooos_concrete_security_host_change_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.concrete_security_work_map_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.concreteSecurityWorkMap",
        list(web_messages_zh["iwooos"].keys()),
        "concreteSecurityWorkMap",
    )
    assert_contains(
        "web_messages.en.iwooos.concreteSecurityWorkMap",
        list(web_messages_en["iwooos"].keys()),
        "concreteSecurityWorkMap",
    )
    for key in ["title", "subtitle", "summary", "items", "workLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteSecurityWorkMap.keys",
            list(web_messages_zh["iwooos"]["concreteSecurityWorkMap"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.concreteSecurityWorkMap.keys",
            list(web_messages_en["iwooos"]["concreteSecurityWorkMap"].keys()),
            key,
        )
    for key in ["streams", "visible", "realGate", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteSecurityWorkMap.summary",
            list(web_messages_zh["iwooos"]["concreteSecurityWorkMap"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.concreteSecurityWorkMap.summary",
            list(web_messages_en["iwooos"]["concreteSecurityWorkMap"]["summary"].keys()),
            key,
        )
    for key in [
        "frontstageVisibility",
        "hostScopeInventory",
        "sourceControlMigration",
        "ownerEvidenceIntake",
        "reviewerHumanFlow",
        "runtimeExecutionGate",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteSecurityWorkMap.items",
            list(web_messages_zh["iwooos"]["concreteSecurityWorkMap"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.concreteSecurityWorkMap.items",
            list(web_messages_en["iwooos"]["concreteSecurityWorkMap"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.concrete_security_delivery_checklist_testid",
        iwooos_projection_page,
        'data-testid="iwooos-concrete-security-delivery-checklist-board"',
    )
    assert_text_contains(
        "iwooos_page.concrete_security_delivery_checklist_component",
        iwooos_projection_page,
        "IwoooSConcreteSecurityDeliveryChecklistBoard",
    )
    for text in [
        "iwooos_concrete_security_delivery_item_count=6",
        "iwooos_concrete_security_delivery_visible_item_count=6",
        "iwooos_concrete_security_delivery_framework_only_count=6",
        "iwooos_concrete_security_delivery_runtime_item_count=0",
        "iwooos_concrete_security_delivery_next_owner_evidence=s4_9_owner_response",
        "iwooos_concrete_security_delivery_ready_for_runtime_count=0",
        "iwooos_concrete_security_delivery_evidence_received_count=0",
        "iwooos_concrete_security_delivery_evidence_accepted_count=0",
        "iwooos_concrete_security_delivery_reviewer_queue_open=false",
        "iwooos_concrete_security_delivery_git_primary_ready=false",
        "iwooos_concrete_security_delivery_kali_execution_ready=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.concrete_security_delivery_checklist_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.concreteSecurityDeliveryChecklist",
        list(web_messages_zh["iwooos"].keys()),
        "concreteSecurityDeliveryChecklist",
    )
    assert_contains(
        "web_messages.en.iwooos.concreteSecurityDeliveryChecklist",
        list(web_messages_en["iwooos"].keys()),
        "concreteSecurityDeliveryChecklist",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "deliverableLabel",
        "deliveredLabel",
        "nextLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteSecurityDeliveryChecklist.keys",
            list(web_messages_zh["iwooos"]["concreteSecurityDeliveryChecklist"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.concreteSecurityDeliveryChecklist.keys",
            list(web_messages_en["iwooos"]["concreteSecurityDeliveryChecklist"].keys()),
            key,
        )
    for key in ["items", "framework", "blocked", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteSecurityDeliveryChecklist.summary",
            list(web_messages_zh["iwooos"]["concreteSecurityDeliveryChecklist"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.concreteSecurityDeliveryChecklist.summary",
            list(web_messages_en["iwooos"]["concreteSecurityDeliveryChecklist"]["summary"].keys()),
            key,
        )
    for key in [
        "visibilitySurface",
        "hostScopeEvidence",
        "sourceControlEvidence",
        "s49OwnerPacket",
        "reviewerPreparation",
        "runtimeGate",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteSecurityDeliveryChecklist.items",
            list(web_messages_zh["iwooos"]["concreteSecurityDeliveryChecklist"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.concreteSecurityDeliveryChecklist.items",
            list(web_messages_en["iwooos"]["concreteSecurityDeliveryChecklist"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.concrete_security_blocker_resolution_testid",
        iwooos_projection_page,
        'data-testid="iwooos-concrete-security-blocker-resolution-board"',
    )
    assert_text_contains(
        "iwooos_page.concrete_security_blocker_resolution_component",
        iwooos_projection_page,
        "IwoooSConcreteSecurityBlockerResolutionBoard",
    )
    for text in [
        "iwooos_concrete_security_blocker_count=6",
        "iwooos_concrete_security_visible_blocker_count=6",
        "iwooos_concrete_security_headline_blocker_count=6",
        "iwooos_concrete_security_blocker_resolved_count=0",
        "iwooos_concrete_security_first_resolvable_blocker=s4_9_owner_response_missing",
        "iwooos_concrete_security_owner_response_required=true",
        "iwooos_concrete_security_redacted_evidence_required=true",
        "iwooos_concrete_security_reviewer_queue_open=false",
        "iwooos_concrete_security_github_primary_ready=false",
        "iwooos_concrete_security_kali_execution_ready=false",
        "iwooos_concrete_security_runtime_gate_open=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.concrete_security_blocker_resolution_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.concreteSecurityBlockerResolution",
        list(web_messages_zh["iwooos"].keys()),
        "concreteSecurityBlockerResolution",
    )
    assert_contains(
        "web_messages.en.iwooos.concreteSecurityBlockerResolution",
        list(web_messages_en["iwooos"].keys()),
        "concreteSecurityBlockerResolution",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "blockerLabel",
        "whyLabel",
        "unlockLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteSecurityBlockerResolution.keys",
            list(web_messages_zh["iwooos"]["concreteSecurityBlockerResolution"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.concreteSecurityBlockerResolution.keys",
            list(web_messages_en["iwooos"]["concreteSecurityBlockerResolution"].keys()),
            key,
        )
    for key in ["blockers", "resolved", "first", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteSecurityBlockerResolution.summary",
            list(web_messages_zh["iwooos"]["concreteSecurityBlockerResolution"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.concreteSecurityBlockerResolution.summary",
            list(web_messages_en["iwooos"]["concreteSecurityBlockerResolution"]["summary"].keys()),
            key,
        )
    for key in [
        "ownerResponseMissing",
        "redactedEvidenceMissing",
        "reviewerQueueClosed",
        "sourceControlNotReady",
        "hostEvidencePending",
        "runtimeGateClosed",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.concreteSecurityBlockerResolution.items",
            list(web_messages_zh["iwooos"]["concreteSecurityBlockerResolution"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.concreteSecurityBlockerResolution.items",
            list(web_messages_en["iwooos"]["concreteSecurityBlockerResolution"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.all_product_coverage_snapshot_testid",
        iwooos_projection_page,
        'data-testid="iwooos-all-product-coverage-snapshot-board"',
    )
    assert_text_contains(
        "iwooos_page.all_product_coverage_snapshot_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-all-product-coverage-snapshot-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.all_product_coverage_snapshot_component",
        iwooos_projection_page,
        "IwoooSAllProductCoverageSnapshotBoard",
    )
    for text in [
        "iwooos_all_product_coverage_snapshot_scope_count=8",
        "iwooos_all_product_coverage_snapshot_read_only_count=8",
        "iwooos_all_product_coverage_snapshot_runtime_ready_count=0",
        "iwooos_all_product_coverage_snapshot_default_summary_mode=compact_first",
        "iwooos_all_product_coverage_snapshot_detail_ledger_collapsed=true",
        "iwooos_all_product_coverage_snapshot_next_gate=s4_9_owner_response_accepted",
        "vibework_project_read_only_in_scope=true",
        "vibework_runtime_ready=false",
        "agent_bounty_project_read_only_in_scope=true",
        "agent_bounty_runtime_ready=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.all_product_coverage_snapshot_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.allProductCoverageSnapshot",
        list(web_messages_zh["iwooos"].keys()),
        "allProductCoverageSnapshot",
    )
    assert_contains(
        "web_messages.en.iwooos.allProductCoverageSnapshot",
        list(web_messages_en["iwooos"].keys()),
        "allProductCoverageSnapshot",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "states",
        "items",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.allProductCoverageSnapshot.keys",
            list(web_messages_zh["iwooos"]["allProductCoverageSnapshot"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.allProductCoverageSnapshot.keys",
            list(web_messages_en["iwooos"]["allProductCoverageSnapshot"].keys()),
            key,
        )
    for key in ["scopeCount", "readOnlyScopes", "runtimeReady", "nextGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.allProductCoverageSnapshot.summary",
            list(web_messages_zh["iwooos"]["allProductCoverageSnapshot"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.allProductCoverageSnapshot.summary",
            list(web_messages_en["iwooos"]["allProductCoverageSnapshot"]["summary"].keys()),
            key,
        )
    for key in [
        "connected",
        "visible",
        "waitingEvidence",
        "approvalRequired",
        "readOnlyFirst",
        "newProjectReadOnly",
        "templateReady",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.allProductCoverageSnapshot.states",
            list(web_messages_zh["iwooos"]["allProductCoverageSnapshot"]["states"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.allProductCoverageSnapshot.states",
            list(web_messages_en["iwooos"]["allProductCoverageSnapshot"]["states"].keys()),
            key,
        )
    for key in [
        "awoooiCore",
        "websites",
        "sourceControl",
        "hosts",
        "toolsMonitoring",
        "vibeWork",
        "agentBountyProtocol",
        "futureProducts",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.allProductCoverageSnapshot.items",
            list(web_messages_zh["iwooos"]["allProductCoverageSnapshot"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.allProductCoverageSnapshot.items",
            list(web_messages_en["iwooos"]["allProductCoverageSnapshot"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.global_security_mesh_matrix_testid",
        iwooos_projection_page,
        'data-testid="iwooos-global-security-mesh-matrix-board"',
    )
    assert_text_contains(
        "iwooos_page.global_security_mesh_matrix_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-global-security-mesh-matrix-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.global_security_mesh_matrix_component",
        iwooos_projection_page,
        "IwoooSGlobalSecurityMeshMatrixBoard",
    )
    for text in [
        "iwooos_global_security_mesh_first_layer=true",
        "iwooos_global_security_mesh_asset_count=9",
        "iwooos_global_security_mesh_read_only_count=9",
        "iwooos_global_security_mesh_runtime_gate_count=0",
        "iwooos_global_security_mesh_source_control_mutation_authorized=false",
        "iwooos_global_security_mesh_kali_execution_authorized=false",
        "iwooos_global_security_mesh_host_change_authorized=false",
        "iwooos_global_security_mesh_scan_authorized=false",
        "iwooos_global_security_mesh_production_deploy_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.global_security_mesh_matrix_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.globalSecurityMeshMatrix",
        list(web_messages_zh["iwooos"].keys()),
        "globalSecurityMeshMatrix",
    )
    assert_contains(
        "web_messages.en.iwooos.globalSecurityMeshMatrix",
        list(web_messages_en["iwooos"].keys()),
        "globalSecurityMeshMatrix",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "coverageLabel",
        "evidenceLabel",
        "runtimeLabel",
        "nextLabel",
        "boundaryTitle",
        "boundaryIntro",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.globalSecurityMeshMatrix.keys",
            list(web_messages_zh["iwooos"]["globalSecurityMeshMatrix"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.globalSecurityMeshMatrix.keys",
            list(web_messages_en["iwooos"]["globalSecurityMeshMatrix"].keys()),
            key,
        )
    for key in ["assets", "readOnly", "runtime", "nextGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.globalSecurityMeshMatrix.summary",
            list(web_messages_zh["iwooos"]["globalSecurityMeshMatrix"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.globalSecurityMeshMatrix.summary",
            list(web_messages_en["iwooos"]["globalSecurityMeshMatrix"]["summary"].keys()),
            key,
        )
    for key in ["awoooi", "awooop", "iwooos", "publicSites", "vibeWork", "agentBountyProtocol", "kali112", "devHosts", "sourceControl"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.globalSecurityMeshMatrix.items",
            list(web_messages_zh["iwooos"]["globalSecurityMeshMatrix"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.globalSecurityMeshMatrix.items",
            list(web_messages_en["iwooos"]["globalSecurityMeshMatrix"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.host_tool_evidence_chain_testid",
        iwooos_projection_page,
        'data-testid="iwooos-host-tool-evidence-chain-board"',
    )
    assert_text_contains(
        "iwooos_page.host_tool_evidence_chain_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-host-tool-evidence-chain-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.host_tool_evidence_chain_component",
        iwooos_projection_page,
        "IwoooSHostToolEvidenceChainBoard",
    )
    for text in [
        "iwooos_host_tool_evidence_chain_first_layer=true",
        "iwooos_host_tool_evidence_chain_host_count=3",
        "iwooos_host_tool_evidence_chain_tool_lane_count=6",
        "iwooos_host_tool_evidence_chain_step_count=5",
        "kali_112_integrated_as_read_only=true",
        "dev_hosts_111_168_integrated_as_read_only=true",
        "monitoring_tools_evidence_chain_linked=true",
        "kali_112_execute_authorized=false",
        "host_update_authorized=false",
        "active_scan_authorized=false",
        "ssh_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.host_tool_evidence_chain_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.hostToolEvidenceChain",
        list(web_messages_zh["iwooos"].keys()),
        "hostToolEvidenceChain",
    )
    assert_contains(
        "web_messages.en.iwooos.hostToolEvidenceChain",
        list(web_messages_en["iwooos"].keys()),
        "hostToolEvidenceChain",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "flowTitle",
        "evidenceLabel",
        "nextLabel",
        "boundaryTitle",
        "boundaryIntro",
        "summary",
        "steps",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.hostToolEvidenceChain.keys",
            list(web_messages_zh["iwooos"]["hostToolEvidenceChain"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.hostToolEvidenceChain.keys",
            list(web_messages_en["iwooos"]["hostToolEvidenceChain"].keys()),
            key,
        )
    for key in ["hosts", "toolLanes", "linkedEvidence", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.hostToolEvidenceChain.summary",
            list(web_messages_zh["iwooos"]["hostToolEvidenceChain"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.hostToolEvidenceChain.summary",
            list(web_messages_en["iwooos"]["hostToolEvidenceChain"]["summary"].keys()),
            key,
        )
    for key in ["observe", "evidence", "review", "ownerGate", "runtimeHold"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.hostToolEvidenceChain.steps",
            list(web_messages_zh["iwooos"]["hostToolEvidenceChain"]["steps"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.hostToolEvidenceChain.steps",
            list(web_messages_en["iwooos"]["hostToolEvidenceChain"]["steps"].keys()),
            key,
        )
    for key in ["kali112", "dev111", "dev168", "monitoringTools", "automationTools", "sourceControl"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.hostToolEvidenceChain.items",
            list(web_messages_zh["iwooos"]["hostToolEvidenceChain"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.hostToolEvidenceChain.items",
            list(web_messages_en["iwooos"]["hostToolEvidenceChain"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.vibework_security_onboarding_testid",
        iwooos_projection_page,
        'data-testid="iwooos-vibework-security-onboarding-board"',
    )
    assert_text_contains(
        "iwooos_page.vibework_security_onboarding_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-vibework-security-onboarding-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.vibework_security_onboarding_component",
        iwooos_projection_page,
        "IwoooSVibeWorkSecurityOnboardingBoard",
    )
    for text in [
        "vibework_security_onboarding_item_count=6",
        "vibework_security_onboarding_read_only=true",
        "vibework_owner_evidence_received=false",
        "vibework_data_classification_received=false",
        "vibework_source_control_evidence_received=false",
        "vibework_deployment_boundary_received=false",
        "vibework_runtime_gate_open=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "production_deploy_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.vibework_security_onboarding_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.vibeWorkSecurityOnboarding",
        list(web_messages_zh["iwooos"].keys()),
        "vibeWorkSecurityOnboarding",
    )
    assert_contains(
        "web_messages.en.iwooos.vibeWorkSecurityOnboarding",
        list(web_messages_en["iwooos"].keys()),
        "vibeWorkSecurityOnboarding",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "summary",
        "items",
        "checkLabel",
        "stateLabel",
        "missingLabel",
        "nextLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.vibeWorkSecurityOnboarding.keys",
            list(web_messages_zh["iwooos"]["vibeWorkSecurityOnboarding"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.vibeWorkSecurityOnboarding.keys",
            list(web_messages_en["iwooos"]["vibeWorkSecurityOnboarding"].keys()),
            key,
        )
    for key in ["readOnly", "missingEvidence", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.vibeWorkSecurityOnboarding.summary",
            list(web_messages_zh["iwooos"]["vibeWorkSecurityOnboarding"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.vibeWorkSecurityOnboarding.summary",
            list(web_messages_en["iwooos"]["vibeWorkSecurityOnboarding"]["summary"].keys()),
            key,
        )
    for key in ["owner", "dataClass", "sourceRepo", "deployBoundary", "evidencePointer", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.vibeWorkSecurityOnboarding.items",
            list(web_messages_zh["iwooos"]["vibeWorkSecurityOnboarding"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.vibeWorkSecurityOnboarding.items",
            list(web_messages_en["iwooos"]["vibeWorkSecurityOnboarding"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.agent_bounty_security_onboarding_testid",
        iwooos_projection_page,
        'data-testid="iwooos-agent-bounty-security-onboarding-board"',
    )
    assert_text_contains(
        "iwooos_page.agent_bounty_security_onboarding_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-agent-bounty-security-onboarding-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.agent_bounty_security_onboarding_component",
        iwooos_projection_page,
        "IwoooSAgentBountySecurityOnboardingBoard",
    )
    for text in [
        "agent_bounty_security_onboarding_item_count=7",
        "agent_bounty_security_onboarding_read_only=true",
        "agent_bounty_owner_evidence_received=false",
        "agent_bounty_data_classification_received=false",
        "agent_bounty_source_control_evidence_received=false",
        "agent_bounty_deployment_boundary_received=false",
        "agent_bounty_external_agent_boundary_received=false",
        "agent_bounty_treasury_boundary_received=false",
        "agent_bounty_auto_claim_submit_authorized=false",
        "agent_bounty_bounty_payout_authorized=false",
        "agent_bounty_runtime_gate_open=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "production_deploy_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.agent_bounty_security_onboarding_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.agentBountySecurityOnboarding",
        list(web_messages_zh["iwooos"].keys()),
        "agentBountySecurityOnboarding",
    )
    assert_contains(
        "web_messages.en.iwooos.agentBountySecurityOnboarding",
        list(web_messages_en["iwooos"].keys()),
        "agentBountySecurityOnboarding",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "summary",
        "items",
        "checkLabel",
        "stateLabel",
        "missingLabel",
        "nextLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.agentBountySecurityOnboarding.keys",
            list(web_messages_zh["iwooos"]["agentBountySecurityOnboarding"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.agentBountySecurityOnboarding.keys",
            list(web_messages_en["iwooos"]["agentBountySecurityOnboarding"].keys()),
            key,
        )
    for key in ["readOnly", "missingEvidence", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.agentBountySecurityOnboarding.summary",
            list(web_messages_zh["iwooos"]["agentBountySecurityOnboarding"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.agentBountySecurityOnboarding.summary",
            list(web_messages_en["iwooos"]["agentBountySecurityOnboarding"]["summary"].keys()),
            key,
        )
    for key in ["owner", "dataClass", "sourceRepo", "deployBoundary", "externalAgent", "treasuryBoundary", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.agentBountySecurityOnboarding.items",
            list(web_messages_zh["iwooos"]["agentBountySecurityOnboarding"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.agentBountySecurityOnboarding.items",
            list(web_messages_en["iwooos"]["agentBountySecurityOnboarding"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.rollout_risk_read_only_testid",
        iwooos_projection_page,
        'data-testid="iwooos-rollout-risk-read-only-board"',
    )
    assert_text_contains(
        "iwooos_page.rollout_risk_read_only_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-rollout-risk-read-only-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.rollout_risk_read_only_component",
        iwooos_projection_page,
        "IwoooSRolloutRiskReadOnlyBoard",
    )
    for text in [
        "rollout_risk_read_only_card_count=4",
        "rollout_risk_source_deploy_marker=16756d24",
        "rollout_risk_awoooi_rollout_risk=1",
        "rollout_risk_argocd_health=Degraded",
        "rollout_risk_resource_sync=OutOfSync",
        "rollout_risk_api_health_passed=true",
        "rollout_risk_playwright_smoke_passed=true",
        "rollout_risk_requires_read_only_triage=true",
        "rollout_risk_runtime_gate_count=0",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "argocd_sync_authorized=false",
        "kubectl_action_authorized=false",
        "host_restart_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.rollout_risk_read_only_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.rolloutRiskReadOnly",
        list(web_messages_zh["iwooos"].keys()),
        "rolloutRiskReadOnly",
    )
    assert_contains(
        "web_messages.en.iwooos.rolloutRiskReadOnly",
        list(web_messages_en["iwooos"].keys()),
        "rolloutRiskReadOnly",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "signalLabel",
        "stateLabel",
        "boundaryTitle",
        "boundaryIntro",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.rolloutRiskReadOnly.keys",
            list(web_messages_zh["iwooos"]["rolloutRiskReadOnly"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.rolloutRiskReadOnly.keys",
            list(web_messages_en["iwooos"]["rolloutRiskReadOnly"].keys()),
            key,
        )
    for key in ["sourceDeployMarker", "rolloutRisk", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.rolloutRiskReadOnly.summary",
            list(web_messages_zh["iwooos"]["rolloutRiskReadOnly"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.rolloutRiskReadOnly.summary",
            list(web_messages_en["iwooos"]["rolloutRiskReadOnly"]["summary"].keys()),
            key,
        )
    for key in ["argocdHealth", "resourceSync", "smokePassed", "riskBoundary"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.rolloutRiskReadOnly.items",
            list(web_messages_zh["iwooos"]["rolloutRiskReadOnly"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.rolloutRiskReadOnly.items",
            list(web_messages_en["iwooos"]["rolloutRiskReadOnly"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.high_value_config_control_coverage_testid",
        iwooos_projection_page,
        'data-testid="iwooos-high-value-config-control-coverage-board"',
    )
    assert_text_contains(
        "iwooos_page.high_value_config_control_coverage_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-high-value-config-control-coverage-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.high_value_config_control_coverage_component",
        iwooos_projection_page,
        "IwoooSHighValueConfigControlCoverageBoard",
    )
    assert_text_contains(
        "iwooos_page.high_value_config_control_coverage_docker_systemd_percent",
        iwooos_projection_page,
        "{ key: 'dockerSystemd', rank: 'P1-1', value: '50%'",
    )
    assert_text_contains(
        "iwooos_page.high_value_config_control_coverage_ssh_network_percent",
        iwooos_projection_page,
        "{ key: 'sshNetwork', rank: 'P1-2', value: '54%'",
    )
    assert_text_contains(
        "iwooos_page.high_value_config_control_coverage_backup_restore_percent",
        iwooos_projection_page,
        "{ key: 'backupRestore', rank: 'P1-3', value: '58%'",
    )
    assert_text_contains(
        "iwooos_page.high_value_config_control_coverage_monitoring_percent",
        iwooos_projection_page,
        "{ key: 'monitoring', rank: 'P1-4', value: '62%'",
    )
    assert_text_before(
        "iwooos_page.high_value_config_control_coverage_before_owner_packet",
        iwooos_projection_page,
        "<IwoooSHighValueConfigControlCoverageBoard />",
        "<IwoooSHighValueConfigOwnerPacketBoard />",
    )
    for text in [
        "high_value_config_control_coverage_frontstage_summary_count=4",
        "high_value_config_control_coverage_frontstage_item_count=4",
        "high_value_config_control_coverage_category_count=14",
        "high_value_config_control_coverage_c0_category_count=8",
        "high_value_config_control_coverage_c1_category_count=4",
        "high_value_config_control_coverage_average_percent=66",
        "high_value_config_control_coverage_needs_live_evidence_count=7",
        "high_value_config_control_coverage_owner_response_required_count=14",
        "high_value_config_control_coverage_owner_response_received_count=0",
        "high_value_config_control_coverage_owner_response_accepted_count=0",
        "high_value_config_control_coverage_runtime_gate_count=0",
        "high_value_config_control_coverage_action_button_count=0",
        "nginx_public_gateway_coverage_percent=84",
        "public_gateway_preflight_inventory_source_config_count=3",
        "public_gateway_preflight_inventory_route_impact_count=14",
        "public_gateway_preflight_inventory_preflight_gate_count=12",
        "public_gateway_preflight_inventory_runtime_gate_count=0",
        "host_service_config_inventory_surface_count=9",
        "host_service_config_inventory_write_capable_surface_count=3",
        "host_service_config_inventory_runtime_gate_count=0",
        "ssh_network_access_inventory_surface_count=16",
        "ssh_network_access_inventory_write_capable_surface_count=6",
        "ssh_network_access_inventory_runtime_gate_count=0",
        "backup_restore_escrow_inventory_surface_count=38",
        "backup_restore_escrow_inventory_write_capable_surface_count=27",
        "backup_restore_escrow_inventory_runtime_gate_count=0",
        "backup_restore_escrow_inventory_restore_drill_accepted_count=0",
        "backup_restore_escrow_inventory_offsite_sync_accepted_count=0",
        "backup_restore_escrow_inventory_credential_escrow_accepted_count=0",
        "backup_restore_escrow_inventory_retention_change_accepted_count=0",
        "monitoring_alerting_observability_inventory_surface_count=60",
        "monitoring_alerting_observability_inventory_alert_rule_surface_count=13",
        "monitoring_alerting_observability_inventory_deploy_or_reload_surface_count=6",
        "monitoring_alerting_observability_inventory_write_capable_surface_count=11",
        "monitoring_alerting_observability_inventory_runtime_gate_count=0",
        "monitoring_alerting_observability_inventory_reload_owner_accepted_count=0",
        "monitoring_alerting_observability_inventory_receiver_owner_accepted_count=0",
        "monitoring_alerting_observability_inventory_route_smoke_accepted_count=0",
        "docker_compose_action_authorized=false",
        "systemctl_action_authorized=false",
        "repair_bot_execution_authorized=false",
        "ansible_apply_authorized=false",
        "ssh_read_authorized=false",
        "ssh_write_authorized=false",
        "sudo_action_authorized=false",
        "firewall_change_authorized=false",
        "network_policy_apply_authorized=false",
        "nodeport_change_authorized=false",
        "wireguard_change_authorized=false",
        "known_hosts_patch_authorized=false",
        "host_keyscan_authorized=false",
        "runtime_execution_authorized=false",
        "host_write_authorized=false",
        "host_live_conf_read_authorized=false",
        "nginx_test_authorized=false",
        "public_gateway_reload_authorized=false",
        "public_route_change_authorized=false",
        "admin_route_change_authorized=false",
        "websocket_route_change_authorized=false",
        "acme_challenge_change_authorized=false",
        "route_smoke_authorized=false",
        "rollback_executed=false",
        "nginx_reload_authorized=false",
        "dns_tls_change_authorized=false",
        "certbot_renew_authorized=false",
        "backup_run_authorized=false",
        "restore_run_authorized=false",
        "restore_drill_authorized=false",
        "offsite_sync_authorized=false",
        "offsite_remote_delete_authorized=false",
        "credential_escrow_marker_write_authorized=false",
        "retention_change_authorized=false",
        "restic_prune_authorized=false",
        "rclone_config_authorized=false",
        "velero_restore_authorized=false",
        "prometheus_reload_authorized=false",
        "alertmanager_reload_authorized=false",
        "grafana_dashboard_apply_authorized=false",
        "signoz_rule_apply_authorized=false",
        "sentry_deploy_authorized=false",
        "langfuse_config_change_authorized=false",
        "otel_collector_reload_authorized=false",
        "receiver_route_change_authorized=false",
        "silence_policy_change_authorized=false",
        "telegram_send_authorized=false",
        "notification_route_change_authorized=false",
        "webhook_receiver_change_authorized=false",
        "remote_write_change_authorized=false",
        "exporter_deploy_authorized=false",
        "live_alert_fire_authorized=false",
        "alert_chain_smoke_authorized=false",
        "workflow_modification_authorized=false",
        "active_scan_authorized=false",
        "agent_bounty_runtime_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.high_value_config_control_coverage_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.highValueConfigControlCoverage",
        list(web_messages_zh["iwooos"].keys()),
        "highValueConfigControlCoverage",
    )
    assert_contains(
        "web_messages.en.iwooos.highValueConfigControlCoverage",
        list(web_messages_en["iwooos"].keys()),
        "highValueConfigControlCoverage",
    )
    assert_text_contains(
        "iwooos_page.public_gateway_preflight_testid",
        iwooos_projection_page,
        'data-testid="iwooos-public-gateway-preflight-board"',
    )
    assert_text_contains(
        "iwooos_page.public_gateway_preflight_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-public-gateway-preflight-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.public_gateway_preflight_component",
        iwooos_projection_page,
        "IwoooSPublicGatewayPreflightBoard",
    )
    assert_text_before(
        "iwooos_page.public_gateway_preflight_before_owner_packet",
        iwooos_projection_page,
        "<IwoooSPublicGatewayPreflightBoard />",
        "<IwoooSHighValueConfigOwnerPacketBoard />",
    )
    for text in [
        "public_gateway_preflight_frontstage_summary_count=4",
        "public_gateway_preflight_frontstage_item_count=6",
        "public_gateway_preflight_source_config_count=3",
        "public_gateway_preflight_c0_source_config_count=2",
        "public_gateway_preflight_managed_domain_count=14",
        "public_gateway_preflight_route_impact_count=14",
        "public_gateway_preflight_unique_upstream_count=14",
        "public_gateway_preflight_tls_certificate_path_count=10",
        "public_gateway_preflight_certificate_owner_confirmation_required_count=4",
        "public_gateway_preflight_admin_route_domain_count=1",
        "public_gateway_preflight_websocket_route_domain_count=6",
        "public_gateway_preflight_acme_challenge_domain_count=7",
        "public_gateway_preflight_gate_count=12",
        "public_gateway_preflight_repo_only_ready_count=2",
        "public_gateway_preflight_owner_acceptance_required_gate_count=10",
        "public_gateway_preflight_gate_accepted_count=0",
        "public_gateway_preflight_owner_response_received_count=0",
        "public_gateway_preflight_owner_response_accepted_count=0",
        "public_gateway_preflight_owner_provided_live_conf_received_count=0",
        "public_gateway_preflight_rendered_diff_ready_count=0",
        "public_gateway_preflight_nginx_test_evidence_count=0",
        "public_gateway_preflight_route_smoke_evidence_count=0",
        "public_gateway_preflight_maintenance_window_accepted_count=0",
        "public_gateway_preflight_rollback_owner_accepted_count=0",
        "public_gateway_preflight_runtime_gate_count=0",
        "public_gateway_preflight_action_button_count=0",
        "public_gateway_preflight_coverage_percent_before_preflight=78",
        "public_gateway_preflight_coverage_percent_after_preflight=84",
        "host_live_conf_read_authorized=false",
        "nginx_test_authorized=false",
        "nginx_reload_authorized=false",
        "public_gateway_reload_authorized=false",
        "public_route_change_authorized=false",
        "admin_route_change_authorized=false",
        "websocket_route_change_authorized=false",
        "acme_challenge_change_authorized=false",
        "route_smoke_authorized=false",
        "rollback_executed=false",
        "secret_value_collection_allowed=false",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.public_gateway_preflight_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.publicGatewayPreflight",
        list(web_messages_zh["iwooos"].keys()),
        "publicGatewayPreflight",
    )
    assert_contains(
        "web_messages.en.iwooos.publicGatewayPreflight",
        list(web_messages_en["iwooos"].keys()),
        "publicGatewayPreflight",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "stateLabel",
        "boundaryTitle",
        "boundaryIntro",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.publicGatewayPreflight.keys",
            list(web_messages_zh["iwooos"]["publicGatewayPreflight"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.publicGatewayPreflight.keys",
            list(web_messages_en["iwooos"]["publicGatewayPreflight"].keys()),
            key,
        )
    for key in ["sourceConfigs", "routeImpacts", "preflightGates", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.publicGatewayPreflight.summary",
            list(web_messages_zh["iwooos"]["publicGatewayPreflight"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.publicGatewayPreflight.summary",
            list(web_messages_en["iwooos"]["publicGatewayPreflight"]["summary"].keys()),
            key,
        )
    for key in ["sourceHash", "affectedRoutes", "ownerLiveDiff", "nginxTest", "routeSmoke", "reloadBoundary"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.publicGatewayPreflight.items",
            list(web_messages_zh["iwooos"]["publicGatewayPreflight"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.publicGatewayPreflight.items",
            list(web_messages_en["iwooos"]["publicGatewayPreflight"]["items"].keys()),
            key,
        )
    for key in ["categories", "c0", "coverage", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.highValueConfigControlCoverage.summary",
            list(web_messages_zh["iwooos"]["highValueConfigControlCoverage"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.highValueConfigControlCoverage.summary",
            list(web_messages_en["iwooos"]["highValueConfigControlCoverage"]["summary"].keys()),
            key,
        )
    for key in ["dockerSystemd", "sshNetwork", "backupRestore", "monitoring"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.highValueConfigControlCoverage.items",
            list(web_messages_zh["iwooos"]["highValueConfigControlCoverage"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.highValueConfigControlCoverage.items",
            list(web_messages_en["iwooos"]["highValueConfigControlCoverage"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "web_messages.zh-TW.iwooos.highValueConfigControlCoverage.items.sshNetwork.body",
        web_messages_zh["iwooos"]["highValueConfigControlCoverage"]["items"]["sshNetwork"]["body"],
        "16 個 SSH / network access surface",
    )
    assert_text_contains(
        "web_messages.en.iwooos.highValueConfigControlCoverage.items.sshNetwork.body",
        web_messages_en["iwooos"]["highValueConfigControlCoverage"]["items"]["sshNetwork"]["body"],
        "16 個 SSH / network access surface",
    )
    assert_text_contains(
        "web_messages.zh-TW.iwooos.highValueConfigControlCoverage.items.backupRestore.body",
        web_messages_zh["iwooos"]["highValueConfigControlCoverage"]["items"]["backupRestore"]["body"],
        "38 個 backup / restore / escrow / retention surface",
    )
    assert_text_contains(
        "web_messages.en.iwooos.highValueConfigControlCoverage.items.backupRestore.body",
        web_messages_en["iwooos"]["highValueConfigControlCoverage"]["items"]["backupRestore"]["body"],
        "38 個 backup / restore / escrow / retention surface",
    )
    assert_text_contains(
        "iwooos_page.high_value_config_owner_packet_testid",
        iwooos_projection_page,
        'data-testid="iwooos-high-value-config-owner-packet-board"',
    )
    assert_text_contains(
        "iwooos_page.high_value_config_owner_packet_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-high-value-config-owner-packet-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.high_value_config_owner_packet_component",
        iwooos_projection_page,
        "IwoooSHighValueConfigOwnerPacketBoard",
    )
    for text in [
        "high_value_config_owner_packet_frontstage_summary_count=4",
        "high_value_config_owner_packet_frontstage_item_count=6",
        "high_value_config_owner_packet_count=1",
        "high_value_config_owner_packet_c0_packet_count=0",
        "high_value_config_owner_packet_c1_packet_count=0",
        "high_value_config_owner_packet_request_sent_count=0",
        "high_value_config_owner_packet_received_response_count=0",
        "high_value_config_owner_packet_accepted_response_count=0",
        "high_value_config_owner_packet_runtime_gate_count=0",
        "high_value_config_owner_packet_action_buttons_allowed=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "nginx_reload_authorized=false",
        "workflow_modification_authorized=false",
        "agent_bounty_runtime_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.high_value_config_owner_packet_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.highValueConfigOwnerPacket",
        list(web_messages_zh["iwooos"].keys()),
        "highValueConfigOwnerPacket",
    )
    assert_contains(
        "web_messages.en.iwooos.highValueConfigOwnerPacket",
        list(web_messages_en["iwooos"].keys()),
        "highValueConfigOwnerPacket",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "gateLabel",
        "stateLabel",
        "boundaryTitle",
        "boundaryIntro",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.highValueConfigOwnerPacket.keys",
            list(web_messages_zh["iwooos"]["highValueConfigOwnerPacket"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.highValueConfigOwnerPacket.keys",
            list(web_messages_en["iwooos"]["highValueConfigOwnerPacket"].keys()),
            key,
        )
    for key in ["packetCount", "c0Packets", "responses", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.highValueConfigOwnerPacket.summary",
            list(web_messages_zh["iwooos"]["highValueConfigOwnerPacket"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.highValueConfigOwnerPacket.summary",
            list(web_messages_en["iwooos"]["highValueConfigOwnerPacket"]["summary"].keys()),
            key,
        )
    for key in ["packetDraft", "currentTier", "canonicalFields", "requestState", "responseState", "runtimeBoundary"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.highValueConfigOwnerPacket.items",
            list(web_messages_zh["iwooos"]["highValueConfigOwnerPacket"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.highValueConfigOwnerPacket.items",
            list(web_messages_en["iwooos"]["highValueConfigOwnerPacket"]["items"].keys()),
            key,
        )
    domain_tls_summary = domain_tls_inventory["summary"]
    assert_equal("domain_tls_inventory.schema", domain_tls_inventory["schema_version"], "domain_tls_certbot_inventory_v1")
    assert_equal("domain_tls_inventory.summary.source_config_count", domain_tls_summary["source_config_count"], 3)
    assert_equal("domain_tls_inventory.summary.managed_domain_count", domain_tls_summary["managed_domain_count"], 14)
    assert_equal(
        "domain_tls_inventory.summary.unique_certificate_path_count",
        domain_tls_summary["unique_certificate_path_count"],
        10,
    )
    assert_equal(
        "domain_tls_inventory.summary.acme_challenge_domain_count",
        domain_tls_summary["acme_challenge_domain_count"],
        7,
    )
    assert_equal(
        "domain_tls_inventory.summary.certificate_owner_confirmation_required_count",
        domain_tls_summary["certificate_owner_confirmation_required_count"],
        4,
    )
    assert_equal("domain_tls_inventory.summary.runtime_gate_count", domain_tls_summary["runtime_gate_count"], 0)
    assert_false("domain_tls_inventory.summary.live_tls_probe_executed", domain_tls_summary["live_tls_probe_executed"])
    assert_false("domain_tls_inventory.summary.dns_change_executed", domain_tls_summary["dns_change_executed"])
    assert_false("domain_tls_inventory.summary.certbot_renew_executed", domain_tls_summary["certbot_renew_executed"])
    assert_false("domain_tls_inventory.summary.nginx_reload_executed", domain_tls_summary["nginx_reload_executed"])
    assert_false("domain_tls_inventory.summary.action_buttons_allowed", domain_tls_summary["action_buttons_allowed"])
    assert_equal(
        "iwooos_projection.summary.domain_tls_certbot_inventory_managed_domain_count",
        iwooos_projection["summary"]["domain_tls_certbot_inventory_managed_domain_count"],
        14,
    )
    assert_equal(
        "iwooos_projection.summary.domain_tls_certbot_inventory_owner_confirmation_required_count",
        iwooos_projection["summary"]["domain_tls_certbot_inventory_owner_confirmation_required_count"],
        4,
    )
    assert_equal(
        "iwooos_projection.summary.domain_tls_certbot_inventory_runtime_gate_count",
        iwooos_projection["summary"]["domain_tls_certbot_inventory_runtime_gate_count"],
        0,
    )
    for source_path in [
        "docs/security/domain-tls-certbot-inventory.snapshot.json",
        "docs/security/DOMAIN-TLS-CERTBOT-INVENTORY.md",
        "docs/schemas/domain_tls_certbot_inventory_v1.schema.json",
    ]:
        assert_contains("iwooos_projection.source_paths", iwooos_projection["source_paths"], source_path)
    assert_text_contains(
        "iwooos_page.domain_tls_certbot_inventory_testid",
        iwooos_projection_page,
        'data-testid="iwooos-domain-tls-certbot-inventory-board"',
    )
    assert_text_contains(
        "iwooos_page.domain_tls_certbot_inventory_boundary_testid",
        iwooos_projection_page,
        'data-testid="iwooos-domain-tls-certbot-inventory-boundaries"',
    )
    assert_text_contains(
        "iwooos_page.domain_tls_certbot_inventory_component",
        iwooos_projection_page,
        "IwoooSDomainTlsCertbotInventoryBoard",
    )
    for text in [
        "domain_tls_certbot_inventory_frontstage_summary_count=4",
        "domain_tls_certbot_inventory_frontstage_item_count=5",
        "domain_tls_certbot_inventory_source_config_count=3",
        "domain_tls_certbot_inventory_managed_domain_count=14",
        "domain_tls_certbot_inventory_unique_certificate_path_count=10",
        "domain_tls_certbot_inventory_acme_challenge_domain_count=7",
        "domain_tls_certbot_inventory_owner_confirmation_required_count=4",
        "domain_tls_certbot_inventory_admin_route_domain_count=1",
        "domain_tls_certbot_inventory_websocket_route_domain_count=6",
        "domain_tls_certbot_inventory_request_sent_count=0",
        "domain_tls_certbot_inventory_received_response_count=0",
        "domain_tls_certbot_inventory_accepted_response_count=0",
        "domain_tls_certbot_inventory_runtime_gate_count=0",
        "domain_tls_certbot_inventory_live_tls_probe_executed=false",
        "domain_tls_certbot_inventory_dns_change_executed=false",
        "domain_tls_certbot_inventory_certbot_renew_executed=false",
        "domain_tls_certbot_inventory_nginx_reload_executed=false",
        "domain_tls_certbot_inventory_action_buttons_allowed=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
    ]:
        assert_text_contains(
            "iwooos_page.domain_tls_certbot_inventory_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.domainTlsCertbotInventory",
        list(web_messages_zh["iwooos"].keys()),
        "domainTlsCertbotInventory",
    )
    assert_contains(
        "web_messages.en.iwooos.domainTlsCertbotInventory",
        list(web_messages_en["iwooos"].keys()),
        "domainTlsCertbotInventory",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "checkLabel",
        "stateLabel",
        "boundaryTitle",
        "boundaryIntro",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.domainTlsCertbotInventory.keys",
            list(web_messages_zh["iwooos"]["domainTlsCertbotInventory"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.domainTlsCertbotInventory.keys",
            list(web_messages_en["iwooos"]["domainTlsCertbotInventory"].keys()),
            key,
        )
    for key in ["domains", "certPaths", "ownerConfirm", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.domainTlsCertbotInventory.summary",
            list(web_messages_zh["iwooos"]["domainTlsCertbotInventory"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.domainTlsCertbotInventory.summary",
            list(web_messages_en["iwooos"]["domainTlsCertbotInventory"]["summary"].keys()),
            key,
        )
    for key in ["repoSource", "domainMap", "acmeRoutes", "ownerConfirmation", "runtimeBoundary"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.domainTlsCertbotInventory.items",
            list(web_messages_zh["iwooos"]["domainTlsCertbotInventory"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.domainTlsCertbotInventory.items",
            list(web_messages_en["iwooos"]["domainTlsCertbotInventory"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.three_axis_product_progress_testid",
        iwooos_projection_page,
        'data-testid="iwooos-three-axis-product-progress-board"',
    )
    assert_text_contains(
        "iwooos_page.three_axis_product_progress_component",
        iwooos_projection_page,
        "IwoooSThreeAxisProductProgressBoard",
    )
    for text in [
        "iwooos_three_axis_progress_headline_percent=64",
        "iwooos_three_axis_progress_framework_percent=92",
        "iwooos_three_axis_progress_runtime_percent=40-45",
        "iwooos_three_axis_progress_product_scope_count=8",
        "iwooos_three_axis_progress_all_products_read_only=true",
        "iwooos_three_axis_progress_vibework_read_only_in_scope=true",
        "iwooos_three_axis_progress_vibework_runtime_ready=false",
        "iwooos_three_axis_progress_agent_bounty_read_only_in_scope=true",
        "iwooos_three_axis_progress_agent_bounty_runtime_ready=false",
        "iwooos_three_axis_progress_runtime_product_rollout_count=0",
        "iwooos_three_axis_progress_first_runtime_gate=s4_9_owner_response_accepted",
        "iwooos_three_axis_progress_owner_response_accepted_count=0",
        "iwooos_three_axis_progress_active_runtime_gate_count=0",
        "iwooos_three_axis_progress_production_deploy_count=1",
        "iwooos_three_axis_progress_kali_execution_authorized=false",
        "iwooos_three_axis_progress_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.three_axis_product_progress_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.threeAxisProductProgress",
        list(web_messages_zh["iwooos"].keys()),
        "threeAxisProductProgress",
    )
    assert_contains(
        "web_messages.en.iwooos.threeAxisProductProgress",
        list(web_messages_en["iwooos"].keys()),
        "threeAxisProductProgress",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "scopeLabel",
        "currentLabel",
        "nextLabel",
        "boundaryLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.threeAxisProductProgress.keys",
            list(web_messages_zh["iwooos"]["threeAxisProductProgress"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.threeAxisProductProgress.keys",
            list(web_messages_en["iwooos"]["threeAxisProductProgress"].keys()),
            key,
        )
    for key in ["headline", "framework", "runtime", "products"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.threeAxisProductProgress.summary",
            list(web_messages_zh["iwooos"]["threeAxisProductProgress"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.threeAxisProductProgress.summary",
            list(web_messages_en["iwooos"]["threeAxisProductProgress"]["summary"].keys()),
            key,
        )
    for key in [
        "awoooiCore",
        "websites",
        "sourceControl",
        "hosts",
        "toolsMonitoring",
        "vibeWork",
        "agentBountyProtocol",
        "futureProducts",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.threeAxisProductProgress.items",
            list(web_messages_zh["iwooos"]["threeAxisProductProgress"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.threeAxisProductProgress.items",
            list(web_messages_en["iwooos"]["threeAxisProductProgress"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_rollout_wave_ledger_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-rollout-wave-ledger-board"',
    )
    assert_text_contains(
        "iwooos_page.product_rollout_wave_ledger_component",
        iwooos_projection_page,
        "IwoooSProductRolloutWaveLedgerBoard",
    )
    for text in [
        "iwooos_product_rollout_wave_count=8",
        "iwooos_product_rollout_all_products_count=8",
        "iwooos_product_rollout_current_wave=read_only_visibility",
        "iwooos_product_rollout_vibework_project_wave=read_only_visibility",
        "iwooos_product_rollout_vibework_runtime_ready=false",
        "iwooos_product_rollout_agent_bounty_project_wave=read_only_visibility",
        "iwooos_product_rollout_agent_bounty_runtime_ready=false",
        "iwooos_product_rollout_runtime_wave_count=0",
        "iwooos_product_rollout_enforcement_wave_count=0",
        "iwooos_product_rollout_owner_response_accepted_count=0",
        "iwooos_product_rollout_active_runtime_gate_count=0",
        "iwooos_product_rollout_first_runtime_candidate=s4_9_owner_response_accepted",
        "iwooos_product_rollout_all_products_read_only=true",
        "iwooos_product_rollout_public_secret_exposure_allowed=false",
        "iwooos_product_rollout_kali_execution_authorized=false",
        "iwooos_product_rollout_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_rollout_wave_ledger_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productRolloutWaveLedger",
        list(web_messages_zh["iwooos"].keys()),
        "productRolloutWaveLedger",
    )
    assert_contains(
        "web_messages.en.iwooos.productRolloutWaveLedger",
        list(web_messages_en["iwooos"].keys()),
        "productRolloutWaveLedger",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "waveLabel",
        "allowedLabel",
        "beforeRuntimeLabel",
        "forbiddenLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productRolloutWaveLedger.keys",
            list(web_messages_zh["iwooos"]["productRolloutWaveLedger"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productRolloutWaveLedger.keys",
            list(web_messages_en["iwooos"]["productRolloutWaveLedger"].keys()),
            key,
        )
    for key in ["waves", "current", "runtime", "nextGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productRolloutWaveLedger.summary",
            list(web_messages_zh["iwooos"]["productRolloutWaveLedger"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productRolloutWaveLedger.summary",
            list(web_messages_en["iwooos"]["productRolloutWaveLedger"]["summary"].keys()),
            key,
        )
    for key in [
        "coreProduct",
        "publicSurfaces",
        "sourceControl",
        "hostCoverage",
        "monitoringTools",
        "vibeWorkProject",
        "agentBountyProtocol",
        "futureTemplate",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productRolloutWaveLedger.items",
            list(web_messages_zh["iwooos"]["productRolloutWaveLedger"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productRolloutWaveLedger.items",
            list(web_messages_en["iwooos"]["productRolloutWaveLedger"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_rollout_acceptance_gates_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-rollout-acceptance-gates-board"',
    )
    assert_text_contains(
        "iwooos_page.product_rollout_acceptance_gates_component",
        iwooos_projection_page,
        "IwoooSProductRolloutAcceptanceGatesBoard",
    )
    for text in [
        "iwooos_product_rollout_acceptance_gate_count=6",
        "iwooos_product_rollout_acceptance_current_stage=read_only_acceptance",
        "iwooos_product_rollout_acceptance_passed_count=0",
        "iwooos_product_rollout_acceptance_failed_count=0",
        "iwooos_product_rollout_acceptance_owner_response_received_count=0",
        "iwooos_product_rollout_acceptance_owner_response_accepted_count=0",
        "iwooos_product_rollout_acceptance_redacted_evidence_pointer_count=0",
        "iwooos_product_rollout_acceptance_source_control_proof_count=0",
        "iwooos_product_rollout_acceptance_host_safety_window_approved=false",
        "iwooos_product_rollout_acceptance_rollback_disable_ready=false",
        "iwooos_product_rollout_acceptance_runtime_gate_open=false",
        "iwooos_product_rollout_acceptance_runtime_wave_count=0",
        "iwooos_product_rollout_acceptance_enforcement_wave_count=0",
        "iwooos_product_rollout_acceptance_public_secret_exposure_allowed=false",
        "iwooos_product_rollout_acceptance_kali_execution_authorized=false",
        "iwooos_product_rollout_acceptance_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_rollout_acceptance_gates_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productRolloutAcceptanceGates",
        list(web_messages_zh["iwooos"].keys()),
        "productRolloutAcceptanceGates",
    )
    assert_contains(
        "web_messages.en.iwooos.productRolloutAcceptanceGates",
        list(web_messages_en["iwooos"].keys()),
        "productRolloutAcceptanceGates",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "gateLabel",
        "requiredEvidenceLabel",
        "acceptanceSignalLabel",
        "stillClosedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productRolloutAcceptanceGates.keys",
            list(web_messages_zh["iwooos"]["productRolloutAcceptanceGates"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productRolloutAcceptanceGates.keys",
            list(web_messages_en["iwooos"]["productRolloutAcceptanceGates"].keys()),
            key,
        )
    for key in ["gateCount", "passed", "ownerEvidence", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productRolloutAcceptanceGates.summary",
            list(web_messages_zh["iwooos"]["productRolloutAcceptanceGates"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productRolloutAcceptanceGates.summary",
            list(web_messages_en["iwooos"]["productRolloutAcceptanceGates"]["summary"].keys()),
            key,
        )
    for key in [
        "visibilityEvidence",
        "ownerEvidence",
        "redactionReview",
        "sourceControlProof",
        "hostSafetyWindow",
        "rollbackDisable",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productRolloutAcceptanceGates.items",
            list(web_messages_zh["iwooos"]["productRolloutAcceptanceGates"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productRolloutAcceptanceGates.items",
            list(web_messages_en["iwooos"]["productRolloutAcceptanceGates"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_rollout_acceptance_outcomes_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-rollout-acceptance-outcomes-board"',
    )
    assert_text_contains(
        "iwooos_page.product_rollout_acceptance_outcomes_component",
        iwooos_projection_page,
        "IwoooSProductRolloutAcceptanceOutcomesBoard",
    )
    for text in [
        "iwooos_product_rollout_acceptance_outcome_lane_count=7",
        "iwooos_product_rollout_acceptance_outcome_current_stage=read_only_outcome_routing",
        "iwooos_product_rollout_acceptance_outcome_keep_read_only_lane_count=1",
        "iwooos_product_rollout_acceptance_outcome_returned_for_evidence_count=0",
        "iwooos_product_rollout_acceptance_outcome_quarantined_count=0",
        "iwooos_product_rollout_acceptance_outcome_source_control_hold_count=0",
        "iwooos_product_rollout_acceptance_outcome_host_safety_hold_count=0",
        "iwooos_product_rollout_acceptance_outcome_human_review_candidate_count=0",
        "iwooos_product_rollout_acceptance_outcome_runtime_candidate_count=0",
        "iwooos_product_rollout_acceptance_outcome_owner_response_received_count=0",
        "iwooos_product_rollout_acceptance_outcome_owner_response_accepted_count=0",
        "iwooos_product_rollout_acceptance_outcome_redacted_evidence_accepted_count=0",
        "iwooos_product_rollout_acceptance_outcome_active_runtime_gate_count=0",
        "iwooos_product_rollout_acceptance_outcome_runtime_gate_open=false",
        "iwooos_product_rollout_acceptance_outcome_runtime_wave_count=0",
        "iwooos_product_rollout_acceptance_outcome_enforcement_wave_count=0",
        "iwooos_product_rollout_acceptance_outcome_public_secret_exposure_allowed=false",
        "iwooos_product_rollout_acceptance_outcome_kali_execution_authorized=false",
        "iwooos_product_rollout_acceptance_outcome_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_rollout_acceptance_outcomes_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productRolloutAcceptanceOutcomes",
        list(web_messages_zh["iwooos"].keys()),
        "productRolloutAcceptanceOutcomes",
    )
    assert_contains(
        "web_messages.en.iwooos.productRolloutAcceptanceOutcomes",
        list(web_messages_en["iwooos"].keys()),
        "productRolloutAcceptanceOutcomes",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "laneLabel",
        "whyLabel",
        "nextLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productRolloutAcceptanceOutcomes.keys",
            list(web_messages_zh["iwooos"]["productRolloutAcceptanceOutcomes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productRolloutAcceptanceOutcomes.keys",
            list(web_messages_en["iwooos"]["productRolloutAcceptanceOutcomes"].keys()),
            key,
        )
    for key in ["outcomes", "accepted", "quarantine", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productRolloutAcceptanceOutcomes.summary",
            list(web_messages_zh["iwooos"]["productRolloutAcceptanceOutcomes"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productRolloutAcceptanceOutcomes.summary",
            list(web_messages_en["iwooos"]["productRolloutAcceptanceOutcomes"]["summary"].keys()),
            key,
        )
    for key in [
        "keepReadOnly",
        "returnEvidence",
        "quarantineSensitive",
        "sourceControlHold",
        "hostSafetyHold",
        "humanReviewCandidate",
        "runtimeDenied",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productRolloutAcceptanceOutcomes.items",
            list(web_messages_zh["iwooos"]["productRolloutAcceptanceOutcomes"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productRolloutAcceptanceOutcomes.items",
            list(web_messages_en["iwooos"]["productRolloutAcceptanceOutcomes"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_map_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-map-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_map_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringMapBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_channel_count=6",
        "iwooos_product_evidence_wiring_current_stage=read_only_evidence_wiring",
        "iwooos_product_evidence_wiring_visible_channel_count=6",
        "iwooos_product_evidence_wiring_connected_product_count=0",
        "iwooos_product_evidence_wiring_owner_response_received_count=0",
        "iwooos_product_evidence_wiring_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_monitoring_tool_payload_ingested=false",
        "iwooos_product_evidence_wiring_ready_for_human_review_count=0",
        "iwooos_product_evidence_wiring_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_map_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringMap",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringMap",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringMap",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringMap",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "channelLabel",
        "evidenceLabel",
        "handoffLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringMap.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringMap"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringMap.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringMap"].keys()),
            key,
        )
    for key in ["channels", "connected", "accepted", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringMap.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringMap"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringMap.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringMap"]["summary"].keys()),
            key,
        )
    for key in [
        "productScope",
        "ownerResponse",
        "redactedEvidence",
        "sourceControlTruth",
        "hostSafetyWindow",
        "monitoringToolEvidence",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringMap.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringMap"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringMap.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringMap"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_check_count=6",
        "iwooos_product_evidence_wiring_preflight_current_stage=read_only_evidence_wiring_preflight",
        "iwooos_product_evidence_wiring_preflight_visible_check_count=6",
        "iwooos_product_evidence_wiring_preflight_passed_count=0",
        "iwooos_product_evidence_wiring_preflight_failed_count=0",
        "iwooos_product_evidence_wiring_preflight_ready_for_connection_count=0",
        "iwooos_product_evidence_wiring_preflight_returned_for_scope_count=0",
        "iwooos_product_evidence_wiring_preflight_quarantined_count=0",
        "iwooos_product_evidence_wiring_preflight_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_preflight_monitoring_tool_payload_ingested=false",
        "iwooos_product_evidence_wiring_preflight_ready_for_human_review_count=0",
        "iwooos_product_evidence_wiring_preflight_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflight",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflight",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflight",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflight",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "checkLabel",
        "checkPointLabel",
        "passSignalLabel",
        "failRouteLabel",
        "stillClosedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflight.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflight"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflight.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflight"].keys()),
            key,
        )
    for key in ["checks", "passed", "quarantine", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflight.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflight"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflight.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflight"]["summary"].keys()),
            key,
        )
    for key in [
        "scopeMetadata",
        "ownerEnvelope",
        "redactionBoundary",
        "sourceTruth",
        "hostWindow",
        "toolOutput",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflight.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflight"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflight.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflight"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_outcomes_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-outcomes-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_outcomes_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightOutcomesBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_outcome_lane_count=8",
        "iwooos_product_evidence_wiring_preflight_outcome_current_stage=read_only_preflight_outcome_routing",
        "iwooos_product_evidence_wiring_preflight_outcome_keep_read_only_lane_count=1",
        "iwooos_product_evidence_wiring_preflight_outcome_ready_for_connection_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_returned_for_scope_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_returned_for_owner_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_quarantined_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_source_control_hold_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_host_safety_hold_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_tool_summary_hold_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_runtime_candidate_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_ready_for_human_review_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_outcome_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_outcome_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_outcome_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_outcome_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_outcomes_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightOutcomes",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflightOutcomes",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflightOutcomes",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflightOutcomes",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "outcomeLabel",
        "whyLabel",
        "nextLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightOutcomes.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightOutcomes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightOutcomes.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightOutcomes"].keys()),
            key,
        )
    for key in ["outcomes", "ready", "returned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightOutcomes.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightOutcomes"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightOutcomes.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightOutcomes"]["summary"].keys()),
            key,
        )
    for key in [
        "stayReadOnly",
        "returnScope",
        "returnOwnerEnvelope",
        "quarantineSensitive",
        "sourceTruthHold",
        "hostWindowHold",
        "toolSummaryHold",
        "runtimeClosed",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightOutcomes.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightOutcomes"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightOutcomes.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightOutcomes"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_recovery_ledger_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-recovery-ledger-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_recovery_ledger_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightRecoveryLedgerBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_recovery_queue_count=7",
        "iwooos_product_evidence_wiring_preflight_recovery_current_stage=read_only_recovery_ledger",
        "iwooos_product_evidence_wiring_preflight_recovery_visible_queue_count=7",
        "iwooos_product_evidence_wiring_preflight_recovery_submitted_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_returned_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_quarantined_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_ready_for_preflight_retry_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_ready_for_human_review_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_recovery_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_preflight_recovery_tool_summary_ingested=false",
        "iwooos_product_evidence_wiring_preflight_recovery_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_recovery_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_recovery_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_recovery_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_recovery_ledger_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRecoveryLedger",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflightRecoveryLedger",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflightRecoveryLedger",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflightRecoveryLedger",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "queueLabel",
        "ownerLabel",
        "requiredLabel",
        "handoffLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRecoveryLedger.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRecoveryLedger"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRecoveryLedger.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRecoveryLedger"].keys()),
            key,
        )
    for key in ["queues", "submitted", "accepted", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRecoveryLedger.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRecoveryLedger"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRecoveryLedger.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRecoveryLedger"]["summary"].keys()),
            key,
        )
    for key in [
        "scopePacket",
        "ownerEnvelope",
        "redactedEvidence",
        "sourceTruth",
        "hostWindow",
        "toolSummary",
        "runtimeGate",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRecoveryLedger.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRecoveryLedger"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRecoveryLedger.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRecoveryLedger"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_gates_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-retry-gates-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_gates_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightRetryGatesBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_retry_gate_count=6",
        "iwooos_product_evidence_wiring_preflight_retry_current_stage=read_only_recovery_retry_gate",
        "iwooos_product_evidence_wiring_preflight_retry_visible_gate_count=6",
        "iwooos_product_evidence_wiring_preflight_retry_candidate_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_submitted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_passed_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_failed_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_returned_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_quarantined_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_ready_for_connection_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_ready_for_human_review_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_preflight_retry_tool_summary_ingested=false",
        "iwooos_product_evidence_wiring_preflight_retry_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_retry_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_retry_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_retry_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_retry_gates_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryGates",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryGates",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflightRetryGates",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryGates",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "gateLabel",
        "readyLabel",
        "retryLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryGates.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryGates"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryGates.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryGates"].keys()),
            key,
        )
    for key in ["gates", "candidate", "passed", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryGates.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryGates"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryGates.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryGates"]["summary"].keys()),
            key,
        )
    for key in [
        "scopeReady",
        "ownerReady",
        "redactionReady",
        "sourceReady",
        "hostReady",
        "toolReady",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryGates.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryGates"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryGates.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryGates"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_outcomes_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-retry-outcomes-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_outcomes_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightRetryOutcomesBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_retry_outcome_lane_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_current_stage=read_only_retry_outcome_routing",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_visible_lane_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_ready_for_connection_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_returned_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_quarantined_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_human_review_candidate_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_runtime_candidate_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_tool_summary_ingested=false",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_retry_outcome_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_retry_outcomes_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryOutcomes",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryOutcomes",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflightRetryOutcomes",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryOutcomes",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "outcomeLabel",
        "decisionLabel",
        "nextLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryOutcomes.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryOutcomes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryOutcomes.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryOutcomes"].keys()),
            key,
        )
    for key in ["outcomes", "ready", "review", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryOutcomes.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryOutcomes"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryOutcomes.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryOutcomes"]["summary"].keys()),
            key,
        )
    for key in [
        "stayCandidate",
        "returnSupplement",
        "quarantineSensitive",
        "sourceTruthReturn",
        "hostWindowPause",
        "toolSummaryReturn",
        "humanReviewWait",
        "runtimeStillClosed",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryOutcomes.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryOutcomes"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryOutcomes.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryOutcomes"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-retry-review-candidate-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightRetryReviewCandidateBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_packet_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_current_stage=read_only_retry_review_candidate_preparation",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_visible_packet_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_packet_completed_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_ready_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_queue_open=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_created_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_reviewer_assigned_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_audit_event_emitted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_ready_for_connection_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_tool_summary_ingested=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_candidate_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidate",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidate",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidate",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidate",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "packetLabel",
        "requiredLabel",
        "handoffLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidate.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidate"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidate.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidate"].keys()),
            key,
        )
    for key in ["packets", "ready", "queue", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidate.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidate"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidate.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidate"]["summary"].keys()),
            key,
        )
    for key in [
        "candidateIdentity",
        "sourceOutcomeTrace",
        "ownerScopePacket",
        "redactionAttestation",
        "sourceControlReadiness",
        "hostSafetyWindow",
        "toolSummaryEvidence",
        "runtimeSeparation",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidate.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidate"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidate.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidate"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-retry-review-candidate-preflight-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightRetryReviewCandidatePreflightBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_check_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_current_stage=read_only_retry_review_candidate_preflight",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_visible_check_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_passed_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_failed_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_ready_for_queue_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_queue_open=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_candidate_created_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_reviewer_assigned_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_audit_event_emitted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_ready_for_connection_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_tool_summary_ingested=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflight",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidatePreflight",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflight",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidatePreflight",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "checkLabel",
        "requirementLabel",
        "passLabel",
        "failLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflight.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflight"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflight.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflight"].keys()),
            key,
        )
    for key in ["checks", "passed", "queue", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflight.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflight"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflight.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflight"]["summary"].keys()),
            key,
        )
    for key in [
        "candidateIdentity",
        "sourceOutcomeTrace",
        "ownerScope",
        "redactionAttestation",
        "sourceControlTruth",
        "hostSafetyWindow",
        "toolSummary",
        "runtimeSeparation",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflight.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflight"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflight.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflight"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_outcomes_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-retry-review-candidate-preflight-outcomes-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_outcomes_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomesBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_lane_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_current_stage=read_only_retry_review_candidate_preflight_outcome_routing",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_visible_lane_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_ready_for_queue_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_returned_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_quarantined_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_candidate_created_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_reviewer_assigned_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_audit_event_emitted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_ready_for_connection_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_tool_summary_ingested=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_outcome_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_outcomes_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "outcomeLabel",
        "decisionLabel",
        "nextLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes"].keys()),
            key,
        )
    for key in ["outcomes", "ready", "queue", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes"]["summary"].keys()),
            key,
        )
    for key in [
        "stayReadOnly",
        "returnIdentity",
        "returnTrace",
        "returnOwnerScope",
        "quarantineRedaction",
        "sourceHostHold",
        "readyForHumanReviewWait",
        "runtimeStillClosed",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightOutcomes"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_ledger_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-retry-review-candidate-preflight-recovery-ledger-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_ledger_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedgerBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_queue_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_current_stage=read_only_retry_review_candidate_preflight_recovery_ledger",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_visible_queue_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_submitted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_rejected_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_quarantined_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_ready_for_preflight_retry_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_ready_for_human_review_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_candidate_created_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_reviewer_assigned_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_audit_event_emitted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_tool_summary_ingested=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_ledger_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "queueLabel",
        "ownerLabel",
        "requiredLabel",
        "recoveryLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger"].keys()),
            key,
        )
    for key in ["queues", "submitted", "accepted", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger"]["summary"].keys()),
            key,
        )
    for key in [
        "identitySupplement",
        "traceSupplement",
        "ownerScopeSupplement",
        "redactionResubmission",
        "sourceControlEvidence",
        "hostWindowEvidence",
        "toolSummarySupplement",
        "runtimeAttestation",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryLedger"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_retry_gates_testid",
        iwooos_projection_page,
        'data-testid="iwooos-product-evidence-wiring-preflight-retry-review-candidate-preflight-recovery-retry-gates-board"',
    )
    assert_text_contains(
        "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_retry_gates_component",
        iwooos_projection_page,
        "IwoooSProductEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGatesBoard",
    )
    for text in [
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_gate_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_current_stage=read_only_retry_review_candidate_preflight_recovery_retry_gate",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_visible_gate_count=8",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_candidate_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_submitted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_passed_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_failed_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_ready_for_preflight_retry_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_ready_for_human_review_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_candidate_created_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_reviewer_assigned_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_audit_event_emitted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_ready_for_runtime_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_owner_response_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_redacted_evidence_pointer_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_source_control_truth_accepted_count=0",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_host_safety_window_approved=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_tool_summary_ingested=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_runtime_gate_open=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_public_secret_exposure_allowed=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_kali_execution_authorized=false",
        "iwooos_product_evidence_wiring_preflight_retry_review_preflight_recovery_retry_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.product_evidence_wiring_preflight_retry_review_candidate_preflight_recovery_retry_gates_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates",
        list(web_messages_zh["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates",
    )
    assert_contains(
        "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates",
        list(web_messages_en["iwooos"].keys()),
        "productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates",
    )
    for key in [
        "title",
        "subtitle",
        "summary",
        "items",
        "gateLabel",
        "readyLabel",
        "retryLabel",
        "blockedLabel",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates.keys",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates.keys",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates"].keys()),
            key,
        )
    for key in ["gates", "candidates", "passed", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates.summary",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates.summary",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates"]["summary"].keys()),
            key,
        )
    for key in [
        "identityGate",
        "traceGate",
        "ownerScopeGate",
        "redactionGate",
        "sourceControlGate",
        "hostWindowGate",
        "toolSummaryGate",
        "runtimeGate",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates.items",
            list(web_messages_zh["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates.items",
            list(web_messages_en["iwooos"]["productEvidenceWiringPreflightRetryReviewCandidatePreflightRecoveryRetryGates"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.first_progress_unlock_path_testid",
        iwooos_projection_page,
        'data-testid="iwooos-first-progress-unlock-path-board"',
    )
    assert_text_contains(
        "iwooos_page.first_progress_unlock_path_component",
        iwooos_projection_page,
        "IwoooSFirstProgressUnlockPathBoard",
    )
    assert_equal(
        "iwooos_page.first_progress_unlock_path_render_count",
        iwooos_projection_page.count("<IwoooSFirstProgressUnlockPathBoard />"),
        1,
    )
    assert_text_before(
        "iwooos_page.first_progress_unlock_path_before_visual_dashboard",
        iwooos_projection_page,
        "<IwoooSFirstProgressUnlockPathBoard />",
        "<IwoooSVisualCommandDashboard />",
    )
    assert_text_before(
        "iwooos_page.first_progress_unlock_path_first_layer_order",
        iwooos_projection_page,
        "<IwoooSFirstProgressUnlockPathBoard />",
        "<IwoooSProfessionalSecurityExperience />",
    )
    assert_text_before(
        "iwooos_page.decision_gate_group_contains_first_progress_unlock_path",
        iwooos_projection_page,
        'id="iwooos-decision-gate-visuals"',
        "<IwoooSFirstProgressUnlockPathBoard />",
    )
    assert_text_before(
        "iwooos_page.first_progress_unlock_path_before_scope_evidence_group",
        iwooos_projection_page,
        "<IwoooSFirstProgressUnlockPathBoard />",
        'id="iwooos-scope-evidence-visuals"',
    )
    assert_text_contains(
        "iwooos_page.first_progress_unlock_path_boundary_details",
        iwooos_projection_page,
        'data-testid="iwooos-first-progress-unlock-path-boundaries"',
    )
    expected_first_progress_unlock_path_step_ids = [
        "owner_response_scope",
        "redacted_evidence_pointer",
        "intake_preflight",
        "review_acceptance",
        "headline_review_candidate",
    ]
    first_progress_unlock_path_steps = iwooos_projection["first_progress_unlock_path_steps"]
    assert_equal(
        "iwooos_projection.first_progress_unlock_path_steps.ids",
        [item["step_id"] for item in first_progress_unlock_path_steps],
        expected_first_progress_unlock_path_step_ids,
    )
    assert_equal(
        "iwooos_projection.first_progress_unlock_path_steps.display_order",
        [item["display_order"] for item in first_progress_unlock_path_steps],
        list(range(1, len(expected_first_progress_unlock_path_step_ids) + 1)),
    )
    for item in first_progress_unlock_path_steps:
        assert_equal(
            f"iwooos_projection.first_progress_unlock_path_steps.{item['step_id']}.source_focus",
            item["source_focus"],
            "s4_9_owner_response",
        )
        assert_equal(
            f"iwooos_projection.first_progress_unlock_path_steps.{item['step_id']}.display_mode",
            item["display_mode"],
            "first_layer_progress_unlock_path",
        )
        for count_key in [
            "owner_response_received_count",
            "owner_response_accepted_count",
            "redacted_evidence_pointer_count",
            "preflight_passed_count",
        ]:
            assert_equal(
                f"iwooos_projection.first_progress_unlock_path_steps.{item['step_id']}.{count_key}",
                item[count_key],
                0,
            )
        for flag in [
            "headline_review_authorized",
            "runtime_gate_opened",
            "runtime_execution_authorized",
            "action_buttons_allowed",
        ]:
            assert_false(
                f"iwooos_projection.first_progress_unlock_path_steps.{item['step_id']}.{flag}",
                item[flag],
            )
        assert_true(
            f"iwooos_projection.first_progress_unlock_path_steps.{item['step_id']}.not_authorization",
            item["not_authorization"],
        )
    expected_progress_integrity_signal_ids = [
        "coverageVisible",
        "evidenceMissing",
        "executionLocked",
    ]
    progress_integrity_signals = iwooos_projection["progress_integrity_ribbon_signals"]
    assert_equal(
        "iwooos_projection.progress_integrity_ribbon_signals.ids",
        [item["signal_id"] for item in progress_integrity_signals],
        expected_progress_integrity_signal_ids,
    )
    assert_equal(
        "iwooos_projection.progress_integrity_ribbon_signals.display_order",
        [item["display_order"] for item in progress_integrity_signals],
        list(range(1, len(expected_progress_integrity_signal_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.progress_integrity_ribbon_signals.percents",
        [item["percent"] for item in progress_integrity_signals],
        [92, 0, 0],
    )
    assert_equal(
        "iwooos_projection.progress_integrity_ribbon_signals.values",
        [item["value"] for item in progress_integrity_signals],
        ["9 類", "0 / 3", "0"],
    )
    for item in progress_integrity_signals:
        signal_id = item["signal_id"]
        assert_equal(
            f"iwooos_projection.progress_integrity_ribbon_signals.{signal_id}.display_mode",
            item["display_mode"],
            "first_screen_progress_integrity_ribbon",
        )
        assert_equal(
            f"iwooos_projection.progress_integrity_ribbon_signals.{signal_id}.headline_percent",
            item["headline_percent"],
            64,
        )
        assert_equal(
            f"iwooos_projection.progress_integrity_ribbon_signals.{signal_id}.headline_percent_delta",
            item["headline_percent_delta"],
            3,
        )
        assert_equal(
            f"iwooos_projection.progress_integrity_ribbon_signals.{signal_id}.runtime_gate_count",
            item["runtime_gate_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.progress_integrity_ribbon_signals.{signal_id}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.progress_integrity_ribbon_signals.{signal_id}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.progress_integrity_ribbon_signals.{signal_id}.not_authorization",
            item["not_authorization"],
        )
    evidence_signal = next(item for item in progress_integrity_signals if item["signal_id"] == "evidenceMissing")
    for count_key in [
        "owner_response_received_count",
        "owner_response_accepted_count",
        "redacted_evidence_refs_received_count",
    ]:
        assert_equal(
            f"iwooos_projection.progress_integrity_ribbon_signals.evidenceMissing.{count_key}",
            evidence_signal[count_key],
            0,
        )
    execution_signal = next(item for item in progress_integrity_signals if item["signal_id"] == "executionLocked")
    for flag in ["scan_authorized", "host_change_authorized", "source_control_mutation_authorized"]:
        assert_false(
            f"iwooos_projection.progress_integrity_ribbon_signals.executionLocked.{flag}",
            execution_signal[flag],
        )
    for text in [
        'data-testid="iwooos-progress-integrity-ribbon"',
        'data-testid="iwooos-progress-integrity-ribbon-signals"',
        'data-testid="iwooos-progress-integrity-ribbon-boundaries"',
        "IwoooSProgressIntegrityRibbon",
        "IwoooSProgressIntegritySignal",
        "progressIntegritySignals",
        "progressIntegrityRibbonBoundaries",
        "conic-gradient",
        "progressIntegrityRibbon",
    ]:
        assert_text_contains(
            "iwooos_page.progress_integrity_ribbon",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.progress_integrity_before_executive_snapshot",
        iwooos_projection_page,
        "<IwoooSProgressIntegrityRibbon />",
        "<IwoooSExecutiveSnapshotBoard />",
    )
    for text in [
        "iwooos_progress_integrity_ribbon_first_layer=true",
        "iwooos_progress_integrity_ribbon_signal_count=3",
        "iwooos_progress_integrity_ribbon_headline_percent=64",
        "iwooos_progress_integrity_ribbon_headline_delta=3",
        "iwooos_progress_integrity_ribbon_read_only_scope_count=9",
        "iwooos_progress_integrity_ribbon_pending_evidence_gate_count=3",
        "iwooos_progress_integrity_ribbon_runtime_gate_count=0",
        "owner_response_received_count=0",
        "owner_response_accepted_count=0",
        "redacted_evidence_refs_received_count=0",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.progress_integrity_ribbon_boundary",
            iwooos_projection_page,
            text,
        )
    expected_executive_snapshot_card_ids = [
        "visibleWork",
        "assetMesh",
        "nextBlocker",
        "reviewFixCandidate",
        "runtimeLock",
    ]
    executive_snapshot_cards = iwooos_projection["executive_snapshot_cards"]
    assert_equal(
        "iwooos_projection.executive_snapshot_cards.ids",
        [item["card_id"] for item in executive_snapshot_cards],
        expected_executive_snapshot_card_ids,
    )
    assert_equal(
        "iwooos_projection.executive_snapshot_cards.display_order",
        [item["display_order"] for item in executive_snapshot_cards],
        list(range(1, len(expected_executive_snapshot_card_ids) + 1)),
    )
    for item in executive_snapshot_cards:
        card_id = item["card_id"]
        assert_equal(
            f"iwooos_projection.executive_snapshot_cards.{card_id}.display_mode",
            item["display_mode"],
            "first_screen_executive_snapshot",
        )
        assert_false(
            f"iwooos_projection.executive_snapshot_cards.{card_id}.execution_action_button_allowed",
            item["execution_action_button_allowed"],
        )
        assert_false(
            f"iwooos_projection.executive_snapshot_cards.{card_id}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.executive_snapshot_cards.{card_id}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.executive_snapshot_cards.{card_id}.not_authorization",
            item["not_authorization"],
        )
    runtime_lock_card = next(item for item in executive_snapshot_cards if item["card_id"] == "runtimeLock")
    for flag in ["scan_authorized", "host_change_authorized", "source_control_mutation_authorized"]:
        assert_false(
            f"iwooos_projection.executive_snapshot_cards.runtimeLock.{flag}",
            runtime_lock_card[flag],
        )
    next_blocker_card = next(item for item in executive_snapshot_cards if item["card_id"] == "nextBlocker")
    for count_key in ["owner_response_received_count", "owner_response_accepted_count"]:
        assert_equal(
            f"iwooos_projection.executive_snapshot_cards.nextBlocker.{count_key}",
            next_blocker_card[count_key],
            0,
        )
    review_fix_candidate_card = next(
        item for item in executive_snapshot_cards if item["card_id"] == "reviewFixCandidate"
    )
    for count_key in ["review_fix_candidate_count"]:
        assert_equal(
            f"iwooos_projection.executive_snapshot_cards.reviewFixCandidate.{count_key}",
            review_fix_candidate_card[count_key],
            0,
        )
    for flag in ["automatic_code_change_authorized", "automatic_deploy_authorized"]:
        assert_false(
            f"iwooos_projection.executive_snapshot_cards.reviewFixCandidate.{flag}",
            review_fix_candidate_card[flag],
        )
    expected_executive_snapshot_axis_ids = [
        "framework",
        "evidence",
        "runtime",
    ]
    executive_snapshot_axes = iwooos_projection["executive_snapshot_axes"]
    assert_equal(
        "iwooos_projection.executive_snapshot_axes.ids",
        [item["axis_id"] for item in executive_snapshot_axes],
        expected_executive_snapshot_axis_ids,
    )
    assert_equal(
        "iwooos_projection.executive_snapshot_axes.display_order",
        [item["display_order"] for item in executive_snapshot_axes],
        list(range(1, len(expected_executive_snapshot_axis_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.executive_snapshot_axes.percents",
        [item["percent"] for item in executive_snapshot_axes],
        [92, 0, 0],
    )
    for item in executive_snapshot_axes:
        axis_id = item["axis_id"]
        assert_equal(
            f"iwooos_projection.executive_snapshot_axes.{axis_id}.display_mode",
            item["display_mode"],
            "first_screen_executive_snapshot_axis",
        )
        assert_false(
            f"iwooos_projection.executive_snapshot_axes.{axis_id}.runtime_delta",
            item["runtime_delta"],
        )
        assert_true(
            f"iwooos_projection.executive_snapshot_axes.{axis_id}.not_authorization",
            item["not_authorization"],
        )
    for text in [
        'data-testid="iwooos-executive-snapshot-board"',
        'data-testid="iwooos-executive-snapshot-overview"',
        'data-testid="iwooos-executive-snapshot-axes-grid"',
        'data-testid="iwooos-executive-snapshot-cards-grid"',
        'data-testid="iwooos-executive-snapshot-boundaries"',
        "IwoooSExecutiveSnapshotBoard",
        "IwoooSExecutiveSnapshotCard",
        "IwoooSExecutiveSnapshotAxis",
        "iwooosExecutiveSnapshotCards",
        "iwooosExecutiveSnapshotAxes",
        "iwooosExecutiveSnapshotBoundaries",
    ]:
        assert_text_contains(
            "iwooos_page.executive_snapshot",
            iwooos_projection_page,
            text,
        )
    for card_id in expected_executive_snapshot_card_ids:
        assert_text_contains(
            f"iwooos_page.executive_snapshot_card_{card_id}",
            iwooos_projection_page,
            f"data-testid={{`iwooos-executive-snapshot-card-${{item.key}}`}}",
        )
    for axis_id in expected_executive_snapshot_axis_ids:
        assert_text_contains(
            f"iwooos_page.executive_snapshot_axis_{axis_id}",
            iwooos_projection_page,
            f"data-testid={{`iwooos-executive-snapshot-axis-${{item.key}}`}}",
        )
    assert_text_before(
        "iwooos_page.executive_snapshot_before_focus_deck",
        iwooos_projection_page,
        "<IwoooSExecutiveSnapshotBoard />",
        "<IwoooSFocusDeckBoard />",
    )
    for text in [
        "iwooos_executive_snapshot_first_layer=true",
        "iwooos_executive_snapshot_card_count=5",
        "iwooos_executive_snapshot_axis_count=3",
        "iwooos_executive_snapshot_above_focus_deck=true",
        "iwooos_executive_snapshot_explains_done_next_blocked=true",
        "iwooos_executive_snapshot_review_fix_candidate_count=0",
        "iwooos_executive_snapshot_review_fix_candidate_execution_allowed=false",
        "iwooos_executive_snapshot_execution_action_buttons_allowed=false",
        "iwooos_executive_snapshot_runtime_gate_count=0",
        "iwooos_executive_snapshot_owner_response_received_count=0",
        "iwooos_executive_snapshot_owner_response_accepted_count=0",
        "iwooos_executive_snapshot_scan_authorized=false",
        "iwooos_executive_snapshot_host_change_authorized=false",
        "iwooos_executive_snapshot_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.executive_snapshot_boundary",
            iwooos_projection_page,
            text,
        )
    expected_first_screen_depth_map_layer_ids = [
        "visible",
        "advanced",
        "ledger",
        "runtime",
    ]
    first_screen_depth_map_layers = iwooos_projection["first_screen_depth_map_layers"]
    assert_equal(
        "iwooos_projection.first_screen_depth_map_layers.ids",
        [item["layer_id"] for item in first_screen_depth_map_layers],
        expected_first_screen_depth_map_layer_ids,
    )
    assert_equal(
        "iwooos_projection.first_screen_depth_map_layers.display_order",
        [item["display_order"] for item in first_screen_depth_map_layers],
        list(range(1, len(expected_first_screen_depth_map_layer_ids) + 1)),
    )
    first_screen_depth_surface_counts = {
        item["layer_id"]: item["surface_count"] for item in first_screen_depth_map_layers
    }
    assert_equal("iwooos_projection.first_screen_depth_map_layers.visible.surface_count", first_screen_depth_surface_counts["visible"], 4)
    assert_equal("iwooos_projection.first_screen_depth_map_layers.advanced.surface_count", first_screen_depth_surface_counts["advanced"], 2)
    assert_equal("iwooos_projection.first_screen_depth_map_layers.ledger.surface_count", first_screen_depth_surface_counts["ledger"], 4)
    assert_equal("iwooos_projection.first_screen_depth_map_layers.runtime.surface_count", first_screen_depth_surface_counts["runtime"], 0)
    for item in first_screen_depth_map_layers:
        layer_id = item["layer_id"]
        assert_equal(
            f"iwooos_projection.first_screen_depth_map_layers.{layer_id}.display_mode",
            item["display_mode"],
            "first_screen_depth_map",
        )
        assert_equal(
            f"iwooos_projection.first_screen_depth_map_layers.{layer_id}.default_visible",
            item["default_visible"],
            layer_id == "visible",
        )
        assert_equal(
            f"iwooos_projection.first_screen_depth_map_layers.{layer_id}.runtime_gate_count",
            item["runtime_gate_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.first_screen_depth_map_layers.{layer_id}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.first_screen_depth_map_layers.{layer_id}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.first_screen_depth_map_layers.{layer_id}.not_authorization",
            item["not_authorization"],
        )
    runtime_depth_layer = next(item for item in first_screen_depth_map_layers if item["layer_id"] == "runtime")
    for flag in ["scan_authorized", "host_change_authorized", "source_control_mutation_authorized"]:
        assert_false(
            f"iwooos_projection.first_screen_depth_map_layers.runtime.{flag}",
            runtime_depth_layer[flag],
        )
    expected_progress_evidence_rail_item_ids = [
        "ownerResponses",
        "redactedEvidence",
        "reviewAcceptance",
        "githubPrimary",
        "runtimeGate",
    ]
    progress_evidence_rail_items = iwooos_projection["progress_evidence_rail_items"]
    assert_equal(
        "iwooos_projection.progress_evidence_rail_items.ids",
        [item["item_id"] for item in progress_evidence_rail_items],
        expected_progress_evidence_rail_item_ids,
    )
    assert_equal(
        "iwooos_projection.progress_evidence_rail_items.display_order",
        [item["display_order"] for item in progress_evidence_rail_items],
        list(range(1, len(expected_progress_evidence_rail_item_ids) + 1)),
    )
    progress_evidence_rail_values = {item["item_id"]: item["value"] for item in progress_evidence_rail_items}
    assert_equal("iwooos_projection.progress_evidence_rail_items.ownerResponses.value", progress_evidence_rail_values["ownerResponses"], "0/4")
    assert_equal("iwooos_projection.progress_evidence_rail_items.redactedEvidence.value", progress_evidence_rail_values["redactedEvidence"], "0")
    assert_equal("iwooos_projection.progress_evidence_rail_items.reviewAcceptance.value", progress_evidence_rail_values["reviewAcceptance"], "0")
    assert_equal("iwooos_projection.progress_evidence_rail_items.githubPrimary.value", progress_evidence_rail_values["githubPrimary"], "0/10")
    assert_equal("iwooos_projection.progress_evidence_rail_items.runtimeGate.value", progress_evidence_rail_values["runtimeGate"], "0")
    for item in progress_evidence_rail_items:
        item_id = item["item_id"]
        assert_equal(
            f"iwooos_projection.progress_evidence_rail_items.{item_id}.display_mode",
            item["display_mode"],
            "first_screen_progress_evidence_rail",
        )
        assert_equal(
            f"iwooos_projection.progress_evidence_rail_items.{item_id}.runtime_gate_count",
            item["runtime_gate_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.progress_evidence_rail_items.{item_id}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.progress_evidence_rail_items.{item_id}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.progress_evidence_rail_items.{item_id}.not_authorization",
            item["not_authorization"],
        )
    owner_response_rail_item = next(item for item in progress_evidence_rail_items if item["item_id"] == "ownerResponses")
    assert_equal(
        "iwooos_projection.progress_evidence_rail_items.ownerResponses.owner_response_received_count",
        owner_response_rail_item["owner_response_received_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.progress_evidence_rail_items.ownerResponses.owner_response_accepted_count",
        owner_response_rail_item["owner_response_accepted_count"],
        0,
    )
    redacted_evidence_rail_item = next(item for item in progress_evidence_rail_items if item["item_id"] == "redactedEvidence")
    assert_equal(
        "iwooos_projection.progress_evidence_rail_items.redactedEvidence.redacted_evidence_count",
        redacted_evidence_rail_item["redacted_evidence_count"],
        0,
    )
    review_acceptance_rail_item = next(item for item in progress_evidence_rail_items if item["item_id"] == "reviewAcceptance")
    assert_equal(
        "iwooos_projection.progress_evidence_rail_items.reviewAcceptance.review_acceptance_count",
        review_acceptance_rail_item["review_acceptance_count"],
        0,
    )
    github_primary_rail_item = next(item for item in progress_evidence_rail_items if item["item_id"] == "githubPrimary")
    assert_equal(
        "iwooos_projection.progress_evidence_rail_items.githubPrimary.candidate_repo_count",
        github_primary_rail_item["candidate_repo_count"],
        10,
    )
    assert_equal(
        "iwooos_projection.progress_evidence_rail_items.githubPrimary.github_primary_ready_count",
        github_primary_rail_item["github_primary_ready_count"],
        0,
    )
    for flag in ["source_control_mutation_authorized"]:
        assert_false(
            f"iwooos_projection.progress_evidence_rail_items.githubPrimary.{flag}",
            github_primary_rail_item[flag],
        )
    runtime_gate_rail_item = next(item for item in progress_evidence_rail_items if item["item_id"] == "runtimeGate")
    for flag in ["scan_authorized", "host_change_authorized", "source_control_mutation_authorized"]:
        assert_false(
            f"iwooos_projection.progress_evidence_rail_items.runtimeGate.{flag}",
            runtime_gate_rail_item[flag],
        )
    expected_evidence_unlock_queue_item_ids = [
        "giteaOwner",
        "githubTarget",
        "refTruth",
        "workflowSecrets",
    ]
    evidence_unlock_queue_items = iwooos_projection["evidence_unlock_queue_items"]
    assert_equal(
        "iwooos_projection.evidence_unlock_queue_items.ids",
        [item["item_id"] for item in evidence_unlock_queue_items],
        expected_evidence_unlock_queue_item_ids,
    )
    assert_equal(
        "iwooos_projection.evidence_unlock_queue_items.display_order",
        [item["display_order"] for item in evidence_unlock_queue_items],
        list(range(1, len(expected_evidence_unlock_queue_item_ids) + 1)),
    )
    evidence_unlock_queue_gates = {item["item_id"]: item["gate"] for item in evidence_unlock_queue_items}
    assert_equal("iwooos_projection.evidence_unlock_queue_items.giteaOwner.gate", evidence_unlock_queue_gates["giteaOwner"], "S4.9")
    assert_equal("iwooos_projection.evidence_unlock_queue_items.githubTarget.gate", evidence_unlock_queue_gates["githubTarget"], "S4.10")
    assert_equal("iwooos_projection.evidence_unlock_queue_items.refTruth.gate", evidence_unlock_queue_gates["refTruth"], "S4.11")
    assert_equal("iwooos_projection.evidence_unlock_queue_items.workflowSecrets.gate", evidence_unlock_queue_gates["workflowSecrets"], "S4.12")
    evidence_unlock_queue_values = {item["item_id"]: item["value"] for item in evidence_unlock_queue_items}
    assert_equal("iwooos_projection.evidence_unlock_queue_items.giteaOwner.value", evidence_unlock_queue_values["giteaOwner"], "草稿 5")
    assert_equal("iwooos_projection.evidence_unlock_queue_items.githubTarget.value", evidence_unlock_queue_values["githubTarget"], "0/10")
    assert_equal("iwooos_projection.evidence_unlock_queue_items.refTruth.value", evidence_unlock_queue_values["refTruth"], "0/5")
    assert_equal("iwooos_projection.evidence_unlock_queue_items.workflowSecrets.value", evidence_unlock_queue_values["workflowSecrets"], "0/5")
    for item in evidence_unlock_queue_items:
        item_id = item["item_id"]
        assert_equal(
            f"iwooos_projection.evidence_unlock_queue_items.{item_id}.display_mode",
            item["display_mode"],
            "first_screen_evidence_unlock_queue",
        )
        for count_key in ["request_sent_count", "received_count", "accepted_count", "runtime_gate_count"]:
            assert_equal(
                f"iwooos_projection.evidence_unlock_queue_items.{item_id}.{count_key}",
                item[count_key],
                0,
            )
        assert_false(
            f"iwooos_projection.evidence_unlock_queue_items.{item_id}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.evidence_unlock_queue_items.{item_id}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.evidence_unlock_queue_items.{item_id}.not_authorization",
            item["not_authorization"],
        )
    gitea_owner_queue_item = next(item for item in evidence_unlock_queue_items if item["item_id"] == "giteaOwner")
    assert_true(
        "iwooos_projection.evidence_unlock_queue_items.giteaOwner.request_draft_package_ready",
        gitea_owner_queue_item["request_draft_package_ready"],
    )
    assert_equal(
        "iwooos_projection.evidence_unlock_queue_items.giteaOwner.request_draft_template_count",
        gitea_owner_queue_item["request_draft_template_count"],
        5,
    )
    assert_equal(
        "iwooos_projection.evidence_unlock_queue_items.giteaOwner.request_draft_ready_count",
        gitea_owner_queue_item["request_draft_ready_count"],
        1,
    )
    github_target_queue_item = next(item for item in evidence_unlock_queue_items if item["item_id"] == "githubTarget")
    assert_equal(
        "iwooos_projection.evidence_unlock_queue_items.githubTarget.candidate_repo_count",
        github_target_queue_item["candidate_repo_count"],
        10,
    )
    assert_equal(
        "iwooos_projection.evidence_unlock_queue_items.githubTarget.github_primary_ready_count",
        github_target_queue_item["github_primary_ready_count"],
        0,
    )
    assert_false(
        "iwooos_projection.evidence_unlock_queue_items.githubTarget.source_control_mutation_authorized",
        github_target_queue_item["source_control_mutation_authorized"],
    )
    ref_truth_queue_item = next(item for item in evidence_unlock_queue_items if item["item_id"] == "refTruth")
    assert_false(
        "iwooos_projection.evidence_unlock_queue_items.refTruth.refs_sync_authorized",
        ref_truth_queue_item["refs_sync_authorized"],
    )
    workflow_secrets_queue_item = next(item for item in evidence_unlock_queue_items if item["item_id"] == "workflowSecrets")
    assert_false(
        "iwooos_projection.evidence_unlock_queue_items.workflowSecrets.secret_plaintext_collection_allowed",
        workflow_secrets_queue_item["secret_plaintext_collection_allowed"],
    )
    expected_s4_9_request_draft_package_item_ids = [
        "publicGap",
        "namespaceIdentity",
        "adjacentScope",
        "canonicalOwner",
        "legacyDisposition",
    ]
    s4_9_request_draft_package_items = iwooos_projection["s4_9_request_draft_package_items"]
    assert_equal(
        "iwooos_projection.s4_9_request_draft_package_items.ids",
        [item["item_id"] for item in s4_9_request_draft_package_items],
        expected_s4_9_request_draft_package_item_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_request_draft_package_items.display_order",
        [item["display_order"] for item in s4_9_request_draft_package_items],
        list(range(1, len(expected_s4_9_request_draft_package_item_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.s4_9_request_draft_package_items.source_template_ids",
        [item["source_template_id"] for item in s4_9_request_draft_package_items],
        expected_s4_9_owner_response_request_template_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_request_draft_package_items.template_labels",
        [item["template_label"] for item in s4_9_request_draft_package_items],
        ["D1", "D2", "D3", "D4", "D5"],
    )
    for item in s4_9_request_draft_package_items:
        assert_equal(
            f"iwooos_projection.s4_9_request_draft_package_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "first_screen_s4_9_request_draft_package",
        )
        assert_equal(
            f"iwooos_projection.s4_9_request_draft_package_items.{item['item_id']}.draft_status",
            item["draft_status"],
            "ready_not_sent",
        )
        for count_key in [
            "request_sent_count",
            "owner_response_received_count",
            "owner_response_accepted_count",
            "runtime_gate_count",
        ]:
            assert_equal(
                f"iwooos_projection.s4_9_request_draft_package_items.{item['item_id']}.{count_key}",
                item[count_key],
                0,
            )
        assert_false(
            f"iwooos_projection.s4_9_request_draft_package_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.s4_9_request_draft_package_items.{item['item_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.s4_9_request_draft_package_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    s4_9_request_draft_detail_rows = iwooos_projection["s4_9_request_draft_detail_rows"]
    assert_equal(
        "iwooos_projection.s4_9_request_draft_detail_rows.ids",
        [item["row_id"] for item in s4_9_request_draft_detail_rows],
        expected_s4_9_request_draft_package_item_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_request_draft_detail_rows.display_order",
        [item["display_order"] for item in s4_9_request_draft_detail_rows],
        list(range(1, len(expected_s4_9_request_draft_package_item_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.s4_9_request_draft_detail_rows.source_template_ids",
        [item["source_template_id"] for item in s4_9_request_draft_detail_rows],
        expected_s4_9_owner_response_request_template_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_request_draft_detail_rows.template_labels",
        [item["template_label"] for item in s4_9_request_draft_detail_rows],
        ["D1", "D2", "D3", "D4", "D5"],
    )
    for item in s4_9_request_draft_detail_rows:
        assert_equal(
            f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.display_mode",
            item["display_mode"],
            "first_screen_s4_9_request_draft_detail",
        )
        assert_equal(
            f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.draft_status",
            item["draft_status"],
            "ready_not_sent",
        )
        assert_equal(
            f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.required_field_count",
            item["required_field_count"],
            6,
        )
        assert_equal(
            f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.forbidden_action_count",
            item["forbidden_action_count"],
            10,
        )
        assert_true(
            f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.redacted_evidence_refs_only",
            item["redacted_evidence_refs_only"],
        )
        assert_false(
            f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.secret_plaintext_collection_allowed",
            item["secret_plaintext_collection_allowed"],
        )
        for count_key in [
            "request_sent_count",
            "owner_response_received_count",
            "owner_response_accepted_count",
            "runtime_gate_count",
        ]:
            assert_equal(
                f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.{count_key}",
                item[count_key],
                0,
            )
        assert_false(
            f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.s4_9_request_draft_detail_rows.{item['row_id']}.not_authorization",
            item["not_authorization"],
        )
    s4_9_owner_response_intake_lanes = iwooos_projection["s4_9_owner_response_intake_lanes"]
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_lanes.ids",
        [item["lane_id"] for item in s4_9_owner_response_intake_lanes],
        expected_s4_9_request_draft_package_item_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_lanes.display_order",
        [item["display_order"] for item in s4_9_owner_response_intake_lanes],
        list(range(1, len(expected_s4_9_request_draft_package_item_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_lanes.source_template_ids",
        [item["source_template_id"] for item in s4_9_owner_response_intake_lanes],
        expected_s4_9_owner_response_request_template_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_lanes.template_labels",
        [item["template_label"] for item in s4_9_owner_response_intake_lanes],
        ["D1", "D2", "D3", "D4", "D5"],
    )
    for item in s4_9_owner_response_intake_lanes:
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_intake_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "first_screen_s4_9_owner_response_intake",
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_intake_lanes.{item['lane_id']}.collection_status",
            item["collection_status"],
            "waiting_owner_response",
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_intake_lanes.{item['lane_id']}.request_status",
            item["request_status"],
            "request_ready_not_sent",
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_intake_lanes.{item['lane_id']}.latest_outcome_lane",
            item["latest_outcome_lane"],
            "keep_waiting_owner_response",
        )
        for count_key in [
            "received_response_count",
            "preflight_passed_count",
            "accepted_response_count",
            "rejected_response_count",
            "runtime_gate_count",
        ]:
            assert_equal(
                f"iwooos_projection.s4_9_owner_response_intake_lanes.{item['lane_id']}.{count_key}",
                item[count_key],
                0,
            )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_lanes.{item['lane_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.s4_9_owner_response_intake_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    s4_9_owner_response_intake_next_gates = iwooos_projection["s4_9_owner_response_intake_next_gates"]
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_next_gates.ids",
        [item["gate_id"] for item in s4_9_owner_response_intake_next_gates],
        ["redactedOwnerResponse", "preflightChecks", "humanAcceptance"],
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_next_gates.display_order",
        [item["display_order"] for item in s4_9_owner_response_intake_next_gates],
        [1, 2, 3],
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_next_gates.gate_labels",
        [item["gate_label"] for item in s4_9_owner_response_intake_next_gates],
        ["G1", "G2", "G3"],
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_next_gates.required_signals",
        [item["required_signal"] for item in s4_9_owner_response_intake_next_gates],
        [
            "redacted_owner_response_metadata_received",
            "six_preflight_checks_passed",
            "five_owner_response_lanes_accepted",
        ],
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_next_gates.current_states",
        [item["current_state"] for item in s4_9_owner_response_intake_next_gates],
        ["waiting_owner_response", "waiting_preflight", "waiting_human_acceptance"],
    )
    for item in s4_9_owner_response_intake_next_gates:
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_intake_next_gates.{item['gate_id']}.display_mode",
            item["display_mode"],
            "first_screen_s4_9_owner_response_intake_next_gate",
        )
        for count_key in [
            "received_response_count",
            "preflight_passed_count",
            "accepted_response_count",
            "runtime_gate_count",
        ]:
            assert_equal(
                f"iwooos_projection.s4_9_owner_response_intake_next_gates.{item['gate_id']}.{count_key}",
                item[count_key],
                0,
            )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_next_gates.{item['gate_id']}.headline_review_authorized",
            item["headline_review_authorized"],
        )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_next_gates.{item['gate_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_next_gates.{item['gate_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.s4_9_owner_response_intake_next_gates.{item['gate_id']}.not_authorization",
            item["not_authorization"],
        )
    s4_9_owner_response_intake_blocker_focus = iwooos_projection[
        "s4_9_owner_response_intake_blocker_focus"
    ]
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.focus_id",
        s4_9_owner_response_intake_blocker_focus["focus_id"],
        "currentBlocker",
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.display_mode",
        s4_9_owner_response_intake_blocker_focus["display_mode"],
        "first_screen_s4_9_owner_response_intake_blocker_focus",
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.current_gate",
        s4_9_owner_response_intake_blocker_focus["current_gate"],
        "G1",
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.current_gate_id",
        s4_9_owner_response_intake_blocker_focus["current_gate_id"],
        "redactedOwnerResponse",
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.blocker_state",
        s4_9_owner_response_intake_blocker_focus["blocker_state"],
        "waiting_redacted_owner_response",
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.completion_count",
        s4_9_owner_response_intake_blocker_focus["completion_count"],
        0,
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.gate_total",
        s4_9_owner_response_intake_blocker_focus["gate_total"],
        3,
    )
    for count_key in [
        "received_response_count",
        "preflight_passed_count",
        "accepted_response_count",
        "runtime_gate_count",
    ]:
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_intake_blocker_focus.{count_key}",
            s4_9_owner_response_intake_blocker_focus[count_key],
            0,
        )
    assert_false(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.headline_review_authorized",
        s4_9_owner_response_intake_blocker_focus["headline_review_authorized"],
    )
    assert_false(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.runtime_execution_authorized",
        s4_9_owner_response_intake_blocker_focus["runtime_execution_authorized"],
    )
    assert_false(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.action_buttons_allowed",
        s4_9_owner_response_intake_blocker_focus["action_buttons_allowed"],
    )
    assert_true(
        "iwooos_projection.s4_9_owner_response_intake_blocker_focus.not_authorization",
        s4_9_owner_response_intake_blocker_focus["not_authorization"],
    )
    s4_9_owner_response_intake_delivery_cards = iwooos_projection[
        "s4_9_owner_response_intake_delivery_cards"
    ]
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_delivery_cards.ids",
        [item["card_id"] for item in s4_9_owner_response_intake_delivery_cards],
        ["ownerDecision", "redactedEvidence", "reviewTrail"],
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_delivery_cards.display_order",
        [item["display_order"] for item in s4_9_owner_response_intake_delivery_cards],
        [1, 2, 3],
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_delivery_cards.required_evidence",
        [item["required_evidence"] for item in s4_9_owner_response_intake_delivery_cards],
        ["負責人角色、判定、範圍、理由與後續負責人", "脫敏證據參照", "預檢驗收紀錄"],
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_intake_delivery_cards.current_states",
        [item["current_state"] for item in s4_9_owner_response_intake_delivery_cards],
        [
            "waiting_owner_response",
            "waiting_redacted_evidence_pointer",
            "waiting_preflight_and_acceptance",
        ],
    )
    for item in s4_9_owner_response_intake_delivery_cards:
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_intake_delivery_cards.{item['card_id']}.display_mode",
            item["display_mode"],
            "first_screen_s4_9_owner_response_intake_delivery_card",
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_intake_delivery_cards.{item['card_id']}.completed_count",
            item["completed_count"],
            0,
        )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_delivery_cards.{item['card_id']}.raw_payload_allowed",
            item["raw_payload_allowed"],
        )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_delivery_cards.{item['card_id']}.secret_plaintext_allowed",
            item["secret_plaintext_allowed"],
        )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_delivery_cards.{item['card_id']}.headline_review_authorized",
            item["headline_review_authorized"],
        )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_delivery_cards.{item['card_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_false(
            f"iwooos_projection.s4_9_owner_response_intake_delivery_cards.{item['card_id']}.action_buttons_allowed",
            item["action_buttons_allowed"],
        )
        assert_true(
            f"iwooos_projection.s4_9_owner_response_intake_delivery_cards.{item['card_id']}.not_authorization",
            item["not_authorization"],
        )
    expected_s4_9_metadata_intake_field_ids = [
        "ownerRoleTeam",
        "decision",
        "decisionReason",
        "affectedScope",
        "redactedEvidenceRefs",
        "followupOwner",
    ]
    expected_s4_9_metadata_intake_source_fields = [
        "owner_role_or_team",
        "decision",
        "decision_reason",
        "affected_scope",
        "evidence_refs",
        "followup_owner",
    ]
    s4_9_owner_response_metadata_intake_fields = iwooos_projection[
        "s4_9_owner_response_metadata_intake_fields"
    ]
    assert_equal(
        "iwooos_projection.s4_9_owner_response_metadata_intake_fields.ids",
        [item["field_id"] for item in s4_9_owner_response_metadata_intake_fields],
        expected_s4_9_metadata_intake_field_ids,
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_metadata_intake_fields.display_order",
        [item["display_order"] for item in s4_9_owner_response_metadata_intake_fields],
        list(range(1, len(expected_s4_9_metadata_intake_field_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.s4_9_owner_response_metadata_intake_fields.source_required_fields",
        [item["source_required_field"] for item in s4_9_owner_response_metadata_intake_fields],
        expected_s4_9_metadata_intake_source_fields,
    )
    for item in s4_9_owner_response_metadata_intake_fields:
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_metadata_intake_fields.{item['field_id']}.display_mode",
            item["display_mode"],
            "first_screen_s4_9_owner_response_metadata_intake_field",
        )
        assert_equal(
            f"iwooos_projection.s4_9_owner_response_metadata_intake_fields.{item['field_id']}.field_status",
            item["field_status"],
            "waiting_owner_response_metadata",
        )
        assert_true(
            f"iwooos_projection.s4_9_owner_response_metadata_intake_fields.{item['field_id']}.required",
            item["required"],
        )
        for count_key in [
            "filled_count",
            "received_response_count",
            "accepted_response_count",
            "runtime_gate_count",
        ]:
            assert_equal(
                f"iwooos_projection.s4_9_owner_response_metadata_intake_fields.{item['field_id']}.{count_key}",
                item[count_key],
                0,
            )
        assert_true(
            f"iwooos_projection.s4_9_owner_response_metadata_intake_fields.{item['field_id']}.redacted_reference_required",
            item["redacted_reference_required"],
        )
        for false_key in [
            "raw_payload_allowed",
            "secret_plaintext_allowed",
            "runtime_execution_authorized",
            "action_buttons_allowed",
        ]:
            assert_false(
                f"iwooos_projection.s4_9_owner_response_metadata_intake_fields.{item['field_id']}.{false_key}",
                item[false_key],
            )
        assert_true(
            f"iwooos_projection.s4_9_owner_response_metadata_intake_fields.{item['field_id']}.not_authorization",
            item["not_authorization"],
        )
    for text in [
        'data-testid="iwooos-first-screen-depth-map-board"',
        'data-testid="iwooos-first-screen-depth-map-layers"',
        'data-testid="iwooos-first-screen-depth-map-flow"',
        'data-testid="iwooos-first-screen-depth-map-boundaries"',
        "IwoooSFirstScreenDepthMapBoard",
        "firstScreenDepthLayers",
        "firstScreenDepthBoundaries",
        "href: '#iwooos-decision-gate-visuals'",
        "href: '#iwooos-scope-evidence-visuals'",
    ]:
        assert_text_contains(
            "iwooos_page.first_screen_depth_map",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.focus_deck_before_first_screen_depth_map",
        iwooos_projection_page,
        "<IwoooSFocusDeckBoard />",
        "<IwoooSFirstScreenDepthMapBoard />",
    )
    assert_text_before(
        "iwooos_page.first_screen_depth_map_before_immediate_visual_mesh",
        iwooos_projection_page,
        "<IwoooSFirstScreenDepthMapBoard />",
        "<IwoooSImmediateVisualMeshBoard />",
    )
    for text in [
        "iwooos_first_screen_depth_map_visible_layer_count=4",
        "iwooos_first_screen_depth_map_advanced_group_count=2",
        "iwooos_first_screen_depth_map_ledger_group_count=4",
        "iwooos_first_screen_depth_map_runtime_gate_count=0",
        "iwooos_first_screen_depth_map_advanced_default_visible=false",
        "iwooos_first_screen_depth_map_scope_evidence_default_visible=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.first_screen_depth_map_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        'data-testid="iwooos-progress-evidence-rail-board"',
        'data-testid="iwooos-progress-evidence-rail-items"',
        'data-testid="iwooos-progress-evidence-rail-boundaries"',
        "IwoooSProgressEvidenceRailBoard",
        "progressEvidenceRailItems",
        "progressEvidenceRailBoundaries",
    ]:
        assert_text_contains(
            "iwooos_page.progress_evidence_rail",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.first_screen_depth_map_before_progress_evidence_rail",
        iwooos_projection_page,
        "<IwoooSFirstScreenDepthMapBoard />",
        "<IwoooSProgressEvidenceRailBoard />",
    )
    assert_text_before(
        "iwooos_page.progress_evidence_rail_before_immediate_visual_mesh",
        iwooos_projection_page,
        "<IwoooSProgressEvidenceRailBoard />",
        "<IwoooSImmediateVisualMeshBoard />",
    )
    for text in [
        "iwooos_progress_evidence_rail_owner_response_received_count=0",
        "iwooos_progress_evidence_rail_owner_response_accepted_count=0",
        "iwooos_progress_evidence_rail_redacted_evidence_count=0",
        "iwooos_progress_evidence_rail_review_acceptance_count=0",
        "iwooos_progress_evidence_rail_github_primary_ready_count=0",
        "iwooos_progress_evidence_rail_runtime_gate_count=0",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.progress_evidence_rail_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        'data-testid="iwooos-evidence-unlock-queue-board"',
        'data-testid="iwooos-evidence-unlock-queue-items"',
        'data-testid="iwooos-evidence-unlock-queue-boundaries"',
        "IwoooSEvidenceUnlockQueueBoard",
        "evidenceUnlockQueueItems",
        "evidenceUnlockQueueBoundaries",
    ]:
        assert_text_contains(
            "iwooos_page.evidence_unlock_queue",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.progress_evidence_rail_before_evidence_unlock_queue",
        iwooos_projection_page,
        "<IwoooSProgressEvidenceRailBoard />",
        "<IwoooSEvidenceUnlockQueueBoard />",
    )
    assert_text_before(
        "iwooos_page.evidence_unlock_queue_before_immediate_visual_mesh",
        iwooos_projection_page,
        "<IwoooSEvidenceUnlockQueueBoard />",
        "<IwoooSImmediateVisualMeshBoard />",
    )
    for text in [
        "iwooos_evidence_unlock_queue_item_count=4",
        "iwooos_evidence_unlock_queue_s4_9_request_draft_template_count=5",
        "iwooos_evidence_unlock_queue_s4_9_request_draft_ready_count=1",
        "iwooos_evidence_unlock_queue_request_sent_count=0",
        "iwooos_evidence_unlock_queue_received_count=0",
        "iwooos_evidence_unlock_queue_accepted_count=0",
        "iwooos_evidence_unlock_queue_github_primary_ready_count=0",
        "iwooos_evidence_unlock_queue_runtime_gate_count=0",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.evidence_unlock_queue_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        'data-testid="iwooos-s49-request-draft-package-board"',
        'data-testid="iwooos-s49-request-draft-package-items"',
        'data-testid="iwooos-s49-request-draft-package-boundaries"',
        "IwoooSS49RequestDraftPackageBoard",
        "s49RequestDraftPackageItems",
        "s49RequestDraftPackageBoundaries",
        "publicGap",
        "namespaceIdentity",
        "adjacentScope",
        "canonicalOwner",
        "legacyDisposition",
    ]:
        assert_text_contains(
            "iwooos_page.s49_request_draft_package",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.evidence_unlock_queue_before_s49_request_draft_package",
        iwooos_projection_page,
        "<IwoooSEvidenceUnlockQueueBoard />",
        "<IwoooSS49RequestDraftPackageBoard />",
    )
    assert_text_before(
        "iwooos_page.s49_request_draft_package_before_immediate_visual_mesh",
        iwooos_projection_page,
        "<IwoooSS49RequestDraftPackageBoard />",
        "<IwoooSImmediateVisualMeshBoard />",
    )
    for text in [
        "s4_9_owner_attestation_request_draft_frontstage_card_count=5",
        "s4_9_owner_attestation_request_draft_template_ready_count=5",
        "s4_9_owner_attestation_request_sent=false",
        "s4_9_owner_attestation_owner_response_received_count=0",
        "s4_9_owner_attestation_owner_response_accepted_count=0",
        "s4_9_owner_attestation_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.s49_request_draft_package_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        'data-testid="iwooos-s49-request-draft-detail-board"',
        'data-testid="iwooos-s49-request-draft-detail-items"',
        'data-testid="iwooos-s49-request-draft-detail-boundaries"',
        "IwoooSS49RequestDraftDetailBoard",
        "s49RequestDraftDetailItems",
        "s49RequestDraftDetailBoundaries",
        "s49RequestDraftDetail",
        "requiredCount",
        "forbiddenCount",
        "redactedRefs",
        "secret_plaintext_collection_allowed=false",
    ]:
        assert_text_contains(
            "iwooos_page.s49_request_draft_detail",
            iwooos_projection_page,
            text,
        )
    for text in [
        "publicGap",
        "namespaceIdentity",
        "adjacentScope",
        "canonicalOwner",
        "legacyDisposition",
    ]:
        assert_text_contains(
            "iwooos_page.s49_request_draft_detail_items",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.s49_request_draft_package_before_detail",
        iwooos_projection_page,
        "<IwoooSS49RequestDraftPackageBoard />",
        "<IwoooSS49RequestDraftDetailBoard />",
    )
    assert_text_before(
        "iwooos_page.s49_request_draft_detail_before_immediate_visual_mesh",
        iwooos_projection_page,
        "<IwoooSS49RequestDraftDetailBoard />",
        "<IwoooSImmediateVisualMeshBoard />",
    )
    for text in [
        "s4_9_owner_attestation_request_draft_detail_frontstage_row_count=5",
        "s4_9_owner_attestation_request_draft_detail_required_field_total=30",
        "s4_9_owner_attestation_request_draft_detail_forbidden_action_count=10",
        "s4_9_owner_attestation_request_sent=false",
        "s4_9_owner_attestation_owner_response_received_count=0",
        "s4_9_owner_attestation_owner_response_accepted_count=0",
        "s4_9_owner_attestation_runtime_gate_opened=false",
        "redacted_evidence_refs_only=true",
        "secret_plaintext_collection_allowed=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.s49_request_draft_detail_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        'data-testid="iwooos-s49-owner-response-intake-board"',
        'data-testid="iwooos-s49-owner-response-intake-metrics"',
        'data-testid="iwooos-s49-owner-response-intake-blocker-focus"',
        'data-testid="iwooos-s49-owner-response-intake-completion-rail"',
        'data-testid="iwooos-s49-owner-response-intake-delivery-cards"',
        "iwooos-s49-owner-response-intake-delivery-card-${item.key}",
        'data-testid="iwooos-s49-owner-response-metadata-intake-fields"',
        "iwooos-s49-owner-response-metadata-intake-field-${item.key}",
        'data-testid="iwooos-s49-owner-response-intake-next-gates"',
        "iwooos-s49-owner-response-intake-next-gate-${item.key}",
        'data-testid="iwooos-s49-owner-response-intake-lanes"',
        'data-testid="iwooos-s49-owner-response-intake-boundaries"',
        "IwoooSS49OwnerResponseIntakeBoard",
        "s49OwnerResponseIntakeLanes",
        "s49OwnerResponseIntakeNextGates",
        "s49OwnerResponseIntakeBlockerFocus",
        "s49OwnerResponseIntakeDeliveryItems",
        "s49OwnerResponseMetadataIntakeFields",
        "s49OwnerResponseIntakeBoundaries",
        "s49OwnerResponseIntake",
        "blockerFocus",
        "deliveryItems",
        "metadataFields",
        "metadataFieldsTitle",
        "ownerDecision",
        "redactedEvidence",
        "reviewTrail",
        "nextGatesTitle",
        "nextGates",
        "redactedOwnerResponse",
        "preflightChecks",
        "humanAcceptance",
        "ownerRoleTeam",
        "decisionReason",
        "affectedScope",
        "redactedEvidenceRefs",
        "followupOwner",
        "G1",
        "G2",
        "G3",
        "F1",
        "F2",
        "F3",
        "F4",
        "F5",
        "F6",
        "received",
        "preflight",
        "acceptance",
    ]:
        assert_text_contains(
            "iwooos_page.s49_owner_response_intake",
            iwooos_projection_page,
            text,
        )
    for text in [
        "publicGap",
        "namespaceIdentity",
        "adjacentScope",
        "canonicalOwner",
        "legacyDisposition",
    ]:
        assert_text_contains(
            "iwooos_page.s49_owner_response_intake_lanes",
            iwooos_projection_page,
            text,
        )
    s49_owner_response_intake_strings = "\n".join(
        collect_string_values(web_messages_zh["iwooos"]["s49OwnerResponseIntake"])
    )
    for forbidden in [
        "read-only",
        "runtime",
        "headline review",
        "owner role",
        "owner response metadata",
        "evidence refs",
        "canonical source",
        "visibility review owner",
    ]:
        assert_text_not_contains(
            "web_messages.zh-TW.iwooos.s49OwnerResponseIntake.forbidden_english_terms",
            s49_owner_response_intake_strings,
            forbidden,
        )
    assert_text_before(
        "iwooos_page.s49_request_draft_detail_before_owner_response_intake",
        iwooos_projection_page,
        "<IwoooSS49RequestDraftDetailBoard />",
        "<IwoooSS49OwnerResponseIntakeBoard />",
    )
    assert_text_before(
        "iwooos_page.s49_owner_response_intake_before_immediate_visual_mesh",
        iwooos_projection_page,
        "<IwoooSS49OwnerResponseIntakeBoard />",
        "<IwoooSImmediateVisualMeshBoard />",
    )
    for text in [
        "s4_9_owner_response_intake_frontstage_lane_count=5",
        "s4_9_owner_response_intake_next_gate_count=3",
        "s4_9_owner_response_intake_next_gate_passed_count=0",
        "s4_9_owner_response_intake_blocker_focus_count=1",
        "s4_9_owner_response_intake_current_blocker_gate=G1",
        "s4_9_owner_response_intake_next_gate_completion_count=0",
        "s4_9_owner_response_intake_next_gate_total=3",
        "s4_9_owner_response_intake_delivery_card_count=3",
        "s4_9_owner_response_intake_delivery_card_completed_count=0",
        "s4_9_owner_response_intake_delivery_raw_payload_allowed=false",
        "s4_9_owner_response_intake_received_count=0",
        "s4_9_owner_response_intake_preflight_passed_count=0",
        "s4_9_owner_response_intake_accepted_count=0",
        "s4_9_owner_response_intake_rejected_count=0",
        "s4_9_owner_response_intake_runtime_gate_count=0",
        "s4_9_owner_response_intake_source_bound=true",
        "s4_9_owner_response_intake_handoff_queue_count=5",
        "s4_9_owner_response_intake_handoff_queue_ready_count=0",
        "s4_9_owner_response_intake_handoff_queue_received_count=0",
        "s4_9_owner_response_intake_handoff_queue_accepted_count=0",
        "s4_9_owner_response_intake_handoff_queue_runtime_gate_count=0",
        "s4_9_owner_response_intake_handoff_queue_raw_payload_allowed=false",
        "s4_9_owner_response_intake_handoff_queue_action_buttons_allowed=false",
        "s4_9_owner_response_metadata_intake_field_count=6",
        "s4_9_owner_response_metadata_intake_required_count=6",
        "s4_9_owner_response_metadata_intake_filled_count=0",
        "s4_9_owner_response_metadata_intake_received_count=0",
        "s4_9_owner_response_metadata_intake_accepted_count=0",
        "s4_9_owner_response_metadata_intake_runtime_gate_count=0",
        "s4_9_owner_response_metadata_intake_redacted_ref_required=true",
        "s4_9_owner_response_metadata_intake_raw_payload_allowed=false",
        "s4_9_owner_response_metadata_intake_secret_plaintext_allowed=false",
        "s4_9_owner_response_metadata_intake_action_buttons_allowed=false",
        "s4_9_owner_response_intake_runtime_gate_opened=false",
        "s4_9_owner_response_intake_action_buttons_allowed=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.s49_owner_response_intake_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.focus_deck_testid",
        iwooos_projection_page,
        'data-testid="iwooos-focus-deck-board"',
    )
    assert_text_contains(
        "iwooos_page.focus_deck_component",
        iwooos_projection_page,
        "IwoooSFocusDeckBoard",
    )
    assert_text_before(
        "iwooos_page.focus_deck_before_command_map",
        iwooos_projection_page,
        "<IwoooSFocusDeckBoard />",
        "<IwoooSCommandMapBoard />",
    )
    assert_text_contains(
        "iwooos_page.focus_deck_boundaries",
        iwooos_projection_page,
        'data-testid="iwooos-focus-deck-boundaries"',
    )
    for text in [
        "href: '#iwooos-decision-gate-visuals'",
        "href: '#iwooos-scope-evidence-visuals'",
        "id=\"iwooos-decision-gate-visuals\"",
        "id=\"iwooos-scope-evidence-visuals\"",
        "iwooos-command-map-source-control",
        "iwooos_focus_deck_first_layer=true",
        "iwooos_focus_deck_item_count=5",
        "iwooos_focus_deck_anchor_navigation_allowed=true",
        "iwooos_focus_deck_execution_action_buttons_allowed=false",
        "iwooos_focus_deck_runtime_gate_count=0",
        "iwooos_focus_deck_above_command_map=true",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.focus_deck_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        'data-testid="iwooos-immediate-visual-mesh-board"',
        'data-testid="iwooos-immediate-visual-mesh-canvas"',
        'data-testid="iwooos-immediate-visual-mesh-boundaries"',
        "IwoooSImmediateVisualMeshBoard",
        "iwooosImmediateVisualMeshNodes",
        "iwooosImmediateVisualMeshStats",
        "iwooosImmediateVisualMeshBoundaries",
        "conic-gradient",
    ]:
        assert_text_contains(
            "iwooos_page.immediate_visual_mesh",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.focus_deck_before_immediate_visual_mesh",
        iwooos_projection_page,
        "<IwoooSFocusDeckBoard />",
        "<IwoooSImmediateVisualMeshBoard />",
    )
    assert_text_before(
        "iwooos_page.immediate_visual_mesh_before_command_map",
        iwooos_projection_page,
        "<IwoooSImmediateVisualMeshBoard />",
        "<IwoooSCommandMapBoard />",
    )
    for text in [
        "iwooos_immediate_visual_mesh_first_layer=true",
        "iwooos_immediate_visual_mesh_node_count=7",
        "iwooos_immediate_visual_mesh_link_count=6",
        "iwooos_immediate_visual_mesh_above_command_map=true",
        "iwooos_immediate_visual_mesh_anchor_navigation_allowed=false",
        "iwooos_immediate_visual_mesh_execution_action_buttons_allowed=false",
        "iwooos_immediate_visual_mesh_runtime_gate_count=0",
        "iwooos_immediate_visual_mesh_scan_authorized=false",
        "iwooos_immediate_visual_mesh_host_change_authorized=false",
        "iwooos_immediate_visual_mesh_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.immediate_visual_mesh_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        'data-testid="iwooos-topology-atlas-board"',
        'data-testid="iwooos-topology-atlas-canvas"',
        'data-testid="iwooos-topology-atlas-active-panel"',
        'data-testid="iwooos-topology-atlas-path-explorer"',
        'data-testid="iwooos-topology-atlas-path-explorer-selector"',
        'data-testid="iwooos-topology-atlas-path-explorer-sequence"',
        'data-testid="iwooos-topology-atlas-path-explorer-summary"',
        'data-testid="iwooos-topology-atlas-intelligence-deck"',
        'data-testid="iwooos-topology-atlas-intelligence-selector"',
        'data-testid="iwooos-topology-atlas-intelligence-trail"',
        'data-testid="iwooos-topology-atlas-blast-rings"',
        'data-testid="iwooos-topology-atlas-node-drilldown"',
        'data-testid="iwooos-topology-atlas-node-drilldown-metrics"',
        'data-testid="iwooos-topology-atlas-node-drilldown-selector"',
        'data-testid="iwooos-topology-atlas-technical-charts"',
        'data-testid="iwooos-topology-atlas-boundaries"',
        "IwoooSTopologyAtlasBoard",
        "IwoooSTopologyAtlasMode",
        "IwoooSTopologyPathKey",
        "IwoooSTopologyInsightKey",
        "IwoooSTopologyNodeKey",
        "IwoooSTopologyDrilldownNode",
        "IwoooSTopologyPathExplorerPath",
        "IwoooSTopologyInsightItem",
        "iwooosTopologyAtlasLenses",
        "iwooosTopologyAtlasNodes",
        "iwooosTopologyDrilldownNodes",
        "iwooosTopologyPathExplorerPaths",
        "iwooosTopologyInsightDeck",
        "iwooosTopologyAtlasLayers",
        "iwooosTopologyAtlasCharts",
        "iwooosTopologyAtlasBoundaries",
        "iwooos-topology-grid",
    ]:
        assert_text_contains(
            "iwooos_page.topology_atlas",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.immediate_visual_mesh_before_topology_atlas",
        iwooos_projection_page,
        "<IwoooSImmediateVisualMeshBoard />",
        "<IwoooSTopologyAtlasBoard />",
    )
    assert_text_before(
        "iwooos_page.topology_atlas_before_gate_radar",
        iwooos_projection_page,
        "<IwoooSTopologyAtlasBoard />",
        "<IwoooSGateRadarBoard />",
    )
    assert_text_before(
        "iwooos_page.topology_atlas_before_command_map",
        iwooos_projection_page,
        "<IwoooSTopologyAtlasBoard />",
        "<IwoooSCommandMapBoard />",
    )
    for text in [
        "iwooos_topology_atlas_first_layer=true",
        "iwooos_topology_atlas_lens_count=4",
        "iwooos_topology_atlas_node_count=7",
        "iwooos_topology_drilldown_node_count=7",
        "iwooos_topology_drilldown_default_node=productSurface",
        "iwooos_topology_drilldown_interactive_node_allowed=true",
        "iwooos_topology_path_explorer_path_count=4",
        "iwooos_topology_path_explorer_default_path=externalToGate",
        "iwooos_topology_path_explorer_interactive_path_allowed=true",
        "iwooos_topology_intelligence_deck_count=4",
        "iwooos_topology_intelligence_default_item=assetContext",
        "iwooos_topology_intelligence_interactive_item_allowed=true",
        "iwooos_topology_atlas_layer_count=5",
        "iwooos_topology_atlas_technical_chart_count=3",
        "iwooos_topology_atlas_interactive_lens_allowed=true",
        "iwooos_topology_atlas_execution_action_buttons_allowed=false",
        "iwooos_topology_drilldown_execution_action_buttons_allowed=false",
        "iwooos_topology_path_explorer_execution_action_buttons_allowed=false",
        "iwooos_topology_intelligence_execution_action_buttons_allowed=false",
        "iwooos_topology_atlas_runtime_gate_count=0",
        "iwooos_topology_drilldown_runtime_gate_count=0",
        "iwooos_topology_path_explorer_runtime_gate_count=0",
        "iwooos_topology_intelligence_runtime_gate_count=0",
        "iwooos_topology_atlas_scan_authorized=false",
        "iwooos_topology_atlas_host_change_authorized=false",
        "iwooos_topology_atlas_source_control_mutation_authorized=false",
        "iwooos_topology_drilldown_scan_authorized=false",
        "iwooos_topology_drilldown_host_change_authorized=false",
        "iwooos_topology_drilldown_source_control_mutation_authorized=false",
        "iwooos_topology_path_explorer_scan_authorized=false",
        "iwooos_topology_path_explorer_host_change_authorized=false",
        "iwooos_topology_path_explorer_source_control_mutation_authorized=false",
        "iwooos_topology_intelligence_scan_authorized=false",
        "iwooos_topology_intelligence_host_change_authorized=false",
        "iwooos_topology_intelligence_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.topology_atlas_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        'data-testid="iwooos-decision-runway-board"',
        'data-testid="iwooos-decision-runway-progress-rail"',
        'data-testid="iwooos-decision-runway-selector"',
        'data-testid="iwooos-decision-runway-active-panel"',
        'data-testid="iwooos-decision-runway-dependency-grid"',
        'data-testid="iwooos-decision-runway-boundary-strip"',
        'data-testid="iwooos-decision-runway-boundaries"',
        "IwoooSDecisionRunwayBoard",
        "IwoooSDecisionRunwayStepKey",
        "IwoooSDecisionRunwayStep",
        "IwoooSDecisionRunwayDependency",
        "IwoooSDecisionRunwayBoundarySignal",
        "iwooosDecisionRunwaySteps",
        "iwooosDecisionRunwayDependencies",
        "iwooosDecisionRunwayBoundarySignals",
        "iwooosDecisionRunwayBoundaries",
        "iwooos-decision-runway-grid",
    ]:
        assert_text_contains(
            "iwooos_page.decision_runway",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.topology_atlas_before_decision_runway",
        iwooos_projection_page,
        "<IwoooSTopologyAtlasBoard />",
        "<IwoooSDecisionRunwayBoard />",
    )
    assert_text_before(
        "iwooos_page.decision_runway_before_gate_radar",
        iwooos_projection_page,
        "<IwoooSDecisionRunwayBoard />",
        "<IwoooSGateRadarBoard />",
    )
    assert_text_before(
        "iwooos_page.decision_runway_before_command_map",
        iwooos_projection_page,
        "<IwoooSDecisionRunwayBoard />",
        "<IwoooSCommandMapBoard />",
    )
    for text in [
        "iwooos_decision_runway_first_layer=true",
        "iwooos_decision_runway_step_count=5",
        "iwooos_decision_runway_default_step=ownerEvidence",
        "iwooos_decision_runway_dependency_count=7",
        "iwooos_decision_runway_boundary_signal_count=4",
        "iwooos_decision_runway_above_gate_radar=true",
        "iwooos_decision_runway_interactive_step_allowed=true",
        "iwooos_decision_runway_execution_action_buttons_allowed=false",
        "iwooos_decision_runway_runtime_gate_count=0",
        "iwooos_decision_runway_owner_response_received_count=0",
        "iwooos_decision_runway_owner_response_accepted_count=0",
        "iwooos_decision_runway_scan_authorized=false",
        "iwooos_decision_runway_host_change_authorized=false",
        "iwooos_decision_runway_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.decision_runway_boundary",
            iwooos_projection_page,
            text,
        )
    for text in [
        'data-testid="iwooos-gate-radar-board"',
        'data-testid="iwooos-gate-radar-canvas"',
        'data-testid="iwooos-gate-radar-active-panel"',
        'data-testid="iwooos-gate-radar-boundaries"',
        "IwoooSGateRadarBoard",
        "IwoooSGateRadarMode",
        "iwooosGateRadarLanes",
        "iwooosGateRadarSummary",
        "iwooosGateRadarBoundaries",
        "conic-gradient",
    ]:
        assert_text_contains(
            "iwooos_page.gate_radar",
            iwooos_projection_page,
            text,
        )
    assert_text_before(
        "iwooos_page.immediate_visual_mesh_before_gate_radar",
        iwooos_projection_page,
        "<IwoooSImmediateVisualMeshBoard />",
        "<IwoooSGateRadarBoard />",
    )
    assert_text_before(
        "iwooos_page.gate_radar_before_command_map",
        iwooos_projection_page,
        "<IwoooSGateRadarBoard />",
        "<IwoooSCommandMapBoard />",
    )
    for text in [
        "iwooos_gate_radar_first_layer=true",
        "iwooos_gate_radar_lane_count=4",
        "iwooos_gate_radar_default_lane=visible",
        "iwooos_gate_radar_above_command_map=true",
        "iwooos_gate_radar_interactive_lens_allowed=true",
        "iwooos_gate_radar_execution_action_buttons_allowed=false",
        "iwooos_gate_radar_runtime_gate_count=0",
        "iwooos_gate_radar_scan_authorized=false",
        "iwooos_gate_radar_host_change_authorized=false",
        "iwooos_gate_radar_source_control_mutation_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.gate_radar_boundary",
            iwooos_projection_page,
            text,
        )
    assert_text_contains(
        "iwooos_page.command_map_testid",
        iwooos_projection_page,
        'data-testid="iwooos-command-map-board"',
    )
    assert_text_contains(
        "iwooos_page.command_map_component",
        iwooos_projection_page,
        "IwoooSCommandMapBoard",
    )
    assert_text_before(
        "iwooos_page.command_map_before_first_unlock_path",
        iwooos_projection_page,
        "<IwoooSCommandMapBoard />",
        "<IwoooSFirstProgressUnlockPathBoard />",
    )
    assert_text_before(
        "iwooos_page.command_map_before_visual_dashboard",
        iwooos_projection_page,
        "<IwoooSCommandMapBoard />",
        "<IwoooSVisualCommandDashboard />",
    )
    assert_text_contains(
        "iwooos_page.command_map_boundaries",
        iwooos_projection_page,
        'data-testid="iwooos-command-map-boundaries"',
    )
    for text in [
        "iwooos_command_map_first_layer=true",
        "iwooos_command_map_mode_count=6",
        "iwooos_command_map_default_mode=unlock",
        "iwooos_command_map_above_first_progress_unlock_path=true",
        "iwooos_command_map_navigation_controls_allowed=true",
        "iwooos_command_map_execution_action_buttons_allowed=false",
        "iwooos_command_map_runtime_gate_count=0",
        "iwooos_command_map_kali_execute_authorized=false",
        "iwooos_command_map_host_mutation_authorized=false",
        "iwooos_command_map_source_control_mutation_authorized=false",
        "iwooos_command_map_github_primary_switch_authorized=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "not_authorization=true",
    ]:
        assert_text_contains(
            "iwooos_page.command_map_boundary",
            iwooos_projection_page,
            text,
        )
    expected_command_map_item_ids = [
        "unlock",
        "scope",
        "hosts",
        "sourceControl",
        "awooop",
        "boundary",
    ]
    command_map_items = iwooos_projection["command_map_items"]
    assert_equal(
        "iwooos_projection.command_map_items.ids",
        [item["item_id"] for item in command_map_items],
        expected_command_map_item_ids,
    )
    assert_equal(
        "iwooos_projection.command_map_items.display_order",
        [item["display_order"] for item in command_map_items],
        list(range(1, len(expected_command_map_item_ids) + 1)),
    )
    for item in command_map_items:
        assert_equal(
            f"iwooos_projection.command_map_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "first_layer_command_map",
        )
        assert_true(
            f"iwooos_projection.command_map_items.{item['item_id']}.navigation_control_allowed",
            item["navigation_control_allowed"],
        )
        assert_false(
            f"iwooos_projection.command_map_items.{item['item_id']}.execution_action_button_allowed",
            item["execution_action_button_allowed"],
        )
        assert_false(
            f"iwooos_projection.command_map_items.{item['item_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.command_map_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.command_map_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    source_control_item = next(item for item in command_map_items if item["item_id"] == "sourceControl")
    assert_false(
        "iwooos_projection.command_map_items.sourceControl.source_control_mutation_authorized",
        source_control_item["source_control_mutation_authorized"],
    )
    assert_false(
        "iwooos_projection.command_map_items.sourceControl.github_primary_switch_authorized",
        source_control_item["github_primary_switch_authorized"],
    )
    boundary_item = next(item for item in command_map_items if item["item_id"] == "boundary")
    assert_false(
        "iwooos_projection.command_map_items.boundary.kali_execute_authorized",
        boundary_item["kali_execute_authorized"],
    )
    assert_false(
        "iwooos_projection.command_map_items.boundary.host_mutation_authorized",
        boundary_item["host_mutation_authorized"],
    )
    expected_focus_deck_item_ids = [
        "workMap",
        "unlockPath",
        "productScope",
        "hostTools",
        "sourceControl",
    ]
    focus_deck_items = iwooos_projection["focus_deck_items"]
    assert_equal(
        "iwooos_projection.focus_deck_items.ids",
        [item["item_id"] for item in focus_deck_items],
        expected_focus_deck_item_ids,
    )
    assert_equal(
        "iwooos_projection.focus_deck_items.display_order",
        [item["display_order"] for item in focus_deck_items],
        list(range(1, len(expected_focus_deck_item_ids) + 1)),
    )
    for item in focus_deck_items:
        assert_equal(
            f"iwooos_projection.focus_deck_items.{item['item_id']}.display_mode",
            item["display_mode"],
            "first_layer_focus_deck",
        )
        assert_true(
            f"iwooos_projection.focus_deck_items.{item['item_id']}.anchor_navigation_allowed",
            item["anchor_navigation_allowed"],
        )
        assert_false(
            f"iwooos_projection.focus_deck_items.{item['item_id']}.execution_action_button_allowed",
            item["execution_action_button_allowed"],
        )
        assert_false(
            f"iwooos_projection.focus_deck_items.{item['item_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.focus_deck_items.{item['item_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.focus_deck_items.{item['item_id']}.not_authorization",
            item["not_authorization"],
        )
    source_control_focus = next(item for item in focus_deck_items if item["item_id"] == "sourceControl")
    assert_false(
        "iwooos_projection.focus_deck_items.sourceControl.source_control_mutation_authorized",
        source_control_focus["source_control_mutation_authorized"],
    )
    assert_false(
        "iwooos_projection.focus_deck_items.sourceControl.github_primary_switch_authorized",
        source_control_focus["github_primary_switch_authorized"],
    )
    expected_immediate_visual_mesh_node_ids = [
        "core",
        "products",
        "hosts",
        "sourceControl",
        "monitoring",
        "awooop",
        "runtimeGate",
    ]
    immediate_visual_mesh_nodes = iwooos_projection["immediate_visual_mesh_nodes"]
    assert_equal(
        "iwooos_projection.immediate_visual_mesh_nodes.ids",
        [item["node_id"] for item in immediate_visual_mesh_nodes],
        expected_immediate_visual_mesh_node_ids,
    )
    assert_equal(
        "iwooos_projection.immediate_visual_mesh_nodes.display_order",
        [item["display_order"] for item in immediate_visual_mesh_nodes],
        list(range(1, len(expected_immediate_visual_mesh_node_ids) + 1)),
    )
    for item in immediate_visual_mesh_nodes:
        assert_equal(
            f"iwooos_projection.immediate_visual_mesh_nodes.{item['node_id']}.display_mode",
            item["display_mode"],
            "first_screen_visual_mesh",
        )
        assert_true(
            f"iwooos_projection.immediate_visual_mesh_nodes.{item['node_id']}.read_only",
            item["read_only"],
        )
        assert_false(
            f"iwooos_projection.immediate_visual_mesh_nodes.{item['node_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.immediate_visual_mesh_nodes.{item['node_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.immediate_visual_mesh_nodes.{item['node_id']}.not_authorization",
            item["not_authorization"],
        )
    hosts_mesh_node = next(item for item in immediate_visual_mesh_nodes if item["node_id"] == "hosts")
    assert_false(
        "iwooos_projection.immediate_visual_mesh_nodes.hosts.host_change_authorized",
        hosts_mesh_node["host_change_authorized"],
    )
    source_control_mesh_node = next(item for item in immediate_visual_mesh_nodes if item["node_id"] == "sourceControl")
    assert_false(
        "iwooos_projection.immediate_visual_mesh_nodes.sourceControl.source_control_mutation_authorized",
        source_control_mesh_node["source_control_mutation_authorized"],
    )
    runtime_gate_mesh_node = next(item for item in immediate_visual_mesh_nodes if item["node_id"] == "runtimeGate")
    assert_false(
        "iwooos_projection.immediate_visual_mesh_nodes.runtimeGate.scan_authorized",
        runtime_gate_mesh_node["scan_authorized"],
    )
    expected_topology_atlas_lens_ids = [
        "architecture",
        "topology",
        "attackSurface",
        "evidenceFlow",
    ]
    topology_atlas_lenses = iwooos_projection["topology_atlas_lenses"]
    assert_equal(
        "iwooos_projection.topology_atlas_lenses.ids",
        [item["lens_id"] for item in topology_atlas_lenses],
        expected_topology_atlas_lens_ids,
    )
    assert_equal(
        "iwooos_projection.topology_atlas_lenses.display_order",
        [item["display_order"] for item in topology_atlas_lenses],
        list(range(1, len(expected_topology_atlas_lens_ids) + 1)),
    )
    for item in topology_atlas_lenses:
        assert_equal(
            f"iwooos_projection.topology_atlas_lenses.{item['lens_id']}.display_mode",
            item["display_mode"],
            "first_screen_professional_topology_atlas",
        )
        assert_true(
            f"iwooos_projection.topology_atlas_lenses.{item['lens_id']}.interactive_lens_allowed",
            item["interactive_lens_allowed"],
        )
        assert_false(
            f"iwooos_projection.topology_atlas_lenses.{item['lens_id']}.execution_action_button_allowed",
            item["execution_action_button_allowed"],
        )
        assert_false(
            f"iwooos_projection.topology_atlas_lenses.{item['lens_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.topology_atlas_lenses.{item['lens_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.topology_atlas_lenses.{item['lens_id']}.not_authorization",
            item["not_authorization"],
        )
    topology_lens = next(item for item in topology_atlas_lenses if item["lens_id"] == "topology")
    for flag in ["scan_authorized", "host_change_authorized"]:
        assert_false(
            f"iwooos_projection.topology_atlas_lenses.topology.{flag}",
            topology_lens[flag],
        )
    attack_surface_lens = next(item for item in topology_atlas_lenses if item["lens_id"] == "attackSurface")
    for flag in ["source_control_mutation_authorized", "github_primary_switch_authorized", "blast_radius_verified"]:
        assert_false(
            f"iwooos_projection.topology_atlas_lenses.attackSurface.{flag}",
            attack_surface_lens[flag],
        )
    evidence_flow_lens = next(item for item in topology_atlas_lenses if item["lens_id"] == "evidenceFlow")
    for count_key in ["owner_response_received_count", "reviewer_accepted_count"]:
        assert_equal(
            f"iwooos_projection.topology_atlas_lenses.evidenceFlow.{count_key}",
            evidence_flow_lens[count_key],
            0,
        )
    expected_topology_atlas_node_ids = [
        "productSurface",
        "sourceControl",
        "kali",
        "devHosts",
        "monitoring",
        "awooopTruth",
        "runtimeGate",
    ]
    topology_atlas_nodes = iwooos_projection["topology_atlas_nodes"]
    assert_equal(
        "iwooos_projection.topology_atlas_nodes.ids",
        [item["node_id"] for item in topology_atlas_nodes],
        expected_topology_atlas_node_ids,
    )
    assert_equal(
        "iwooos_projection.topology_atlas_nodes.display_order",
        [item["display_order"] for item in topology_atlas_nodes],
        list(range(1, len(expected_topology_atlas_node_ids) + 1)),
    )
    for item in topology_atlas_nodes:
        assert_true(
            f"iwooos_projection.topology_atlas_nodes.{item['node_id']}.read_only",
            item["read_only"],
        )
        assert_false(
            f"iwooos_projection.topology_atlas_nodes.{item['node_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.topology_atlas_nodes.{item['node_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.topology_atlas_nodes.{item['node_id']}.not_authorization",
            item["not_authorization"],
        )
    for node_id in ["kali", "devHosts"]:
        node = next(item for item in topology_atlas_nodes if item["node_id"] == node_id)
        assert_false(
            f"iwooos_projection.topology_atlas_nodes.{node_id}.scan_authorized",
            node["scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_atlas_nodes.{node_id}.host_change_authorized",
            node["host_change_authorized"],
        )
    source_control_topology_node = next(item for item in topology_atlas_nodes if item["node_id"] == "sourceControl")
    assert_false(
        "iwooos_projection.topology_atlas_nodes.sourceControl.source_control_mutation_authorized",
        source_control_topology_node["source_control_mutation_authorized"],
    )
    expected_topology_atlas_chart_ids = [
        "contextDepth",
        "blastRadius",
        "evidenceFreshness",
    ]
    topology_atlas_charts = iwooos_projection["topology_atlas_technical_charts"]
    assert_equal(
        "iwooos_projection.topology_atlas_technical_charts.ids",
        [item["chart_id"] for item in topology_atlas_charts],
        expected_topology_atlas_chart_ids,
    )
    assert_equal(
        "iwooos_projection.topology_atlas_technical_charts.display_order",
        [item["display_order"] for item in topology_atlas_charts],
        list(range(1, len(expected_topology_atlas_chart_ids) + 1)),
    )
    for item in topology_atlas_charts:
        assert_equal(
            f"iwooos_projection.topology_atlas_technical_charts.{item['chart_id']}.display_mode",
            item["display_mode"],
            "first_screen_professional_topology_atlas",
        )
        assert_false(
            f"iwooos_projection.topology_atlas_technical_charts.{item['chart_id']}.runtime_delta",
            item["runtime_delta"],
        )
        assert_true(
            f"iwooos_projection.topology_atlas_technical_charts.{item['chart_id']}.not_authorization",
            item["not_authorization"],
        )
    blast_radius_chart = next(item for item in topology_atlas_charts if item["chart_id"] == "blastRadius")
    assert_false(
        "iwooos_projection.topology_atlas_technical_charts.blastRadius.blast_radius_verified",
        blast_radius_chart["blast_radius_verified"],
    )
    expected_topology_drilldown_node_ids = [
        "productSurface",
        "sourceControl",
        "kali",
        "devHosts",
        "monitoring",
        "awooopTruth",
        "runtimeGate",
    ]
    topology_drilldown_nodes = iwooos_projection["topology_drilldown_nodes"]
    assert_equal(
        "iwooos_projection.topology_drilldown_nodes.ids",
        [item["node_id"] for item in topology_drilldown_nodes],
        expected_topology_drilldown_node_ids,
    )
    assert_equal(
        "iwooos_projection.topology_drilldown_nodes.display_order",
        [item["display_order"] for item in topology_drilldown_nodes],
        list(range(1, len(expected_topology_drilldown_node_ids) + 1)),
    )
    for item in topology_drilldown_nodes:
        assert_true(
            f"iwooos_projection.topology_drilldown_nodes.{item['node_id']}.interactive_node_allowed",
            item["interactive_node_allowed"],
        )
        assert_false(
            f"iwooos_projection.topology_drilldown_nodes.{item['node_id']}.execution_action_button_allowed",
            item["execution_action_button_allowed"],
        )
        assert_false(
            f"iwooos_projection.topology_drilldown_nodes.{item['node_id']}.scan_authorized",
            item["scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_drilldown_nodes.{item['node_id']}.host_change_authorized",
            item["host_change_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_drilldown_nodes.{item['node_id']}.source_control_mutation_authorized",
            item["source_control_mutation_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_drilldown_nodes.{item['node_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.topology_drilldown_nodes.{item['node_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.topology_drilldown_nodes.{item['node_id']}.not_authorization",
            item["not_authorization"],
        )
    expected_topology_path_explorer_path_ids = [
        "externalToGate",
        "sourceToHost",
        "kaliToDev",
        "evidenceToGate",
    ]
    expected_topology_path_explorer_sequences = {
        "externalToGate": ["productSurface", "sourceControl", "monitoring", "awooopTruth", "runtimeGate"],
        "sourceToHost": ["sourceControl", "kali", "devHosts", "runtimeGate"],
        "kaliToDev": ["kali", "devHosts", "runtimeGate"],
        "evidenceToGate": ["monitoring", "awooopTruth", "runtimeGate"],
    }
    topology_path_explorer_paths = iwooos_projection["topology_path_explorer_paths"]
    assert_equal(
        "iwooos_projection.topology_path_explorer_paths.ids",
        [item["path_id"] for item in topology_path_explorer_paths],
        expected_topology_path_explorer_path_ids,
    )
    assert_equal(
        "iwooos_projection.topology_path_explorer_paths.display_order",
        [item["display_order"] for item in topology_path_explorer_paths],
        list(range(1, len(expected_topology_path_explorer_path_ids) + 1)),
    )
    for item in topology_path_explorer_paths:
        path_id = item["path_id"]
        assert_equal(
            f"iwooos_projection.topology_path_explorer_paths.{path_id}.node_sequence",
            item["node_sequence"],
            expected_topology_path_explorer_sequences[path_id],
        )
        assert_true(
            f"iwooos_projection.topology_path_explorer_paths.{path_id}.interactive_path_allowed",
            item["interactive_path_allowed"],
        )
        assert_false(
            f"iwooos_projection.topology_path_explorer_paths.{path_id}.execution_action_button_allowed",
            item["execution_action_button_allowed"],
        )
        assert_false(
            f"iwooos_projection.topology_path_explorer_paths.{path_id}.scan_authorized",
            item["scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_path_explorer_paths.{path_id}.host_change_authorized",
            item["host_change_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_path_explorer_paths.{path_id}.source_control_mutation_authorized",
            item["source_control_mutation_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_path_explorer_paths.{path_id}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.topology_path_explorer_paths.{path_id}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.topology_path_explorer_paths.{path_id}.not_authorization",
            item["not_authorization"],
        )
    expected_topology_intelligence_deck_ids = [
        "assetContext",
        "attackPath",
        "blastRadius",
        "evidenceTimeline",
    ]
    expected_topology_intelligence_sequences = {
        "assetContext": ["productSurface", "sourceControl", "monitoring"],
        "attackPath": ["sourceControl", "kali", "devHosts", "runtimeGate"],
        "blastRadius": ["kali", "devHosts", "runtimeGate"],
        "evidenceTimeline": ["monitoring", "awooopTruth", "runtimeGate"],
    }
    topology_intelligence_deck = iwooos_projection["topology_intelligence_deck"]
    assert_equal(
        "iwooos_projection.topology_intelligence_deck.ids",
        [item["insight_id"] for item in topology_intelligence_deck],
        expected_topology_intelligence_deck_ids,
    )
    assert_equal(
        "iwooos_projection.topology_intelligence_deck.display_order",
        [item["display_order"] for item in topology_intelligence_deck],
        list(range(1, len(expected_topology_intelligence_deck_ids) + 1)),
    )
    for item in topology_intelligence_deck:
        insight_id = item["insight_id"]
        assert_equal(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.display_mode",
            item["display_mode"],
            "professional_graph_intelligence_deck",
        )
        assert_equal(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.node_sequence",
            item["node_sequence"],
            expected_topology_intelligence_sequences[insight_id],
        )
        assert_true(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.interactive_item_allowed",
            item["interactive_item_allowed"],
        )
        assert_false(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.execution_action_button_allowed",
            item["execution_action_button_allowed"],
        )
        assert_false(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.scan_authorized",
            item["scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.host_change_authorized",
            item["host_change_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.source_control_mutation_authorized",
            item["source_control_mutation_authorized"],
        )
        assert_false(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.topology_intelligence_deck.{insight_id}.not_authorization",
            item["not_authorization"],
        )
    expected_decision_runway_step_ids = [
        "ownerEvidence",
        "reviewerAcceptance",
        "hostWindow",
        "githubPrimary",
        "runtimeGate",
    ]
    decision_runway_steps = iwooos_projection["decision_runway_steps"]
    assert_equal(
        "iwooos_projection.decision_runway_steps.ids",
        [item["step_id"] for item in decision_runway_steps],
        expected_decision_runway_step_ids,
    )
    assert_equal(
        "iwooos_projection.decision_runway_steps.display_order",
        [item["display_order"] for item in decision_runway_steps],
        list(range(1, len(expected_decision_runway_step_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.decision_runway_steps.progress",
        [item["progress"] for item in decision_runway_steps],
        [18, 12, 35, 22, 0],
    )
    for item in decision_runway_steps:
        step_id = item["step_id"]
        assert_equal(
            f"iwooos_projection.decision_runway_steps.{step_id}.display_mode",
            item["display_mode"],
            "first_screen_decision_runway",
        )
        assert_true(
            f"iwooos_projection.decision_runway_steps.{step_id}.interactive_step_allowed",
            item["interactive_step_allowed"],
        )
        assert_false(
            f"iwooos_projection.decision_runway_steps.{step_id}.execution_action_button_allowed",
            item["execution_action_button_allowed"],
        )
        assert_false(
            f"iwooos_projection.decision_runway_steps.{step_id}.scan_authorized",
            item["scan_authorized"],
        )
        assert_false(
            f"iwooos_projection.decision_runway_steps.{step_id}.host_change_authorized",
            item["host_change_authorized"],
        )
        assert_false(
            f"iwooos_projection.decision_runway_steps.{step_id}.source_control_mutation_authorized",
            item["source_control_mutation_authorized"],
        )
        assert_false(
            f"iwooos_projection.decision_runway_steps.{step_id}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.decision_runway_steps.{step_id}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.decision_runway_steps.{step_id}.not_authorization",
            item["not_authorization"],
        )
    expected_decision_runway_dependency_ids = [
        "iwooos",
        "awooop",
        "vibework",
        "agentBounty",
        "kali",
        "devHosts",
        "monitoring",
    ]
    decision_runway_dependencies = iwooos_projection["decision_runway_dependencies"]
    assert_equal(
        "iwooos_projection.decision_runway_dependencies.ids",
        [item["dependency_id"] for item in decision_runway_dependencies],
        expected_decision_runway_dependency_ids,
    )
    assert_equal(
        "iwooos_projection.decision_runway_dependencies.display_order",
        [item["display_order"] for item in decision_runway_dependencies],
        list(range(1, len(expected_decision_runway_dependency_ids) + 1)),
    )
    for item in decision_runway_dependencies:
        dependency_id = item["dependency_id"]
        assert_equal(
            f"iwooos_projection.decision_runway_dependencies.{dependency_id}.display_mode",
            item["display_mode"],
            "first_screen_decision_runway_dependency",
        )
        assert_false(
            f"iwooos_projection.decision_runway_dependencies.{dependency_id}.runtime_delta",
            item["runtime_delta"],
        )
        assert_true(
            f"iwooos_projection.decision_runway_dependencies.{dependency_id}.not_authorization",
            item["not_authorization"],
        )
    expected_decision_runway_boundary_signal_ids = [
        "scan",
        "hostChange",
        "sourceMutation",
        "runtimeExecution",
    ]
    decision_runway_boundary_signals = iwooos_projection["decision_runway_boundary_signals"]
    assert_equal(
        "iwooos_projection.decision_runway_boundary_signals.ids",
        [item["signal_id"] for item in decision_runway_boundary_signals],
        expected_decision_runway_boundary_signal_ids,
    )
    assert_equal(
        "iwooos_projection.decision_runway_boundary_signals.display_order",
        [item["display_order"] for item in decision_runway_boundary_signals],
        list(range(1, len(expected_decision_runway_boundary_signal_ids) + 1)),
    )
    for item in decision_runway_boundary_signals:
        signal_id = item["signal_id"]
        assert_false(
            f"iwooos_projection.decision_runway_boundary_signals.{signal_id}.authorized",
            item["authorized"],
        )
        assert_false(
            f"iwooos_projection.decision_runway_boundary_signals.{signal_id}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_true(
            f"iwooos_projection.decision_runway_boundary_signals.{signal_id}.not_authorization",
            item["not_authorization"],
        )
    expected_gate_radar_lane_ids = [
        "visible",
        "blocker",
        "review",
        "locked",
    ]
    gate_radar_lanes = iwooos_projection["gate_radar_lanes"]
    assert_equal(
        "iwooos_projection.gate_radar_lanes.ids",
        [item["lane_id"] for item in gate_radar_lanes],
        expected_gate_radar_lane_ids,
    )
    assert_equal(
        "iwooos_projection.gate_radar_lanes.display_order",
        [item["display_order"] for item in gate_radar_lanes],
        list(range(1, len(expected_gate_radar_lane_ids) + 1)),
    )
    assert_equal(
        "iwooos_projection.gate_radar_lanes.scores",
        [item["score"] for item in gate_radar_lanes],
        [92, 64, 40, 0],
    )
    for item in gate_radar_lanes:
        assert_equal(
            f"iwooos_projection.gate_radar_lanes.{item['lane_id']}.display_mode",
            item["display_mode"],
            "first_screen_gate_radar",
        )
        assert_true(
            f"iwooos_projection.gate_radar_lanes.{item['lane_id']}.interactive_lens_allowed",
            item["interactive_lens_allowed"],
        )
        assert_false(
            f"iwooos_projection.gate_radar_lanes.{item['lane_id']}.execution_action_button_allowed",
            item["execution_action_button_allowed"],
        )
        assert_false(
            f"iwooos_projection.gate_radar_lanes.{item['lane_id']}.runtime_gate_opened",
            item["runtime_gate_opened"],
        )
        assert_false(
            f"iwooos_projection.gate_radar_lanes.{item['lane_id']}.runtime_execution_authorized",
            item["runtime_execution_authorized"],
        )
        assert_true(
            f"iwooos_projection.gate_radar_lanes.{item['lane_id']}.not_authorization",
            item["not_authorization"],
        )
    blocker_gate_radar_lane = next(item for item in gate_radar_lanes if item["lane_id"] == "blocker")
    for count_key in ["owner_response_received_count", "owner_response_accepted_count", "github_primary_ready_count"]:
        assert_equal(
            f"iwooos_projection.gate_radar_lanes.blocker.{count_key}",
            blocker_gate_radar_lane[count_key],
            0,
        )
    review_gate_radar_lane = next(item for item in gate_radar_lanes if item["lane_id"] == "review")
    assert_true(
        "iwooos_projection.gate_radar_lanes.review.human_review_required",
        review_gate_radar_lane["human_review_required"],
    )
    assert_false(
        "iwooos_projection.gate_radar_lanes.review.formal_decision_record_created",
        review_gate_radar_lane["formal_decision_record_created"],
    )
    locked_gate_radar_lane = next(item for item in gate_radar_lanes if item["lane_id"] == "locked")
    for flag in ["scan_authorized", "host_change_authorized", "source_control_mutation_authorized"]:
        assert_false(
            f"iwooos_projection.gate_radar_lanes.locked.{flag}",
            locked_gate_radar_lane[flag],
        )
    for text in [
        "iwooos_first_unlock_path_step_count=5",
        "iwooos_first_unlock_path_current_focus=s4_9_owner_response",
        "iwooos_first_unlock_path_owner_response_received_count=0",
        "iwooos_first_unlock_path_owner_response_accepted_count=0",
        "iwooos_first_unlock_path_redacted_evidence_pointer_count=0",
        "iwooos_first_unlock_path_intake_preflight_passed_count=0",
        "iwooos_first_unlock_path_headline_review_authorized=false",
        "iwooos_first_unlock_path_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.first_progress_unlock_path_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.firstProgressUnlockPath",
        list(web_messages_zh["iwooos"].keys()),
        "firstProgressUnlockPath",
    )
    assert_contains(
        "web_messages.en.iwooos.firstProgressUnlockPath",
        list(web_messages_en["iwooos"].keys()),
        "firstProgressUnlockPath",
    )
    for key in ["eyebrow", "title", "subtitle", "summary", "items", "stepLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstProgressUnlockPath.keys",
            list(web_messages_zh["iwooos"]["firstProgressUnlockPath"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstProgressUnlockPath.keys",
            list(web_messages_en["iwooos"]["firstProgressUnlockPath"].keys()),
            key,
        )
    for key in ["focus", "steps", "accepted", "headline"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstProgressUnlockPath.summary",
            list(web_messages_zh["iwooos"]["firstProgressUnlockPath"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstProgressUnlockPath.summary",
            list(web_messages_en["iwooos"]["firstProgressUnlockPath"]["summary"].keys()),
            key,
        )
    for key in [
        "ownerResponseScope",
        "redactedEvidencePointer",
        "intakePreflight",
        "reviewAcceptance",
        "headlineReviewCandidate",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstProgressUnlockPath.items",
            list(web_messages_zh["iwooos"]["firstProgressUnlockPath"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstProgressUnlockPath.items",
            list(web_messages_en["iwooos"]["firstProgressUnlockPath"]["items"].keys()),
            key,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.commandMap",
        list(web_messages_zh["iwooos"].keys()),
        "commandMap",
    )
    assert_contains(
        "web_messages.en.iwooos.commandMap",
        list(web_messages_en["iwooos"].keys()),
        "commandMap",
    )
    for key in ["eyebrow", "title", "subtitle", "tabsLabel", "boundaryTitle", "panelLabels", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.commandMap.keys",
            list(web_messages_zh["iwooos"]["commandMap"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.commandMap.keys",
            list(web_messages_en["iwooos"]["commandMap"].keys()),
            key,
        )
    for key in ["evidence", "next", "locked"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.commandMap.panelLabels",
            list(web_messages_zh["iwooos"]["commandMap"]["panelLabels"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.commandMap.panelLabels",
            list(web_messages_en["iwooos"]["commandMap"]["panelLabels"].keys()),
            key,
        )
    for key in expected_command_map_item_ids:
        assert_contains(
            "web_messages.zh-TW.iwooos.commandMap.items",
            list(web_messages_zh["iwooos"]["commandMap"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.commandMap.items",
            list(web_messages_en["iwooos"]["commandMap"]["items"].keys()),
            key,
        )
        for field in ["title", "state", "detail", "evidence", "next", "locked"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.commandMap.items.{key}",
                list(web_messages_zh["iwooos"]["commandMap"]["items"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.commandMap.items.{key}",
                list(web_messages_en["iwooos"]["commandMap"]["items"][key].keys()),
                field,
            )
    assert_contains(
        "web_messages.zh-TW.iwooos.executiveSnapshot",
        list(web_messages_zh["iwooos"].keys()),
        "executiveSnapshot",
    )
    assert_contains(
        "web_messages.en.iwooos.executiveSnapshot",
        list(web_messages_en["iwooos"].keys()),
        "executiveSnapshot",
    )
    for key in ["eyebrow", "title", "subtitle", "axes", "cards", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.executiveSnapshot.keys",
            list(web_messages_zh["iwooos"]["executiveSnapshot"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.executiveSnapshot.keys",
            list(web_messages_en["iwooos"]["executiveSnapshot"].keys()),
            key,
        )
    for key in expected_executive_snapshot_axis_ids:
        assert_contains(
            "web_messages.zh-TW.iwooos.executiveSnapshot.axes",
            list(web_messages_zh["iwooos"]["executiveSnapshot"]["axes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.executiveSnapshot.axes",
            list(web_messages_en["iwooos"]["executiveSnapshot"]["axes"].keys()),
            key,
        )
        assert_contains(
            f"web_messages.zh-TW.iwooos.executiveSnapshot.axes.{key}",
            list(web_messages_zh["iwooos"]["executiveSnapshot"]["axes"][key].keys()),
            "label",
        )
        assert_contains(
            f"web_messages.en.iwooos.executiveSnapshot.axes.{key}",
            list(web_messages_en["iwooos"]["executiveSnapshot"]["axes"][key].keys()),
            "label",
        )
    assert_text_contains(
        "iwooos_page.executive_snapshot_framework_axis",
        iwooos_projection_page,
        "{ key: 'framework', value: '92%', percent: 92",
    )
    for key in expected_executive_snapshot_card_ids:
        assert_contains(
            "web_messages.zh-TW.iwooos.executiveSnapshot.cards",
            list(web_messages_zh["iwooos"]["executiveSnapshot"]["cards"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.executiveSnapshot.cards",
            list(web_messages_en["iwooos"]["executiveSnapshot"]["cards"].keys()),
            key,
        )
        for field in ["title", "body"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.executiveSnapshot.cards.{key}",
                list(web_messages_zh["iwooos"]["executiveSnapshot"]["cards"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.executiveSnapshot.cards.{key}",
                list(web_messages_en["iwooos"]["executiveSnapshot"]["cards"][key].keys()),
                field,
            )
    assert_contains(
        "web_messages.zh-TW.iwooos.focusDeck",
        list(web_messages_zh["iwooos"].keys()),
        "focusDeck",
    )
    assert_contains(
        "web_messages.en.iwooos.focusDeck",
        list(web_messages_en["iwooos"].keys()),
        "focusDeck",
    )
    for key in ["eyebrow", "title", "subtitle", "summary", "items", "boundaryTitle"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.focusDeck.keys",
            list(web_messages_zh["iwooos"]["focusDeck"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.focusDeck.keys",
            list(web_messages_en["iwooos"]["focusDeck"].keys()),
            key,
        )
    for key in ["items", "runtime", "mode"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.focusDeck.summary",
            list(web_messages_zh["iwooos"]["focusDeck"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.focusDeck.summary",
            list(web_messages_en["iwooos"]["focusDeck"]["summary"].keys()),
            key,
        )
    for key in expected_focus_deck_item_ids:
        assert_contains(
            "web_messages.zh-TW.iwooos.focusDeck.items",
            list(web_messages_zh["iwooos"]["focusDeck"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.focusDeck.items",
            list(web_messages_en["iwooos"]["focusDeck"]["items"].keys()),
            key,
        )
        for field in ["label", "title", "body"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.focusDeck.items.{key}",
                list(web_messages_zh["iwooos"]["focusDeck"]["items"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.focusDeck.items.{key}",
                list(web_messages_en["iwooos"]["focusDeck"]["items"][key].keys()),
                field,
            )
    assert_contains(
        "web_messages.zh-TW.iwooos.immediateVisualMesh",
        list(web_messages_zh["iwooos"].keys()),
        "immediateVisualMesh",
    )
    assert_contains(
        "web_messages.en.iwooos.immediateVisualMesh",
        list(web_messages_en["iwooos"].keys()),
        "immediateVisualMesh",
    )
    for key in ["eyebrow", "title", "subtitle", "center", "stats", "nodes", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.immediateVisualMesh.keys",
            list(web_messages_zh["iwooos"]["immediateVisualMesh"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.immediateVisualMesh.keys",
            list(web_messages_en["iwooos"]["immediateVisualMesh"].keys()),
            key,
        )
    for key in ["assetScope", "hostScope", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.immediateVisualMesh.stats",
            list(web_messages_zh["iwooos"]["immediateVisualMesh"]["stats"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.immediateVisualMesh.stats",
            list(web_messages_en["iwooos"]["immediateVisualMesh"]["stats"].keys()),
            key,
        )
        assert_contains(
            f"web_messages.zh-TW.iwooos.immediateVisualMesh.stats.{key}",
            list(web_messages_zh["iwooos"]["immediateVisualMesh"]["stats"][key].keys()),
            "label",
        )
        assert_contains(
            f"web_messages.en.iwooos.immediateVisualMesh.stats.{key}",
            list(web_messages_en["iwooos"]["immediateVisualMesh"]["stats"][key].keys()),
            "label",
        )
    for key in ["products", "hosts", "sourceControl", "monitoring", "awooop", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.immediateVisualMesh.nodes",
            list(web_messages_zh["iwooos"]["immediateVisualMesh"]["nodes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.immediateVisualMesh.nodes",
            list(web_messages_en["iwooos"]["immediateVisualMesh"]["nodes"].keys()),
            key,
        )
        for field in ["title", "body"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.immediateVisualMesh.nodes.{key}",
                list(web_messages_zh["iwooos"]["immediateVisualMesh"]["nodes"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.immediateVisualMesh.nodes.{key}",
                list(web_messages_en["iwooos"]["immediateVisualMesh"]["nodes"][key].keys()),
                field,
            )
    assert_contains(
        "web_messages.zh-TW.iwooos.topologyAtlas",
        list(web_messages_zh["iwooos"].keys()),
        "topologyAtlas",
    )
    assert_contains(
        "web_messages.en.iwooos.topologyAtlas",
        list(web_messages_en["iwooos"].keys()),
        "topologyAtlas",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "tabsLabel",
        "mapLabel",
        "panelLabels",
        "pathExplorer",
        "nodeDrilldown",
        "lenses",
        "nodes",
        "layers",
        "charts",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.keys",
            list(web_messages_zh["iwooos"]["topologyAtlas"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.keys",
            list(web_messages_en["iwooos"]["topologyAtlas"].keys()),
            key,
        )
    for key in ["evidence", "next", "locked"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.panelLabels",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["panelLabels"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.panelLabels",
            list(web_messages_en["iwooos"]["topologyAtlas"]["panelLabels"].keys()),
            key,
        )
    for key in ["eyebrow", "selectorLabel", "fields", "paths"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.pathExplorer.keys",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["pathExplorer"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.pathExplorer.keys",
            list(web_messages_en["iwooos"]["topologyAtlas"]["pathExplorer"].keys()),
            key,
        )
    for key in ["evidence", "risk", "next", "locked"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.pathExplorer.fields",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["pathExplorer"]["fields"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.pathExplorer.fields",
            list(web_messages_en["iwooos"]["topologyAtlas"]["pathExplorer"]["fields"].keys()),
            key,
        )
    for key in ["externalToGate", "sourceToHost", "kaliToDev", "evidenceToGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.pathExplorer.paths",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["pathExplorer"]["paths"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.pathExplorer.paths",
            list(web_messages_en["iwooos"]["topologyAtlas"]["pathExplorer"]["paths"].keys()),
            key,
        )
        for field in ["title", "evidence", "risk", "next", "locked"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.topologyAtlas.pathExplorer.paths.{key}",
                list(web_messages_zh["iwooos"]["topologyAtlas"]["pathExplorer"]["paths"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.topologyAtlas.pathExplorer.paths.{key}",
                list(web_messages_en["iwooos"]["topologyAtlas"]["pathExplorer"]["paths"][key].keys()),
                field,
            )
    for key in ["eyebrow", "title", "subtitle", "selectorLabel", "ringLabel", "fields", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.intelligenceDeck.keys",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["intelligenceDeck"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.intelligenceDeck.keys",
            list(web_messages_en["iwooos"]["topologyAtlas"]["intelligenceDeck"].keys()),
            key,
        )
    for key in ["signal", "interpretation", "next"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.intelligenceDeck.fields",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["intelligenceDeck"]["fields"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.intelligenceDeck.fields",
            list(web_messages_en["iwooos"]["topologyAtlas"]["intelligenceDeck"]["fields"].keys()),
            key,
        )
    for key in ["assetContext", "attackPath", "blastRadius", "evidenceTimeline"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.intelligenceDeck.items",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["intelligenceDeck"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.intelligenceDeck.items",
            list(web_messages_en["iwooos"]["topologyAtlas"]["intelligenceDeck"]["items"].keys()),
            key,
        )
        for field in ["title", "signal", "interpretation", "next", "ring"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.topologyAtlas.intelligenceDeck.items.{key}",
                list(web_messages_zh["iwooos"]["topologyAtlas"]["intelligenceDeck"]["items"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.topologyAtlas.intelligenceDeck.items.{key}",
                list(web_messages_en["iwooos"]["topologyAtlas"]["intelligenceDeck"]["items"][key].keys()),
                field,
            )
    for key in ["eyebrow", "selectorLabel", "fields", "nodes"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.nodeDrilldown.keys",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["nodeDrilldown"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.nodeDrilldown.keys",
            list(web_messages_en["iwooos"]["topologyAtlas"]["nodeDrilldown"].keys()),
            key,
        )
    for key in ["relation", "evidence", "next", "boundary"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.nodeDrilldown.fields",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["nodeDrilldown"]["fields"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.nodeDrilldown.fields",
            list(web_messages_en["iwooos"]["topologyAtlas"]["nodeDrilldown"]["fields"].keys()),
            key,
        )
    for key in ["productSurface", "sourceControl", "kali", "devHosts", "monitoring", "awooopTruth", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.nodeDrilldown.nodes",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["nodeDrilldown"]["nodes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.nodeDrilldown.nodes",
            list(web_messages_en["iwooos"]["topologyAtlas"]["nodeDrilldown"]["nodes"].keys()),
            key,
        )
        assert_contains(
            f"web_messages.zh-TW.iwooos.topologyAtlas.nodeDrilldown.nodes.{key}",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["nodeDrilldown"]["nodes"][key].keys()),
            "body",
        )
        assert_contains(
            f"web_messages.en.iwooos.topologyAtlas.nodeDrilldown.nodes.{key}",
            list(web_messages_en["iwooos"]["topologyAtlas"]["nodeDrilldown"]["nodes"][key].keys()),
            "body",
        )
    for key in ["architecture", "topology", "attackSurface", "evidenceFlow"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.lenses",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["lenses"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.lenses",
            list(web_messages_en["iwooos"]["topologyAtlas"]["lenses"].keys()),
            key,
        )
        for field in ["title", "mapTitle", "detail", "evidence", "next", "locked"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.topologyAtlas.lenses.{key}",
                list(web_messages_zh["iwooos"]["topologyAtlas"]["lenses"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.topologyAtlas.lenses.{key}",
                list(web_messages_en["iwooos"]["topologyAtlas"]["lenses"][key].keys()),
                field,
            )
    for key in ["productSurface", "sourceControl", "kali", "devHosts", "monitoring", "awooopTruth", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.nodes",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["nodes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.nodes",
            list(web_messages_en["iwooos"]["topologyAtlas"]["nodes"].keys()),
            key,
        )
        assert_contains(
            f"web_messages.zh-TW.iwooos.topologyAtlas.nodes.{key}",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["nodes"][key].keys()),
            "title",
        )
        assert_contains(
            f"web_messages.en.iwooos.topologyAtlas.nodes.{key}",
            list(web_messages_en["iwooos"]["topologyAtlas"]["nodes"][key].keys()),
            "title",
        )
    for key in ["externalSurface", "codeSupply", "hostFabric", "evidenceOps", "gateControl"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.layers",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["layers"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.layers",
            list(web_messages_en["iwooos"]["topologyAtlas"]["layers"].keys()),
            key,
        )
        for field in ["title", "body"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.topologyAtlas.layers.{key}",
                list(web_messages_zh["iwooos"]["topologyAtlas"]["layers"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.topologyAtlas.layers.{key}",
                list(web_messages_en["iwooos"]["topologyAtlas"]["layers"][key].keys()),
                field,
            )
    for key in ["contextDepth", "blastRadius", "evidenceFreshness"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.topologyAtlas.charts",
            list(web_messages_zh["iwooos"]["topologyAtlas"]["charts"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.topologyAtlas.charts",
            list(web_messages_en["iwooos"]["topologyAtlas"]["charts"].keys()),
            key,
        )
        for field in ["label", "body"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.topologyAtlas.charts.{key}",
                list(web_messages_zh["iwooos"]["topologyAtlas"]["charts"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.topologyAtlas.charts.{key}",
                list(web_messages_en["iwooos"]["topologyAtlas"]["charts"][key].keys()),
                field,
            )
    assert_contains(
        "web_messages.zh-TW.iwooos.decisionRunway",
        list(web_messages_zh["iwooos"].keys()),
        "decisionRunway",
    )
    assert_contains(
        "web_messages.en.iwooos.decisionRunway",
        list(web_messages_en["iwooos"].keys()),
        "decisionRunway",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "railLabel",
        "selectorLabel",
        "fields",
        "boundarySignals",
        "steps",
        "dependencies",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.decisionRunway.keys",
            list(web_messages_zh["iwooos"]["decisionRunway"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.decisionRunway.keys",
            list(web_messages_en["iwooos"]["decisionRunway"].keys()),
            key,
        )
    for key in ["evidence", "next", "blocked"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.decisionRunway.fields",
            list(web_messages_zh["iwooos"]["decisionRunway"]["fields"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.decisionRunway.fields",
            list(web_messages_en["iwooos"]["decisionRunway"]["fields"].keys()),
            key,
        )
    for key in expected_decision_runway_boundary_signal_ids:
        assert_contains(
            "web_messages.zh-TW.iwooos.decisionRunway.boundarySignals",
            list(web_messages_zh["iwooos"]["decisionRunway"]["boundarySignals"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.decisionRunway.boundarySignals",
            list(web_messages_en["iwooos"]["decisionRunway"]["boundarySignals"].keys()),
            key,
        )
        assert_contains(
            f"web_messages.zh-TW.iwooos.decisionRunway.boundarySignals.{key}",
            list(web_messages_zh["iwooos"]["decisionRunway"]["boundarySignals"][key].keys()),
            "label",
        )
        assert_contains(
            f"web_messages.en.iwooos.decisionRunway.boundarySignals.{key}",
            list(web_messages_en["iwooos"]["decisionRunway"]["boundarySignals"][key].keys()),
            "label",
        )
    for key in expected_decision_runway_step_ids:
        assert_contains(
            "web_messages.zh-TW.iwooos.decisionRunway.steps",
            list(web_messages_zh["iwooos"]["decisionRunway"]["steps"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.decisionRunway.steps",
            list(web_messages_en["iwooos"]["decisionRunway"]["steps"].keys()),
            key,
        )
        for field in ["short", "title", "body", "evidence", "next", "blocked"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.decisionRunway.steps.{key}",
                list(web_messages_zh["iwooos"]["decisionRunway"]["steps"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.decisionRunway.steps.{key}",
                list(web_messages_en["iwooos"]["decisionRunway"]["steps"][key].keys()),
                field,
            )
    for key in expected_decision_runway_dependency_ids:
        assert_contains(
            "web_messages.zh-TW.iwooos.decisionRunway.dependencies",
            list(web_messages_zh["iwooos"]["decisionRunway"]["dependencies"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.decisionRunway.dependencies",
            list(web_messages_en["iwooos"]["decisionRunway"]["dependencies"].keys()),
            key,
        )
        for field in ["title", "body"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.decisionRunway.dependencies.{key}",
                list(web_messages_zh["iwooos"]["decisionRunway"]["dependencies"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.decisionRunway.dependencies.{key}",
                list(web_messages_en["iwooos"]["decisionRunway"]["dependencies"][key].keys()),
                field,
            )
    assert_contains(
        "web_messages.zh-TW.iwooos.gateRadar",
        list(web_messages_zh["iwooos"].keys()),
        "gateRadar",
    )
    assert_contains(
        "web_messages.en.iwooos.gateRadar",
        list(web_messages_en["iwooos"].keys()),
        "gateRadar",
    )
    for key in [
        "eyebrow",
        "title",
        "subtitle",
        "tabsLabel",
        "activeLabel",
        "summary",
        "panelLabels",
        "lanes",
        "boundaryTitle",
        "boundaryIntro",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.gateRadar.keys",
            list(web_messages_zh["iwooos"]["gateRadar"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.gateRadar.keys",
            list(web_messages_en["iwooos"]["gateRadar"].keys()),
            key,
        )
    for key in ["visibleScope", "currentBlocker", "runtimeGate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.gateRadar.summary",
            list(web_messages_zh["iwooos"]["gateRadar"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.gateRadar.summary",
            list(web_messages_en["iwooos"]["gateRadar"]["summary"].keys()),
            key,
        )
        assert_contains(
            f"web_messages.zh-TW.iwooos.gateRadar.summary.{key}",
            list(web_messages_zh["iwooos"]["gateRadar"]["summary"][key].keys()),
            "label",
        )
        assert_contains(
            f"web_messages.en.iwooos.gateRadar.summary.{key}",
            list(web_messages_en["iwooos"]["gateRadar"]["summary"][key].keys()),
            "label",
        )
    for key in ["evidence", "next", "locked"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.gateRadar.panelLabels",
            list(web_messages_zh["iwooos"]["gateRadar"]["panelLabels"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.gateRadar.panelLabels",
            list(web_messages_en["iwooos"]["gateRadar"]["panelLabels"].keys()),
            key,
        )
    for key in ["visible", "blocker", "review", "locked"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.gateRadar.lanes",
            list(web_messages_zh["iwooos"]["gateRadar"]["lanes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.gateRadar.lanes",
            list(web_messages_en["iwooos"]["gateRadar"]["lanes"].keys()),
            key,
        )
        for field in ["title", "state", "detail", "evidence", "next", "locked"]:
            assert_contains(
                f"web_messages.zh-TW.iwooos.gateRadar.lanes.{key}",
                list(web_messages_zh["iwooos"]["gateRadar"]["lanes"][key].keys()),
                field,
            )
            assert_contains(
                f"web_messages.en.iwooos.gateRadar.lanes.{key}",
                list(web_messages_en["iwooos"]["gateRadar"]["lanes"][key].keys()),
                field,
            )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_testid",
        iwooos_projection_page,
        'data-testid="iwooos-first-unlock-evidence-packet-board"',
    )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_component",
        iwooos_projection_page,
        "IwoooSFirstUnlockEvidencePacketBoard",
    )
    for text in [
        "iwooos_first_unlock_evidence_packet_slot_count=5",
        "iwooos_first_unlock_evidence_packet_current_focus=s4_9_owner_response",
        "iwooos_first_unlock_evidence_packet_filled_count=0",
        "iwooos_first_unlock_evidence_packet_accepted_count=0",
        "iwooos_first_unlock_evidence_packet_redacted_pointer_required=true",
        "iwooos_first_unlock_evidence_packet_raw_payload_allowed=false",
        "iwooos_first_unlock_evidence_packet_secret_value_allowed=false",
        "iwooos_first_unlock_evidence_packet_headline_review_authorized=false",
        "iwooos_first_unlock_evidence_packet_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.first_unlock_evidence_packet_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.firstUnlockEvidencePacket",
        list(web_messages_zh["iwooos"].keys()),
        "firstUnlockEvidencePacket",
    )
    assert_contains(
        "web_messages.en.iwooos.firstUnlockEvidencePacket",
        list(web_messages_en["iwooos"].keys()),
        "firstUnlockEvidencePacket",
    )
    for key in ["title", "subtitle", "summary", "items", "slotLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacket.keys",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacket"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacket.keys",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacket"].keys()),
            key,
        )
    for key in ["slots", "filled", "accepted", "payload"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacket.summary",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacket"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacket.summary",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacket"]["summary"].keys()),
            key,
        )
    for key in [
        "ownerDecisionMetadata",
        "scopeEvidenceRefs",
        "redactionAttestation",
        "preflightTrace",
        "reviewAcceptanceSummary",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacket.items",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacket"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacket.items",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacket"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_preflight_outcome_testid",
        iwooos_projection_page,
        'data-testid="iwooos-first-unlock-evidence-packet-preflight-outcome-board"',
    )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_preflight_outcome_component",
        iwooos_projection_page,
        "IwoooSFirstUnlockEvidencePacketPreflightOutcomeBoard",
    )
    for text in [
        "iwooos_first_unlock_evidence_packet_preflight_outcome_lane_count=6",
        "iwooos_first_unlock_evidence_packet_preflight_ready_for_review_count=0",
        "iwooos_first_unlock_evidence_packet_preflight_needs_supplement_count=0",
        "iwooos_first_unlock_evidence_packet_preflight_quarantined_count=0",
        "iwooos_first_unlock_evidence_packet_preflight_rejected_count=0",
        "iwooos_first_unlock_evidence_packet_review_accepted_count=0",
        "iwooos_first_unlock_evidence_packet_headline_review_authorized=false",
        "iwooos_first_unlock_evidence_packet_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.first_unlock_evidence_packet_preflight_outcome_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketPreflightOutcomes",
        list(web_messages_zh["iwooos"].keys()),
        "firstUnlockEvidencePacketPreflightOutcomes",
    )
    assert_contains(
        "web_messages.en.iwooos.firstUnlockEvidencePacketPreflightOutcomes",
        list(web_messages_en["iwooos"].keys()),
        "firstUnlockEvidencePacketPreflightOutcomes",
    )
    for key in ["title", "subtitle", "summary", "items", "laneLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketPreflightOutcomes.keys",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketPreflightOutcomes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketPreflightOutcomes.keys",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketPreflightOutcomes"].keys()),
            key,
        )
    for key in ["lanes", "ready", "quarantine", "accepted"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketPreflightOutcomes.summary",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketPreflightOutcomes"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketPreflightOutcomes.summary",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketPreflightOutcomes"]["summary"].keys()),
            key,
        )
    for key in [
        "readyForReview",
        "needsOwnerMetadata",
        "needsScopeRefs",
        "quarantineRawPayload",
        "rejectSecretValue",
        "waitingReviewer",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketPreflightOutcomes.items",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketPreflightOutcomes"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketPreflightOutcomes.items",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketPreflightOutcomes"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_supplement_path_testid",
        iwooos_projection_page,
        'data-testid="iwooos-first-unlock-evidence-packet-supplement-path-board"',
    )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_supplement_path_component",
        iwooos_projection_page,
        "IwoooSFirstUnlockEvidencePacketSupplementPathBoard",
    )
    for text in [
        "iwooos_first_unlock_evidence_packet_supplement_path_step_count=5",
        "iwooos_first_unlock_evidence_packet_supplement_current_focus=owner_metadata_and_scope_refs",
        "iwooos_first_unlock_evidence_packet_supplement_ready_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_submitted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_accepted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_blocked_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_quarantined_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_request_sent=false",
        "iwooos_first_unlock_evidence_packet_supplement_raw_payload_allowed=false",
        "iwooos_first_unlock_evidence_packet_supplement_secret_value_allowed=false",
        "iwooos_first_unlock_evidence_packet_headline_review_authorized=false",
        "iwooos_first_unlock_evidence_packet_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.first_unlock_evidence_packet_supplement_path_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPath",
        list(web_messages_zh["iwooos"].keys()),
        "firstUnlockEvidencePacketSupplementPath",
    )
    assert_contains(
        "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPath",
        list(web_messages_en["iwooos"].keys()),
        "firstUnlockEvidencePacketSupplementPath",
    )
    for key in ["title", "subtitle", "summary", "items", "stepLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPath.keys",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketSupplementPath"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPath.keys",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketSupplementPath"].keys()),
            key,
        )
    for key in ["steps", "ready", "submitted", "accepted"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPath.summary",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketSupplementPath"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPath.summary",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketSupplementPath"]["summary"].keys()),
            key,
        )
    for key in [
        "ownerMetadataPatch",
        "scopeRefsPatch",
        "redactionPatch",
        "preflightTracePatch",
        "reviewerQueuePatch",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPath.items",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketSupplementPath"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPath.items",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketSupplementPath"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_supplement_pre_review_testid",
        iwooos_projection_page,
        'data-testid="iwooos-first-unlock-evidence-packet-supplement-pre-review-board"',
    )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_supplement_pre_review_component",
        iwooos_projection_page,
        "IwoooSFirstUnlockEvidencePacketSupplementPreReviewBoard",
    )
    for text in [
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_check_count=6",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_current_focus=supplement_pre_review",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_passed_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_failed_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_ready_for_review_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_queue_open=false",
        "iwooos_first_unlock_evidence_packet_supplement_request_sent=false",
        "iwooos_first_unlock_evidence_packet_supplement_submitted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_accepted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_raw_payload_allowed=false",
        "iwooos_first_unlock_evidence_packet_supplement_secret_value_allowed=false",
        "iwooos_first_unlock_evidence_packet_headline_review_authorized=false",
        "iwooos_first_unlock_evidence_packet_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.first_unlock_evidence_packet_supplement_pre_review_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPreReview",
        list(web_messages_zh["iwooos"].keys()),
        "firstUnlockEvidencePacketSupplementPreReview",
    )
    assert_contains(
        "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPreReview",
        list(web_messages_en["iwooos"].keys()),
        "firstUnlockEvidencePacketSupplementPreReview",
    )
    for key in ["title", "subtitle", "summary", "items", "checkLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPreReview.keys",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketSupplementPreReview"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPreReview.keys",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketSupplementPreReview"].keys()),
            key,
        )
    for key in ["checks", "passed", "ready", "queue"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPreReview.summary",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketSupplementPreReview"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPreReview.summary",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketSupplementPreReview"]["summary"].keys()),
            key,
        )
    for key in [
        "ownerMetadataComplete",
        "scopeRefsTraceable",
        "redactionAttested",
        "preflightTraceAttached",
        "noMutationClauseHeld",
        "reviewerQueueReady",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPreReview.items",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketSupplementPreReview"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPreReview.items",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketSupplementPreReview"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_supplement_pre_review_outcome_testid",
        iwooos_projection_page,
        'data-testid="iwooos-first-unlock-evidence-packet-supplement-pre-review-outcome-board"',
    )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_supplement_pre_review_outcome_component",
        iwooos_projection_page,
        "IwoooSFirstUnlockEvidencePacketSupplementPreReviewOutcomeBoard",
    )
    for text in [
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_outcome_lane_count=6",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_ready_for_queue_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_returned_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_quarantined_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_rejected_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_reviewer_assigned_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_queue_open=false",
        "iwooos_first_unlock_evidence_packet_supplement_request_sent=false",
        "iwooos_first_unlock_evidence_packet_supplement_submitted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_accepted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_raw_payload_allowed=false",
        "iwooos_first_unlock_evidence_packet_supplement_secret_value_allowed=false",
        "iwooos_first_unlock_evidence_packet_headline_review_authorized=false",
        "iwooos_first_unlock_evidence_packet_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.first_unlock_evidence_packet_supplement_pre_review_outcome_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPreReviewOutcomes",
        list(web_messages_zh["iwooos"].keys()),
        "firstUnlockEvidencePacketSupplementPreReviewOutcomes",
    )
    assert_contains(
        "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPreReviewOutcomes",
        list(web_messages_en["iwooos"].keys()),
        "firstUnlockEvidencePacketSupplementPreReviewOutcomes",
    )
    for key in ["title", "subtitle", "summary", "items", "outcomeLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPreReviewOutcomes.keys",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketSupplementPreReviewOutcomes"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPreReviewOutcomes.keys",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketSupplementPreReviewOutcomes"].keys()),
            key,
        )
    for key in ["lanes", "ready", "returned", "assigned"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPreReviewOutcomes.summary",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketSupplementPreReviewOutcomes"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPreReviewOutcomes.summary",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketSupplementPreReviewOutcomes"]["summary"].keys()),
            key,
        )
    for key in [
        "readyForReviewerQueue",
        "returnToSupplement",
        "quarantineSensitiveMaterial",
        "rejectMutationRequest",
        "keepQueueClosed",
        "waitReviewerAssignment",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketSupplementPreReviewOutcomes.items",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketSupplementPreReviewOutcomes"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketSupplementPreReviewOutcomes.items",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketSupplementPreReviewOutcomes"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_reviewer_assignment_preparation_testid",
        iwooos_projection_page,
        'data-testid="iwooos-first-unlock-evidence-packet-reviewer-assignment-preparation-board"',
    )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_reviewer_assignment_preparation_component",
        iwooos_projection_page,
        "IwoooSFirstUnlockEvidencePacketReviewerAssignmentPreparationBoard",
    )
    for text in [
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preparation_packet_count=6",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preparation_current_focus=reviewer_assignment_preparation",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preparation_ready_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preparation_reviewer_candidate_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preparation_reviewer_assigned_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preparation_audit_event_emitted=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_ready_for_queue_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_queue_open=false",
        "iwooos_first_unlock_evidence_packet_supplement_request_sent=false",
        "iwooos_first_unlock_evidence_packet_supplement_submitted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_accepted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_raw_payload_allowed=false",
        "iwooos_first_unlock_evidence_packet_supplement_secret_value_allowed=false",
        "iwooos_first_unlock_evidence_packet_headline_review_authorized=false",
        "iwooos_first_unlock_evidence_packet_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.first_unlock_evidence_packet_reviewer_assignment_preparation_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreparation",
        list(web_messages_zh["iwooos"].keys()),
        "firstUnlockEvidencePacketReviewerAssignmentPreparation",
    )
    assert_contains(
        "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreparation",
        list(web_messages_en["iwooos"].keys()),
        "firstUnlockEvidencePacketReviewerAssignmentPreparation",
    )
    for key in ["title", "subtitle", "summary", "items", "packetLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreparation.keys",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreparation"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreparation.keys",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreparation"].keys()),
            key,
        )
    for key in ["packets", "ready", "candidates", "assigned"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreparation.summary",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreparation"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreparation.summary",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreparation"]["summary"].keys()),
            key,
        )
    for key in [
        "queueStatusFreeze",
        "reviewerRoleBoundary",
        "scopePacket",
        "evidencePointerIndex",
        "conflictDisclosure",
        "assignmentAuditDraft",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreparation.items",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreparation"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreparation.items",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreparation"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_reviewer_assignment_preflight_testid",
        iwooos_projection_page,
        'data-testid="iwooos-first-unlock-evidence-packet-reviewer-assignment-preflight-board"',
    )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_reviewer_assignment_preflight_component",
        iwooos_projection_page,
        "IwoooSFirstUnlockEvidencePacketReviewerAssignmentPreflightBoard",
    )
    for text in [
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_check_count=6",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_current_focus=reviewer_assignment_preflight",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_passed_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_failed_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_ready_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_reviewer_candidate_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_reviewer_assigned_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_queue_open=false",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_audit_event_emitted=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_ready_for_queue_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_queue_open=false",
        "iwooos_first_unlock_evidence_packet_supplement_request_sent=false",
        "iwooos_first_unlock_evidence_packet_supplement_submitted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_accepted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_raw_payload_allowed=false",
        "iwooos_first_unlock_evidence_packet_supplement_secret_value_allowed=false",
        "iwooos_first_unlock_evidence_packet_headline_review_authorized=false",
        "iwooos_first_unlock_evidence_packet_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.first_unlock_evidence_packet_reviewer_assignment_preflight_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflight",
        list(web_messages_zh["iwooos"].keys()),
        "firstUnlockEvidencePacketReviewerAssignmentPreflight",
    )
    assert_contains(
        "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflight",
        list(web_messages_en["iwooos"].keys()),
        "firstUnlockEvidencePacketReviewerAssignmentPreflight",
    )
    for key in ["title", "subtitle", "summary", "items", "checkLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflight.keys",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflight"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflight.keys",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflight"].keys()),
            key,
        )
    for key in ["checks", "passed", "ready", "assigned"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflight.summary",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflight"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflight.summary",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflight"]["summary"].keys()),
            key,
        )
    for key in [
        "queueStillClosed",
        "roleBoundaryTraceable",
        "scopePacketTraceable",
        "evidenceIndexRedacted",
        "conflictDisclosureClear",
        "auditDraftMetadataOnly",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflight.items",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflight"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflight.items",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflight"]["items"].keys()),
            key,
        )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_testid",
        iwooos_projection_page,
        'data-testid="iwooos-first-unlock-evidence-packet-reviewer-assignment-preflight-outcome-board"',
    )
    assert_text_contains(
        "iwooos_page.first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_component",
        iwooos_projection_page,
        "IwoooSFirstUnlockEvidencePacketReviewerAssignmentPreflightOutcomeBoard",
    )
    for text in [
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_lane_count=6",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_current_focus=reviewer_assignment_preflight_outcomes",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_ready_for_candidate_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_returned_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_quarantined_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_conflict_hold_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_audit_event_emitted=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_reviewer_candidate_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_reviewer_assigned_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_queue_open=false",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_passed_count=0",
        "iwooos_first_unlock_evidence_packet_reviewer_assignment_preflight_ready_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_pre_review_queue_open=false",
        "iwooos_first_unlock_evidence_packet_supplement_request_sent=false",
        "iwooos_first_unlock_evidence_packet_supplement_submitted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_accepted_count=0",
        "iwooos_first_unlock_evidence_packet_supplement_raw_payload_allowed=false",
        "iwooos_first_unlock_evidence_packet_supplement_secret_value_allowed=false",
        "iwooos_first_unlock_evidence_packet_headline_review_authorized=false",
        "iwooos_first_unlock_evidence_packet_runtime_gate_opened=false",
        "runtime_execution_authorized=false",
        "active_runtime_gate_count=0",
        "action_buttons_allowed=false",
        "not_authorization=true",
        "secret_value_collection_allowed=false",
        "repo_creation_authorized=false",
        "refs_sync_authorized=false",
        "workflow_modification_authorized=false",
        "github_primary_switch_authorized=false",
        "gitea_disablement_authorized=false",
    ]:
        assert_text_contains(
            "iwooos_page.first_unlock_evidence_packet_reviewer_assignment_preflight_outcome_boundary",
            iwooos_projection_page,
            text,
        )
    assert_contains(
        "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome",
        list(web_messages_zh["iwooos"].keys()),
        "firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome",
    )
    assert_contains(
        "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome",
        list(web_messages_en["iwooos"].keys()),
        "firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome",
    )
    for key in ["title", "subtitle", "summary", "items", "outcomeLabel", "boundaryTitle", "boundaryIntro"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome.keys",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome.keys",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome"].keys()),
            key,
        )
    for key in ["outcomes", "candidates", "assigned", "audit"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome.summary",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome.summary",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome"]["summary"].keys()),
            key,
        )
    for key in [
        "keepQueueClosed",
        "returnRoleBoundary",
        "returnScopePacket",
        "quarantineEvidenceIndex",
        "holdConflictDisclosure",
        "keepAuditDraftMetadataOnly",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome.items",
            list(web_messages_zh["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome.items",
            list(web_messages_en["iwooos"]["firstUnlockEvidencePacketReviewerAssignmentPreflightOutcome"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "compactTitle",
        "compactDetail",
        "openIwooos",
        "sourceLabel",
        "sourceDetail",
        "boundaryLabel",
        "metrics",
    ]:
        assert_contains(
            "web_messages.zh-TW.security.iwooosBridge",
            list(web_messages_zh["security"]["iwooosBridge"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.security.iwooosBridge",
            list(web_messages_en["security"]["iwooosBridge"].keys()),
            key,
        )
    for key in ["overall", "framework", "runtimeGates", "actions"]:
        assert_contains(
            "web_messages.zh-TW.security.iwooosBridge.metrics",
            list(web_messages_zh["security"]["iwooosBridge"]["metrics"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.security.iwooosBridge.metrics",
            list(web_messages_en["security"]["iwooosBridge"]["metrics"].keys()),
            key,
        )
    for key in ["title", "subtitle", "states", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.surfaceConnections",
            list(web_messages_zh["iwooos"]["surfaceConnections"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.surfaceConnections",
            list(web_messages_en["iwooos"]["surfaceConnections"].keys()),
            key,
        )
    for key in ["embeddedBridge", "directBridge", "awooopCandidate", "reviewHandoffCandidate"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.surfaceConnections.states",
            list(web_messages_zh["iwooos"]["surfaceConnections"]["states"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.surfaceConnections.states",
            list(web_messages_en["iwooos"]["surfaceConnections"]["states"].keys()),
            key,
        )
    for key in [
        "securityCompliance",
        "legacySecurity",
        "legacyCompliance",
        "alerts",
        "errors",
        "authorizations",
        "governance",
        "alertOperationLogs",
        "awooopApprovals",
        "codeReview",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.surfaceConnections.items",
            list(web_messages_zh["iwooos"]["surfaceConnections"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.surfaceConnections.items",
            list(web_messages_en["iwooos"]["surfaceConnections"]["items"].keys()),
            key,
        )
    for key in ["title", "subtitle", "gateLabel", "guardLabel", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.sourceControlReadiness",
            list(web_messages_zh["iwooos"]["sourceControlReadiness"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.sourceControlReadiness",
            list(web_messages_en["iwooos"]["sourceControlReadiness"].keys()),
            key,
        )
    for key in [
        "candidateRepos",
        "primaryReady",
        "ownerResponses",
        "refsTruth",
        "workflowSecrets",
        "rollbackAdr",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.sourceControlReadiness.items",
            list(web_messages_zh["iwooos"]["sourceControlReadiness"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.sourceControlReadiness.items",
            list(web_messages_en["iwooos"]["sourceControlReadiness"]["items"].keys()),
            key,
        )
    for key in ["title", "subtitle", "routeLabel", "stageLabel", "boundaryLabel", "guardTitle", "summary", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.awooopCoverage",
            list(web_messages_zh["iwooos"]["awooopCoverage"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.awooopCoverage",
            list(web_messages_en["iwooos"]["awooopCoverage"].keys()),
            key,
        )
    for key in ["routes", "covered", "runtimeGates", "actions"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.awooopCoverage.summary",
            list(web_messages_zh["iwooos"]["awooopCoverage"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.awooopCoverage.summary",
            list(web_messages_en["iwooos"]["awooopCoverage"]["summary"].keys()),
            key,
        )
    for key in ["home", "workItems", "contracts", "tenants", "runs", "runDetail", "approvals", "approvalDecision"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.awooopCoverage.items",
            list(web_messages_zh["iwooos"]["awooopCoverage"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.awooopCoverage.items",
            list(web_messages_en["iwooos"]["awooopCoverage"]["items"].keys()),
            key,
        )
    for key in ["title", "subtitle", "movementLabel", "guardLabel", "boundaryTitle", "summary", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.securityConvergenceRoadmap",
            list(web_messages_zh["iwooos"]["securityConvergenceRoadmap"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.securityConvergenceRoadmap",
            list(web_messages_en["iwooos"]["securityConvergenceRoadmap"].keys()),
            key,
        )
    for key in ["mode", "coverage", "accepted", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.securityConvergenceRoadmap.summary",
            list(web_messages_zh["iwooos"]["securityConvergenceRoadmap"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.securityConvergenceRoadmap.summary",
            list(web_messages_en["iwooos"]["securityConvergenceRoadmap"]["summary"].keys()),
            key,
        )
    for key in [
        "visibilityFirst",
        "ownerResponse",
        "redactedEvidence",
        "humanDecision",
        "runtimeGate",
        "sourceControlCutover",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.securityConvergenceRoadmap.items",
            list(web_messages_zh["iwooos"]["securityConvergenceRoadmap"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.securityConvergenceRoadmap.items",
            list(web_messages_en["iwooos"]["securityConvergenceRoadmap"]["items"].keys()),
            key,
        )
    for key in ["title", "subtitle", "packetLabel", "movementLabel", "guardLabel", "boundaryTitle", "summary", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseCollectionBoard",
            list(web_messages_zh["iwooos"]["ownerResponseCollectionBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseCollectionBoard",
            list(web_messages_en["iwooos"]["ownerResponseCollectionBoard"].keys()),
            key,
        )
    for key in ["packets", "templates", "received", "accepted"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseCollectionBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseCollectionBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseCollectionBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseCollectionBoard"]["summary"].keys()),
            key,
        )
    for key in ["giteaAttestation", "githubTarget", "refsTruth", "workflowSecretNames"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseCollectionBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseCollectionBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseCollectionBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseCollectionBoard"]["items"].keys()),
            key,
        )
    for key in ["title", "subtitle", "laneLabel", "ruleLabel", "guardLabel", "boundaryTitle", "summary", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseIntakeSafetyBoard",
            list(web_messages_zh["iwooos"]["ownerResponseIntakeSafetyBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseIntakeSafetyBoard",
            list(web_messages_en["iwooos"]["ownerResponseIntakeSafetyBoard"].keys()),
            key,
        )
    for key in ["rules", "ingested", "quarantined", "rejected"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseIntakeSafetyBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseIntakeSafetyBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseIntakeSafetyBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseIntakeSafetyBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "redactedEvidenceOnly",
        "ownerScopeCompletion",
        "secretValueQuarantine",
        "repoMutationRequest",
        "refsMutationRequest",
        "runtimeExecutionRequest",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseIntakeSafetyBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseIntakeSafetyBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseIntakeSafetyBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseIntakeSafetyBoard"]["items"].keys()),
            key,
        )
    for key in ["title", "subtitle", "laneLabel", "resultLabel", "guardLabel", "boundaryTitle", "summary", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseReviewOutcomeBoard",
            list(web_messages_zh["iwooos"]["ownerResponseReviewOutcomeBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseReviewOutcomeBoard",
            list(web_messages_en["iwooos"]["ownerResponseReviewOutcomeBoard"].keys()),
            key,
        )
    for key in ["lanes", "ready", "accepted", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseReviewOutcomeBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseReviewOutcomeBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseReviewOutcomeBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseReviewOutcomeBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "remainWaiting",
        "needsEvidence",
        "readyForHumanReview",
        "quarantined",
        "rejected",
        "readonlyUpdate",
        "humanDecisionRequired",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseReviewOutcomeBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseReviewOutcomeBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseReviewOutcomeBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseReviewOutcomeBoard"]["items"].keys()),
            key,
        )
    for key in ["title", "subtitle", "queueLabel", "prepLabel", "guardLabel", "boundaryTitle", "summary", "items"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseHumanDecisionQueueBoard",
            list(web_messages_zh["iwooos"]["ownerResponseHumanDecisionQueueBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseHumanDecisionQueueBoard",
            list(web_messages_en["iwooos"]["ownerResponseHumanDecisionQueueBoard"].keys()),
            key,
        )
    for key in ["queueItems", "ready", "approved", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseHumanDecisionQueueBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseHumanDecisionQueueBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseHumanDecisionQueueBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseHumanDecisionQueueBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "decisionPacketDraft",
        "evidenceTraceBundle",
        "reviewerAssignment",
        "rollbackWindowCandidate",
        "runtimeGateSeparated",
        "sourceControlCutoverSeparated",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseHumanDecisionQueueBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseHumanDecisionQueueBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseHumanDecisionQueueBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseHumanDecisionQueueBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "guardItemLabel",
        "draftLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseDecisionRecordDraftGuardBoard",
            list(web_messages_zh["iwooos"]["ownerResponseDecisionRecordDraftGuardBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseDecisionRecordDraftGuardBoard",
            list(web_messages_en["iwooos"]["ownerResponseDecisionRecordDraftGuardBoard"].keys()),
            key,
        )
    for key in ["guards", "drafts", "formalRecords", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseDecisionRecordDraftGuardBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseDecisionRecordDraftGuardBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseDecisionRecordDraftGuardBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseDecisionRecordDraftGuardBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "recordIdentityDraft",
        "decisionScopeSnapshot",
        "reviewerRolePlaceholder",
        "evidenceVersionFreeze",
        "approvalNotExecutionBoundary",
        "followupRuntimeGatePointer",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseDecisionRecordDraftGuardBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseDecisionRecordDraftGuardBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseDecisionRecordDraftGuardBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseDecisionRecordDraftGuardBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "checkItemLabel",
        "preflightLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordCandidatePreflightBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordCandidatePreflightBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordCandidatePreflightBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordCandidatePreflightBoard"].keys()),
            key,
        )
    for key in ["checks", "candidates", "formalRecords", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordCandidatePreflightBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordCandidatePreflightBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordCandidatePreflightBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordCandidatePreflightBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "candidateIdentityTrace",
        "reviewerIdentityBoundary",
        "evidenceVersionChain",
        "scopeAndExpiry",
        "riskRollbackField",
        "runtimeGateSeparation",
        "sourceControlSeparation",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordCandidatePreflightBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordCandidatePreflightBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordCandidatePreflightBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordCandidatePreflightBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "laneLabel",
        "resultLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordCandidateOutcomeBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordCandidateOutcomeBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordCandidateOutcomeBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordCandidateOutcomeBoard"].keys()),
            key,
        )
    for key in ["lanes", "ready", "promoted", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordCandidateOutcomeBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordCandidateOutcomeBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordCandidateOutcomeBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordCandidateOutcomeBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "remainCandidateWaiting",
        "returnToDraft",
        "needsEvidenceRefresh",
        "needsReviewerClarification",
        "readyForRecordOwner",
        "quarantineSensitivePayload",
        "rejectMutationRequest",
        "runtimeOrCutoverGateRequired",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordCandidateOutcomeBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordCandidateOutcomeBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordCandidateOutcomeBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordCandidateOutcomeBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "packetLabel",
        "handoffLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerHandoffBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerHandoffBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerHandoffBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerHandoffBoard"].keys()),
            key,
        )
    for key in ["packets", "ready", "assigned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerHandoffBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerHandoffBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerHandoffBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerHandoffBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "handoffIdentityBundle",
        "handoffDecisionContext",
        "handoffEvidenceLock",
        "handoffReviewerNotes",
        "handoffRiskRollback",
        "handoffRuntimeGatePointer",
        "handoffSourceControlPointer",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerHandoffBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerHandoffBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerHandoffBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerHandoffBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "checkLabel",
        "reviewLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerHandoffReviewBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerHandoffReviewBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewBoard"].keys()),
            key,
        )
    for key in ["checks", "passed", "assigned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerHandoffReviewBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerHandoffReviewBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "packetCompleteness",
        "recordOwnerIdentityScope",
        "authorityBoundaryMatch",
        "evidenceVersionConfirm",
        "reviewerNoteConfirm",
        "mutationRequestReject",
        "runtimeCutoverSeparation",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerHandoffReviewBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerHandoffReviewBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "laneLabel",
        "resultLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard"].keys()),
            key,
        )
    for key in ["lanes", "ready", "assigned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "remainReviewWaiting",
        "requestPacketCompletion",
        "requestOwnerScopeClarification",
        "requestEvidenceRefresh",
        "readyForRecordOwnerReview",
        "quarantineSensitivePayload",
        "rejectMutationRequest",
        "runtimeOrCutoverGateRequired",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerHandoffReviewOutcomeBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "packetLabel",
        "prepareLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerReviewPreparationBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerReviewPreparationBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerReviewPreparationBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerReviewPreparationBoard"].keys()),
            key,
        )
    for key in ["packets", "ready", "assigned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerReviewPreparationBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerReviewPreparationBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerReviewPreparationBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerReviewPreparationBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "reviewIdentityPacket",
        "handoffOutcomeSnapshot",
        "ownerScopePacket",
        "authorityBoundaryPacket",
        "evidenceTracePacket",
        "reviewerNotePacket",
        "mutationRejectionPacket",
        "runtimeCutoverPointer",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerReviewPreparationBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerReviewPreparationBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerReviewPreparationBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerReviewPreparationBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "checkLabel",
        "reviewLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerReviewChecklistBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerReviewChecklistBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerReviewChecklistBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerReviewChecklistBoard"].keys()),
            key,
        )
    for key in ["checks", "passed", "assigned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerReviewChecklistBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerReviewChecklistBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerReviewChecklistBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerReviewChecklistBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "identityTraceCheck",
        "handoffOutcomeCheck",
        "ownerScopeCheck",
        "authorityBoundaryCheck",
        "evidenceTraceCheck",
        "reviewerNoteCheck",
        "mutationRejectionCheck",
        "runtimeCutoverSeparationCheck",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerReviewChecklistBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerReviewChecklistBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerReviewChecklistBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerReviewChecklistBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "laneLabel",
        "resultLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerReviewOutcomeBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerReviewOutcomeBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerReviewOutcomeBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerReviewOutcomeBoard"].keys()),
            key,
        )
    for key in ["lanes", "ready", "assigned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerReviewOutcomeBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerReviewOutcomeBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerReviewOutcomeBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerReviewOutcomeBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "remainOwnerReviewWaiting",
        "requestTraceCompletion",
        "requestOwnerScopeClarification",
        "requestAuthorityBoundaryFix",
        "readyForManualOwnerAssignmentReview",
        "quarantineSensitivePayload",
        "rejectMutationRequest",
        "runtimeOrPrimaryGateRequired",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerReviewOutcomeBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerReviewOutcomeBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerReviewOutcomeBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerReviewOutcomeBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "packetLabel",
        "preparationLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentPreparationBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentPreparationBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentPreparationBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentPreparationBoard"].keys()),
            key,
        )
    for key in ["packets", "ready", "assigned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentPreparationBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentPreparationBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentPreparationBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentPreparationBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "assignmentIdentityCandidate",
        "ownerScopeConfirmation",
        "authorityBoundaryConfirmation",
        "evidenceTraceConfirmation",
        "reviewOutcomeReference",
        "backupOwnerNote",
        "mutationRejectionConfirmation",
        "runtimePrimarySeparation",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentPreparationBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentPreparationBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentPreparationBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentPreparationBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "checkLabel",
        "confirmationLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentChecklistBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentChecklistBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentChecklistBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentChecklistBoard"].keys()),
            key,
        )
    for key in ["checks", "passed", "assigned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentChecklistBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentChecklistBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentChecklistBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentChecklistBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "assignmentIdentityReadable",
        "ownerScopeCurrent",
        "authorityBoundaryReadable",
        "evidenceTraceReadable",
        "reviewOutcomeLinked",
        "backupOwnerNoteReadable",
        "mutationRejectionConfirmed",
        "runtimePrimarySeparated",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentChecklistBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentChecklistBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentChecklistBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentChecklistBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "laneLabel",
        "resultLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentOutcomeBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentOutcomeBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentOutcomeBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentOutcomeBoard"].keys()),
            key,
        )
    for key in ["lanes", "ready", "assigned", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentOutcomeBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentOutcomeBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentOutcomeBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentOutcomeBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "remainAssignmentCheckWaiting",
        "requestIdentityClarification",
        "requestScopeRefresh",
        "requestAuthorityBoundaryFix",
        "readyForManualOwnerAssignmentDecision",
        "quarantineSensitivePayload",
        "rejectMutationRequest",
        "runtimeOrPrimaryGateRequired",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentOutcomeBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentOutcomeBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentOutcomeBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentOutcomeBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "packetLabel",
        "requirementLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard"].keys()),
            key,
        )
    for key in ["packets", "ready", "decisions", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "outcomeTracePacket",
        "ownerIdentityPacket",
        "scopeSnapshotPacket",
        "authorityBoundaryPacket",
        "evidenceReviewPacket",
        "quarantineAndExceptionPacket",
        "mutationRejectionPacket",
        "runtimePrimaryGatePacket",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionPreparationBoard"]["items"].keys()),
            key,
        )
    for key in [
        "title",
        "subtitle",
        "checkLabel",
        "confirmationLabel",
        "guardLabel",
        "boundaryTitle",
        "summary",
        "items",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard"].keys()),
            key,
        )
    for key in ["checks", "passed", "decisions", "runtime"]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard.summary",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard"]["summary"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard.summary",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard"]["summary"].keys()),
            key,
        )
    for key in [
        "decisionTraceReadable",
        "ownerIdentityConfirmable",
        "scopeSnapshotCurrent",
        "authorityBoundaryChecked",
        "evidenceChainReadable",
        "quarantineExceptionChecked",
        "mutationRejectionChecked",
        "runtimePrimarySeparated",
    ]:
        assert_contains(
            "web_messages.zh-TW.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard.items",
            list(web_messages_zh["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard"]["items"].keys()),
            key,
        )
        assert_contains(
            "web_messages.en.iwooos.ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard.items",
            list(web_messages_en["iwooos"]["ownerResponseFormalRecordOwnerAssignmentDecisionChecklistBoard"]["items"].keys()),
            key,
        )

    owner_summary = owner_rollup["summary"]
    assert_equal("owner_rollup.total_received_response_count", owner_summary["total_received_response_count"], 0)
    assert_equal("owner_rollup.total_accepted_response_count", owner_summary["total_accepted_response_count"], 0)
    assert_equal("owner_rollup.owner_response_evidence_routing_rule_count", owner_summary["owner_response_evidence_routing_rule_count"], 6)
    assert_equal("owner_rollup.owner_response_validation_display_section_count", owner_summary["owner_response_validation_display_section_count"], 8)
    assert_equal(
        "owner_rollup.owner_response_validation_state_transition_rule_count",
        owner_summary["owner_response_validation_state_transition_rule_count"],
        7,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_checklist_count",
        owner_summary["owner_response_validation_reviewer_checklist_count"],
        9,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_outcome_lane_count",
        owner_summary["owner_response_validation_reviewer_outcome_lane_count"],
        7,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_audit_event_template_count",
        owner_summary["owner_response_validation_reviewer_audit_event_template_count"],
        4,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_audit_display_section_count",
        owner_summary["owner_response_validation_reviewer_audit_display_section_count"],
        5,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_audit_collection_check_count",
        owner_summary["owner_response_validation_reviewer_audit_collection_check_count"],
        6,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_audit_redaction_example_count",
        owner_summary["owner_response_validation_reviewer_audit_redaction_example_count"],
        5,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_audit_retention_rule_count",
        owner_summary["owner_response_validation_reviewer_audit_retention_rule_count"],
        5,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_audit_retention_check_count",
        owner_summary["owner_response_validation_reviewer_audit_retention_check_count"],
        6,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_audit_handoff_packet_count",
        owner_summary["owner_response_validation_reviewer_audit_handoff_packet_count"],
        6,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_reviewer_audit_handoff_check_count",
        owner_summary["owner_response_validation_reviewer_audit_handoff_check_count"],
        6,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_parallel_session_sync_check_count",
        owner_summary["owner_response_validation_parallel_session_sync_check_count"],
        6,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_parallel_session_conflict_lane_count",
        owner_summary["owner_response_validation_parallel_session_conflict_lane_count"],
        6,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_parallel_session_recovery_check_count",
        owner_summary["owner_response_validation_parallel_session_recovery_check_count"],
        6,
    )
    assert_equal(
        "owner_rollup.owner_response_validation_parallel_session_recovery_outcome_lane_count",
        owner_summary["owner_response_validation_parallel_session_recovery_outcome_lane_count"],
        7,
    )
    assert_false("owner_rollup.runtime_execution_authorized", owner_summary["runtime_execution_authorized"])
    assert_false("owner_rollup.repo_creation_authorized", owner_summary["repo_creation_authorized"])
    assert_false("owner_rollup.refs_sync_authorized", owner_summary["refs_sync_authorized"])
    assert_false("owner_rollup.workflow_modification_authorized", owner_summary["workflow_modification_authorized"])
    assert_false("owner_rollup.github_primary_switch_authorized", owner_summary["github_primary_switch_authorized"])
    assert_false("owner_rollup.action_buttons_allowed", owner_summary["action_buttons_allowed"])

    next_candidate = owner_rollup["next_collection_candidate"]
    assert_equal("owner_rollup.next_collection_candidate.order", next_candidate["order"], 1)
    assert_equal(
        "owner_rollup.next_collection_candidate.lane_id",
        next_candidate["lane_id"],
        "s4_9_gitea_inventory_owner_attestation_response",
    )
    assert_equal(
        "owner_rollup.next_collection_candidate.display_status",
        next_candidate["display_status"],
        "next_owner_response_required",
    )
    assert_equal(
        "owner_rollup.next_collection_candidate.required_response_template_count",
        next_candidate["required_response_template_count"],
        5,
    )
    assert_equal("owner_rollup.next_collection_candidate.received_response_count", next_candidate["received_response_count"], 0)
    assert_equal("owner_rollup.next_collection_candidate.accepted_response_count", next_candidate["accepted_response_count"], 0)
    assert_equal(
        "owner_rollup.next_collection_candidate.awooop_display_mode",
        next_candidate["awooop_display_mode"],
        "display_next_collection_item_only",
    )
    assert_true("owner_rollup.next_collection_candidate.blocked_until_received", next_candidate["blocked_until_received"])
    assert_false("owner_rollup.next_collection_candidate.execution_authorized", next_candidate["execution_authorized"])
    assert_true("owner_rollup.next_collection_candidate.not_approval", next_candidate["not_approval"])

    owner_local_validation = owner_rollup["latest_local_validation"]
    assert_equal("owner_rollup.latest_local_validation.status", owner_local_validation["status"], "repo_snapshot_guard_pass")
    assert_equal("owner_rollup.latest_local_validation.scope", owner_local_validation["scope"], "repo_snapshot_only")
    assert_equal("owner_rollup.latest_local_validation.result", owner_local_validation["result"], "SOURCE_CONTROL_OWNER_RESPONSE_GUARD_OK")
    assert_equal("owner_rollup.latest_local_validation.received_response_count", owner_local_validation["received_response_count"], 0)
    assert_equal("owner_rollup.latest_local_validation.accepted_response_count", owner_local_validation["accepted_response_count"], 0)
    assert_false("owner_rollup.latest_local_validation.runtime_actions_authorized", owner_local_validation["runtime_actions_authorized"])
    assert_false("owner_rollup.latest_local_validation.repo_or_refs_actions_authorized", owner_local_validation["repo_or_refs_actions_authorized"])
    assert_false("owner_rollup.latest_local_validation.workflow_or_secret_actions_authorized", owner_local_validation["workflow_or_secret_actions_authorized"])
    assert_true("owner_rollup.latest_local_validation.not_authorization", owner_local_validation["not_authorization"])

    primary_summary = primary_gate["summary"]
    assert_equal("primary_gate.candidate_repo_count", primary_summary["candidate_repo_count"], 10)
    assert_equal("primary_gate.in_scope_repo_count", primary_summary["in_scope_repo_count"], 9)
    assert_equal("primary_gate.primary_ready_count", primary_summary["primary_ready_count"], 0)
    assert_equal("primary_gate.blocked_in_scope_count", primary_summary["blocked_in_scope_count"], 9)
    assert_equal("owner_rollup.total_response_template_count", owner_summary["total_response_template_count"], 24)
    assert_false("primary_gate.runtime_actions_authorized", primary_summary["runtime_actions_authorized"])
    assert_false("primary_gate.github_primary_switch_authorized", primary_summary["github_primary_switch_authorized"])
    assert_false("primary_gate.action_buttons_allowed", primary_summary["action_buttons_allowed"])
    assert_false("primary_gate.raw_secret_storage_authorized", primary_summary["raw_secret_storage_authorized"])

    acceptance_ids = [item["check_id"] for item in acceptance["acceptance_checks"]]
    assert_equal("acceptance.total_contracts", acceptance["summary"]["total_contracts"], manifest_count)
    assert_equal(
        "acceptance.ready_for_mirror_count",
        acceptance["summary"]["ready_for_mirror_count"],
        readiness_summary["ready_for_mirror_count"],
    )
    assert_contains("acceptance_checks", acceptance_ids, "PROGRESS_ESTIMATE_NOT_AUTHORIZATION")
    assert_equal("acceptance.summary.acceptance_check_count", acceptance["summary"]["acceptance_check_count"], len(acceptance_ids))
    assert_equal(
        "acceptance.summary.blocking_check_count",
        acceptance["summary"]["blocking_check_count"],
        sum(1 for item in acceptance["acceptance_checks"] if item["blocking_if_failed"]),
    )
    assert_false("acceptance.runtime_execution_authorized", acceptance["runtime_execution_authorized"])

    dry_run_summary = dry_run["summary"]
    dry_run_step_ids = [item["step_id"] for item in dry_run["dry_run_steps"]]
    assert_equal("dry_run.dry_run_status", dry_run["dry_run_status"], "contract_defined_not_executed")
    assert_equal("dry_run.total_contracts", dry_run_summary["total_contracts"], manifest_count)
    assert_equal(
        "dry_run.ready_for_mirror_count",
        dry_run_summary["ready_for_mirror_count"],
        readiness_summary["ready_for_mirror_count"],
    )
    assert_equal("dry_run.acceptance_check_count", dry_run_summary["acceptance_check_count"], 8)
    assert_false("dry_run.runtime_execution_authorized", dry_run["runtime_execution_authorized"])
    assert_false("dry_run.runtime_actions_executed", dry_run_summary["runtime_actions_executed"])
    assert_false("dry_run.payloads_ingested", dry_run_summary["payloads_ingested"])
    assert_contains("dry_run_steps", dry_run_step_ids, "CHECK_PROGRESS_GUARD")
    assert_contains("dry_run_steps", dry_run_step_ids, "CHECK_OWNER_RESPONSE_GUARD")

    local_validation = dry_run["latest_local_validation"]
    assert_equal("dry_run.latest_local_validation.status", local_validation["status"], "repo_snapshot_guard_pass")
    assert_equal("dry_run.latest_local_validation.scope", local_validation["scope"], "repo_snapshot_only")
    assert_equal(
        "dry_run.latest_local_validation.result",
        local_validation["result"],
        "SECURITY_MIRROR_PROGRESS_GUARD_OK; SOURCE_CONTROL_OWNER_RESPONSE_GUARD_OK",
    )
    assert_contains("dry_run.latest_local_validation.validated_steps", local_validation["validated_steps"], "CHECK_PROGRESS_GUARD")
    assert_contains(
        "dry_run.latest_local_validation.validated_steps",
        local_validation["validated_steps"],
        "CHECK_OWNER_RESPONSE_GUARD",
    )
    assert_false("dry_run.latest_local_validation.runtime_actions_executed", local_validation["runtime_actions_executed"])
    assert_false("dry_run.latest_local_validation.payloads_ingested", local_validation["payloads_ingested"])
    assert_false("dry_run.latest_local_validation.production_ingestion_enabled", local_validation["production_ingestion_enabled"])
    assert_true("dry_run.latest_local_validation.not_authorization", local_validation["not_authorization"])

    forbidden_actions = (
        set(rollup["forbidden_actions"])
        | set(acceptance["forbidden_actions"])
        | set(iwooos_projection["forbidden_frontend_outputs"])
    )
    for action in [
        "start_kali_scan",
        "call_kali_execute_endpoint",
        "create_github_repo",
        "change_repo_visibility",
        "sync_git_refs",
        "switch_github_primary",
        "production_deploy",
    ]:
        assert_contains("forbidden_actions", list(forbidden_actions), action)

    frontend_product_text = "\n".join(
        [
            iwooos_projection_page,
            json.dumps(web_messages_zh["iwooos"], ensure_ascii=False),
            json.dumps(web_messages_en["iwooos"], ensure_ascii=False),
        ]
    )
    for forbidden in [
        "工作視窗",
        "內部對話",
        "對話內容",
        "批准！繼續",
        "In app browser",
        "My request for Codex",
    ]:
        assert_text_not_contains("iwooos_frontend_product_text.internal_conversation", frontend_product_text, forbidden)


def main() -> None:
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument(
        "--root",
        default=Path(__file__).resolve().parents[2],
        type=Path,
        help="Repository root. Defaults to the current script's repository.",
    )
    args = parser.parse_args()
    validate(args.root.resolve())
    print("SECURITY_MIRROR_PROGRESS_GUARD_OK")


if __name__ == "__main__":
    main()
