{
  "campaign_id": "a2a-ironclaw-v0.6.3.1-local-docker-r3",
  "agent_group": "ironclaw",
  "ai_memory_git_ref": "release/v0.6.3.1",
  "completed_at": "2026-05-04T15:56:46Z",
  "overall_pass": true,
  "scenarios": [
    {
      "agent_group": "ironclaw",
      "expected_per_reader": 20,
      "pass": true,
      "per_agent": {
        "ai:alice": {
          "recall": 20
        },
        "ai:bob": {
          "recall": 20
        },
        "ai:charlie": {
          "recall": 20
        }
      },
      "per_namespace_node4": {
        "scenario1-ai:alice": {
          "count": 10,
          "wrong_agent_id": 0
        },
        "scenario1-ai:bob": {
          "count": 10,
          "wrong_agent_id": 0
        },
        "scenario1-ai:charlie": {
          "count": 10,
          "wrong_agent_id": 0
        }
      },
      "reasons": [],
      "scenario": "1",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "delete_http_code": 200,
      "m1_id": "443e1abf-2c95-464c-af24-05624ee855db",
      "pass": true,
      "post_delete_hits": {
        "node-2": 0,
        "node-3": 0,
        "node-4": 0
      },
      "post_delete_still_visible_peers": 0,
      "pre_delete_visible_peers": 3,
      "reasons": [],
      "scenario": "10",
      "skipped": false,
      "tls_mode": "off",
      "uuid": "d-9646c569f17c48478b673820b42e5fb5"
    },
    {
      "agent_group": "ironclaw",
      "charlie_sees_link": 1,
      "link_http_code": 201,
      "m1_id": "72c05810-6717-4679-ab0d-594fcf758817",
      "m2_id": "5749d376-9fc7-49cd-9f23-928fbd2c9e21",
      "pass": true,
      "reasons": [],
      "relation": "related_to",
      "scenario": "11",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "pass": true,
      "peers_see": {
        "node_2": 1,
        "node_3": 1,
        "node_4": 1
      },
      "reasons": [],
      "register_http_code": 201,
      "registered_agent": "ai:dave-probe-5436f551",
      "scenario": "12",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "m1_id": "2ce6289d-9f95-4b33-8682-66cc501f202b",
      "pass": true,
      "peer_view": {
        "node_1": "vb-9834f0bef468432eb8789bc05fe21d2b",
        "node_2": "vb-9834f0bef468432eb8789bc05fe21d2b",
        "node_3": "vb-9834f0bef468432eb8789bc05fe21d2b",
        "node_4": "vb-9834f0bef468432eb8789bc05fe21d2b"
      },
      "reasons": [],
      "scenario": "13",
      "skipped": false,
      "submitted": {
        "v0": "v0-5b14f84a8c9349ef9860aee43915bffe",
        "vA_alice": "va-cd41ba5be74340f69a05127f4dffc1e8",
        "vB_bob": "vb-9834f0bef468432eb8789bc05fe21d2b"
      },
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "expected_post_recovery": 20,
      "node3_saw": 20,
      "partition_target": "node-3",
      "pass": true,
      "reasons": [],
      "scenario": "14",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "pass": true,
      "reasons": [],
      "scenario": "15",
      "skipped": false,
      "tls_mode": "off",
      "uuid": "ryw-0c7f48b39e83448aa964a5ce1b06eb56",
      "writer_sees_own_write": 1
    },
    {
      "agent_group": "ironclaw",
      "bob_sees_tier": "long",
      "m1_id": "24ce34f6-3c3c-4ab6-9041-1f094148c9b1",
      "pass": true,
      "promote_http_code": 200,
      "reasons": [],
      "scenario": "16",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "expected_count": 15,
      "pass": true,
      "per_peer": {
        "node_1": 15,
        "node_2": 15,
        "node_3": 15,
        "node_4": 15
      },
      "reasons": [],
      "scenario": "17",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "diag_list_alice_present": 1,
      "diag_list_bob_present": 1,
      "diag_node3_embedding_probe": "dawn-walk|1537|BYTES | ridge-strides|1537|BYTES",
      "pass": true,
      "query": "morning outdoor exercise routine",
      "reasons": [],
      "recall_mode": "hybrid",
      "rows_in_recall": 2,
      "scenario": "18",
      "skipped": false,
      "tls_mode": "off",
      "writers": [
        {
          "agent": "ai:alice",
          "marker": "alice-sunrise-97b50d40",
          "seen_by_charlie": 1
        },
        {
          "agent": "ai:bob",
          "marker": "bob-daybreak-8c9d885f",
          "seen_by_charlie": 1
        }
      ]
    },
    {
      "agent_group": "ironclaw",
      "expected_per_reader": 20,
      "pass": true,
      "path": "serve-http",
      "per_agent": {
        "ai:alice": {
          "recall": 20
        },
        "ai:bob": {
          "recall": 20
        },
        "ai:charlie": {
          "recall": 20
        }
      },
      "per_namespace_node4": {
        "scenario1b-ai:alice": {
          "count": 10,
          "wrong_agent_id": 0
        },
        "scenario1b-ai:bob": {
          "count": 10,
          "wrong_agent_id": 0
        },
        "scenario1b-ai:charlie": {
          "count": 10,
          "wrong_agent_id": 0
        }
      },
      "reasons": [],
      "scenario": "1b",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "ack_uuid": "a-a73fcdadb65245b4987e8e57bfe2c75b",
      "agent_group": "ironclaw",
      "handoff_uuid": "h-436bc026f3794a8c80c63eab75c3264f",
      "pass": true,
      "path": "serve-http",
      "per_agent": {
        "ai:alice": {
          "sees_ack": 1
        },
        "ai:bob": {
          "sees_handoff": 1
        }
      },
      "reasons": [],
      "scenario": "2",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "pass": true,
      "reasons": [],
      "scenario": "22",
      "skipped": false,
      "tests": {
        "body_vs_header_conflict": {
          "acceptable": [
            "ai:body-wins",
            "ai:attacker"
          ],
          "stored_agent_id": "ai:attacker"
        },
        "header_only": {
          "expected": "ai:alice",
          "stored_agent_id": "ai:alice"
        }
      },
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "pass": true,
      "payloads": {
        "html": {
          "input_bytes": 66,
          "roundtrip_bytes": 66,
          "write_http": 201
        },
        "oversize": {
          "input_bytes": 1048576,
          "roundtrip_bytes": 0,
          "write_http": 400
        },
        "sql": {
          "input_bytes": 61,
          "roundtrip_bytes": 61,
          "write_http": 201
        },
        "unicode": {
          "input_bytes": 19,
          "roundtrip_bytes": 19,
          "write_http": 201
        }
      },
      "payloads_note": "accept+faithful OR 4xx reject both acceptable for oversize",
      "reasons": [],
      "scenario": "23",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "byzantine_marker": "bz-4db5c580bcb1431d90fc73d21e0eae75",
      "pass": true,
      "reasons": [],
      "scenario": "24",
      "skipped": false,
      "stored_metadata_agent_id": "REJECTED_BY_SERVER",
      "sync_push_http_code": "422",
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "clock_offset_seconds": 300,
      "marker": "ck-4e71bb2f10b64b4bb24260b56e78d81c",
      "pass": true,
      "reasons": [],
      "scenario": "25",
      "seen_on": {
        "node_1": 1,
        "node_3": 1
      },
      "skipped": false,
      "target_node": "node-3",
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "pass": true,
      "peer_hits": {
        "node_2": 1,
        "node_3": 1
      },
      "reasons": [],
      "scenario": "28",
      "skipped": false,
      "tls_mode": "off",
      "token": "kwsearch35fd19b0f8"
    },
    {
      "agent_group": "ironclaw",
      "archive_http_code": 200,
      "bob_sees_archived": true,
      "m1_id": "06c69afa-7604-4717-8086-31ac01947280",
      "node4_active_rows": 1,
      "pass": true,
      "reasons": [],
      "restore_http_code": 200,
      "scenario": "29",
      "skipped": false,
      "stats_shape_ok": true,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "pass": true,
      "peer_views": {
        "node_1": {
          "_path": "/api/v1/capabilities",
          "approval": {
            "pending_requests": 0
          },
          "compaction": {
            "enabled": false,
            "planned": true,
            "version": "v0.8+"
          },
          "features": {
            "auto_consolidation": false,
            "auto_tagging": false,
            "contradiction_analysis": false,
            "cross_encoder_reranking": false,
            "embedder_loaded": true,
            "hybrid_recall": true,
            "keyword_search": true,
            "memory_reflection": {
              "enabled": false,
              "planned": true,
              "version": "v0.7+"
            },
            "query_expansion": false,
            "recall_mode_active": "hybrid",
            "reranker_active": "off",
            "semantic_search": true
          },
          "hnsw": {
            "evicted_recently": false,
            "evictions_total": 0
          },
          "hooks": {
            "registered_count": 0,
            "webhook_events": [
              "memory_store",
              "memory_promote",
              "memory_delete",
              "memory_link_created",
              "memory_consolidated"
            ]
          },
          "models": {
            "cross_encoder": "none",
            "embedding": "sentence-transformers/all-MiniLM-L6-v2",
            "embedding_dim": 384,
            "llm": "none"
          },
          "permissions": {
            "active_rules": 0,
            "inheritance": "enforced",
            "mode": "advisory"
          },
          "schema_version": "2",
          "tier": "semantic",
          "transcripts": {
            "enabled": false,
            "planned": true,
            "version": "v0.7+"
          },
          "version": "0.6.3+patch.1"
        },
        "node_2": {
          "_path": "/api/v1/capabilities",
          "approval": {
            "pending_requests": 0
          },
          "compaction": {
            "enabled": false,
            "planned": true,
            "version": "v0.8+"
          },
          "features": {
            "auto_consolidation": false,
            "auto_tagging": false,
            "contradiction_analysis": false,
            "cross_encoder_reranking": false,
            "embedder_loaded": true,
            "hybrid_recall": true,
            "keyword_search": true,
            "memory_reflection": {
              "enabled": false,
              "planned": true,
              "version": "v0.7+"
            },
            "query_expansion": false,
            "recall_mode_active": "hybrid",
            "reranker_active": "off",
            "semantic_search": true
          },
          "hnsw": {
            "evicted_recently": false,
            "evictions_total": 0
          },
          "hooks": {
            "registered_count": 0,
            "webhook_events": [
              "memory_store",
              "memory_promote",
              "memory_delete",
              "memory_link_created",
              "memory_consolidated"
            ]
          },
          "models": {
            "cross_encoder": "none",
            "embedding": "sentence-transformers/all-MiniLM-L6-v2",
            "embedding_dim": 384,
            "llm": "none"
          },
          "permissions": {
            "active_rules": 0,
            "inheritance": "enforced",
            "mode": "advisory"
          },
          "schema_version": "2",
          "tier": "semantic",
          "transcripts": {
            "enabled": false,
            "planned": true,
            "version": "v0.7+"
          },
          "version": "0.6.3+patch.1"
        },
        "node_3": {
          "_path": "/api/v1/capabilities",
          "approval": {
            "pending_requests": 0
          },
          "compaction": {
            "enabled": false,
            "planned": true,
            "version": "v0.8+"
          },
          "features": {
            "auto_consolidation": false,
            "auto_tagging": false,
            "contradiction_analysis": false,
            "cross_encoder_reranking": false,
            "embedder_loaded": true,
            "hybrid_recall": true,
            "keyword_search": true,
            "memory_reflection": {
              "enabled": false,
              "planned": true,
              "version": "v0.7+"
            },
            "query_expansion": false,
            "recall_mode_active": "hybrid",
            "reranker_active": "off",
            "semantic_search": true
          },
          "hnsw": {
            "evicted_recently": false,
            "evictions_total": 0
          },
          "hooks": {
            "registered_count": 0,
            "webhook_events": [
              "memory_store",
              "memory_promote",
              "memory_delete",
              "memory_link_created",
              "memory_consolidated"
            ]
          },
          "models": {
            "cross_encoder": "none",
            "embedding": "sentence-transformers/all-MiniLM-L6-v2",
            "embedding_dim": 384,
            "llm": "none"
          },
          "permissions": {
            "active_rules": 0,
            "inheritance": "enforced",
            "mode": "advisory"
          },
          "schema_version": "2",
          "tier": "semantic",
          "transcripts": {
            "enabled": false,
            "planned": true,
            "version": "v0.7+"
          },
          "version": "0.6.3+patch.1"
        },
        "node_4": {
          "_path": "/api/v1/capabilities",
          "approval": {
            "pending_requests": 0
          },
          "compaction": {
            "enabled": false,
            "planned": true,
            "version": "v0.8+"
          },
          "features": {
            "auto_consolidation": false,
            "auto_tagging": false,
            "contradiction_analysis": false,
            "cross_encoder_reranking": false,
            "embedder_loaded": true,
            "hybrid_recall": true,
            "keyword_search": true,
            "memory_reflection": {
              "enabled": false,
              "planned": true,
              "version": "v0.7+"
            },
            "query_expansion": false,
            "recall_mode_active": "hybrid",
            "reranker_active": "off",
            "semantic_search": true
          },
          "hnsw": {
            "evicted_recently": false,
            "evictions_total": 0
          },
          "hooks": {
            "registered_count": 0,
            "webhook_events": [
              "memory_store",
              "memory_promote",
              "memory_delete",
              "memory_link_created",
              "memory_consolidated"
            ]
          },
          "models": {
            "cross_encoder": "none",
            "embedding": "sentence-transformers/all-MiniLM-L6-v2",
            "embedding_dim": 384,
            "llm": "none"
          },
          "permissions": {
            "active_rules": 0,
            "inheritance": "enforced",
            "mode": "advisory"
          },
          "schema_version": "2",
          "tier": "semantic",
          "transcripts": {
            "enabled": false,
            "planned": true,
            "version": "v0.7+"
          },
          "version": "0.6.3+patch.1"
        }
      },
      "reasons": [],
      "scenario": "30",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "expected_live": 2,
      "forget_http_code": 400,
      "gc_http_code": 200,
      "live_markers_per_peer": {
        "node_1": 2,
        "node_2": 2,
        "node_3": 2,
        "node_4": 2
      },
      "pass": true,
      "reasons": [],
      "scenario": "31",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "bob_inbox_count": 1,
      "bob_sees_marker": true,
      "charlie_inbox_count": 0,
      "charlie_sees_marker": false,
      "marker": "inb-69472db4e9ed49b898a77a14558b6463",
      "notify_http_code": 201,
      "pass": true,
      "reasons": [],
      "scenario": "32",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "m1_delivered": 1,
      "namespace": "scenario33-pubsub-f1992e",
      "ns_in_subs_after": false,
      "ns_in_subs_before": true,
      "pass": true,
      "reasons": [],
      "scenario": "33",
      "skipped": false,
      "subscribe_http_code": 201,
      "subscriptions_after_count": 0,
      "subscriptions_before_count": 1,
      "tls_mode": "off",
      "unsubscribe_http_code": 200
    },
    {
      "agent_group": "ironclaw",
      "approve_http_code": 200,
      "charlie_sees": {
        "approved": 1,
        "rejected": 0
      },
      "namespace": "scenario34-pending-0651d8",
      "pass": true,
      "pending_queue_count": 2,
      "reasons": [],
      "reject_http_code": 200,
      "scenario": "34",
      "set_standard_http_code": 201,
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "child_ns": "scenario35-parent-65e26b/child",
      "clear_http_code": 200,
      "get_standard_http_code": 200,
      "parent_ns": "scenario35-parent-65e26b",
      "pass": true,
      "post_clear_has_child_rule": false,
      "reasons": [],
      "scenario": "35",
      "sees_child_rule": true,
      "sees_parent_rule": true,
      "set_child_http_code": 201,
      "set_parent_http_code": 201,
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "pass": true,
      "reasons": [],
      "scenario": "36",
      "session_id": "70dc33e5-bd46-4d19-b7b6-f567da2d7807",
      "session_tagged_rows_on_bob": 2,
      "skipped": false,
      "start_http_code": 200,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "forward_has_target": true,
      "m1": "745f4a77-6132-45fa-a6cd-0fc41beff48b",
      "m2": "774214f8-7f4e-42f3-829b-075e17dda9d0",
      "pass": true,
      "reasons": [],
      "reverse_has_source": true,
      "scenario": "37",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "dst_ns": "scenario38-dst-8c24c7",
      "expected_rows": 5,
      "export_http_code": 200,
      "import_http_code": 200,
      "markers_preserved": 5,
      "pass": true,
      "reasons": [],
      "rows_exported": 5,
      "rows_in_destination": 5,
      "scenario": "38",
      "skipped": false,
      "src_ns": "scenario38-src-8c24c7",
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "checkpoint": "2026-05-04T15:54:50+00:00",
      "diag_curl_body_head": "{\"count\":6,\"earliest_updated_at\":\"2026-05-04T15:55:22.864127967+00:00\",\"latest_updated_at\":\"2026-05-04T15:55:23.581186675+00:00\",\"limit\":500,\"memories\":[{\"access_count\":0,\"confidence\":1.0,\"content\":\"marker=delta-0-db1e4d9a313e4d1d89575a0cc41fc02a\",\"created_at\":\"2026-05-04T15:55:22.864127967+00:00\",\"",
      "diag_curl_exit": 0,
      "diag_curl_http_code": 200,
      "diag_curl_stderr": "",
      "diag_earliest_updated_at": "2026-05-04T15:55:22.864127967+00:00",
      "diag_latest_updated_at": "2026-05-04T15:55:23.581186675+00:00",
      "diag_node3_health_reachable": true,
      "diag_updated_since": "2026-05-04T15:54:50+00:00",
      "expected_markers": 6,
      "markers_present": 6,
      "namespace": "scenario39-delta-aa7682",
      "pass": true,
      "reasons": [],
      "rows_returned": 6,
      "rows_returned_raw": 6,
      "scenario": "39",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "expected_per_agent": 30,
      "pass": true,
      "per_agent": {
        "ai:alice": {
          "count": 30,
          "wrong_agent_id": 0
        },
        "ai:bob": {
          "count": 30,
          "wrong_agent_id": 0
        },
        "ai:charlie": {
          "count": 30,
          "wrong_agent_id": 0
        }
      },
      "reasons": [],
      "scenario": "4",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "bulk_http_code": "200",
      "bulk_size": 500,
      "namespace": "scenario40-bulk-a75527",
      "pass": true,
      "per_peer_count": {
        "node_2": 500,
        "node_3": 500,
        "node_4": 500
      },
      "reasons": [],
      "scenario": "40",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "activity_namespace": "scenario41-activity-b4615e",
      "agent_group": "ironclaw",
      "pass": true,
      "per_peer": {
        "node_1": {
          "counters_t0": 8,
          "counters_t1": 8,
          "regressed_keys": 0
        },
        "node_2": {
          "counters_t0": 8,
          "counters_t1": 8,
          "regressed_keys": 0
        },
        "node_3": {
          "counters_t0": 7,
          "counters_t1": 7,
          "regressed_keys": 0
        }
      },
      "reasons": [],
      "scenario": "41",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "namespaces": [
        "scenario42-e7e7ac-0",
        "scenario42-e7e7ac-1",
        "scenario42-e7e7ac-2"
      ],
      "pass": true,
      "per_peer": {
        "node_1": {
          "scenario42-e7e7ac-0": 2,
          "scenario42-e7e7ac-1": 2,
          "scenario42-e7e7ac-2": 2
        },
        "node_2": {
          "scenario42-e7e7ac-0": 2,
          "scenario42-e7e7ac-1": 2,
          "scenario42-e7e7ac-2": 2
        },
        "node_3": {
          "scenario42-e7e7ac-0": 2,
          "scenario42-e7e7ac-1": 2,
          "scenario42-e7e7ac-2": 2
        },
        "node_4": {
          "scenario42-e7e7ac-0": 2,
          "scenario42-e7e7ac-1": 2,
          "scenario42-e7e7ac-2": 2
        }
      },
      "reasons": [],
      "scenario": "42",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "consolidate_http_code": 201,
      "consolidated_from_agents": [
        "ai:charlie",
        "ai:bob",
        "ai:alice"
      ],
      "consolidated_id": "f186232a-54fd-461e-a12e-fc0793d7e80a",
      "pass": true,
      "reasons": [],
      "scenario": "5",
      "skipped": false,
      "tls_mode": "off"
    },
    {
      "agent_group": "ironclaw",
      "alice_id": "2a171fb3-a3ee-4b32-8511-2da20d8e3857",
      "bob_id": "621c4ddc-7b75-45cc-ae69-09e381082634",
      "charlie_sees_both_memories": true,
      "charlie_sees_contradicts_link": true,
      "detect_http_code": 200,
      "pass": true,
      "reasons": [],
      "scenario": "6",
      "skipped": false,
      "tls_mode": "off",
      "topic": "sky-color-5171468e"
    },
    {
      "agent_group": "ironclaw",
      "charlie_view": {
        "agent_id": "ai:alice",
        "content": "v2-3d4deb0fcdd445f29fed31cd3bf2d427"
      },
      "m1_id": "3710422d-3d61-4fb5-8bc6-4d625a8d61ab",
      "pass": true,
      "put_http_code": 200,
      "reasons": [],
      "scenario": "9",
      "skipped": false,
      "tls_mode": "off",
      "v1_uuid": "v1-4753b8611c5c48d2942d9bd5a01e9984",
      "v2_uuid": "v2-3d4deb0fcdd445f29fed31cd3bf2d427"
    }
  ],
  "reasons": [],
  "skipped_reports": [],
  "meta": {
    "campaign_id": "a2a-ironclaw-v0.6.3.1-local-docker-r3",
    "agent_group": "ironclaw",
    "ai_memory_git_ref": "release/v0.6.3.1",
    "topology": "local-docker",
    "infra": {
      "provider": "local-docker",
      "host": "pop-os",
      "mesh_topology": "4-node bridge (3 ironclaw agents + 1 memory-only aggregator)",
      "region": "local-docker",
      "droplet_size": "n/a (container mem_limit=8g per ironclaw agent; 8g for aggregator)",
      "topology": "4-node Docker bridge network (10.88.2.0/24) \u2014 3 ironclaw agent containers + 1 memory-only aggregator",
      "nodes": [
        {
          "index": 1,
          "role": "agent",
          "agent_id": "ai:alice",
          "container": "a2a-node-1",
          "public_ip": "n/a (container)",
          "private_ip": "10.88.2.11"
        },
        {
          "index": 2,
          "role": "agent",
          "agent_id": "ai:bob",
          "container": "a2a-node-2",
          "public_ip": "n/a (container)",
          "private_ip": "10.88.2.12"
        },
        {
          "index": 3,
          "role": "agent",
          "agent_id": "ai:charlie",
          "container": "a2a-node-3",
          "public_ip": "n/a (container)",
          "private_ip": "10.88.2.13"
        },
        {
          "index": 4,
          "role": "memory-only",
          "container": "a2a-node-4",
          "public_ip": "n/a (container)",
          "private_ip": "10.88.2.14"
        }
      ]
    },
    "scenarios_requested": [
      "1",
      "10",
      "11",
      "12",
      "13",
      "14",
      "15",
      "16",
      "17",
      "18",
      "1b",
      "2",
      "22",
      "23",
      "24",
      "25",
      "28",
      "29",
      "30",
      "31",
      "32",
      "33",
      "34",
      "35",
      "36",
      "37",
      "38",
      "39",
      "4",
      "40",
      "41",
      "42",
      "5",
      "6",
      "9"
    ],
    "timing": {
      "started_at": "2026-05-04T15:48:05Z",
      "ended_at": "2026-05-04T15:56:46Z",
      "start": "2026-05-04T15:48:05Z",
      "end": "2026-05-04T15:56:46Z"
    },
    "ci": {
      "runner": "local-docker",
      "operator": "AI NHI (Claude Opus 4.7)"
    },
    "notes": "Tested on a local Docker mesh (3 ironclaw agents + 1 memory-only aggregator on a single workstation). NOT a DigitalOcean campaign \u2014 no DO infrastructure was provisioned. See docs/local-docker-mesh.md for full reproducibility. Every byte of config, build recipe, harness, and scenario is committed in this repo."
  }
}