{
  "tool_id": "art-494-icm-quorum-forgery-classifier",
  "note": "golden_hash filled by golden-parity.test.mjs --update. Vectors 1-2 are ordinary source L1 profiles. Vectors 3-7 are the five defined edge cases: a single validator meeting quorum alone, an empty validator list, all-zero weights, quorum_pct above 100, and quorum_pct at or below 0. Every edge case resolves to an explicit null or 0, never NaN.",
  "vectors": [
    {
      "name": "concentrated_source_below_floor",
      "description": "Seven validators of a source L1, stake 4000/2500/1200/900/700/400/300 (total 10000), receiving L1 accepts at 67 percent of stake, operator floor of 4 independent validators. Hand-computed: 4000+2500+1200 = 7700 >= 6700, so 3 validators reach quorum at 77.00 percent. Below the floor of 4.",
      "policy_parameters": {
        "validator_weights": [
          {
            "validator_id": "V-01",
            "weight": 4000
          },
          {
            "validator_id": "V-02",
            "weight": 2500
          },
          {
            "validator_id": "V-03",
            "weight": 1200
          },
          {
            "validator_id": "V-04",
            "weight": 900
          },
          {
            "validator_id": "V-05",
            "weight": 700
          },
          {
            "validator_id": "V-06",
            "weight": 400
          },
          {
            "validator_id": "V-07",
            "weight": 300
          }
        ],
        "quorum_pct": 67,
        "min_colluding_floor": 4,
        "source_l1_label": "Source L1 Alpha",
        "message_class": "token-transfer"
      },
      "output_payload": {
        "source_l1_label": "Source L1 Alpha",
        "message_class": "token-transfer",
        "quorum_pct": 67,
        "quorum_pct_valid": true,
        "min_colluding_floor": 4,
        "total_validators": 7,
        "total_stake_weight": 10000,
        "min_colluding_validators": 3,
        "colluding_stake_weight": 7700,
        "colluding_share_pct": 77,
        "stake_hhi": 2524,
        "quorum_reachable": true,
        "meets_floor": false,
        "rationale": [
          "The 3 largest of 7 transcribed validators hold 77 percent of stake, which satisfies the accepting quorum of 67 percent. That is the smallest group able to sign a message Source L1 Alpha could have the receiver accept.",
          "The declared floor requires at least 4 validators to be needed for quorum. Only 3 are needed."
        ]
      },
      "compliance_flags": [
        "ICM_QUORUM_EVALUATED",
        "ICM_QUORUM_BELOW_FLOOR",
        "ESCALATION_RAISED"
      ],
      "golden_hash": "7eeae61f8f637f8086ec8e24f4ffd8acb303348f2e809e8583d98747ee7ee25f"
    },
    {
      "name": "well_distributed_meets_floor",
      "description": "Twenty equal-weight validators of 500 each (total 10000), quorum 67 percent, floor 4. Hand-computed: 13 validators give 6500 (< 6700), 14 give 7000 (>= 6700), so 14 are required, comfortably above the floor.",
      "policy_parameters": {
        "validator_weights": [
          {
            "validator_id": "V-01",
            "weight": 500
          },
          {
            "validator_id": "V-02",
            "weight": 500
          },
          {
            "validator_id": "V-03",
            "weight": 500
          },
          {
            "validator_id": "V-04",
            "weight": 500
          },
          {
            "validator_id": "V-05",
            "weight": 500
          },
          {
            "validator_id": "V-06",
            "weight": 500
          },
          {
            "validator_id": "V-07",
            "weight": 500
          },
          {
            "validator_id": "V-08",
            "weight": 500
          },
          {
            "validator_id": "V-09",
            "weight": 500
          },
          {
            "validator_id": "V-10",
            "weight": 500
          },
          {
            "validator_id": "V-11",
            "weight": 500
          },
          {
            "validator_id": "V-12",
            "weight": 500
          },
          {
            "validator_id": "V-13",
            "weight": 500
          },
          {
            "validator_id": "V-14",
            "weight": 500
          },
          {
            "validator_id": "V-15",
            "weight": 500
          },
          {
            "validator_id": "V-16",
            "weight": 500
          },
          {
            "validator_id": "V-17",
            "weight": 500
          },
          {
            "validator_id": "V-18",
            "weight": 500
          },
          {
            "validator_id": "V-19",
            "weight": 500
          },
          {
            "validator_id": "V-20",
            "weight": 500
          }
        ],
        "quorum_pct": 67,
        "min_colluding_floor": 4,
        "source_l1_label": "Source L1 Beta"
      },
      "output_payload": {
        "source_l1_label": "Source L1 Beta",
        "message_class": null,
        "quorum_pct": 67,
        "quorum_pct_valid": true,
        "min_colluding_floor": 4,
        "total_validators": 20,
        "total_stake_weight": 10000,
        "min_colluding_validators": 14,
        "colluding_stake_weight": 7000,
        "colluding_share_pct": 70,
        "stake_hhi": 500,
        "quorum_reachable": true,
        "meets_floor": true,
        "rationale": [
          "The 14 largest of 20 transcribed validators hold 70 percent of stake, which satisfies the accepting quorum of 67 percent. That is the smallest group able to sign a message Source L1 Beta could have the receiver accept."
        ]
      },
      "compliance_flags": [
        "ICM_QUORUM_EVALUATED"
      ],
      "golden_hash": "e52e27695dc7846ef244c7ebe63c403df704fa0e9d9ce3050b482aeebf273b02"
    },
    {
      "name": "edge_single_validator_meets_quorum_alone",
      "description": "EDGE CASE: one validator holds 7000 of 10000 total stake and the accepting quorum is 67 percent. 7000*100 >= 10000*67, so min_colluding_validators resolves to 1, the strongest finding available, and must never resolve to 0 or NaN.",
      "policy_parameters": {
        "validator_weights": [
          {
            "validator_id": "V-DOMINANT",
            "weight": 7000
          },
          {
            "validator_id": "V-02",
            "weight": 1500
          },
          {
            "validator_id": "V-03",
            "weight": 1000
          },
          {
            "validator_id": "V-04",
            "weight": 500
          }
        ],
        "quorum_pct": 67,
        "min_colluding_floor": 3,
        "source_l1_label": "Source L1 Gamma"
      },
      "output_payload": {
        "source_l1_label": "Source L1 Gamma",
        "message_class": null,
        "quorum_pct": 67,
        "quorum_pct_valid": true,
        "min_colluding_floor": 3,
        "total_validators": 4,
        "total_stake_weight": 10000,
        "min_colluding_validators": 1,
        "colluding_stake_weight": 7000,
        "colluding_share_pct": 70,
        "stake_hhi": 5250,
        "quorum_reachable": true,
        "meets_floor": false,
        "rationale": [
          "The 1 largest of 4 transcribed validators hold 70 percent of stake, which satisfies the accepting quorum of 67 percent. That is the smallest group able to sign a message Source L1 Gamma could have the receiver accept.",
          "The declared floor requires at least 3 validators to be needed for quorum. Only 1 are needed.",
          "One validator alone meets the accepting quorum. That single key holder can produce a message the receiving L1 will accept."
        ]
      },
      "compliance_flags": [
        "ICM_QUORUM_EVALUATED",
        "ICM_QUORUM_BELOW_FLOOR",
        "ICM_QUORUM_CONCENTRATION_BREACH",
        "ESCALATION_RAISED"
      ],
      "golden_hash": "ef18314dc8c4d983511ae00e629c59c29e4392c0619a263226923750e7935e6c"
    },
    {
      "name": "edge_empty_validator_list",
      "description": "EDGE CASE: no validators transcribed. total_stake_weight 0, min_colluding_validators null, colluding_share_pct 0, stake_hhi 0, quorum_reachable false. Escalates, because acceptance from a source with no transcribed validator set cannot be justified on this evidence.",
      "policy_parameters": {
        "validator_weights": [],
        "quorum_pct": 67,
        "min_colluding_floor": 4,
        "source_l1_label": "Source L1 Delta"
      },
      "output_payload": {
        "source_l1_label": "Source L1 Delta",
        "message_class": null,
        "quorum_pct": 67,
        "quorum_pct_valid": true,
        "min_colluding_floor": 4,
        "total_validators": 0,
        "total_stake_weight": 0,
        "min_colluding_validators": null,
        "colluding_stake_weight": 0,
        "colluding_share_pct": 0,
        "stake_hhi": 0,
        "quorum_reachable": false,
        "meets_floor": false,
        "rationale": [
          "No validators were transcribed for Source L1 Delta. The accepting quorum cannot be evaluated, so acceptance from this source cannot be justified on this evidence.",
          "No colluding-set size is available, so no floor comparison was made."
        ]
      },
      "compliance_flags": [
        "ICM_QUORUM_EVALUATED",
        "ICM_QUORUM_NO_VALIDATORS",
        "ESCALATION_RAISED"
      ],
      "golden_hash": "aa10730f884bfbb95d325825736c4a20f0bc8d7522479298bfd334f6287883fa"
    },
    {
      "name": "edge_all_zero_weights",
      "description": "EDGE CASE: four validators are transcribed but every weight is zero. Total stake is 0. Guarded explicitly, because the raw comparison 0 >= 0 would otherwise resolve to a colluding set of size 0. min_colluding_validators stays null.",
      "policy_parameters": {
        "validator_weights": [
          {
            "validator_id": "V-01",
            "weight": 0
          },
          {
            "validator_id": "V-02",
            "weight": 0
          },
          {
            "validator_id": "V-03",
            "weight": 0
          },
          {
            "validator_id": "V-04",
            "weight": 0
          }
        ],
        "quorum_pct": 67,
        "min_colluding_floor": 4,
        "source_l1_label": "Source L1 Epsilon"
      },
      "output_payload": {
        "source_l1_label": "Source L1 Epsilon",
        "message_class": null,
        "quorum_pct": 67,
        "quorum_pct_valid": true,
        "min_colluding_floor": 4,
        "total_validators": 4,
        "total_stake_weight": 0,
        "min_colluding_validators": null,
        "colluding_stake_weight": 0,
        "colluding_share_pct": 0,
        "stake_hhi": 0,
        "quorum_reachable": false,
        "meets_floor": false,
        "rationale": [
          "All 4 transcribed validators of Source L1 Epsilon carry zero weight. Total stake is zero, so no stake-weighted quorum exists and no colluding-set size was computed.",
          "No colluding-set size is available, so no floor comparison was made."
        ]
      },
      "compliance_flags": [
        "ICM_QUORUM_EVALUATED",
        "ICM_QUORUM_ZERO_STAKE",
        "ESCALATION_RAISED"
      ],
      "golden_hash": "5e3d8222d8c3817fe79a8f6a870f3d9e774762eb645f2a6e29320dec015179eb"
    },
    {
      "name": "edge_quorum_pct_above_100",
      "description": "EDGE CASE: quorum_pct of 150 is above 100 and can never be met by the whole validator set. The classifier refuses rather than returning a misleading count: ICM_QUORUM_INPUT_INVALID, min_colluding_validators null.",
      "policy_parameters": {
        "validator_weights": [
          {
            "validator_id": "V-01",
            "weight": 6000
          },
          {
            "validator_id": "V-02",
            "weight": 4000
          }
        ],
        "quorum_pct": 150,
        "min_colluding_floor": 2,
        "source_l1_label": "Source L1 Zeta"
      },
      "output_payload": {
        "source_l1_label": "Source L1 Zeta",
        "message_class": null,
        "quorum_pct": 150,
        "quorum_pct_valid": false,
        "min_colluding_floor": 2,
        "total_validators": 2,
        "total_stake_weight": 10000,
        "min_colluding_validators": null,
        "colluding_stake_weight": 0,
        "colluding_share_pct": 0,
        "stake_hhi": 5200,
        "quorum_reachable": false,
        "meets_floor": false,
        "rationale": [
          "quorum_pct of 150 is outside the evaluable range (greater than 0, up to and including 100). No colluding-set size was computed.",
          "No colluding-set size is available, so no floor comparison was made."
        ]
      },
      "compliance_flags": [
        "ICM_QUORUM_EVALUATED",
        "ICM_QUORUM_INPUT_INVALID"
      ],
      "golden_hash": "57be6b759b0503a35e1a742f16e07f14a8195b72ed6193350802aecad061a692"
    },
    {
      "name": "edge_quorum_pct_zero_or_below",
      "description": "EDGE CASE: quorum_pct of 0 would be met by the empty set. Not evaluable, so ICM_QUORUM_INPUT_INVALID is raised and min_colluding_validators stays null rather than resolving to 0.",
      "policy_parameters": {
        "validator_weights": [
          {
            "validator_id": "V-01",
            "weight": 6000
          },
          {
            "validator_id": "V-02",
            "weight": 4000
          }
        ],
        "quorum_pct": 0,
        "min_colluding_floor": 2,
        "source_l1_label": "Source L1 Eta"
      },
      "output_payload": {
        "source_l1_label": "Source L1 Eta",
        "message_class": null,
        "quorum_pct": 0,
        "quorum_pct_valid": false,
        "min_colluding_floor": 2,
        "total_validators": 2,
        "total_stake_weight": 10000,
        "min_colluding_validators": null,
        "colluding_stake_weight": 0,
        "colluding_share_pct": 0,
        "stake_hhi": 5200,
        "quorum_reachable": false,
        "meets_floor": false,
        "rationale": [
          "quorum_pct of 0 is outside the evaluable range (greater than 0, up to and including 100). No colluding-set size was computed.",
          "No colluding-set size is available, so no floor comparison was made."
        ]
      },
      "compliance_flags": [
        "ICM_QUORUM_EVALUATED",
        "ICM_QUORUM_INPUT_INVALID"
      ],
      "golden_hash": "1e62a565b247aee7c7e9c4872fe5177de7673261a021f476f8478e031eaf5c93"
    }
  ]
}
