{
  "sample": "finance_opening_balance",
  "source_file": "finance_opening_balance_messy.csv",
  "clean_export": "finance_opening_balance_clean_export.csv",
  "transformations": [
    "header_normalization",
    "account_name_standardization",
    "currency_amount_normalization",
    "debit_credit_preservation",
    "target_readiness_blocker_capture"
  ],
  "checks": [
    {
      "name": "chart_of_accounts_required_fields",
      "status": "partial",
      "details": "All accounts have code, name, and type; one account lacks QuickBooks detail type."
    },
    {
      "name": "opening_balance_readiness",
      "status": "partial",
      "details": "Opening balances are normalized, but AR/AP aging caveats remain."
    },
    {
      "name": "quickbooks_readiness",
      "status": "blocked",
      "details": "Missing account detail type and AR/AP aging support block QuickBooks readiness."
    },
    {
      "name": "xero_readiness",
      "status": "partial",
      "details": "Xero account fields map, but conversion-balance review is still required."
    }
  ],
  "raw_content_cross_tenant_learning": false,
  "artifacts": [
    "business_context_profile.json",
    "repair_plan.json"
  ],
  "proof_contract": {
    "business_context_profile": "business_context_profile.json",
    "repair_plan": "repair_plan.json",
    "readiness_manifest": "readiness_manifest.json",
    "mapping_manifest": "mapping_manifest.json",
    "duplicate_decision_report": "duplicate_decision_report.json",
    "before_after_diff": "before_after_diff.json"
  }
}
