{
  "run_date": "2026-10-03",
  "python": "3.9.6",
  "platform": "Darwin",
  "sqlite": "3.54.0",
  "journal_mode": "delete",
  "python_isolation_level": null,
  "cases": [
    {
      "error_type": "IntegrityError",
      "active_at_error": false,
      "rows_at_error": [
        "a"
      ],
      "observer_at_error": [
        "a"
      ],
      "case": "autocommit",
      "final_rows": [
        "a"
      ],
      "active_at_end": false
    },
    {
      "error_type": "IntegrityError",
      "active_at_error": true,
      "rows_at_error": [
        "a"
      ],
      "observer_at_error": [],
      "case": "abort_then_commit",
      "final_rows": [
        "a"
      ],
      "active_at_end": false
    },
    {
      "error_type": "IntegrityError",
      "active_at_error": true,
      "rows_at_error": [
        "a"
      ],
      "observer_at_error": [],
      "case": "abort_then_rollback",
      "final_rows": [],
      "active_at_end": false
    },
    {
      "error_type": "IntegrityError",
      "active_at_error": false,
      "rows_at_error": [],
      "observer_at_error": [],
      "case": "or_rollback",
      "final_rows": [],
      "active_at_end": false
    },
    {
      "error_type": "IntegrityError",
      "active_at_error": true,
      "rows_at_error": [
        "seed"
      ],
      "observer_at_error": [],
      "case": "batch_abort",
      "final_rows": [
        "seed"
      ],
      "active_at_end": false
    },
    {
      "error_type": "IntegrityError",
      "active_at_error": true,
      "rows_at_error": [
        "b",
        "seed"
      ],
      "observer_at_error": [],
      "case": "batch_fail",
      "final_rows": [
        "b",
        "seed"
      ],
      "active_at_end": false
    },
    {
      "error_type": "IntegrityError",
      "active_at_error": true,
      "rows_at_error": [
        "a"
      ],
      "observer_at_error": [],
      "case": "with_exception_out",
      "final_rows": [],
      "active_at_end": false
    },
    {
      "error_type": "IntegrityError",
      "active_at_error": true,
      "rows_at_error": [
        "a"
      ],
      "observer_at_error": [],
      "case": "with_exception_caught",
      "final_rows": [
        "a"
      ],
      "active_at_end": false
    }
  ],
  "helper_checks": [
    "empty batch",
    "duplicate batch rolled back",
    "valid batch committed",
    "existing transaction rejected without changing it"
  ]
}
