netgescon-day0/skill-netgescon/control-tower/CURRENT-205.md

54 lines
3.6 KiB
Markdown

# CURRENT-205
TASK_ID: task-87b64082c1
MACHINE: .205
STATO: completato
## Obiettivo Completato
1. **Pipeline Completa ed Autonoma di Sincronizzazione Contabile Legacy (`ContabilitaSyncService`)**:
- Creata la pipeline di importazione da archivi MDB (`Fornitori.mdb`, `generale_stabile.mdb`, `{cartella}/singolo_anno.mdb`) verso il database canonico (`fornitori`, `gestioni_contabili`, `gestioni`, `dett_tab`, `rate_emesse`, `incassi`, `contabilita_registrazioni`, `contabilita_fatture_fornitori`, `registro_ritenute_acconto`, `bilanci`).
- Sincronizzazione ed esecuzione testata con successo sullo stabile pilota 0013 attraverso tutti i 12 anni storici di gestione (dal 2016 al 2026).
- Mappatura puntuale e automatica delle Ritenute d'Acconto (RA 4% condominiale tributo 1019, RA 20% professionale tributo 1040) e versamenti F24 (`VER_4` / `VER_20`).
- Calcolo e quadratura automatica del bilancio consuntivo e del conguaglio finale per ogni singola unità e gestione con netta segregazione tra ruoli `'C'` (Condomino) e `'I'` (Inquilino).
2. **Comando CLI & Azione One-Click Filament**:
- Comando Artisan: `php artisan gescon:sync-contabilita-stabile {codice_stabile} {--anno=} {--all-years} {--dry-run}`.
- Azione UI integrata con modale di conferma `[ 🔄 Sincronizza da Legacy ]` in [`SituazioneIniziale.php`](file:///home/michele/netgescon-day0-backup/app/Filament/Pages/Contabilita/SituazioneIniziale.php) e [`ChiusureGestioneArchivio.php`](file:///home/michele/netgescon-day0-backup/app/Filament/Pages/Contabilita/ChiusureGestioneArchivio.php).
3. **Direttiva Operativa Permanente**:
- Creata la direttiva standardizzata [`skill-netgescon/directives/sincronizzazione-contabilita-stabili.md`](file:///home/michele/netgescon-day0-backup/skill-netgescon/directives/sincronizzazione-contabilita-stabili.md) per guidare l'importazione autonoma di qualsiasi nuovo stabile.
## Output del Giro Operativo
ESITO_205: riuscito
TASK_ID: task-87b64082c1
REPOSITORY: ssh://git@git.netgescon.it:2222/michele/netgescon-day0.git
BRANCH: stabilization/205-zero
COMMIT: 497cdfd
FILE_O_AREE_TOCCATE:
- app/Console/Commands/GesconSyncContabilitaStabileCommand.php
- app/Services/Contabilita/ContabilitaSyncService.php
- app/Filament/Pages/Contabilita/ChiusureGestioneArchivio.php
- app/Filament/Pages/Contabilita/SituazioneIniziale.php
- skill-netgescon/directives/sincronizzazione-contabilita-stabili.md
- skill-netgescon/control-tower/CURRENT-205.md
TEST_ESEGUITI:
- ./vendor/bin/pest tests/Feature/UnitaGestioneTemporaleTest.php tests/Feature/CatastoHubDbDrivenTest.php tests/Feature/UnitaCondominoInquilinoRoleToggleTest.php tests/Feature/UnitaImmobiliarePageTest.php tests/Feature/AnagraficaUnicaCanonicaTest.php tests/Feature/BenedettoBonificaIdempotenteTest.php tests/Feature/ControlTowerPollCommandTest.php (24 passed, 139 assertions)
- php artisan gescon:sync-contabilita-stabile 0013 --all-years (12 anni storici sincronizzati con successo, 0 errori)
GATE_STATISTICS:
- SYNC_CONTABILITA_AUTONOMA: Pipeline end-to-end CLI + UI per qualsiasi stabile.
- RITENUTE_RA_F24: Mappatura completa aliquote 4% / 20% e versamenti F24.
- CONGUAGLI_BILANCI: Consolidamento rate CF, dett_tab e chiusure bilancio per gestione.
- ZERO_MOCK: Dati contabili e fornitori 100% derivati da archivi autentici MDB.
BLOCCO_DATI: no
BLOCCO_CONTRATTO: no
RISCHI_APERTI: nessuno
## Prossimo Passo per .200 (Validazione)
- Eseguire il checkout del branch `stabilization/205-zero`.
- Eseguire i test Pest (24 passed, 139 assertions).
- Verificare il comando `php artisan gescon:sync-contabilita-stabile 0013 --dry-run` o l'azione Filament `Sincronizza da Legacy`.