{
  "completed_at": "2026-07-27T20:04:57+02:00",
  "release": {
    "pull_request": 16,
    "ci_run": 30290569563,
    "ci_conclusion": "success",
    "feature_commit": "96b86d9967c0bccff697cd637fbfe75ee75b44b5",
    "merge_commit": "9f2102ae25407dec1d8800e976186a112aea7825",
    "remote_main": "9f2102ae25407dec1d8800e976186a112aea7825",
    "deployed_head": "9f2102ae25407dec1d8800e976186a112aea7825"
  },
  "verification": {
    "backend_tests": 692,
    "frontend_tests": 164,
    "make_verify": "passed",
    "typecheck": "passed",
    "frontend_build": "passed",
    "ruff": "passed",
    "compileall": "passed",
    "git_diff_check": "passed",
    "git_safety_scan": "GIT_SAFETY_OK",
    "independent_codex_review": "no_discrete_introduced_issue"
  },
  "backup_restore": {
    "backup_file": "/home/agent/jarvis_runtime/finance-system/backups/finance-runtime-db-pre-sprint13-hotfix-20260727T174743Z.sqlite3",
    "checksum_file": "/home/agent/jarvis_runtime/finance-system/backups/finance-runtime-db-pre-sprint13-hotfix-20260727T174743Z.sqlite3.sha256",
    "sha256": "9cb7be1595a8c7bd1430b39426fe69699b3b76c1d7f9d219c9aaa57b0b49b5b9",
    "restore_sha256_match": true,
    "restore_integrity_check": "ok"
  },
  "runtime": {
    "backend_service": "active",
    "frontend_service": "active",
    "api_health": "ok",
    "api_mode": "read-only",
    "schema_version": 45,
    "integrity_check": "ok"
  },
  "production_uat": {
    "overview_total_chf": "521703.54",
    "postfinance_total_chf": "321149.23",
    "postfinance_securities_chf": "293465.16",
    "postfinance_cash_chf": "27684.07",
    "postfinance_stocks_chf": "255791.97",
    "postfinance_etfs_chf": "37673.19",
    "postfinance_position_count": 22,
    "postfinance_cash_component_count": 2,
    "postfinance_reconciliation_status": "matched",
    "truewealth_chf": "152845.00",
    "unpriced_positions_count": 0,
    "open_cash_reconciliation_count": 0,
    "data_quality_status": "ok",
    "browser_desktop": "passed",
    "browser_mobile_390x844": "passed",
    "mobile_screenshot": "/tmp/finance-portfolio-mobile-uat.png"
  },
  "idempotency_uat": {
    "preview_duplicate": true,
    "preview_conflict": false,
    "confirm_status": "confirmed",
    "confirm_idempotent": true,
    "economic_tables_unchanged": true,
    "integrity_before": "ok",
    "integrity_after": "ok",
    "postfinance_import_batches": 1,
    "postfinance_snapshots": 1,
    "postfinance_snapshot_positions": 22,
    "postfinance_snapshot_cash": 2,
    "transactions": 68,
    "cash_balances": 4,
    "positions_snapshot": 44
  },
  "data_repair": {
    "required": false,
    "reason": "Read-model defect only; confirmed official import data and provenance remained economically correct and unchanged."
  },
  "sprint_14_started": false
}
