# Sprint 16.2 Release Report (masked)

Date: 2026-07-29
Base: `9786857c814a29015987681e2416acb23275f9e5`
Branch: `sprint16.2/first-import-calibration-portal-flow`
PR: `#22`
Head: `ddcabf37c1900e2a11a06d907d3cd32a709cdab3`
Merge/deployed SHA: `9e08547043fbe667cb102c3d3fdae8cdef05245f`
Follow-up review-fix PR: `#23` (`850a2bd2d097d1b523f5ef9340e631606bba008b`)

## Gates

- Final review-fix `make verify`: passed.
- Backend: 803 tests passed.
- Frontend: 184 tests passed; typecheck and production build passed.
- Ruff, compileall, Git safety scan, privacy/secret checks and `git diff --check`: passed.
- The independent exact-SHA review found one P1 health-insurance family-order issue. The finding was fixed in PR #23, covered by a regression test, fully verified, normally merged and deployed.
- Both PRs reached GitHub `mergeable_state=clean`; both normal merges succeeded.

## Backup, restore and deployment

- Pre-deployment SQLite backup and isolated restore created with mode `0600`.
- Backup and restore: integrity `ok`, FK findings 0, 92 tables, 29,623 rows, identical logical count digest.
- Exact merge SHA deployed.
- Runtime classification: `household_classification_v2.2`.
- Backend health HTTP 200; frontend HTTP 200; both user services active.

## Responsive UAT

Validated at 1440x900, 820x1180 and 390x844:

- no horizontal overflow;
- four-column / two-column / one-column file-row layouts as intended;
- relevant import buttons at least 44 px high;
- four-file and aggregate-size copy visible;
- no console or JavaScript errors.

Private evidence: `responsive-uat-private.json` (mode `0600`).

## Final productive read-only four-file preview

- Classification: `household_classification_v2.2`
- Files: 4
- Rows: 1,787
- Candidates: 1,786
- Ordinary monetary rows: 1,662
- Covered: 1,205 (72.50%)
- Individual review: 80 (4.81%; maximum gate 50 / 3.00%)
- Merchant review clusters: 56 (maximum gate 25)
- Proposals: 1,257
- Decisions: 457
- Safe transfer pairs: 16
- Unresolved income cases: 73
- Technically confirmable: true
- Business-ready for Confirm: false
- Errors: none

Candidate and exact deployed-merge runs produced the same masked counts and thresholds.

Read-only evidence:

- changed DB tables: none;
- source hashes unchanged: true;
- integrity before/after: `ok` / `ok`;
- FK findings before/after: 0 / 0;
- household import batches/files/items before/after: 0 / 0;
- private response/evidence files: mode `0600`.

## Safety stop

No productive Confirm and no Realimport were executed. Confirm remains blocked because `business_ready_for_confirm=false`. No Sprint 17-19 work was performed.
