{
  "baseline_pass": false,
  "per_node": [
    {
      "spec_version": "1.2.0",
      "agent_type": "ironclaw",
      "agent_id": "ai:alice",
      "node_index": "1",
      "framework_version": "ironclaw 0.26.0",
      "ai_memory_version": "0.6.2-rc.0",
      "peer_urls": "http://10.251.0.4:9077,http://10.251.0.2:9077,http://10.251.0.5:9077",
      "config_file_sha256": "a0aeec1dfbc3ee076c0656595d4983938cb790571a5236ab7265b57a52b90861",
      "config_attestation": {
        "framework_is_authentic": true,
        "mcp_server_ai_memory_registered": true,
        "llm_backend_is_xai_grok": true,
        "llm_is_default_provider": true,
        "mcp_command_is_ai_memory": true,
        "agent_id_stamped": false,
        "federation_live": true,
        "ufw_disabled": true,
        "iptables_flushed": true,
        "dead_man_switch_scheduled": true
      },
      "negative_invariants": {
        "_description": "Alternative A2A channels must be OFF so a passing scenario is only passing via ai-memory shared memory. Any true here = thesis-preserving.",
        "a2a_protocol_off": false,
        "sub_agent_or_sessions_spawn_off": true,
        "alternative_channels_off": false,
        "tool_allowlist_is_memory_only": false,
        "a2a_gate_profile_locked": false
      },
      "functional_probes": {
        "xai_grok_chat_reachable": true,
        "xai_grok_sample_reply": "READY",
        "substrate_http_canary_f2a": true,
        "substrate_http_canary_uuid": "0090e5ad-8ac1-4d38-9117-9f34677a791b",
        "agent_mcp_canary_f2b": false,
        "agent_mcp_canary_uuid": "8b882da7-6724-4b9e-a7be-36847b31384d",
        "agent_canary_response_head": "",
        "_f2b_note": "F2b is LLM-dependent and non-blocking. F2a (deterministic HTTP substrate) gates baseline_pass.",
        "mesh_connectivity_f4": true,
        "mesh_edges_ok": 3,
        "mesh_edges_total": 3,
        "mesh_edges_detail": "10.251.0.4:9077:OK,10.251.0.2:9077:OK,10.251.0.5:9077:OK",
        "_f4_note": "F4 verifies this local nodes N-1 OUTBOUND mesh edges to every peer via both GET health and POST sync_push dry_run. Aggregator ANDs across N nodes to confirm full N*(N-1) bidirectional reachability. Gates baseline_pass.",
        "agent_mcp_ai_memory_canary": true,
        "canary_uuid": "0090e5ad-8ac1-4d38-9117-9f34677a791b",
        "canary_namespace": "_baseline_canary_f2a"
      },
      "baseline_pass": false
    },
    {
      "spec_version": "1.2.0",
      "agent_type": "ironclaw",
      "agent_id": "ai:bob",
      "node_index": "2",
      "framework_version": "ironclaw 0.26.0",
      "ai_memory_version": "0.6.2-rc.0",
      "peer_urls": "http://10.251.0.3:9077,http://10.251.0.2:9077,http://10.251.0.5:9077",
      "config_file_sha256": "02f7211b95fff818acd1b8efd078647861a5b0eb9e5450100d651c38e306e803",
      "config_attestation": {
        "framework_is_authentic": true,
        "mcp_server_ai_memory_registered": true,
        "llm_backend_is_xai_grok": true,
        "llm_is_default_provider": true,
        "mcp_command_is_ai_memory": true,
        "agent_id_stamped": false,
        "federation_live": true,
        "ufw_disabled": true,
        "iptables_flushed": true,
        "dead_man_switch_scheduled": true
      },
      "negative_invariants": {
        "_description": "Alternative A2A channels must be OFF so a passing scenario is only passing via ai-memory shared memory. Any true here = thesis-preserving.",
        "a2a_protocol_off": false,
        "sub_agent_or_sessions_spawn_off": true,
        "alternative_channels_off": false,
        "tool_allowlist_is_memory_only": false,
        "a2a_gate_profile_locked": false
      },
      "functional_probes": {
        "xai_grok_chat_reachable": true,
        "xai_grok_sample_reply": "READY",
        "substrate_http_canary_f2a": true,
        "substrate_http_canary_uuid": "e89ecb32-67fa-414c-95e9-8bd0bb0875df",
        "agent_mcp_canary_f2b": false,
        "agent_mcp_canary_uuid": "3129fb9b-3923-4b8e-8395-f3ce3e10dbf3",
        "agent_canary_response_head": "",
        "_f2b_note": "F2b is LLM-dependent and non-blocking. F2a (deterministic HTTP substrate) gates baseline_pass.",
        "mesh_connectivity_f4": true,
        "mesh_edges_ok": 3,
        "mesh_edges_total": 3,
        "mesh_edges_detail": "10.251.0.3:9077:OK,10.251.0.2:9077:OK,10.251.0.5:9077:OK",
        "_f4_note": "F4 verifies this local nodes N-1 OUTBOUND mesh edges to every peer via both GET health and POST sync_push dry_run. Aggregator ANDs across N nodes to confirm full N*(N-1) bidirectional reachability. Gates baseline_pass.",
        "agent_mcp_ai_memory_canary": true,
        "canary_uuid": "e89ecb32-67fa-414c-95e9-8bd0bb0875df",
        "canary_namespace": "_baseline_canary_f2a"
      },
      "baseline_pass": false
    },
    {
      "spec_version": "1.2.0",
      "agent_type": "ironclaw",
      "agent_id": "ai:charlie",
      "node_index": "3",
      "framework_version": "ironclaw 0.26.0",
      "ai_memory_version": "0.6.2-rc.0",
      "peer_urls": "http://10.251.0.3:9077,http://10.251.0.4:9077,http://10.251.0.5:9077",
      "config_file_sha256": "25eb35dacbccf4e0f56691aae42e7880e3aa2ed8d317e6efc564f1f41e9eae9e",
      "config_attestation": {
        "framework_is_authentic": true,
        "mcp_server_ai_memory_registered": true,
        "llm_backend_is_xai_grok": true,
        "llm_is_default_provider": true,
        "mcp_command_is_ai_memory": true,
        "agent_id_stamped": false,
        "federation_live": true,
        "ufw_disabled": true,
        "iptables_flushed": true,
        "dead_man_switch_scheduled": true
      },
      "negative_invariants": {
        "_description": "Alternative A2A channels must be OFF so a passing scenario is only passing via ai-memory shared memory. Any true here = thesis-preserving.",
        "a2a_protocol_off": false,
        "sub_agent_or_sessions_spawn_off": true,
        "alternative_channels_off": false,
        "tool_allowlist_is_memory_only": false,
        "a2a_gate_profile_locked": false
      },
      "functional_probes": {
        "xai_grok_chat_reachable": true,
        "xai_grok_sample_reply": "READY",
        "substrate_http_canary_f2a": true,
        "substrate_http_canary_uuid": "b8cde617-f409-4b6b-aea1-f97bfa9814f1",
        "agent_mcp_canary_f2b": false,
        "agent_mcp_canary_uuid": "2178b023-c10a-4e9e-960b-ee2cfda56fc3",
        "agent_canary_response_head": "",
        "_f2b_note": "F2b is LLM-dependent and non-blocking. F2a (deterministic HTTP substrate) gates baseline_pass.",
        "mesh_connectivity_f4": true,
        "mesh_edges_ok": 3,
        "mesh_edges_total": 3,
        "mesh_edges_detail": "10.251.0.3:9077:OK,10.251.0.4:9077:OK,10.251.0.5:9077:OK",
        "_f4_note": "F4 verifies this local nodes N-1 OUTBOUND mesh edges to every peer via both GET health and POST sync_push dry_run. Aggregator ANDs across N nodes to confirm full N*(N-1) bidirectional reachability. Gates baseline_pass.",
        "agent_mcp_ai_memory_canary": true,
        "canary_uuid": "b8cde617-f409-4b6b-aea1-f97bfa9814f1",
        "canary_namespace": "_baseline_canary_f2a"
      },
      "baseline_pass": false
    }
  ],
  "failure_mode": "baseline-violation"
}
