# Checklist deploy in produzione — siti e app vibe-coded

> Da fnbit.net — checklist di sicurezza, privacy e accessibilità prima del primo utente reale.
> Riferimenti normativi: GDPR, Linee guida cookie del Garante Privacy (Italia), D.Lgs. 82/2022 (European Accessibility Act), WCAG 2.1 AA, EN 301 549.

## 1. Sicurezza tecnica — bloccanti

- [ ] Nessun secret (API key, credenziali, token) nel codice frontend
- [ ] Row-Level Security attiva su ogni tabella del database
- [ ] Policy RLS definite per ogni ruolo (anon, authenticated, service_role)
- [ ] Autorizzazione verificata lato server su ogni route protetta (mai solo lato client)
- [ ] Nessun pannello admin raggiungibile pubblicamente senza autenticazione forte

## 2. Igiene del deploy

- [ ] Repository sotto il proprio controllo, non solo nell'account del tool AI usato
- [ ] Nessuna credenziale nella cronologia Git (non solo rimossa dall'ultimo commit)
- [ ] Branch principale protetto, review obbligatoria prima del merge in produzione
- [ ] Variabili d'ambiente separate tra sviluppo, staging e produzione
- [ ] Backup del database configurati **e testati** (ripristino verificato)
- [ ] HTTPS forzato ovunque, certificato valido con rinnovo automatico
- [ ] Header di sicurezza configurati (CSP, X-Frame-Options, Strict-Transport-Security)
- [ ] Rate limiting attivo su API pubbliche, login e form di contatto
- [ ] Logging e alerting minimi attivi prima del lancio

## 3. Privacy e cookie (normativa italiana — Garante Privacy)

- [ ] Informativa privacy raggiungibile dal footer di ogni pagina
- [ ] Cookie banner con pulsanti "Accetta" e "Rifiuta" a pari evidenza visiva (o "X" equivalente al rifiuto)
- [ ] Nessuna casella pre-spuntata per cookie non tecnici
- [ ] Nessun cookie wall che blocca l'accesso ai contenuti in caso di rifiuto
- [ ] Cookie tecnici caricati liberamente; cookie di profilazione/terze parti solo dopo consenso esplicito
- [ ] Banner non ripresentato a chi ha già scelto (salvo cambi sostanziali o 6+ mesi trascorsi)
- [ ] Base giuridica chiara per ogni form che raccoglie dati (contatti, newsletter)
- [ ] Modalità semplice per l'utente di esercitare i diritti GDPR (accesso, cancellazione, portabilità)

## 4. Accessibilità (D.Lgs. 82/2022 — WCAG 2.1 AA)

- [ ] Contrasto colore testo/sfondo conforme al livello AA
- [ ] Testo alternativo su ogni immagine informativa
- [ ] Sito completamente navigabile da tastiera
- [ ] Label associate correttamente ai campi dei form (non solo placeholder)
- [ ] Heading semantici in ordine logico (h1 → h2 → h3...)
- [ ] Focus visibile su ogni elemento interattivo
- [ ] Nessuna informazione comunicata solo tramite colore

## 5. Post-lancio

- [ ] Scan di sicurezza sull'URL live dopo il deploy (non solo sul codice pre-lancio)
- [ ] Monitoraggio attivo nei primi giorni post-lancio
- [ ] Piano minimo di incident response definito (database down, secret esposto, chi avvisare)
- [ ] Cookie policy e informativa privacy riviste a ogni nuovo servizio esterno integrato

---

Articolo completo: https://fnbit.net/posts/checklist-deploy-produzione-vibe-coding
