Table of Contents

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_FINALDELETECHECKITEM assente dal DB), BR-PROP-029 (trigger :NEW in 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 su GLOBAL_OBJECTS.NAME), BR-GLB-007 (code-gen COUNT/MAX non concorrenza-safe + doppio incremento), BR-GLB-009 (righe storia ENDDATE IS NULL multiple).
  • Pattern sistemici: validazioni solo-UI bypassabili; create-vs-update-by-key; PRP_MANAGEENTITY upsert generico riusato; WHEN OTHERS che inghiotte l'eccezione; full-replace figli su update; identity via SEQ_* 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.