{
  "ok": true,
  "generated_at": "2026-06-26T21:34:54+00:00",
  "manifest_path": "/app/backups/20260626T213436Z/manifest.json",
  "drill_path": "/app/reports/backup_drill/backup-drill-20260626T213450673623Z",
  "kept": false,
  "summary": {
    "db_integrity_ok": true,
    "db_integrity_result": "ok",
    "db_hash_ok": true,
    "db_size": 343166976,
    "config_restored": true,
    "config_json_files": 6,
    "report_restored": true,
    "report_members": 86,
    "expected_reports_present": [
      "dashboard.html",
      "dashboard.json",
      "strategy_export.json",
      "production_audit.json",
      "operator_input_check.json"
    ],
    "drill_path_removed": true
  },
  "verification": {
    "ok": true,
    "manifest_path": "/app/backups/20260626T213436Z/manifest.json",
    "manifest": {
      "created_at": "2026-06-26T21:34:44+00:00",
      "backup_path": "/app/backups/20260626T213436Z",
      "manifest_path": "/app/backups/20260626T213436Z/manifest.json",
      "db_backup": "/app/backups/20260626T213436Z/market_intel.db",
      "db_size": 343166976,
      "db_sha256": "11839951015f552b16ea848603e6d8a02471bf46ac46c05056751db89a7e4185",
      "db_integrity": {
        "ok": true,
        "result": "ok",
        "messages": [
          "ok"
        ],
        "path": "/app/backups/20260626T213436Z/market_intel.db"
      },
      "config_zip": "/app/backups/20260626T213436Z/config.zip",
      "config_zip_size": 25225,
      "report_zip": "/app/backups/20260626T213436Z/reports.zip",
      "report_zip_size": 1191676
    },
    "db_exists": true,
    "db_size": 343166976,
    "db_size_ok": true,
    "db_sha256_expected": "11839951015f552b16ea848603e6d8a02471bf46ac46c05056751db89a7e4185",
    "db_sha256_actual": "11839951015f552b16ea848603e6d8a02471bf46ac46c05056751db89a7e4185",
    "db_sha256_ok": true,
    "db_integrity": {
      "ok": true,
      "result": "ok",
      "messages": [
        "ok"
      ],
      "path": "/app/backups/20260626T213436Z/market_intel.db"
    },
    "config_zip": {
      "ok": true,
      "path": "/app/backups/20260626T213436Z/config.zip",
      "member_count": 6,
      "bad_member": null
    },
    "report_zip": {
      "ok": true,
      "path": "/app/backups/20260626T213436Z/reports.zip",
      "member_count": 86,
      "bad_member": null
    }
  },
  "db_restore": {
    "source": "/app/backups/20260626T213436Z/market_intel.db",
    "target": "/app/reports/backup_drill/backup-drill-20260626T213450673623Z/data/market_intel.db",
    "integrity": {
      "ok": true,
      "result": "ok",
      "messages": [
        "ok"
      ],
      "path": "/app/reports/backup_drill/backup-drill-20260626T213450673623Z/data/market_intel.db"
    },
    "sha256": "11839951015f552b16ea848603e6d8a02471bf46ac46c05056751db89a7e4185",
    "sha256_ok": true,
    "size": 343166976
  },
  "extracted": {
    "config": {
      "member_count": 6,
      "json_files": 6
    },
    "reports": {
      "member_count": 86,
      "expected_reports_present": [
        "dashboard.html",
        "dashboard.json",
        "strategy_export.json",
        "production_audit.json",
        "operator_input_check.json"
      ]
    }
  },
  "drill_path_removed": true
}
