Files
bsk/app
tiennm99 7dc0bb556c fix: address code-review findings
- imaging: downscale to 1280px before JPEG quality-stepping so real camera
  photos fit the 200KB cap (was quality-only → rejected typical photos)
- billing: save_prescription/save_checkup_services refuse to modify a PAID
  invoice, so recorded payment can't diverge from the invoice total
- staff: set_staff_role/remove_staff RPCs hold an advisory lock while enforcing
  the last-admin invariant — race-safe vs the prior check-then-act
- imaging delete: remove the object at the row's stored path (DB lookup), not a
  client-supplied path
- invoice PDF: filter deleted=false like every other checkup view
- sign-in: skip rate limit when no client IP is resolvable instead of bucketing
  all requests under a shared "unknown" key
- reminders: bound to a [today-30d, today+7d] window so stale overdue rows
  don't accumulate and bury upcoming ones
2026-07-25 13:44:02 +07:00
..