{
  "format": "jextra-workflow-audit/v1",
  "recipeId": "insurance-fnol",
  "comparisons": [
    {
      "sourceRows": [
        {
          "insurer": "A",
          "policy": "PA-1",
          "version": 1,
          "holderId": "H-1",
          "start": "2025-01-01",
          "end": "2025-12-31",
          "premium": "1250.00"
        },
        {
          "insurer": "A",
          "policy": "PA-1",
          "version": 2,
          "holderId": "H-1",
          "start": "2026-01-01",
          "end": "2026-12-31",
          "premium": "1300.00"
        },
        {
          "insurer": "B",
          "policy": "PA-1",
          "version": 1,
          "holderId": "H-2",
          "start": "2026-01-01",
          "end": "2026-12-31",
          "premium": "900.00"
        }
      ],
      "targetRows": [
        {
          "tenant": "A",
          "number": "PA-1",
          "period": 1,
          "partyId": "H-1",
          "effective": "2025-01-01",
          "expiry": "2025-12-31",
          "premiumAmount": "1250.00"
        },
        {
          "tenant": "A",
          "number": "PA-1",
          "period": 2,
          "partyId": "H-1",
          "effective": "2026-01-01",
          "expiry": "2026-12-31",
          "premiumAmount": "1300.00"
        },
        {
          "tenant": "B",
          "number": "PA-1",
          "period": 1,
          "partyId": "H-2",
          "effective": "2026-01-01",
          "expiry": "2026-12-31",
          "premiumAmount": "900.00"
        }
      ],
      "mapping": {
        "sourceEntity": "Policy period",
        "targetEntity": "Policy API period",
        "keys": [
          "insurer",
          "policy",
          "version"
        ],
        "fields": [
          {
            "source": "insurer",
            "target": "tenant",
            "rule": "exact"
          },
          {
            "source": "policy",
            "target": "number",
            "rule": "exact"
          },
          {
            "source": "version",
            "target": "period",
            "rule": "exact"
          },
          {
            "source": "holderId",
            "target": "partyId",
            "rule": "exact"
          },
          {
            "source": "start",
            "target": "effective",
            "rule": "exact"
          },
          {
            "source": "end",
            "target": "expiry",
            "rule": "exact"
          },
          {
            "source": "premium",
            "target": "premiumAmount",
            "rule": "decimal",
            "tolerance": "0"
          }
        ],
        "excludedFields": []
      },
      "scope": {
        "kind": "supplied-snapshots",
        "sourceSnapshot": "legacy-snapshot-2026-10-30T12:00:00Z",
        "targetSnapshot": "api-store-snapshot-2026-10-30T12:00:00Z",
        "filter": "Two insurers, all policy periods in this fixture",
        "consistency": "Synthetic supplied fixture captures share the same stated capture time and filter. Completeness is limited to this fixture, not independently verified against an insurer database."
      }
    },
    {
      "sourceRows": [
        {
          "insurer": "A",
          "holderId": "H-1"
        },
        {
          "insurer": "B",
          "holderId": "H-2"
        }
      ],
      "targetRows": [
        {
          "tenant": "A",
          "partyId": "H-1"
        },
        {
          "tenant": "B",
          "partyId": "H-2"
        }
      ],
      "mapping": {
        "sourceEntity": "Named insured",
        "targetEntity": "Party",
        "keys": [
          "insurer",
          "holderId"
        ],
        "fields": [
          {
            "source": "insurer",
            "target": "tenant",
            "rule": "exact"
          },
          {
            "source": "holderId",
            "target": "partyId",
            "rule": "exact"
          }
        ],
        "excludedFields": []
      },
      "scope": {
        "kind": "supplied-snapshots",
        "sourceSnapshot": "legacy-snapshot-2026-10-30T12:00:00Z",
        "targetSnapshot": "api-store-snapshot-2026-10-30T12:00:00Z",
        "filter": "Two insurers, all policy periods in this fixture",
        "consistency": "Synthetic supplied fixture captures share the same stated capture time and filter. Completeness is limited to this fixture, not independently verified against an insurer database."
      }
    }
  ],
  "relationships": [
    {
      "fromEntity": "Policy period",
      "fromField": "holderId",
      "toEntity": "Named insured",
      "toField": "holderId",
      "scopeField": "insurer",
      "required": true
    }
  ],
  "synthetic": true,
  "purpose": "Intentionally flawed source/target example. Expected audit outcome: differences. No customer data."
}
