# Service Auto — Phase 2+ Backlog

Scope wall: prototype = creare comandă only. Everything below = phase 2+.

---

## P2.1 — SP production-grade (înlocuire SP_CREEAZA_COMANDA_PROTOTIP)

SP-ul prototip nu setează: `id_sucursala`, `id_inspector`, `proc_tvav`, `observatii`,
`defectiuni`, `kmint`, `termen`. Toate nullable → OK pentru prototip.

- **Opțiunea A**: Extinde `SP_CREEAZA_COMANDA_PROTOTIP` cu parametrii lipsă (control total)
- **Opțiunea B**: Migrează la `pack_auto.dev_adauga_lucrare` (17 params + `pack_sesiune`
  coupling — necesită inițializare sesiune Oracle înainte de apel)

## P2.2 — Vizualizare comenzi active (GET /api/service-auto/comenzi)

Listă DEV_ORDL cu status, client, tip, nrord. Filtre: firmă, dată, status. Paginare
server-side.

## P2.3 — id_sucursala în formular

Când user-ul aparține unei sucursale (id_firma=167 sau 169), `id_sucursala` trebuie
completat în DEV_ORDL. Necesită mapping id_firma → id_sucursala + parametru nou în SP.

## P2.4 — session_callback multi-schemă (tagged connections)

Dacă un server Oracle viitor servește N scheme pe același pool, `CURRENT_SCHEMA` switching
poate produce leak inter-cerere. Soluție: tagged connections (`pool.acquire(tag=schema_name)`).
De implementat când cazul apare concret.

## P2.5 — Test browser ComandaNoua.vue

- Toate stările (loading, success, 422, 503, 500) manual
- Dark mode cu toggle AppHeader
- Diacritice din erori Oracle în Toast
- Dropdown masini (261 entries) cu filter activ

## P2.6 — Cache lookup-uri

- Tip-deviz: 7 rânduri, TTL 24h
- Masini: 261 rânduri, TTL 5min sau invalidare la adăugare client nou
- Pattern: `@cached` din `backend/modules/reports/cache/decorators.py`

## P2.7 — Onboarding ROA_WEB pentru scheme noi

Script complet de scris + versionat. Când se adaugă firmă nouă via `impdp`:
1. Rulează `onboarding_roa_web.sql` (vezi `grants-audit.md §4.1`)
2. Adaugă server entry în `ORACLE_SERVERS` dacă e pe alt server Oracle
