Prestige Barber Club v4.40.0 - Deep Audit Report Scope: - Edit Member: Super Admin, Manager, Cashier - Delete Member: Super Admin only - Edit Non Member: Super Admin, Manager, Cashier - Delete Non Member: Super Admin only - Edit Pra-Member: Super Admin, Manager, Cashier - Delete Pra-Member: Super Admin only; blocked when membership-sale financial relation exists - Delete POS Transaction: Super Admin only - Pagination/per-page: Member, Non Member, Pra-Member, Transactions Transaction deletion integrity: - row locked before delete - retail stock restored - automatic operational stock restored - original transaction stock movements cleaned - restoration movements recorded as return_in - operational-usage journals invalidated - transaction accounting journal invalidated - member points reversed when payment points had been applied - member level re-evaluated after point reversal - non-member aggregate rebuilt from remaining transaction snapshots - transaction child rows rely on declared ON DELETE CASCADE / SET NULL relationships - payment proof file removed only when path is safely inside uploads/ - activity log records the destructive action Member deletion integrity: - historical POS customer_name/customer_phone snapshot preserved before member FK becomes NULL - membership-sale linked income/journal records explicitly cleaned - membership sale rows removed before member to satisfy RESTRICT relation - member photo removed only after successful DB commit - activity log records deletion Security: - destructive POST actions require valid CSRF - role is rechecked server-side; hiding a button is not the security boundary - edit pages restricted to superadmin/manager/cashier - delete endpoints reject non-superadmin with HTTP 403