{
  "tool_id": "art-512-check-mica-reserve-disclosure",
  "note": "output_payload filled from the kernel itself; golden_hash filled by node golden-parity.test.mjs --update. Vectors cover: a covered EMT disclosure that meets the declared segregation minimum; a shortfall carrying an ineligible component and a concentration breach, both listed and neither dropped; a cadence window with two named unpublished periods; the zero-tokens-in-circulation finite gate; the empty-reserve finite gate; an asset-referenced token with no declared minimum, which raises judgment_required instead of applying the e-money-token 30%; and a caller-declared minimum that overrides the e-money-token default.",
  "vectors": [
    {
      "name": "emt-covered-segregation-met",
      "description": "E-money token, reserve covers circulation, 40% of the reserve segregated against the e-money-token default minimum of 30% (applied only because the caller declared none), every component inside the declared eligible classes and inside the declared limits, monthly cadence met.",
      "policy_parameters": {
        "issuer_id": "ISSUER-DEMO-01",
        "disclosure_ref": "RESERVE-DISCLOSURE-2026-06",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "tokens_in_circulation": "500000000",
        "reserve_components": [
          {
            "component_id": "C1",
            "asset_class": "bank_deposit",
            "amount": "205000000",
            "custodian_type": "credit_institution",
            "segregated": true
          },
          {
            "component_id": "C2",
            "asset_class": "sovereign_bill",
            "amount": "200000000",
            "custodian_type": "credit_institution",
            "segregated": false
          },
          {
            "component_id": "C3",
            "asset_class": "reverse_repo",
            "amount": "107500000",
            "custodian_type": "investment_firm",
            "segregated": false
          }
        ],
        "declared_rules": {
          "eligible_asset_classes": [
            "bank_deposit",
            "sovereign_bill",
            "reverse_repo"
          ],
          "concentration_limits": {
            "bank_deposit": "60",
            "sovereign_bill": "60",
            "reverse_repo": "30"
          },
          "acceptable_custodian_types": [
            "credit_institution",
            "investment_firm",
            "casp"
          ],
          "cadence_days": 31
        },
        "disclosure_dates": [
          "2026-01-31",
          "2026-02-28",
          "2026-03-31",
          "2026-04-30",
          "2026-05-31",
          "2026-06-30"
        ],
        "window_start": "2026-01-01",
        "window_end": "2026-06-30",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        }
      },
      "output_payload": {
        "issuer_id": "ISSUER-DEMO-01",
        "disclosure_ref": "RESERVE-DISCLOSURE-2026-06",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        },
        "judgment_required": null,
        "coverage": {
          "tokens_in_circulation": "500000000.00",
          "reserve_total": "512500000.00",
          "eligible_reserve_total": "512500000.00",
          "coverage_ratio": "1.0250",
          "eligible_coverage_ratio": "1.0250",
          "surplus_or_shortfall": "12500000.00",
          "covered": true,
          "circulation_positive": true,
          "reserve_empty": false
        },
        "composition": {
          "eligible_asset_classes_declared": [
            "bank_deposit",
            "sovereign_bill",
            "reverse_repo"
          ],
          "class_totals": [
            {
              "asset_class": "bank_deposit",
              "amount": "205000000.00",
              "pct_of_reserve": "40.00",
              "limit_pct": "60"
            },
            {
              "asset_class": "sovereign_bill",
              "amount": "200000000.00",
              "pct_of_reserve": "39.02",
              "limit_pct": "60"
            },
            {
              "asset_class": "reverse_repo",
              "amount": "107500000.00",
              "pct_of_reserve": "20.98",
              "limit_pct": "30"
            }
          ],
          "ineligible_components": [],
          "ineligible_total": "0.00",
          "concentration_breaches": []
        },
        "segregation": {
          "segregated_amount": "205000000.00",
          "segregation_pct": "40.00",
          "min_segregated_pct_applied": "30",
          "min_segregated_pct_source": "default_emt_30",
          "meets_declared_minimum": true,
          "undeclared_custodian_components": [],
          "acceptable_custodian_types_declared": [
            "credit_institution",
            "investment_firm",
            "casp"
          ]
        },
        "cadence": {
          "cadence_days_declared": 31,
          "window_start": "2026-01-01",
          "window_end": "2026-06-30",
          "disclosure_dates_ordered": [
            "2026-01-31",
            "2026-02-28",
            "2026-03-31",
            "2026-04-30",
            "2026-05-31",
            "2026-06-30"
          ],
          "invalid_disclosure_dates": [],
          "missed_periods": []
        },
        "sign_off": {
          "surface": "art-503-build-dual-control-certification",
          "note": "Where a named human attests this check, the dual-control certification surface is the one to use. This kernel emits the receipt and evaluates no threshold of its own."
        },
        "rationale": [
          "Reserve total of 512500000.00 checked against 500000000.00 of tokens in circulation.",
          "The reserve carries 3 declared components across 3 asset classes.",
          "Every component sits inside the declared eligible asset classes.",
          "No declared concentration limit is exceeded.",
          "Segregated proportion is 40.00% against a minimum of 30% (the e-money-token default, applied only because the caller declared nothing).",
          "Every component sits with a custodian type the caller declared acceptable.",
          "Every interval between publications is within the declared 31-day cadence.",
          "Every verdict above is against the rules supplied with this run. It is not a determination that the issuer complies, not legal advice, and not a submission."
        ],
        "not_proven": [
          {
            "item": "Rule accuracy",
            "detail": "The eligible asset classes, concentration limits, minimum segregated percentage, acceptable custodian types and disclosure cadence are every one of them caller-supplied and asserted. This kernel ships no reporting template and no eligible-asset table, performs no lookups of any kind (zero-egress), and does not verify these rules against the regulation, a technical standard, or any supervisory expectation."
          },
          {
            "item": "Disclosure accuracy",
            "detail": "The amount in circulation, the component amounts, the custodian types, the segregation markers and the publication dates are taken as given from the disclosure being checked. This kernel does not verify that the published document says what was transcribed from it, nor that the reserve exists."
          },
          {
            "item": "Valuation",
            "detail": "Component amounts are asserted at the values supplied. No independent valuation, haircut, or mark to market is performed, and no market data is read."
          },
          {
            "item": "Compliance",
            "detail": "Every verdict here is against the CALLER's declared rules. This is not a determination that the issuer complies with MiCA or with anything else, not legal advice, and not a submission to any authority. A finding can equally originate from a rule this run had wrong."
          }
        ],
        "fence": "Eligible asset classes, concentration limits, the minimum segregated percentage, acceptable custodian types and the disclosure cadence are every one of them a caller input, transcribed from the terms the reader is holding the issuer to. This kernel ships no reporting template, no eligible-asset table and no issuer library, and performs no lookups of any kind (zero-egress by contract). disclosure_ref and rules_version are pinned so a later rule change makes an old receipt dated, not wrong."
      },
      "golden_hash": "6a21506c0886194bc70063b1e20f59ef4df035464a3447d15229ddd23be86d14"
    },
    {
      "name": "shortfall-ineligible-and-concentration",
      "description": "Reserve falls short of circulation. One component sits in an asset class the caller never declared eligible and is LISTED with its amount still inside the reserve total, and one class exceeds its declared concentration limit. Neither is dropped.",
      "policy_parameters": {
        "issuer_id": "ISSUER-DEMO-02",
        "disclosure_ref": "RESERVE-DISCLOSURE-2026-06",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "tokens_in_circulation": "500000000",
        "reserve_components": [
          {
            "component_id": "C1",
            "asset_class": "bank_deposit",
            "amount": "150000000",
            "custodian_type": "credit_institution",
            "segregated": true
          },
          {
            "component_id": "C2",
            "asset_class": "sovereign_bill",
            "amount": "250000000",
            "custodian_type": "credit_institution",
            "segregated": false
          },
          {
            "component_id": "C3",
            "asset_class": "corporate_bond",
            "amount": "60000000",
            "custodian_type": "unknown_custodian",
            "segregated": false
          }
        ],
        "declared_rules": {
          "eligible_asset_classes": [
            "bank_deposit",
            "sovereign_bill"
          ],
          "concentration_limits": {
            "bank_deposit": "60",
            "sovereign_bill": "50"
          },
          "acceptable_custodian_types": [
            "credit_institution",
            "investment_firm",
            "casp"
          ],
          "min_segregated_pct": "30",
          "cadence_days": 31
        },
        "disclosure_dates": [
          "2026-04-30",
          "2026-05-31",
          "2026-06-30"
        ],
        "window_start": "2026-04-01",
        "window_end": "2026-06-30",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        }
      },
      "output_payload": {
        "issuer_id": "ISSUER-DEMO-02",
        "disclosure_ref": "RESERVE-DISCLOSURE-2026-06",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        },
        "judgment_required": null,
        "coverage": {
          "tokens_in_circulation": "500000000.00",
          "reserve_total": "460000000.00",
          "eligible_reserve_total": "400000000.00",
          "coverage_ratio": "0.9200",
          "eligible_coverage_ratio": "0.8000",
          "surplus_or_shortfall": "-40000000.00",
          "covered": false,
          "circulation_positive": true,
          "reserve_empty": false
        },
        "composition": {
          "eligible_asset_classes_declared": [
            "bank_deposit",
            "sovereign_bill"
          ],
          "class_totals": [
            {
              "asset_class": "bank_deposit",
              "amount": "150000000.00",
              "pct_of_reserve": "32.61",
              "limit_pct": "60"
            },
            {
              "asset_class": "sovereign_bill",
              "amount": "250000000.00",
              "pct_of_reserve": "54.35",
              "limit_pct": "50"
            },
            {
              "asset_class": "corporate_bond",
              "amount": "60000000.00",
              "pct_of_reserve": "13.04",
              "limit_pct": null
            }
          ],
          "ineligible_components": [
            {
              "index": 2,
              "component_id": "C3",
              "asset_class": "corporate_bond",
              "amount": "60000000.00",
              "reason": "asset_class is not in the caller's declared eligible_asset_classes"
            }
          ],
          "ineligible_total": "60000000.00",
          "concentration_breaches": [
            {
              "asset_class": "sovereign_bill",
              "amount": "250000000.00",
              "pct_of_reserve": "54.35",
              "limit_pct": "50.00",
              "excess_pct": "4.35"
            }
          ]
        },
        "segregation": {
          "segregated_amount": "150000000.00",
          "segregation_pct": "32.61",
          "min_segregated_pct_applied": "30",
          "min_segregated_pct_source": "caller_declared",
          "meets_declared_minimum": true,
          "undeclared_custodian_components": [
            {
              "index": 2,
              "component_id": "C3",
              "asset_class": "corporate_bond",
              "custodian_type": "unknown_custodian",
              "amount": "60000000.00",
              "reason": "custodian_type is not one the caller declared acceptable"
            }
          ],
          "acceptable_custodian_types_declared": [
            "credit_institution",
            "investment_firm",
            "casp"
          ]
        },
        "cadence": {
          "cadence_days_declared": 31,
          "window_start": "2026-04-01",
          "window_end": "2026-06-30",
          "disclosure_dates_ordered": [
            "2026-04-30",
            "2026-05-31",
            "2026-06-30"
          ],
          "invalid_disclosure_dates": [],
          "missed_periods": []
        },
        "sign_off": {
          "surface": "art-503-build-dual-control-certification",
          "note": "Where a named human attests this check, the dual-control certification surface is the one to use. This kernel emits the receipt and evaluates no threshold of its own."
        },
        "rationale": [
          "Reserve total of 460000000.00 checked against 500000000.00 of tokens in circulation.",
          "The reserve carries 3 declared components across 3 asset classes.",
          "1 component falls outside the declared eligible classes and is listed on its own; its amount remains inside the reserve total, because excluding it would flatter the coverage figure.",
          "1 asset class exceeds the declared concentration limit, named with its excess.",
          "Segregated proportion is 32.61% against a minimum of 30% (declared by the caller).",
          "1 component sits with a custodian type the caller did not declare acceptable, and is named.",
          "Every interval between publications is within the declared 31-day cadence.",
          "Every verdict above is against the rules supplied with this run. It is not a determination that the issuer complies, not legal advice, and not a submission."
        ],
        "not_proven": [
          {
            "item": "Rule accuracy",
            "detail": "The eligible asset classes, concentration limits, minimum segregated percentage, acceptable custodian types and disclosure cadence are every one of them caller-supplied and asserted. This kernel ships no reporting template and no eligible-asset table, performs no lookups of any kind (zero-egress), and does not verify these rules against the regulation, a technical standard, or any supervisory expectation."
          },
          {
            "item": "Disclosure accuracy",
            "detail": "The amount in circulation, the component amounts, the custodian types, the segregation markers and the publication dates are taken as given from the disclosure being checked. This kernel does not verify that the published document says what was transcribed from it, nor that the reserve exists."
          },
          {
            "item": "Valuation",
            "detail": "Component amounts are asserted at the values supplied. No independent valuation, haircut, or mark to market is performed, and no market data is read."
          },
          {
            "item": "Compliance",
            "detail": "Every verdict here is against the CALLER's declared rules. This is not a determination that the issuer complies with MiCA or with anything else, not legal advice, and not a submission to any authority. A finding can equally originate from a rule this run had wrong."
          }
        ],
        "fence": "Eligible asset classes, concentration limits, the minimum segregated percentage, acceptable custodian types and the disclosure cadence are every one of them a caller input, transcribed from the terms the reader is holding the issuer to. This kernel ships no reporting template, no eligible-asset table and no issuer library, and performs no lookups of any kind (zero-egress by contract). disclosure_ref and rules_version are pinned so a later rule change makes an old receipt dated, not wrong."
      },
      "golden_hash": "ddd013431d630721a85646091627a9719093f6531490a6be64b1ec7d35378b59"
    },
    {
      "name": "cadence-two-named-gaps",
      "description": "Two publication gaps exceed the declared 31-day cadence, one between two publications and one running from the last publication to the close of the window, and each unpublished period is named individually with its dates rather than reported as a count.",
      "policy_parameters": {
        "issuer_id": "ISSUER-DEMO-03",
        "disclosure_ref": "RESERVE-DISCLOSURE-2026-H1",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "tokens_in_circulation": "100000000",
        "reserve_components": [
          {
            "component_id": "C1",
            "asset_class": "bank_deposit",
            "amount": "100000000",
            "custodian_type": "credit_institution",
            "segregated": true
          }
        ],
        "declared_rules": {
          "eligible_asset_classes": [
            "bank_deposit"
          ],
          "concentration_limits": {},
          "acceptable_custodian_types": [
            "credit_institution"
          ],
          "min_segregated_pct": "30",
          "cadence_days": 31
        },
        "disclosure_dates": [
          "2026-01-31",
          "2026-04-30",
          "2026-05-31"
        ],
        "window_start": "2026-01-01",
        "window_end": "2026-07-31",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        }
      },
      "output_payload": {
        "issuer_id": "ISSUER-DEMO-03",
        "disclosure_ref": "RESERVE-DISCLOSURE-2026-H1",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        },
        "judgment_required": null,
        "coverage": {
          "tokens_in_circulation": "100000000.00",
          "reserve_total": "100000000.00",
          "eligible_reserve_total": "100000000.00",
          "coverage_ratio": "1.0000",
          "eligible_coverage_ratio": "1.0000",
          "surplus_or_shortfall": "0.00",
          "covered": true,
          "circulation_positive": true,
          "reserve_empty": false
        },
        "composition": {
          "eligible_asset_classes_declared": [
            "bank_deposit"
          ],
          "class_totals": [
            {
              "asset_class": "bank_deposit",
              "amount": "100000000.00",
              "pct_of_reserve": "100.00",
              "limit_pct": null
            }
          ],
          "ineligible_components": [],
          "ineligible_total": "0.00",
          "concentration_breaches": []
        },
        "segregation": {
          "segregated_amount": "100000000.00",
          "segregation_pct": "100.00",
          "min_segregated_pct_applied": "30",
          "min_segregated_pct_source": "caller_declared",
          "meets_declared_minimum": true,
          "undeclared_custodian_components": [],
          "acceptable_custodian_types_declared": [
            "credit_institution"
          ]
        },
        "cadence": {
          "cadence_days_declared": 31,
          "window_start": "2026-01-01",
          "window_end": "2026-07-31",
          "disclosure_dates_ordered": [
            "2026-01-31",
            "2026-04-30",
            "2026-05-31"
          ],
          "invalid_disclosure_dates": [],
          "missed_periods": [
            {
              "from": "2026-01-31",
              "to": "2026-04-30",
              "gap_days": 89,
              "cadence_days": 31,
              "kind": "between_publications"
            },
            {
              "from": "2026-05-31",
              "to": "2026-07-31",
              "gap_days": 61,
              "cadence_days": 31,
              "kind": "last_publication_to_window_close"
            }
          ]
        },
        "sign_off": {
          "surface": "art-503-build-dual-control-certification",
          "note": "Where a named human attests this check, the dual-control certification surface is the one to use. This kernel emits the receipt and evaluates no threshold of its own."
        },
        "rationale": [
          "Reserve total of 100000000.00 checked against 100000000.00 of tokens in circulation.",
          "The reserve carries 1 declared component across 1 asset class.",
          "Every component sits inside the declared eligible asset classes.",
          "No concentration limits were declared, so no limit was tested.",
          "Segregated proportion is 100.00% against a minimum of 30% (declared by the caller).",
          "Every component sits with a custodian type the caller declared acceptable.",
          "2 periods ran longer than the declared 31-day cadence with no publication, each named with its dates.",
          "Every verdict above is against the rules supplied with this run. It is not a determination that the issuer complies, not legal advice, and not a submission."
        ],
        "not_proven": [
          {
            "item": "Rule accuracy",
            "detail": "The eligible asset classes, concentration limits, minimum segregated percentage, acceptable custodian types and disclosure cadence are every one of them caller-supplied and asserted. This kernel ships no reporting template and no eligible-asset table, performs no lookups of any kind (zero-egress), and does not verify these rules against the regulation, a technical standard, or any supervisory expectation."
          },
          {
            "item": "Disclosure accuracy",
            "detail": "The amount in circulation, the component amounts, the custodian types, the segregation markers and the publication dates are taken as given from the disclosure being checked. This kernel does not verify that the published document says what was transcribed from it, nor that the reserve exists."
          },
          {
            "item": "Valuation",
            "detail": "Component amounts are asserted at the values supplied. No independent valuation, haircut, or mark to market is performed, and no market data is read."
          },
          {
            "item": "Compliance",
            "detail": "Every verdict here is against the CALLER's declared rules. This is not a determination that the issuer complies with MiCA or with anything else, not legal advice, and not a submission to any authority. A finding can equally originate from a rule this run had wrong."
          }
        ],
        "fence": "Eligible asset classes, concentration limits, the minimum segregated percentage, acceptable custodian types and the disclosure cadence are every one of them a caller input, transcribed from the terms the reader is holding the issuer to. This kernel ships no reporting template, no eligible-asset table and no issuer library, and performs no lookups of any kind (zero-egress by contract). disclosure_ref and rules_version are pinned so a later rule change makes an old receipt dated, not wrong."
      },
      "golden_hash": "4b6c253d162f09be44ef09fad4e3a4e31c2cc8c1f22fb60686056cfdc385a7ac"
    },
    {
      "name": "finite-gate-zero-circulation",
      "description": "Zero tokens in circulation. The coverage ratio is undefined and resolves to null with MICA_CIRCULATION_ZERO, never NaN and never a zero that would read as no coverage.",
      "policy_parameters": {
        "issuer_id": "ISSUER-DEMO-04",
        "disclosure_ref": "RESERVE-DISCLOSURE-PRELAUNCH",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "tokens_in_circulation": "0",
        "reserve_components": [
          {
            "component_id": "C1",
            "asset_class": "bank_deposit",
            "amount": "1000000",
            "custodian_type": "credit_institution",
            "segregated": true
          }
        ],
        "declared_rules": {
          "eligible_asset_classes": [
            "bank_deposit"
          ],
          "concentration_limits": {},
          "acceptable_custodian_types": [
            "credit_institution"
          ],
          "min_segregated_pct": "30",
          "cadence_days": 31
        },
        "disclosure_dates": [
          "2026-06-30"
        ],
        "window_start": "2026-06-01",
        "window_end": "2026-06-30",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        }
      },
      "output_payload": {
        "issuer_id": "ISSUER-DEMO-04",
        "disclosure_ref": "RESERVE-DISCLOSURE-PRELAUNCH",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        },
        "judgment_required": null,
        "coverage": {
          "tokens_in_circulation": "0.00",
          "reserve_total": "1000000.00",
          "eligible_reserve_total": "1000000.00",
          "coverage_ratio": null,
          "eligible_coverage_ratio": null,
          "surplus_or_shortfall": "1000000.00",
          "covered": null,
          "circulation_positive": false,
          "reserve_empty": false
        },
        "composition": {
          "eligible_asset_classes_declared": [
            "bank_deposit"
          ],
          "class_totals": [
            {
              "asset_class": "bank_deposit",
              "amount": "1000000.00",
              "pct_of_reserve": "100.00",
              "limit_pct": null
            }
          ],
          "ineligible_components": [],
          "ineligible_total": "0.00",
          "concentration_breaches": []
        },
        "segregation": {
          "segregated_amount": "1000000.00",
          "segregation_pct": "100.00",
          "min_segregated_pct_applied": "30",
          "min_segregated_pct_source": "caller_declared",
          "meets_declared_minimum": true,
          "undeclared_custodian_components": [],
          "acceptable_custodian_types_declared": [
            "credit_institution"
          ]
        },
        "cadence": {
          "cadence_days_declared": 31,
          "window_start": "2026-06-01",
          "window_end": "2026-06-30",
          "disclosure_dates_ordered": [
            "2026-06-30"
          ],
          "invalid_disclosure_dates": [],
          "missed_periods": []
        },
        "sign_off": {
          "surface": "art-503-build-dual-control-certification",
          "note": "Where a named human attests this check, the dual-control certification surface is the one to use. This kernel emits the receipt and evaluates no threshold of its own."
        },
        "rationale": [
          "Tokens in circulation is zero or negative, so the coverage ratio is undefined and is reported as null by the finite gate, not as zero.",
          "The reserve carries 1 declared component across 1 asset class.",
          "Every component sits inside the declared eligible asset classes.",
          "No concentration limits were declared, so no limit was tested.",
          "Segregated proportion is 100.00% against a minimum of 30% (declared by the caller).",
          "Every component sits with a custodian type the caller declared acceptable.",
          "Every interval between publications is within the declared 31-day cadence.",
          "Every verdict above is against the rules supplied with this run. It is not a determination that the issuer complies, not legal advice, and not a submission."
        ],
        "not_proven": [
          {
            "item": "Rule accuracy",
            "detail": "The eligible asset classes, concentration limits, minimum segregated percentage, acceptable custodian types and disclosure cadence are every one of them caller-supplied and asserted. This kernel ships no reporting template and no eligible-asset table, performs no lookups of any kind (zero-egress), and does not verify these rules against the regulation, a technical standard, or any supervisory expectation."
          },
          {
            "item": "Disclosure accuracy",
            "detail": "The amount in circulation, the component amounts, the custodian types, the segregation markers and the publication dates are taken as given from the disclosure being checked. This kernel does not verify that the published document says what was transcribed from it, nor that the reserve exists."
          },
          {
            "item": "Valuation",
            "detail": "Component amounts are asserted at the values supplied. No independent valuation, haircut, or mark to market is performed, and no market data is read."
          },
          {
            "item": "Compliance",
            "detail": "Every verdict here is against the CALLER's declared rules. This is not a determination that the issuer complies with MiCA or with anything else, not legal advice, and not a submission to any authority. A finding can equally originate from a rule this run had wrong."
          }
        ],
        "fence": "Eligible asset classes, concentration limits, the minimum segregated percentage, acceptable custodian types and the disclosure cadence are every one of them a caller input, transcribed from the terms the reader is holding the issuer to. This kernel ships no reporting template, no eligible-asset table and no issuer library, and performs no lookups of any kind (zero-egress by contract). disclosure_ref and rules_version are pinned so a later rule change makes an old receipt dated, not wrong."
      },
      "golden_hash": "bbd46be53c2ac6fc835e1c91dbf95ecdb17e1a6055a87ab1581b46530e2fcbab"
    },
    {
      "name": "finite-gate-empty-reserve",
      "description": "No reserve components at all. The total is a defined zero, the shortfall is the whole amount in circulation, and MICA_RESERVE_EMPTY fires. No NaN anywhere.",
      "policy_parameters": {
        "issuer_id": "ISSUER-DEMO-05",
        "disclosure_ref": "RESERVE-DISCLOSURE-EMPTY",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "tokens_in_circulation": "250000000",
        "reserve_components": [],
        "declared_rules": {
          "eligible_asset_classes": [
            "bank_deposit"
          ],
          "concentration_limits": {
            "bank_deposit": "60"
          },
          "acceptable_custodian_types": [
            "credit_institution"
          ],
          "min_segregated_pct": "30",
          "cadence_days": 31
        },
        "disclosure_dates": [
          "2026-06-30"
        ],
        "window_start": "2026-06-01",
        "window_end": "2026-06-30",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        }
      },
      "output_payload": {
        "issuer_id": "ISSUER-DEMO-05",
        "disclosure_ref": "RESERVE-DISCLOSURE-EMPTY",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        },
        "judgment_required": null,
        "coverage": {
          "tokens_in_circulation": "250000000.00",
          "reserve_total": "0.00",
          "eligible_reserve_total": "0.00",
          "coverage_ratio": "0.0000",
          "eligible_coverage_ratio": "0.0000",
          "surplus_or_shortfall": "-250000000.00",
          "covered": false,
          "circulation_positive": true,
          "reserve_empty": true
        },
        "composition": {
          "eligible_asset_classes_declared": [
            "bank_deposit"
          ],
          "class_totals": [],
          "ineligible_components": [],
          "ineligible_total": "0.00",
          "concentration_breaches": []
        },
        "segregation": {
          "segregated_amount": "0.00",
          "segregation_pct": "0.00",
          "min_segregated_pct_applied": "30",
          "min_segregated_pct_source": "caller_declared",
          "meets_declared_minimum": false,
          "undeclared_custodian_components": [],
          "acceptable_custodian_types_declared": [
            "credit_institution"
          ]
        },
        "cadence": {
          "cadence_days_declared": 31,
          "window_start": "2026-06-01",
          "window_end": "2026-06-30",
          "disclosure_dates_ordered": [
            "2026-06-30"
          ],
          "invalid_disclosure_dates": [],
          "missed_periods": []
        },
        "sign_off": {
          "surface": "art-503-build-dual-control-certification",
          "note": "Where a named human attests this check, the dual-control certification surface is the one to use. This kernel emits the receipt and evaluates no threshold of its own."
        },
        "rationale": [
          "Reserve total of 0.00 checked against 250000000.00 of tokens in circulation.",
          "The reserve is empty or totals zero at the values supplied, so the entire amount in circulation is a shortfall.",
          "Every component sits inside the declared eligible asset classes.",
          "No declared concentration limit is exceeded.",
          "Segregated proportion is 0.00% against a minimum of 30% (declared by the caller).",
          "Every component sits with a custodian type the caller declared acceptable.",
          "Every interval between publications is within the declared 31-day cadence.",
          "Every verdict above is against the rules supplied with this run. It is not a determination that the issuer complies, not legal advice, and not a submission."
        ],
        "not_proven": [
          {
            "item": "Rule accuracy",
            "detail": "The eligible asset classes, concentration limits, minimum segregated percentage, acceptable custodian types and disclosure cadence are every one of them caller-supplied and asserted. This kernel ships no reporting template and no eligible-asset table, performs no lookups of any kind (zero-egress), and does not verify these rules against the regulation, a technical standard, or any supervisory expectation."
          },
          {
            "item": "Disclosure accuracy",
            "detail": "The amount in circulation, the component amounts, the custodian types, the segregation markers and the publication dates are taken as given from the disclosure being checked. This kernel does not verify that the published document says what was transcribed from it, nor that the reserve exists."
          },
          {
            "item": "Valuation",
            "detail": "Component amounts are asserted at the values supplied. No independent valuation, haircut, or mark to market is performed, and no market data is read."
          },
          {
            "item": "Compliance",
            "detail": "Every verdict here is against the CALLER's declared rules. This is not a determination that the issuer complies with MiCA or with anything else, not legal advice, and not a submission to any authority. A finding can equally originate from a rule this run had wrong."
          }
        ],
        "fence": "Eligible asset classes, concentration limits, the minimum segregated percentage, acceptable custodian types and the disclosure cadence are every one of them a caller input, transcribed from the terms the reader is holding the issuer to. This kernel ships no reporting template, no eligible-asset table and no issuer library, and performs no lookups of any kind (zero-egress by contract). disclosure_ref and rules_version are pinned so a later rule change makes an old receipt dated, not wrong."
      },
      "golden_hash": "324541a430d9f155145972e3710f82479b3270dcc25e37faebf6c1b0be17162a"
    },
    {
      "name": "art-no-declared-minimum-judgment-required",
      "description": "Asset-referenced token with no declared minimum segregated percentage. The e-money-token 30% is NOT applied: judgment_required names the field and ESCALATION_RAISED fires, because applying an e-money-token rule to an asset-referenced token would be an invented threshold.",
      "policy_parameters": {
        "issuer_id": "ISSUER-DEMO-06",
        "disclosure_ref": "RESERVE-DISCLOSURE-ART",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "ART",
        "tokens_in_circulation": "80000000",
        "reserve_components": [
          {
            "component_id": "C1",
            "asset_class": "bank_deposit",
            "amount": "40000000",
            "custodian_type": "credit_institution",
            "segregated": true
          },
          {
            "component_id": "C2",
            "asset_class": "sovereign_bill",
            "amount": "45000000",
            "custodian_type": "casp",
            "segregated": false
          }
        ],
        "declared_rules": {
          "eligible_asset_classes": [
            "bank_deposit",
            "sovereign_bill"
          ],
          "concentration_limits": {
            "sovereign_bill": "60"
          },
          "acceptable_custodian_types": [
            "credit_institution",
            "casp"
          ],
          "cadence_days": 31
        },
        "disclosure_dates": [
          "2026-05-31",
          "2026-06-30"
        ],
        "window_start": "2026-05-01",
        "window_end": "2026-06-30",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        }
      },
      "output_payload": {
        "issuer_id": "ISSUER-DEMO-06",
        "disclosure_ref": "RESERVE-DISCLOSURE-ART",
        "rules_version": "reader-rules-1.0",
        "as_of": "2026-06-30",
        "token_type": "ART",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        },
        "judgment_required": {
          "fields": [
            {
              "field": "declared_rules.min_segregated_pct",
              "reason": "No minimum segregated percentage was declared and the token is not an e-money token, so no default applies. The 30% figure is an e-money-token rule and applying it to an asset-referenced token would be an invented threshold, not a check.",
              "supplied": null
            }
          ],
          "reason": "One or more declared rules were absent, so the corresponding check was not performed. An absent rule is reported as unresolved, never defaulted into a pass."
        },
        "coverage": {
          "tokens_in_circulation": "80000000.00",
          "reserve_total": "85000000.00",
          "eligible_reserve_total": "85000000.00",
          "coverage_ratio": "1.0625",
          "eligible_coverage_ratio": "1.0625",
          "surplus_or_shortfall": "5000000.00",
          "covered": true,
          "circulation_positive": true,
          "reserve_empty": false
        },
        "composition": {
          "eligible_asset_classes_declared": [
            "bank_deposit",
            "sovereign_bill"
          ],
          "class_totals": [
            {
              "asset_class": "bank_deposit",
              "amount": "40000000.00",
              "pct_of_reserve": "47.06",
              "limit_pct": null
            },
            {
              "asset_class": "sovereign_bill",
              "amount": "45000000.00",
              "pct_of_reserve": "52.94",
              "limit_pct": "60"
            }
          ],
          "ineligible_components": [],
          "ineligible_total": "0.00",
          "concentration_breaches": []
        },
        "segregation": {
          "segregated_amount": "40000000.00",
          "segregation_pct": "47.06",
          "min_segregated_pct_applied": null,
          "min_segregated_pct_source": "not_declared",
          "meets_declared_minimum": null,
          "undeclared_custodian_components": [],
          "acceptable_custodian_types_declared": [
            "credit_institution",
            "casp"
          ]
        },
        "cadence": {
          "cadence_days_declared": 31,
          "window_start": "2026-05-01",
          "window_end": "2026-06-30",
          "disclosure_dates_ordered": [
            "2026-05-31",
            "2026-06-30"
          ],
          "invalid_disclosure_dates": [],
          "missed_periods": []
        },
        "sign_off": {
          "surface": "art-503-build-dual-control-certification",
          "note": "Where a named human attests this check, the dual-control certification surface is the one to use. This kernel emits the receipt and evaluates no threshold of its own."
        },
        "rationale": [
          "Reserve total of 85000000.00 checked against 80000000.00 of tokens in circulation.",
          "The reserve carries 2 declared components across 2 asset classes.",
          "Every component sits inside the declared eligible asset classes.",
          "No declared concentration limit is exceeded.",
          "No minimum segregated percentage applies: none was declared and the token is not an e-money token, so no default was invented.",
          "Every component sits with a custodian type the caller declared acceptable.",
          "Every interval between publications is within the declared 31-day cadence.",
          "Every verdict above is against the rules supplied with this run. It is not a determination that the issuer complies, not legal advice, and not a submission."
        ],
        "not_proven": [
          {
            "item": "Rule accuracy",
            "detail": "The eligible asset classes, concentration limits, minimum segregated percentage, acceptable custodian types and disclosure cadence are every one of them caller-supplied and asserted. This kernel ships no reporting template and no eligible-asset table, performs no lookups of any kind (zero-egress), and does not verify these rules against the regulation, a technical standard, or any supervisory expectation."
          },
          {
            "item": "Disclosure accuracy",
            "detail": "The amount in circulation, the component amounts, the custodian types, the segregation markers and the publication dates are taken as given from the disclosure being checked. This kernel does not verify that the published document says what was transcribed from it, nor that the reserve exists."
          },
          {
            "item": "Valuation",
            "detail": "Component amounts are asserted at the values supplied. No independent valuation, haircut, or mark to market is performed, and no market data is read."
          },
          {
            "item": "Compliance",
            "detail": "Every verdict here is against the CALLER's declared rules. This is not a determination that the issuer complies with MiCA or with anything else, not legal advice, and not a submission to any authority. A finding can equally originate from a rule this run had wrong."
          }
        ],
        "fence": "Eligible asset classes, concentration limits, the minimum segregated percentage, acceptable custodian types and the disclosure cadence are every one of them a caller input, transcribed from the terms the reader is holding the issuer to. This kernel ships no reporting template, no eligible-asset table and no issuer library, and performs no lookups of any kind (zero-egress by contract). disclosure_ref and rules_version are pinned so a later rule change makes an old receipt dated, not wrong."
      },
      "golden_hash": "add63dae0494a5e7124cd12c903612838777528d7ffdebd91a12855f31256921"
    },
    {
      "name": "emt-caller-minimum-overrides-default",
      "description": "E-money token where the caller declares a 50% minimum. The declared figure governs and min_segregated_pct_source records that it came from the caller, not from the default, so the receipt shows which rule was applied.",
      "policy_parameters": {
        "issuer_id": "ISSUER-DEMO-07",
        "disclosure_ref": "RESERVE-DISCLOSURE-2026-06",
        "rules_version": "reader-rules-2.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "tokens_in_circulation": "100000000",
        "reserve_components": [
          {
            "component_id": "C1",
            "asset_class": "bank_deposit",
            "amount": "40000000",
            "custodian_type": "credit_institution",
            "segregated": true
          },
          {
            "component_id": "C2",
            "asset_class": "sovereign_bill",
            "amount": "62000000",
            "custodian_type": "credit_institution",
            "segregated": false
          }
        ],
        "declared_rules": {
          "eligible_asset_classes": [
            "bank_deposit",
            "sovereign_bill"
          ],
          "concentration_limits": {
            "sovereign_bill": "70"
          },
          "acceptable_custodian_types": [
            "credit_institution"
          ],
          "min_segregated_pct": "50",
          "cadence_days": 31
        },
        "disclosure_dates": [
          "2026-05-31",
          "2026-06-30"
        ],
        "window_start": "2026-05-01",
        "window_end": "2026-06-30",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        }
      },
      "output_payload": {
        "issuer_id": "ISSUER-DEMO-07",
        "disclosure_ref": "RESERVE-DISCLOSURE-2026-06",
        "rules_version": "reader-rules-2.0",
        "as_of": "2026-06-30",
        "token_type": "EMT",
        "rounding": {
          "decimal_places": 2,
          "mode": "half_up"
        },
        "judgment_required": null,
        "coverage": {
          "tokens_in_circulation": "100000000.00",
          "reserve_total": "102000000.00",
          "eligible_reserve_total": "102000000.00",
          "coverage_ratio": "1.0200",
          "eligible_coverage_ratio": "1.0200",
          "surplus_or_shortfall": "2000000.00",
          "covered": true,
          "circulation_positive": true,
          "reserve_empty": false
        },
        "composition": {
          "eligible_asset_classes_declared": [
            "bank_deposit",
            "sovereign_bill"
          ],
          "class_totals": [
            {
              "asset_class": "bank_deposit",
              "amount": "40000000.00",
              "pct_of_reserve": "39.22",
              "limit_pct": null
            },
            {
              "asset_class": "sovereign_bill",
              "amount": "62000000.00",
              "pct_of_reserve": "60.78",
              "limit_pct": "70"
            }
          ],
          "ineligible_components": [],
          "ineligible_total": "0.00",
          "concentration_breaches": []
        },
        "segregation": {
          "segregated_amount": "40000000.00",
          "segregation_pct": "39.22",
          "min_segregated_pct_applied": "50",
          "min_segregated_pct_source": "caller_declared",
          "meets_declared_minimum": false,
          "undeclared_custodian_components": [],
          "acceptable_custodian_types_declared": [
            "credit_institution"
          ]
        },
        "cadence": {
          "cadence_days_declared": 31,
          "window_start": "2026-05-01",
          "window_end": "2026-06-30",
          "disclosure_dates_ordered": [
            "2026-05-31",
            "2026-06-30"
          ],
          "invalid_disclosure_dates": [],
          "missed_periods": []
        },
        "sign_off": {
          "surface": "art-503-build-dual-control-certification",
          "note": "Where a named human attests this check, the dual-control certification surface is the one to use. This kernel emits the receipt and evaluates no threshold of its own."
        },
        "rationale": [
          "Reserve total of 102000000.00 checked against 100000000.00 of tokens in circulation.",
          "The reserve carries 2 declared components across 2 asset classes.",
          "Every component sits inside the declared eligible asset classes.",
          "No declared concentration limit is exceeded.",
          "Segregated proportion is 39.22% against a minimum of 50% (declared by the caller).",
          "Every component sits with a custodian type the caller declared acceptable.",
          "Every interval between publications is within the declared 31-day cadence.",
          "Every verdict above is against the rules supplied with this run. It is not a determination that the issuer complies, not legal advice, and not a submission."
        ],
        "not_proven": [
          {
            "item": "Rule accuracy",
            "detail": "The eligible asset classes, concentration limits, minimum segregated percentage, acceptable custodian types and disclosure cadence are every one of them caller-supplied and asserted. This kernel ships no reporting template and no eligible-asset table, performs no lookups of any kind (zero-egress), and does not verify these rules against the regulation, a technical standard, or any supervisory expectation."
          },
          {
            "item": "Disclosure accuracy",
            "detail": "The amount in circulation, the component amounts, the custodian types, the segregation markers and the publication dates are taken as given from the disclosure being checked. This kernel does not verify that the published document says what was transcribed from it, nor that the reserve exists."
          },
          {
            "item": "Valuation",
            "detail": "Component amounts are asserted at the values supplied. No independent valuation, haircut, or mark to market is performed, and no market data is read."
          },
          {
            "item": "Compliance",
            "detail": "Every verdict here is against the CALLER's declared rules. This is not a determination that the issuer complies with MiCA or with anything else, not legal advice, and not a submission to any authority. A finding can equally originate from a rule this run had wrong."
          }
        ],
        "fence": "Eligible asset classes, concentration limits, the minimum segregated percentage, acceptable custodian types and the disclosure cadence are every one of them a caller input, transcribed from the terms the reader is holding the issuer to. This kernel ships no reporting template, no eligible-asset table and no issuer library, and performs no lookups of any kind (zero-egress by contract). disclosure_ref and rules_version are pinned so a later rule change makes an old receipt dated, not wrong."
      },
      "golden_hash": "7c08ecd896cd773975e3c8f946396c10465f18723a47e21d3b3b6d7babaa7901"
    }
  ]
}
