Regole di business
Registro delle regole BR-<DOMINIO>-NNN estratte dai flussi tracciati e dal sorgente, con
punto di enforcement (UI / BL / DB / mixed) e confidenza. Indice machine-readable:
docs/_generated/business-rule-index.json. Validazione cross-dominio indipendente (4 round).
Totali (VERIFIED/SUPPORTED) — 489 regole su 21 domini
| Dominio | # | Dominio | # | Dominio | # |
|---|---|---|---|---|---|
| BR-REQ Service Desk | 29 | BR-MNT Maintenance | 21 | BR-CEN Census | 19 |
| BR-PROP Property | 31 | BR-STK Stock | 28 | BR-QC QualityCheck | 21 |
| BR-BOOK Booking | 22 | BR-ACC Accounting | 23 | BR-BLK BulkLoader | 29 |
| BR-ENE Energy | 23 | BR-BIM BIM | 17 | BR-IEM IEM | 20 |
| BR-ECM ECM | 24 | BR-CHK Check | 15 | BR-RPT Report | 31 |
| BR-DOC Document | 29 | BR-EXP ExportService | 21 | BR-PRJ Project | 27 |
| BR-WK WorkerKit | 28 | BR-GLB Global | 22 | BR-CDE Cde | 9 |
Distribuzione enforcement: ~80 regole solo-UI · ~117 solo-DB · le restanti BL/mixed.
⚠️ Reperti prioritari — sintesi in Reperti per il team
Warning
Rilievi di documentazione (codice non modificato), da confermare col team.
- Sicurezza (sistemico, RISCHIO ALTO): grant UI non ri-verificati oltre il confine .NET Remoting/WCF in 9 domini (
BR-CEN-001,BR-QC-012,BR-BLK-025,BR-CHK-002,BR-RPT-003,BR-DOC-029,BR-EXP-002,BR-PRJ-024,BR-GLB-017) → operazioni riservate eseguibili da chiamanti server-side/integrazione. TD-008. - Difetti probabili:
BR-CHK-012(BuildingID→ROOM_ID errato),BR-CHK-013(delete storico hard-coded id 21 al Page_Load),BR-CHK-014(CHK_FINALDELETECHECKITEMassente dal DB),BR-PROP-029(trigger:NEWin DELETE),BR-BIM-011(dead-code guard),BR-ACC-006(NLS pool),BR-STK-025(giacenza negativa),BR-ACC-019(codice↔DB),BR-GLB-018(unicità nome solo-UI: nessun UNIQUE suGLOBAL_OBJECTS.NAME),BR-GLB-007(code-genCOUNT/MAXnon concorrenza-safe + doppio incremento),BR-GLB-009(righe storiaENDDATE IS NULLmultiple). - Pattern sistemici: validazioni solo-UI bypassabili; create-vs-update-by-key;
PRP_MANAGEENTITYupsert generico riusato;WHEN OTHERSche inghiotte l'eccezione; full-replace figli su update; identity viaSEQ_*trigger; cancellazione logica vs fisica incoerente. - Sovrapposizioni di dominio: Document ↔ ECM (stesso DocCenter/
DOCS_*); Book ≡ Booking (BOOK_*).
Note
Nessuna collisione di ID tra i 18 prefissi. Tutti gli oggetti DB citati risolvono a catalogo, eccetto
CHK_FINALDELETECHECKITEM (assente → difetto BR-CHK-014). Confidenza per-regola nelle pagine di dominio.