# FINANCE BUG REPORT — Phase 4 Forensic QA

**Generated:** 2026-07-11 18:36:51

## Bugs found: 2

### BUG-01 — Finance dashboard HTTP 500

| Field | Detail |
|-------|--------|
| Severity | Critical (blocks primary nav landing page) |
| Symptom | GET `/finance/dashboard` → 500 |
| Root cause | `@vite('resources/js/pages/finance-dashboard.js')` referenced but asset missing from `public/build/manifest.json` |
| Evidence | `storage/logs/laravel.log` ViteException 2026-07-11 |
| Status | **FIXED** |

### BUG-02 — GatewayFactory rejects `null` provider

| Field | Detail |
|-------|--------|
| Severity | Low (future/fallback gateways) |
| Symptom | `GatewayFactory::make('null')` → InvalidArgumentException |
| Root cause | Match arms covered future providers via NullGateway but omitted literal `null` alias |
| Evidence | Forensic FAIL `[gateways] Factory makes null` |
| Status | **FIXED** |

## False positives during audit (not bugs)

| Item | Explanation |
|------|-------------|
| View `finance.dashboard` missing | Actual view is `finance.dashboard.index` |
| View `finance.checkout.show` missing | Actual view is `finance.payments.checkout` |
| Clearance status `blocked` after QA payment | Student retained seeded outstanding balance (10000−1150=8850); clearance logic correct |