{
  "tool_id": "art-645-compute-index-weights",
  "human_sign_off": "sonnet-2026-08-17",
  "vectors": [
    {
      "name": "market-cap-two-constituents",
      "policy_parameters": {
        "index_id": "IDX-DEMO-100",
        "as_of_date": "2026-08-05",
        "weighting_methodology": "market-cap",
        "inputs": [
          {
            "security_id": "SEC-A",
            "market_cap": 600,
            "currency": "USD"
          },
          {
            "security_id": "SEC-B",
            "market_cap": 400,
            "currency": "USD"
          }
        ]
      },
      "output_payload": {
        "index_id": "IDX-DEMO-100",
        "as_of_date": "2026-08-05",
        "structural_error": null,
        "weighting_methodology": "market-cap",
        "constituents_ref": null,
        "weights": [
          {
            "security_id": "SEC-A",
            "weight": 0.6
          },
          {
            "security_id": "SEC-B",
            "weight": 0.4
          }
        ],
        "weight_sum_check": 1,
        "weight_sum_within_tolerance": true,
        "methodology_notes": "weight_i = basis_i / sum(basis) under methodology=\"market-cap\"; basis is market_cap per constituent.",
        "not_proven": [
          {
            "item": "Input-data accuracy",
            "detail": "Every market_cap/price/float_factor/factor_score value is caller-supplied and asserted. This kernel performs no market-data or index-provider lookups (zero-egress) and does not verify these values against any external source."
          },
          {
            "item": "Constituent-set membership",
            "detail": "This kernel computes weights over the supplied inputs list; it does not itself verify that the list matches any particular constituent-set attestation (art-557), even when constituents_ref is supplied for citation."
          },
          {
            "item": "Regulatory benchmark-administrator compliance",
            "detail": "EU Benchmark Regulation (BMR, Regulation (EU) 2016/1011) Art 12(1) and SEBI (Index Providers) Regulations, 2024 Reg 18(1)/18(3) references are informative context only; this kernel makes no claim of compliance with either."
          }
        ],
        "fence": "Every input row (market_cap/price/float_factor/factor_score) is SUPPLIED, asserted, and digested into this receipt. This kernel attests THAT a weight set was computed exactly as stated from the declared inputs and methodology -- never a verification of those inputs against market data, never a live index-data feed (zero-egress by contract).",
        "regulatory_framework": "EU Benchmark Regulation (BMR, Regulation (EU) 2016/1011) Art 12(1) and SEBI (Index Providers) Regulations, 2024 Reg 18(1)/18(3) references are informative context only; this kernel makes no compliance claim under either."
      },
      "golden_hash": "21d4aedf948b6c1a48a985bc6bb5d5f1a9e009582d86dacf21405ba25a25ab90"
    },
    {
      "name": "equal-weight-three-constituents",
      "policy_parameters": {
        "index_id": "IDX-DEMO-100",
        "as_of_date": "2026-08-05",
        "weighting_methodology": "equal-weight",
        "constituents_ref": {
          "execution_hash": "sha256:abc123",
          "tool_id": "art-557-record-index-constituents"
        },
        "inputs": [
          {
            "security_id": "SEC-A"
          },
          {
            "security_id": "SEC-B"
          },
          {
            "security_id": "SEC-C"
          }
        ]
      },
      "output_payload": {
        "index_id": "IDX-DEMO-100",
        "as_of_date": "2026-08-05",
        "structural_error": null,
        "weighting_methodology": "equal-weight",
        "constituents_ref": {
          "execution_hash": "sha256:abc123",
          "tool_id": "art-557-record-index-constituents"
        },
        "weights": [
          {
            "security_id": "SEC-A",
            "weight": 0.3333333333333333
          },
          {
            "security_id": "SEC-B",
            "weight": 0.3333333333333333
          },
          {
            "security_id": "SEC-C",
            "weight": 0.3333333333333333
          }
        ],
        "weight_sum_check": 1,
        "weight_sum_within_tolerance": true,
        "methodology_notes": "weight_i = basis_i / sum(basis) under methodology=\"equal-weight\"; basis is 1 (uniform) per constituent.",
        "not_proven": [
          {
            "item": "Input-data accuracy",
            "detail": "Every market_cap/price/float_factor/factor_score value is caller-supplied and asserted. This kernel performs no market-data or index-provider lookups (zero-egress) and does not verify these values against any external source."
          },
          {
            "item": "Constituent-set membership",
            "detail": "This kernel computes weights over the supplied inputs list; it does not itself verify that the list matches any particular constituent-set attestation (art-557), even when constituents_ref is supplied for citation."
          },
          {
            "item": "Regulatory benchmark-administrator compliance",
            "detail": "EU Benchmark Regulation (BMR, Regulation (EU) 2016/1011) Art 12(1) and SEBI (Index Providers) Regulations, 2024 Reg 18(1)/18(3) references are informative context only; this kernel makes no claim of compliance with either."
          }
        ],
        "fence": "Every input row (market_cap/price/float_factor/factor_score) is SUPPLIED, asserted, and digested into this receipt. This kernel attests THAT a weight set was computed exactly as stated from the declared inputs and methodology -- never a verification of those inputs against market data, never a live index-data feed (zero-egress by contract).",
        "regulatory_framework": "EU Benchmark Regulation (BMR, Regulation (EU) 2016/1011) Art 12(1) and SEBI (Index Providers) Regulations, 2024 Reg 18(1)/18(3) references are informative context only; this kernel makes no compliance claim under either."
      },
      "golden_hash": "4453b8e138dfc4e68c06217f577b3db976e7ffc836947aba0f76bd0e532ab7c1"
    },
    {
      "name": "float-adjusted-market-cap",
      "policy_parameters": {
        "index_id": "IDX-DEMO-100",
        "as_of_date": "2026-08-05",
        "weighting_methodology": "float-adjusted-market-cap",
        "inputs": [
          {
            "security_id": "SEC-A",
            "market_cap": 1000,
            "float_factor": 0.5
          },
          {
            "security_id": "SEC-B",
            "market_cap": 1000,
            "float_factor": 1
          }
        ]
      },
      "output_payload": {
        "index_id": "IDX-DEMO-100",
        "as_of_date": "2026-08-05",
        "structural_error": null,
        "weighting_methodology": "float-adjusted-market-cap",
        "constituents_ref": null,
        "weights": [
          {
            "security_id": "SEC-A",
            "weight": 0.3333333333333333
          },
          {
            "security_id": "SEC-B",
            "weight": 0.6666666666666666
          }
        ],
        "weight_sum_check": 1,
        "weight_sum_within_tolerance": true,
        "methodology_notes": "weight_i = basis_i / sum(basis) under methodology=\"float-adjusted-market-cap\"; basis is market_cap * float_factor per constituent.",
        "not_proven": [
          {
            "item": "Input-data accuracy",
            "detail": "Every market_cap/price/float_factor/factor_score value is caller-supplied and asserted. This kernel performs no market-data or index-provider lookups (zero-egress) and does not verify these values against any external source."
          },
          {
            "item": "Constituent-set membership",
            "detail": "This kernel computes weights over the supplied inputs list; it does not itself verify that the list matches any particular constituent-set attestation (art-557), even when constituents_ref is supplied for citation."
          },
          {
            "item": "Regulatory benchmark-administrator compliance",
            "detail": "EU Benchmark Regulation (BMR, Regulation (EU) 2016/1011) Art 12(1) and SEBI (Index Providers) Regulations, 2024 Reg 18(1)/18(3) references are informative context only; this kernel makes no claim of compliance with either."
          }
        ],
        "fence": "Every input row (market_cap/price/float_factor/factor_score) is SUPPLIED, asserted, and digested into this receipt. This kernel attests THAT a weight set was computed exactly as stated from the declared inputs and methodology -- never a verification of those inputs against market data, never a live index-data feed (zero-egress by contract).",
        "regulatory_framework": "EU Benchmark Regulation (BMR, Regulation (EU) 2016/1011) Art 12(1) and SEBI (Index Providers) Regulations, 2024 Reg 18(1)/18(3) references are informative context only; this kernel makes no compliance claim under either."
      },
      "golden_hash": "70dd7a99a2a39b9cab3c938eed065697a5cb3b4ee4498e14cfc162293dce4122"
    },
    {
      "name": "structural-error-missing-basis",
      "policy_parameters": {
        "index_id": "IDX-DEMO-100",
        "as_of_date": "2026-08-05",
        "weighting_methodology": "price-weight",
        "inputs": [
          {
            "security_id": "SEC-A",
            "price": 50
          },
          {
            "security_id": "SEC-B"
          }
        ]
      },
      "output_payload": {
        "index_id": "IDX-DEMO-100",
        "as_of_date": "2026-08-05",
        "structural_error": "1 input row(s) are missing the field required by weighting_methodology=\"price-weight\".",
        "weighting_methodology": "price-weight",
        "constituents_ref": null,
        "weights": [],
        "weight_sum_check": null,
        "weight_sum_within_tolerance": null,
        "methodology_notes": "weight_i = basis_i / sum(basis) under methodology=\"price-weight\"; basis is price per constituent.",
        "not_proven": [
          {
            "item": "Input-data accuracy",
            "detail": "Every market_cap/price/float_factor/factor_score value is caller-supplied and asserted. This kernel performs no market-data or index-provider lookups (zero-egress) and does not verify these values against any external source."
          },
          {
            "item": "Constituent-set membership",
            "detail": "This kernel computes weights over the supplied inputs list; it does not itself verify that the list matches any particular constituent-set attestation (art-557), even when constituents_ref is supplied for citation."
          },
          {
            "item": "Regulatory benchmark-administrator compliance",
            "detail": "EU Benchmark Regulation (BMR, Regulation (EU) 2016/1011) Art 12(1) and SEBI (Index Providers) Regulations, 2024 Reg 18(1)/18(3) references are informative context only; this kernel makes no claim of compliance with either."
          }
        ],
        "fence": "Every input row (market_cap/price/float_factor/factor_score) is SUPPLIED, asserted, and digested into this receipt. This kernel attests THAT a weight set was computed exactly as stated from the declared inputs and methodology -- never a verification of those inputs against market data, never a live index-data feed (zero-egress by contract).",
        "regulatory_framework": "EU Benchmark Regulation (BMR, Regulation (EU) 2016/1011) Art 12(1) and SEBI (Index Providers) Regulations, 2024 Reg 18(1)/18(3) references are informative context only; this kernel makes no compliance claim under either."
      },
      "golden_hash": "49a76b9d7d588c866cf0505261927ffe09380b8eb824542a95ccb6884bf79fbf"
    }
  ]
}
