====== Checklist Core ====== **Versione:** 2.0 (Split)\\ **Applicabile a:** Tutti i repository e tutti i linguaggi (Pascal/FPC, C#, VB.NET, Rust, PHP/DokuWiki) Questo file è il **Merge Gate**. Applicalo **sempre**, poi aggiungi i profili rilevanti. ===== Applica Sempre ===== * [ ] Struttura del progetto conforme al WvdS-Baseline (vedi: [[.:progetto:struttura|Struttura Progetto]]) * [ ] Requisiti di build soddisfatti (vedi: [[.:progetto:build-configurazione|Configurazione Build]]) * [ ] Error Handling soddisfa la baseline (vedi: [[.:codice:gestione-errori|Gestione Errori]]) * [ ] Qualità del codice raggiunge la soglia "production-ready" (vedi: [[.:codice:qualita|Qualità del Codice]]) * [ ] Triade della documentazione esiste (vedi: [[.:infrastruttura:documentazione|Documentazione]] e [[.:progetto:documentazione|Documentazione Progetto]]) ===== Production-Ready (TOLLERANZA ZERO) ===== **Tutto il codice DEVE essere 100% production-ready:** ^ Vietato ^ Richiesto ^ | Commenti ''%%// TODO:%%'' | Implementazione completa | | Commenti ''%%// FIXME:%%'' | Codice corretto | | Funzioni stub | Implementazioni complete | | Implementazioni mock | Implementazioni reali | | Valori placeholder | Valori reali | | ''raise ENotImplemented'' | Codice funzionante | * [ ] Nessun commento TODO nel codice di produzione * [ ] Nessun commento FIXME nel codice di produzione * [ ] Nessuna funzione stub o placeholder * [ ] Nessuna implementazione mock * [ ] Ogni funzione completamente implementata * [ ] Tutti i casi di errore gestiti * [ ] Tutti gli edge case coperti ==== Qualità Generale ==== * [ ] Nessun codice duplicato (principio DRY) * [ ] Nessun magic number (usare costanti denominate) * [ ] Formattazione consistente in tutto il file * [ ] Tutti i metodi pubblici hanno messaggi di errore corretti ===== Error Handling Baseline ===== * [ ] Nessun blocco catch/except vuoto * [ ] Errori registrati PRIMA della gestione * [ ] Eccezioni specifiche prima di quelle generali * [ ] Stack Trace preservato al re-throw * [ ] Risorse pulite in modo deterministico ===== Logging Baseline ===== * [ ] Formato/verbosita del logging segue la policy (vedi: [[.:infrastruttura:logging|Logging]]) * [ ] Nessun segreto o dato sensibile nei log (vedi: [[.:sicurezza:kritis|KRITIS/NIS2]]) ===== Security Baseline ===== * [ ] Se la modifica riguarda Crypto/Auth/Network/superfici esposte: applica [[.:sicurezza:kritis|KRITIS/NIS2]] * [ ] Se la modifica riguarda DokuWiki/PHP: applica [[.:stack:dokuwiki-php|DokuWiki/PHP Security]] ---- //Versione: 2.0 (Split)//\\ //Autore: Wolfgang van der Stille// ~~DISCUSSION:off~~