# Verification Evidence

## Automated coverage

The suite contains 92 test methods across authentication, email verification, password management, catalog/pricing, CRM, quotes, proformas, invoices, eTIMS, payments/receipts, completion certificates, costs, employees, attendance, payroll, reports, workflow integrity, RBAC, headers, audit events, and demo-data idempotency.

New regression evidence in this review covers:

- account creation, role binding, suspension, inactive login denial, and last-admin protection;
- auditor access to evidence and denial of user administration;
- customer statement opening/running/closing balance and CSV endpoints;
- independent quote approval, immutable resubmission versions, and self-approval denial;
- eTIMS retry eligibility and attempt ceilings;
- customer primary-contact and site ownership invariants;
- payment reversal idempotency, recalculated invoice status, and receipt invalidation;
- sales, VAT, aging, statement, and audit export responses.

## Release commands

```powershell
php artisan migrate --force
php artisan db:seed --class=RolesAndPermissionsSeeder --force
php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan test
php artisan morbrick:workflow-audit
php "C:\Program Files\Composer\composer" audit
npm.cmd audit --omit=dev
```

The production database must be backed up before migration. `--force` is intended only for a reviewed production release.

