Il vetro rotto
Il vetro rotto
Il primo vetro si ruppe alle tre e dodici.
Piano quarantuno.
La signora Greco chiamò urlando.
Marta salì con sicurezza.
La finestra esterna aveva una crepa a raggiera.
Non impatto dall'interno.
Qualcosa aveva colpito da fuori.
A cento metri di altezza non c'erano sassi.
Noor, tornata al lavoro contro parere medico, guardò.
«Proiettile?»
La sicurezza isolò.
Il foro era piccolo.
Un dardo.
Dentro il telaio trovarono una microcapsula.
«Che cos'è?» chiese Greco.
Noor non la toccò.
La polizia tecnica arrivò.
Il dardo conteneva un trasmettitore.
Non esplosivo.
Si fissava al vetro e inviava vibrazioni.
Un microfono laser inverso? No. Il tecnico spiegò:
«Misura vibrazioni del pannello. Può ricostruire attività grossolana. Non conversazioni affidabili.»
Marta guardò Torre Aurora.
«Da dove è stato sparato?»
Traiettoria.
Aurora.
Una finestra del piano trentanove.
Sol verificò.
Locale tecnico.
Accesso registrato la notte: profilo temporaneo.
NIKO PAL?
No.
Account diverso.
VBS-MAINT-77.
Un secondo profilo legacy.
Marta sentì rabbia.
«Quanti ne avete?»
Sol sembrava malato.
«Stiamo cercando.»
Il dardo non aveva bisogno dei beacon interni.
Era un altro metodo.
Qualcuno stava raccogliendo dati anche dopo che i sistemi erano stati scoperti.
Oppure li aveva raccolti prima e il dispositivo era rimasto.
La batteria indicò installazione recente.
Dopo l'inchiesta.
Questo cambiava tutto.
Non soltanto passato.
Qualcuno continuava.
La polizia mise sorveglianza sul locale Aurora.
Nessuno tornò.
Due giorni dopo un secondo dardo venne trovato al 34-02.
Niva.
Stesso modello.
Marta sentì una connessione emotiva pericolosa.
Greco. Niva.
Due persone coinvolte pubblicamente.
«Ritorsione?» chiese Calra.
Yel disse:
«Possibile.»
«Intimidazione?»
«Possibile.»
Marta guardò i dispositivi.
«O raccolta mirata perché adesso sono soggetti interessanti.»
Niva la fissò.
«Magnifico.»
La scoperta uscì sui media.
Questa volta la K-17 divenne luogo.
Reporter nell'atrio. Droni fuori. Streaming.
Marta odiò tutti.
«Non filmate residenti senza consenso.»
Un giornalista rispose:
«Spazio comune.»
«Privato condominiale.»
«Abbiamo autorizzazione.»
«Da chi?»
Sibel arrivò correndo.
Nessuno aveva autorizzato.
La sicurezza espulse la troupe.
Ironia completa: un caso sulla sorveglianza attirava più occhi.
Emi filmava tutto dal fondo.
Marta la vide.
«Tu?»
«Documentario.»
«Consenso?»
Emi abbassò la camera.
«Hai ragione.»
Andò a chiedere.
Dario la guardava.
Non intervenne.
Piccolo progresso.
L'analisi dei dardi trovò un produttore.
Mercato industriale.
Venduti a società di diagnostica facciate.
Uno stock comprato da Veyron.
Pal aveva firmato il primo ordine.
Ma un secondo acquisto era avvenuto dopo la sua dimissione.
Firmato: MIRA SOLEN.
Direttrice operativa Veyron.
Un nuovo nome.
Marta quasi provò sollievo.
Il sistema smetteva di essere il lavoro di un tecnico deviato.
Solen venne convocata.
«I dardi servono a monitorare vetri strutturali.»
«Perché su appartamenti specifici?» chiese Yel.
«Non lo so.»
«Chi assegna?»
«Squadre.»
«Con quali ordini?»
Solen mostrò ticket.
GRECO 41-03: VERIFICA MICROFRATTURA.
NIVA 34-02: VERIFICA VIBRAZIONE.
Ordini formalmente validi.
Creati dopo segnalazioni reali?
Greco aveva avuto un problema termico, non vetro. Niva nessun problema facciata.
Origine ticket: Cobalto Facility.
Di nuovo Lumen.
Solen si irrigidì.
«Se il cliente apre un ordine, noi mandiamo strumenti.»
«Senza verificare?»
«È un cliente autorizzato.»
Marta vide la catena della deresponsabilizzazione.
Ognuno verificava la parte vicina.
Nessuno il motivo finale.
Il dardo non era illegale per natura. Il ticket esisteva. La società era autorizzata a manutenzione. Il locale Aurora era tecnico.
Eppure il risultato era un sensore puntato su una casa senza che la persona sapesse.
Marta pensò a quanto poco bastasse per costruire un abuso senza infrangere una regola grossa.
Piccole autorizzazioni allineate nella direzione sbagliata.
Il condominio modificò la procedura:
ogni intervento facciata su unità occupata richiedeva notifica al residente salvo emergenza strutturale.
Veyron protestò per lentezza.
Marta disse:
«Il vetro è anche il muro di casa di qualcuno.»
La frase entrò nel regolamento.
Un mese prima avrebbe considerato la facciata una parte tecnica.
Ora sapeva che ogni confine di edificio era contemporaneamente infrastruttura e intimità.
Il vetro rotto della signora Greco venne sostituito.
Lei chiese di tenere il vecchio frammento.
«Perché?»
«Mi piace.»
«È una prova.»
«Dopo.»
Quando glielo restituirono, Greco lo mise accanto alla pianta morta.
Marta lo vide dalla porta.
«Decorazione strana.»
«Meglio del vaso.»
La pianta, incredibilmente, aveva una foglia verde.
Marta non commentò.
Alcune cose era meglio lasciarle vive senza registrarle.
Il dardo sulla finestra di Niva aveva raccolto quarantasette minuti di vibrazioni prima di essere trovato.
Il tecnico forense ricostruì: movimenti; apertura porta interna; passi vicini al vetro.
Non parole.
Niva ascoltò la simulazione.
«Quindi sanno quando cammino.»
«Potevano stimarlo.»
«Per quarantasette minuti.»
«Sì.»
«E cosa se ne fanno?»
Nessuno aveva una risposta definitiva.
Il pacchetto dati non era stato trasmesso.
Il dardo conservava localmente perché la connessione era fallita.
Destinazione configurata: Cobalto Facility.
«Quindi Lumen,» disse Niva.
Yel corresse:
«Società controllata.»
Niva la guardò.
«Ti pagano a correzione?»
Yel sorrise.
L'ordine di manutenzione era il vero nodo.
Chi lo aveva creato?
Account Cobalto. Operatore identificato: Dea Rusk.
Rusk lavorava in amministrazione facility.
Venne interrogata.
«Ho aperto il ticket da una lista.»
«Quale lista?»
«Controlli facciata.»
«Chi l'ha generata?»
Rusk cercò.
Sistema.
«Con quali criteri?»
«Non lo so.»
La lista proveniva da un file importato.
Nome: PRIORITY_WINDOWS_Q4.
Autore: A.VEI.
Marta sentì il nome.
Aron Vei.
Yel non reagì prima di verificare.
Il file era stato creato dal suo account.
Conteneva diciotto finestre.
Tra cui Greco e Niva.
Vei venne convocato.
«Non ho creato quella lista per Veyron.»
«Per cosa?»
«Acquisizioni.»
Marta sentì il disgusto.
«Finestre?»
«Unità. Il nome del file era interno.»
«Perché le unità diventano controlli facciata?»
Vei guardò il documento.
«Non lo so.»
La lista commerciale era stata importata nel sistema facility.
Errore? Abuso?
Un account di integrazione aveva preso il CSV e creato ticket tecnici.
Perché?
Un'automazione.
Cobalto aveva una funzione: se un'unità prioritaria richiedeva due diligence, generare verifica tecnica esterna.
Pensata per appartamenti in trattativa.
Qui le unità non erano in trattativa.
Erano solo target commerciali.
Una categoria sbagliata aveva attivato un flusso reale.
Marta sentì qualcosa di nuovo.
Non una persona che decideva di sparare un dardo a Niva.
Un file commerciale che entrava nel sistema sbagliato e produceva un ordine.
«Quindi nessuno ha scelto lei?» chiese Niva.
Yel rispose:
«Qualcuno ha scelto la lista. Il resto è stato automatizzato.»
Niva sembrò più arrabbiata.
«Preferivo un cattivo.»
Marta capiva.
La responsabilità diffusa diventava ancora più difficile quando un software trasformava una priorità in intervento.
Veyron aveva ricevuto ticket formalmente validi.
La squadra aveva installato strumenti standard.
Nessuno sul campo sapeva che l'origine era una campagna acquisti.
Ma qualcuno aveva progettato il collegamento tra Cobalto e Veyron.
Il responsabile integrazione, Teren Lo, spiegò.
«Serviva per accelerare due diligence.»
«Su proprietà già in negoziazione,» disse Yel.
«Sì.»
«Perché non controllava lo stato?»
Lo guardò il codice.
«Doveva.»
Bug.
Un campo vuoto veniva interpretato come true.
Marta quasi rise.
«Tutto questo per un campo vuoto.»
Lo non rise.
«Sì.»
Il bug non cancellava il resto.
Perché la lista di Vei conteneva persone profilate. Perché i dardi potevano raccogliere dati senza notifica. Perché i sistemi erano interconnessi.
Ma spiegava perché i controlli continuarono anche dopo l'esplosione dello scandalo.
Nessuno aveva ordinato la ritorsione.
Era più prosaico.
Il flusso automatico non era stato disattivato.
Calra sembrò delusa e sollevata.
«Quindi niente intimidazione.»
«Non provata,» disse Yel.
Niva disse:
«Sempre peggio per i titoli.»
La correzione pubblica fu importante.
Il comitato aveva inizialmente parlato di possibile ritorsione.
Adesso pubblicò: NESSUNA PROVA DI RITORSIONE. I TICKET RISULTANO GENERATI DA UN FLUSSO AUTOMATICO ERRATO COLLEGATO A LISTE COMMERCIALI.
Meno drammatico.
Molto grave comunque.
Marta insistette sulla correzione.
La credibilità non era una riserva da proteggere nascondendo errori.
Era la capacità di mostrare quando la spiegazione cambiava.
Il bug venne corretto. L'integrazione sospesa. Ogni due diligence richiedeva conferma umana e prova di stato negoziale.
Ma Marta chiese:
«L'umano cosa vede?»
Teren mostrò.
Unità. Richiesta. Cliente.
«Vede che c'è consenso del proprietario?»
No.
Aggiunsero il campo.
CONSENSO / BASE ACCESSO.
Non poteva essere vuoto.
Un campo obbligatorio.
Niva guardò.
«Questo mi protegge?»
Yel rispose:
«Riduce un percorso di abuso.»
«Risposta molto da voi.»
Marta sorrise.
La finestra venne riparata.
Il dardo rimase come prova fino a fine procedimento.
Niva non lo volle dopo.
«Buttatelo.»
«Sicura?»
«Non voglio una reliquia di ogni cosa che mi ha guardata.»
Marta capì.
La memoria non doveva sempre avere un oggetto.
Il bug del campo vuoto ebbe un nome ufficiale.
NULL-AS-TRUE.
Sol lo trovò esilarante.
Marta no.
«Perché un vuoto diventa sì?»
«Scelta del programmatore.»
«Perché?»
«Compatibilità con sistemi vecchi.»
Naturalmente.
Il consiglio chiese una revisione di altri flussi automatici.
Trovarono tre casi simili.
Nessuno aveva prodotto sorveglianza.
Uno apriva ticket pulizia. Uno autorizzava notifiche. Uno classificava consegne.
Piccoli.
Corressero.
Il caso aveva trovato una classe di errori oltre il proprio episodio.
Marta apprezzò più questo di una punizione.
Una colpa individuale finiva con una persona.
Una correzione strutturale poteva impedire errori futuri che nessuno avrebbe saputo collegare al caso originario.
Dopo il bug NULL-AS-TRUE, Teren Lo organizzò una revisione di codice aperta a due tecnici esterni.
Marta partecipò soltanto alla presentazione finale.
«Abbiamo trovato diciassette valori impliciti.»
«Cosa significa?»
«Quando un campo manca, il sistema decide qualcosa comunque.»
«Come true.»
«A volte false, zero, default.»
Marta guardò.
I valori impliciti erano decisioni invisibili.
Il software sembrava non scegliere perché nessuna persona cliccava.
Ma qualcuno aveva scelto anni prima cosa significasse il vuoto.
La commissione introdusse una regola: per campi che autorizzano accesso, mancanza = blocco.
Fail closed, disse Sol.
Marta preferiva: se non sai, non aprire.
Non sempre possibile.
In emergenza, alcuni sistemi dovevano fare il contrario.
La regola includeva eccezioni dichiarate.
Ancora nessun assoluto.
Il bug dei dardi finì in un corso interno.
Teren mostrò lo screenshot del campo.
VUOTO → TRUE.
«Questo ha portato sensori a finestre di persone non consenzienti.»
Una riga di codice collegata a una casa.
Marta capì quanto fosse importante far vedere ai programmatori conseguenze concrete.
Il software smetteva di essere astratto quando potevi indicare il vetro rotto di Niva.
Teren Lo mostrò a Marta il test automatico aggiunto dopo NULL-AS-TRUE.
Se CONSENSO è vuoto: errore.
Se STATO NEGOZIALE è vuoto: nessun ticket.
«Quindi adesso il computer rifiuta.»
«Sì.»
«E se c'è emergenza?»
«Flusso diverso.»
Marta annuì.
Il software poteva incorporare una regola più forte di un manuale perché non si stancava.
Ma qualcuno poteva cambiarlo.
Per questo la modifica richiedeva revisione e log.
Automazione più governance.
Sol disse:
«Adesso ti piacciono i sistemi.»
Marta rispose:
«Mi piacciono quando so dove contestarli.»
Il punto non era avere umano o macchina.
Era avere responsabilità visibile in entrambi.