{
  "tool_id": "art-519-payment-data-migration-completeness",
  "note": "Vectors computed directly from the shipped kernel. Covers a clean multi-partition migration, MIGR_PARTITION_INCONSISTENT (the spec-starred aggregate-nets-to-zero-over-broken-partitions case), MIGR_UNDECLARED_TRANSFORM combined with MIGR_SAMPLED_ONLY (never presented as MIGR_COMPLETE), the finite gate on zero declared partitions, the §6.9 region-portability second-jurisdiction case, and a NON-PAYMENT migration (case-management document records, control total in page count rather than currency) proving the kernel is a generic records-with-control-totals verifier, not a payments-only tool.",
  "vectors": [
    {
      "name": "non-payment-case-management-document-migration",
      "description": "NON-PAYMENT PROOF: a records management system migrating scanned case documents to a successor platform. The declared control total is a PAGE COUNT, not a currency amount -- currency is set to the neutral unit label PAGES. Same kernel, same fields, zero code change: this is not a payments-only tool, it is a generic records-with-control-totals completeness verifier. One partition has a declared exclusion (duplicate scans deduplicated pre-migration); both partitions reconcile. MIGR_COMPLETE.",
      "policy_parameters": {
        "migration_id": "MIGR-2026-CASEDOCS-01",
        "as_of": "2026-07-31",
        "currency": "PAGES",
        "reconciliation_tolerance_minor_units": 0,
        "partitions": [
          {
            "partition_label": "CONTRACTS",
            "source_record_count": 4000,
            "source_control_total_minor_units": 1250000,
            "target_record_count": 3995,
            "target_control_total_minor_units": 1248500,
            "known_exclusions": [
              {
                "reason_code": "duplicate_scan_deduplicated_pre_migration",
                "excluded_record_count": 5,
                "excluded_value_minor_units": 1500
              }
            ]
          },
          {
            "partition_label": "CORRESPONDENCE",
            "source_record_count": 8000,
            "source_control_total_minor_units": 960000,
            "target_record_count": 8000,
            "target_control_total_minor_units": 960000,
            "known_exclusions": []
          }
        ]
      },
      "output_payload": {
        "migration_id": "MIGR-2026-CASEDOCS-01",
        "as_of": "2026-07-31",
        "currency": "PAGES",
        "reconciliation_tolerance_minor_units": 0,
        "partition_count": 2,
        "partitions": [
          {
            "partition_label": "CONTRACTS",
            "source_record_count": 4000,
            "source_control_total_minor_units": 1250000,
            "source_control_total_display": "12500.00",
            "target_record_count": 3995,
            "target_control_total_minor_units": 1248500,
            "target_control_total_display": "12485.00",
            "known_exclusions": [
              {
                "reason_code": "duplicate_scan_deduplicated_pre_migration",
                "excluded_record_count": 5,
                "excluded_value_minor_units": 1500,
                "excluded_value_display": "15.00"
              }
            ],
            "excluded_record_count": 5,
            "excluded_value_minor_units": 1500,
            "excluded_value_display": "15.00",
            "expected_target_record_count": 3995,
            "expected_target_value_minor_units": 1248500,
            "expected_target_value_display": "12485.00",
            "count_variance": 0,
            "value_variance_minor_units": 0,
            "value_variance_display": "0.00",
            "count_complete": true,
            "value_complete": true,
            "partition_complete": true,
            "sampled": false,
            "sample_size": 0,
            "sample_discrepancies_found": 0
          },
          {
            "partition_label": "CORRESPONDENCE",
            "source_record_count": 8000,
            "source_control_total_minor_units": 960000,
            "source_control_total_display": "9600.00",
            "target_record_count": 8000,
            "target_control_total_minor_units": 960000,
            "target_control_total_display": "9600.00",
            "known_exclusions": [],
            "excluded_record_count": 0,
            "excluded_value_minor_units": 0,
            "excluded_value_display": "0.00",
            "expected_target_record_count": 8000,
            "expected_target_value_minor_units": 960000,
            "expected_target_value_display": "9600.00",
            "count_variance": 0,
            "value_variance_minor_units": 0,
            "value_variance_display": "0.00",
            "count_complete": true,
            "value_complete": true,
            "partition_complete": true,
            "sampled": false,
            "sample_size": 0,
            "sample_discrepancies_found": 0
          }
        ],
        "partitions_with_variance_count": 0,
        "aggregate_count_variance": 0,
        "aggregate_value_variance_minor_units": 0,
        "aggregate_value_variance_display": "0.00",
        "aggregate_complete": true,
        "all_partitions_complete": true,
        "partition_inconsistent": false,
        "declared_transformation_rules": [],
        "observed_changed_field_count": 0,
        "undeclared_transformed_fields": [],
        "sampled_partition_count": 0,
        "sample_discrepancies_total": 0,
        "any_sampled_only": false,
        "migration_complete": true,
        "rejected_inputs": [],
        "rationale": [
          "2 declared partitions evaluated; 2 of 2 reconcile in both count and value within the declared 0.00 PAGES tolerance.",
          "Aggregate (sum of declared partitions) reconciles: count variance 0, value variance 0.00 PAGES.",
          "This is a deterministic reconciliation over caller-declared source/target counts and control totals. It does not read the source or target dataset and is not a determination that any underlying data quality control has been met."
        ],
        "note": "Deterministic payment data migration completeness verifier over caller-declared per-partition source/target record counts and control totals, known exclusions with reasons, declared transformation rules, and observed changed fields. Checks per-partition and aggregate-vs-partition completeness (a reconciling aggregate over broken partitions is the finding), transformation coverage, and flags any partition verified by sampling only as a residual-risk statement rather than a completeness verdict. Never reads a source or target dataset."
      },
      "compliance_flags": [
        "MIGR_COMPLETE"
      ],
      "golden_hash": "bd167096b0650aa750adb213560f60bf2a578e2b58f1e40810d9670125e93495"
    },
    {
      "name": "clean-multi-partition-migration",
      "description": "Two-period migration (2026-Q1, 2026-Q2) with a declared exclusion (closed accounts purged pre-migration) and one declared transformation rule (account number remap) matching the one observed changed field. Both partitions reconcile in count and value within zero tolerance. MIGR_COMPLETE.",
      "policy_parameters": {
        "migration_id": "MIGR-2026-JURA-01",
        "as_of": "2026-07-31",
        "currency": "USD",
        "reconciliation_tolerance_minor_units": 0,
        "partitions": [
          {
            "partition_label": "2026-Q1",
            "source_record_count": 10000,
            "source_control_total_minor_units": 50000000,
            "target_record_count": 9990,
            "target_control_total_minor_units": 49950000,
            "known_exclusions": [
              {
                "reason_code": "closed_account_purged_pre_migration",
                "excluded_record_count": 10,
                "excluded_value_minor_units": 50000
              }
            ]
          },
          {
            "partition_label": "2026-Q2",
            "source_record_count": 12000,
            "source_control_total_minor_units": 60000000,
            "target_record_count": 12000,
            "target_control_total_minor_units": 60000000,
            "known_exclusions": []
          }
        ],
        "declared_transformation_rules": [
          {
            "field": "account_ref",
            "description": "legacy 8-digit account number remapped to successor 12-digit account ref"
          }
        ],
        "observed_changed_fields": [
          "account_ref"
        ]
      },
      "output_payload": {
        "migration_id": "MIGR-2026-JURA-01",
        "as_of": "2026-07-31",
        "currency": "USD",
        "reconciliation_tolerance_minor_units": 0,
        "partition_count": 2,
        "partitions": [
          {
            "partition_label": "2026-Q1",
            "source_record_count": 10000,
            "source_control_total_minor_units": 50000000,
            "source_control_total_display": "500000.00",
            "target_record_count": 9990,
            "target_control_total_minor_units": 49950000,
            "target_control_total_display": "499500.00",
            "known_exclusions": [
              {
                "reason_code": "closed_account_purged_pre_migration",
                "excluded_record_count": 10,
                "excluded_value_minor_units": 50000,
                "excluded_value_display": "500.00"
              }
            ],
            "excluded_record_count": 10,
            "excluded_value_minor_units": 50000,
            "excluded_value_display": "500.00",
            "expected_target_record_count": 9990,
            "expected_target_value_minor_units": 49950000,
            "expected_target_value_display": "499500.00",
            "count_variance": 0,
            "value_variance_minor_units": 0,
            "value_variance_display": "0.00",
            "count_complete": true,
            "value_complete": true,
            "partition_complete": true,
            "sampled": false,
            "sample_size": 0,
            "sample_discrepancies_found": 0
          },
          {
            "partition_label": "2026-Q2",
            "source_record_count": 12000,
            "source_control_total_minor_units": 60000000,
            "source_control_total_display": "600000.00",
            "target_record_count": 12000,
            "target_control_total_minor_units": 60000000,
            "target_control_total_display": "600000.00",
            "known_exclusions": [],
            "excluded_record_count": 0,
            "excluded_value_minor_units": 0,
            "excluded_value_display": "0.00",
            "expected_target_record_count": 12000,
            "expected_target_value_minor_units": 60000000,
            "expected_target_value_display": "600000.00",
            "count_variance": 0,
            "value_variance_minor_units": 0,
            "value_variance_display": "0.00",
            "count_complete": true,
            "value_complete": true,
            "partition_complete": true,
            "sampled": false,
            "sample_size": 0,
            "sample_discrepancies_found": 0
          }
        ],
        "partitions_with_variance_count": 0,
        "aggregate_count_variance": 0,
        "aggregate_value_variance_minor_units": 0,
        "aggregate_value_variance_display": "0.00",
        "aggregate_complete": true,
        "all_partitions_complete": true,
        "partition_inconsistent": false,
        "declared_transformation_rules": [
          {
            "field": "account_ref",
            "description": "legacy 8-digit account number remapped to successor 12-digit account ref"
          }
        ],
        "observed_changed_field_count": 1,
        "undeclared_transformed_fields": [],
        "sampled_partition_count": 0,
        "sample_discrepancies_total": 0,
        "any_sampled_only": false,
        "migration_complete": true,
        "rejected_inputs": [],
        "rationale": [
          "2 declared partitions evaluated; 2 of 2 reconcile in both count and value within the declared 0.00 USD tolerance.",
          "Aggregate (sum of declared partitions) reconciles: count variance 0, value variance 0.00 USD.",
          "This is a deterministic reconciliation over caller-declared source/target counts and control totals. It does not read the source or target dataset and is not a determination that any underlying data quality control has been met."
        ],
        "note": "Deterministic payment data migration completeness verifier over caller-declared per-partition source/target record counts and control totals, known exclusions with reasons, declared transformation rules, and observed changed fields. Checks per-partition and aggregate-vs-partition completeness (a reconciling aggregate over broken partitions is the finding), transformation coverage, and flags any partition verified by sampling only as a residual-risk statement rather than a completeness verdict. Never reads a source or target dataset."
      },
      "compliance_flags": [
        "MIGR_COMPLETE"
      ],
      "golden_hash": "c2008e3c1641668546fe4af7bbf788f7c537c5f74c0906570fc66fd52230aa6f"
    },
    {
      "name": "partition-inconsistent-aggregate-nets-to-zero",
      "description": "THE POINT (spec starred): two agency partitions with equal and opposite count/value breaks (+5/+20000 and -5/-20000 minor units). The AGGREGATE reconciles to zero, but neither individual partition does. MIGR_PARTITION_INCONSISTENT fires alongside MIGR_COUNT_VARIANCE and MIGR_VALUE_VARIANCE; MIGR_COMPLETE never fires.",
      "policy_parameters": {
        "migration_id": "MIGR-2026-NETOUT",
        "as_of": "2026-07-31",
        "currency": "USD",
        "reconciliation_tolerance_minor_units": 0,
        "partitions": [
          {
            "partition_label": "AGENCY-A",
            "source_record_count": 5000,
            "source_control_total_minor_units": 20000000,
            "target_record_count": 5005,
            "target_control_total_minor_units": 20005000,
            "known_exclusions": []
          },
          {
            "partition_label": "AGENCY-B",
            "source_record_count": 5000,
            "source_control_total_minor_units": 20000000,
            "target_record_count": 4995,
            "target_control_total_minor_units": 19995000,
            "known_exclusions": []
          }
        ]
      },
      "output_payload": {
        "migration_id": "MIGR-2026-NETOUT",
        "as_of": "2026-07-31",
        "currency": "USD",
        "reconciliation_tolerance_minor_units": 0,
        "partition_count": 2,
        "partitions": [
          {
            "partition_label": "AGENCY-A",
            "source_record_count": 5000,
            "source_control_total_minor_units": 20000000,
            "source_control_total_display": "200000.00",
            "target_record_count": 5005,
            "target_control_total_minor_units": 20005000,
            "target_control_total_display": "200050.00",
            "known_exclusions": [],
            "excluded_record_count": 0,
            "excluded_value_minor_units": 0,
            "excluded_value_display": "0.00",
            "expected_target_record_count": 5000,
            "expected_target_value_minor_units": 20000000,
            "expected_target_value_display": "200000.00",
            "count_variance": 5,
            "value_variance_minor_units": 5000,
            "value_variance_display": "50.00",
            "count_complete": false,
            "value_complete": false,
            "partition_complete": false,
            "sampled": false,
            "sample_size": 0,
            "sample_discrepancies_found": 0
          },
          {
            "partition_label": "AGENCY-B",
            "source_record_count": 5000,
            "source_control_total_minor_units": 20000000,
            "source_control_total_display": "200000.00",
            "target_record_count": 4995,
            "target_control_total_minor_units": 19995000,
            "target_control_total_display": "199950.00",
            "known_exclusions": [],
            "excluded_record_count": 0,
            "excluded_value_minor_units": 0,
            "excluded_value_display": "0.00",
            "expected_target_record_count": 5000,
            "expected_target_value_minor_units": 20000000,
            "expected_target_value_display": "200000.00",
            "count_variance": -5,
            "value_variance_minor_units": -5000,
            "value_variance_display": "-50.00",
            "count_complete": false,
            "value_complete": false,
            "partition_complete": false,
            "sampled": false,
            "sample_size": 0,
            "sample_discrepancies_found": 0
          }
        ],
        "partitions_with_variance_count": 2,
        "aggregate_count_variance": 0,
        "aggregate_value_variance_minor_units": 0,
        "aggregate_value_variance_display": "0.00",
        "aggregate_complete": true,
        "all_partitions_complete": false,
        "partition_inconsistent": true,
        "declared_transformation_rules": [],
        "observed_changed_field_count": 0,
        "undeclared_transformed_fields": [],
        "sampled_partition_count": 0,
        "sample_discrepancies_total": 0,
        "any_sampled_only": false,
        "migration_complete": false,
        "rejected_inputs": [],
        "rationale": [
          "2 declared partitions evaluated; 0 of 2 reconcile in both count and value within the declared 0.00 USD tolerance.",
          "Aggregate (sum of declared partitions) reconciles: count variance 0, value variance 0.00 USD.",
          "The aggregate reconciles while 2 of 2 individual partitions do not -- this is the failure the aggregate alone conceals.",
          "This is a deterministic reconciliation over caller-declared source/target counts and control totals. It does not read the source or target dataset and is not a determination that any underlying data quality control has been met."
        ],
        "note": "Deterministic payment data migration completeness verifier over caller-declared per-partition source/target record counts and control totals, known exclusions with reasons, declared transformation rules, and observed changed fields. Checks per-partition and aggregate-vs-partition completeness (a reconciling aggregate over broken partitions is the finding), transformation coverage, and flags any partition verified by sampling only as a residual-risk statement rather than a completeness verdict. Never reads a source or target dataset."
      },
      "compliance_flags": [
        "MIGR_COUNT_VARIANCE",
        "MIGR_VALUE_VARIANCE",
        "MIGR_PARTITION_INCONSISTENT"
      ],
      "golden_hash": "fdc001ebfe1161cdce0a1c55458a1ea11bcb91e35bbbff3640b4bf263eb6f11f"
    },
    {
      "name": "undeclared-transform-and-sampled-only",
      "description": "A field (payee_name_encoding) was observed to change with no declared transformation rule (MIGR_UNDECLARED_TRANSFORM), and the only partition was verified by sampling, not full reconciliation (MIGR_SAMPLED_ONLY). The partition arithmetic is otherwise clean, but MIGR_COMPLETE must NOT fire -- a sampled verification is a residual-risk statement, never a completeness verdict.",
      "policy_parameters": {
        "migration_id": "MIGR-2026-SAMPLE",
        "as_of": "2026-08-01",
        "currency": "EUR",
        "reconciliation_tolerance_minor_units": 100,
        "partitions": [
          {
            "partition_label": "RAIL-FPS",
            "source_record_count": 2000,
            "source_control_total_minor_units": 9000000,
            "target_record_count": 2000,
            "target_control_total_minor_units": 9000000,
            "known_exclusions": [],
            "sample_verification": {
              "sampled": true,
              "sample_size": 200,
              "discrepancies_found": 0
            }
          }
        ],
        "declared_transformation_rules": [
          {
            "field": "account_ref",
            "description": "remap"
          }
        ],
        "observed_changed_fields": [
          "account_ref",
          "payee_name_encoding"
        ]
      },
      "output_payload": {
        "migration_id": "MIGR-2026-SAMPLE",
        "as_of": "2026-08-01",
        "currency": "EUR",
        "reconciliation_tolerance_minor_units": 100,
        "partition_count": 1,
        "partitions": [
          {
            "partition_label": "RAIL-FPS",
            "source_record_count": 2000,
            "source_control_total_minor_units": 9000000,
            "source_control_total_display": "90000.00",
            "target_record_count": 2000,
            "target_control_total_minor_units": 9000000,
            "target_control_total_display": "90000.00",
            "known_exclusions": [],
            "excluded_record_count": 0,
            "excluded_value_minor_units": 0,
            "excluded_value_display": "0.00",
            "expected_target_record_count": 2000,
            "expected_target_value_minor_units": 9000000,
            "expected_target_value_display": "90000.00",
            "count_variance": 0,
            "value_variance_minor_units": 0,
            "value_variance_display": "0.00",
            "count_complete": true,
            "value_complete": true,
            "partition_complete": true,
            "sampled": true,
            "sample_size": 200,
            "sample_discrepancies_found": 0
          }
        ],
        "partitions_with_variance_count": 0,
        "aggregate_count_variance": 0,
        "aggregate_value_variance_minor_units": 0,
        "aggregate_value_variance_display": "0.00",
        "aggregate_complete": true,
        "all_partitions_complete": true,
        "partition_inconsistent": false,
        "declared_transformation_rules": [
          {
            "field": "account_ref",
            "description": "remap"
          }
        ],
        "observed_changed_field_count": 2,
        "undeclared_transformed_fields": [
          "payee_name_encoding"
        ],
        "sampled_partition_count": 1,
        "sample_discrepancies_total": 0,
        "any_sampled_only": true,
        "migration_complete": false,
        "rejected_inputs": [],
        "rationale": [
          "1 declared partition evaluated; 1 of 1 reconcile in both count and value within the declared 1.00 EUR tolerance.",
          "Aggregate (sum of declared partitions) reconciles: count variance 0, value variance 0.00 EUR.",
          "1 observed changed field(s) have no declared transformation rule: payee_name_encoding.",
          "1 of 1 partition(s) were verified by sampling only (0 discrepancy(ies) found in-sample) -- this is a residual-risk statement, not a completeness verdict, and suppresses MIGR_COMPLETE for the migration as a whole.",
          "This is a deterministic reconciliation over caller-declared source/target counts and control totals. It does not read the source or target dataset and is not a determination that any underlying data quality control has been met."
        ],
        "note": "Deterministic payment data migration completeness verifier over caller-declared per-partition source/target record counts and control totals, known exclusions with reasons, declared transformation rules, and observed changed fields. Checks per-partition and aggregate-vs-partition completeness (a reconciling aggregate over broken partitions is the finding), transformation coverage, and flags any partition verified by sampling only as a residual-risk statement rather than a completeness verdict. Never reads a source or target dataset."
      },
      "compliance_flags": [
        "MIGR_UNDECLARED_TRANSFORM",
        "MIGR_SAMPLED_ONLY"
      ],
      "golden_hash": "9ff33f5c1ef85639925ce12d5235a94fe462255f852635df704135cd72901f7a"
    },
    {
      "name": "no-partitions-declared-finite-gate",
      "description": "FINITE GATE: an entirely empty policy_parameters object. Zero partitions resolves to a defined, non-NaN verdict with zero flags rather than a false MIGR_COMPLETE or an undefined status.",
      "policy_parameters": {},
      "output_payload": {
        "migration_id": null,
        "as_of": null,
        "currency": "USD",
        "reconciliation_tolerance_minor_units": 0,
        "partition_count": 0,
        "partitions": [],
        "partitions_with_variance_count": 0,
        "aggregate_count_variance": 0,
        "aggregate_value_variance_minor_units": 0,
        "aggregate_value_variance_display": "0.00",
        "aggregate_complete": true,
        "all_partitions_complete": false,
        "partition_inconsistent": false,
        "declared_transformation_rules": [],
        "observed_changed_field_count": 0,
        "undeclared_transformed_fields": [],
        "sampled_partition_count": 0,
        "sample_discrepancies_total": 0,
        "any_sampled_only": false,
        "migration_complete": false,
        "rejected_inputs": [],
        "rationale": [
          "No partitions were declared; there is nothing to reconcile.",
          "Aggregate (sum of declared partitions) reconciles: count variance 0, value variance 0.00 USD.",
          "This is a deterministic reconciliation over caller-declared source/target counts and control totals. It does not read the source or target dataset and is not a determination that any underlying data quality control has been met."
        ],
        "note": "Deterministic payment data migration completeness verifier over caller-declared per-partition source/target record counts and control totals, known exclusions with reasons, declared transformation rules, and observed changed fields. Checks per-partition and aggregate-vs-partition completeness (a reconciling aggregate over broken partitions is the finding), transformation coverage, and flags any partition verified by sampling only as a residual-risk statement rather than a completeness verdict. Never reads a source or target dataset."
      },
      "compliance_flags": [],
      "golden_hash": "b3d843faba908251606e366b2f6bdd5d4ff993155cfde20451979714312c613a"
    },
    {
      "name": "region-portability-jurisdiction-b-mobile-money-rail",
      "description": "REGION-PORTABILITY ACCEPTANCE TEST (§6.9): a structurally different second jurisdiction -- XOF-denominated, a single mobile-money-rail partition (not a period-based partition scheme), a 500-minor-unit tolerance, and a duplicate-source-record exclusion reason -- expressed with the SAME kernel and no code change, only caller-declared inputs. MIGR_COMPLETE.",
      "policy_parameters": {
        "migration_id": "MIGR-2026-JURB-01",
        "as_of": "2026-07-31",
        "currency": "XOF",
        "reconciliation_tolerance_minor_units": 500,
        "partitions": [
          {
            "partition_label": "MOBILE-MONEY-RAIL",
            "source_record_count": 300000,
            "source_control_total_minor_units": 900000000,
            "target_record_count": 299998,
            "target_control_total_minor_units": 899999400,
            "known_exclusions": [
              {
                "reason_code": "duplicate_source_record",
                "excluded_record_count": 2,
                "excluded_value_minor_units": 600
              }
            ]
          }
        ]
      },
      "output_payload": {
        "migration_id": "MIGR-2026-JURB-01",
        "as_of": "2026-07-31",
        "currency": "XOF",
        "reconciliation_tolerance_minor_units": 500,
        "partition_count": 1,
        "partitions": [
          {
            "partition_label": "MOBILE-MONEY-RAIL",
            "source_record_count": 300000,
            "source_control_total_minor_units": 900000000,
            "source_control_total_display": "9000000.00",
            "target_record_count": 299998,
            "target_control_total_minor_units": 899999400,
            "target_control_total_display": "8999994.00",
            "known_exclusions": [
              {
                "reason_code": "duplicate_source_record",
                "excluded_record_count": 2,
                "excluded_value_minor_units": 600,
                "excluded_value_display": "6.00"
              }
            ],
            "excluded_record_count": 2,
            "excluded_value_minor_units": 600,
            "excluded_value_display": "6.00",
            "expected_target_record_count": 299998,
            "expected_target_value_minor_units": 899999400,
            "expected_target_value_display": "8999994.00",
            "count_variance": 0,
            "value_variance_minor_units": 0,
            "value_variance_display": "0.00",
            "count_complete": true,
            "value_complete": true,
            "partition_complete": true,
            "sampled": false,
            "sample_size": 0,
            "sample_discrepancies_found": 0
          }
        ],
        "partitions_with_variance_count": 0,
        "aggregate_count_variance": 0,
        "aggregate_value_variance_minor_units": 0,
        "aggregate_value_variance_display": "0.00",
        "aggregate_complete": true,
        "all_partitions_complete": true,
        "partition_inconsistent": false,
        "declared_transformation_rules": [],
        "observed_changed_field_count": 0,
        "undeclared_transformed_fields": [],
        "sampled_partition_count": 0,
        "sample_discrepancies_total": 0,
        "any_sampled_only": false,
        "migration_complete": true,
        "rejected_inputs": [],
        "rationale": [
          "1 declared partition evaluated; 1 of 1 reconcile in both count and value within the declared 5.00 XOF tolerance.",
          "Aggregate (sum of declared partitions) reconciles: count variance 0, value variance 0.00 XOF.",
          "This is a deterministic reconciliation over caller-declared source/target counts and control totals. It does not read the source or target dataset and is not a determination that any underlying data quality control has been met."
        ],
        "note": "Deterministic payment data migration completeness verifier over caller-declared per-partition source/target record counts and control totals, known exclusions with reasons, declared transformation rules, and observed changed fields. Checks per-partition and aggregate-vs-partition completeness (a reconciling aggregate over broken partitions is the finding), transformation coverage, and flags any partition verified by sampling only as a residual-risk statement rather than a completeness verdict. Never reads a source or target dataset."
      },
      "compliance_flags": [
        "MIGR_COMPLETE"
      ],
      "golden_hash": "38f0f3cf9a046d4f9ecfc8bc93f944de8fd8382ec10edee017ae07e3244e16a2"
    }
  ]
}
