{ "work_package": "P3-WP04", "engineering_status": "ENGINEERING_COMPLETE_ENTERPRISE_EDGE_UAT_BLOCKED", "generated_at": "2026-08-09", "scope_boundary": "Local engineering verification only; no approved enterprise source or enterprise network UAT was executed.", "cases": [ { "case_id": "WP04-FI-001", "scope": "contract and egress policy", "preconditions": ["Local Python test environment", "No enterprise source connection"], "steps": ["Submit raw rows, recent detail, credentials, private key markers, obfuscated SQL and oversized/cyclic payloads to contract/policy boundaries"], "safety_boundary": "Synthetic values only; no real secret or source record", "expected": "Default deny before persistence or network egress", "evidence": ["tests/test_phase3_wp04_edge_gateway.py", "tests/security/test_phase3_wp04_data_boundary.py"], "rollback": "No state mutation; remove temporary SQLite directories", "status": "VERIFIED_LOCAL" }, { "case_id": "WP04-FI-002", "scope": "offline queue, lease and replay", "preconditions": ["Temporary disk-backed SQLite queue"], "steps": ["Interrupt delivery", "Recover stale lease", "Replay same event", "Replay changed digest", "Race cancellation and completion"], "safety_boundary": "Temporary local queue; synthetic task and event contracts", "expected": "No lost accepted event; same digest returns prior ACK; changed digest conflicts; stale worker is fenced", "evidence": ["tests/test_phase3_wp04_edge_gateway.py", "tests/integration/test_phase3_wp04_edge_agent.py"], "rollback": "Close queue and remove temporary files", "status": "VERIFIED_LOCAL" }, { "case_id": "WP04-FI-003", "scope": "PostgreSQL identity and signing authority", "preconditions": ["Local Docker PostgreSQL on 127.0.0.1:15432", "Alembic head 20260809_479"], "steps": ["Replay and alter enrollment binding", "Rotate and revoke credentials", "Attempt app-role signing-key mutation", "Race task pull/event ACK/release transitions"], "safety_boundary": "Local test database only; test rows are deleted or transactionally isolated", "expected": "Hashes only at rest; failed binding does not consume enrollment; old/revoked credential fails; application role cannot mutate signing authority", "evidence": ["tests/integration/test_phase3_wp04_edge_gateway_postgres.py", "tests/test_phase3_wp04_production_runtime.py"], "rollback": "Downgrade/upgrade migration test restores head 479; dispose test connections", "status": "VERIFIED_LOCAL" }, { "case_id": "WP04-FI-004", "scope": "mTLS proxy, CA and CRL", "preconditions": ["Temporary local CA/server/client certificates", "Local Nginx container image"], "steps": ["Connect without certificate", "Connect with untrusted certificate", "Connect with valid certificate", "Revoke certificate and reload CRL"], "safety_boundary": "Ephemeral CA and localhost-only test topology; no enterprise CA", "expected": "Only valid non-revoked client reaches upstream with trusted proof headers; CRL blocks revoked client", "evidence": ["tests/integration/test_phase3_wp04_nginx_mtls.py"], "rollback": "Stop temporary containers and delete ephemeral certificates/network", "status": "VERIFIED_LOCAL" }, { "case_id": "WP04-FI-005", "scope": "signed release and local administration", "preconditions": ["Temporary edge root", "Ephemeral Ed25519 release key"], "steps": ["Create local CSR under the configured runtime UID/GID", "Validate clientAuth certificate, CA chain and CRL before writing fixed registration material", "Reject expired, cross-gateway and forged signed revocation envelopes", "Copy a valid signed artifact into a controlled verified bundle", "Forge a bundle manifest and alter an artifact after verification", "Inject directory fsync failure after current pointer replacement and retry rollback", "Replay completed rollback with matching and mismatched stale intent", "Inject stale-intent unlink and state-directory fsync failures, retry, then execute the next valid rollback", "Attempt symlink escape, wrong current/target digest, downgrade and changed replay"], "safety_boundary": "Temporary local files; generated test keys only", "expected": "Private key remains 0600 and undisclosed/readable only by the configured runtime identity; registration is secret-free and idempotent; revocation authority, both rollback manifests and both artifact hashes are reverified; tamper, replay change, wrong binding, downgrade and path escape fail closed; a post-pointer fsync interruption is recovered deterministically without reporting an uncommitted state", "evidence": ["tests/test_phase3_wp04_delivery_contract.py", "tests/integration/test_phase3_wp04_edge_agent.py"], "rollback": "Remove temporary root; no installed release is changed", "status": "VERIFIED_LOCAL" }, { "case_id": "WP04-FI-006", "scope": "runnable pull-only edge image and server CRL", "preconditions": ["Local Docker Engine", "Ephemeral local mTLS control plane", "Temporary CA, server/client certificates and fresh server CRL"], "steps": ["Build the repository Edge Dockerfile", "Start the container without published ports", "Observe heartbeat, reconcile and empty task pull over mTLS", "Stop the local control plane and observe degraded health without process exit", "Send SIGTERM and verify clean stop", "Validate stale server CRL rejection and CRL_CHECK_LEAF configuration"], "safety_boundary": "Temporary local certificates, credential and localhost/host.docker.internal test control only; no enterprise source, CA or network", "expected": "The image runs a pull-only loop with no inbound port; valid mTLS reaches only the exact origin; disconnect degrades without leaking secrets; stale/invalid server CRL fails closed; SIGTERM stops cleanly", "evidence": ["tests/integration/test_phase3_wp04_edge_runtime.py"], "rollback": "Stop the temporary container/control server and remove the temporary certificate and queue directories", "status": "VERIFIED_LOCAL" }, { "case_id": "WP04-FI-101", "scope": "approved enterprise sources", "preconditions": ["enterprise_source_1", "enterprise_source_2", "Approved read-only identities and samples"], "steps": ["Run collect, profile, quality, lineage and controlled query on both approved sources", "Interrupt and resume"], "safety_boundary": "Enterprise approval and maintenance window required", "expected": "Source tasks complete without data leaving the approved boundary", "evidence": [], "rollback": "Stop edge tasks and revoke source sessions according to enterprise procedure", "status": "TBD_EXTERNAL" }, { "case_id": "WP04-FI-102", "scope": "enterprise network data boundary", "preconditions": ["network", "Approved network zone, firewall, proxy, DNS and packet-capture plan"], "steps": ["Deploy pull-only edge", "Capture normal, blocked and reconnect traffic", "Attempt non-allowlisted destination"], "safety_boundary": "Network owner approval required; no production disruption", "expected": "Exact approved destinations only; unapproved raw-data egress events equal zero", "evidence": [], "rollback": "Disable edge egress rule and stop container", "status": "TBD_EXTERNAL" }, { "case_id": "WP04-FI-103", "scope": "enterprise security and legal acceptance", "preconditions": ["security_legal", "Approved classification, retention and evidence map"], "steps": ["Review data classification and retention", "Witness certificate revoke/rotate", "Witness backup/restore and release rollback", "Sign boundary evidence"], "safety_boundary": "Authorized reviewers and approved evidence handling only", "expected": "Security, network and legal owners sign the enterprise data-boundary evidence", "evidence": [], "rollback": "Record rejection and remediation; do not promote to production", "status": "TBD_EXTERNAL" } ] }