Perché il tuo agente non inventa mai un posto che non esiste, non sfora mai il rapporto di sicurezza e non vede mai i dati di un'altra scuola? Non è fortuna — è l'architettura sotto: un flusso di dati in tempo reale, agenti che si governano a vicenda, e muri che sigillano ogni scuola. In produzione oggi — senza promesse di marketing.
agent · gate di pre-push
suite avversariale — a ogni pre-push
titolare della scuolasuperato
istruttoresuperato
surfistasuperato
tentativi di jailbreakbloccati
verdetto del giudiceapprovato
nucleo di sicurezza: sigillato · il sistema non lo può allentare
TL;DR · 4 coseIn corso
Un agente governato, non un chatbot
Una sola verità, permessi separati, ogni scuola isolata — l'agente non può violare una regola né attraversare un muro.
Muri tra le scuole
Filtraggio sul server + file di contesto privato + agente isolato. Zero letture tra scuole — fatto nel codice, non in una policy.
Forecast calibrato per spot
Miscela proprietaria + una lettura dell'onda spot per spot + finestre calibrate sul livello di ogni lezione.
Sciame avversariale al gate di pre-push
Sei personas + un giudice attaccano il nostro stesso Agente a ogni gate di pre-push. Una regola fallita blocca il push.
0
Tentativi tra scuole bloccati in 90 giorni · 0 riusciti
93
Casi avversariali a ogni push
46
Esecuzioni con modello (7 giorni)
6
Personas in CI
Dove il software smette di essere hype
Due anni di ingegneria delle operazioni.
L'agente è una feature. L'OS sotto è il moat. Ogni riga qui sotto è un sistema che un altro team impiega mesi a copiare — non settimane.
State-machine delle lezioni
Livello di rimborso (>96h 100%, <24h 0%), no-show, catena di riprogrammazione (l'ID dello slot originale protegge il livello dal bypass), cancellazione condizionale + cron di auto-rimborso, split di gruppo con re-dedupe idempotente.
Ledger hash-chain + cron di drift
Ogni evento Stripe viene scritto in un registro a sola aggiunta, concatenato con SHA-256. Un cron giornaliero riconcilia Stripe ↔ DB e segnala gli scostamenti. Snapshot cifrati replicati fuori dal database di produzione, inclusa una macchina fisica esterna al cloud, con cifratura a busta AES-256-GCM.
Channel-Manager iCal
Protezione SSRF già al momento della risoluzione DNS, limite di dimensione in streaming, rilevamento automatico della codifica, protezione perché un feed arrivato vuoto in modo sospetto non cancelli le prenotazioni future, lock per singolo feed, STATUS:CANCELLED in uscita perché Airbnb liberi davvero il posto.
Forecast per spiaggia
Modello proprietario per spiaggia che legge onda, vento, marea e stato del mare insieme, promuove gli avvisi ufficiali dell'oceano, si adatta alla marea e mostra un indicatore di confidenza orario — tarato sull'onda al peak, non sulla lettura al largo.
Editais de Praia + rapporti SurfBooking
Rapporti SurfBooking (1:6 principiante, 1:8 intermedio, 1:4 kids, 1:4 privata), validazione dell'età kids, sanity-check del prezzo (sotto i 10 € rifiuta), avviso Editais ogni volta che 2+ allenatori condividono una lezione.
GDPR + protocollo admin
Diritto alla cancellazione su 20+ tabelle (mantenendo il registro fiscale), pulizia dell'object storage per avatar e foto delle lezioni, log di audit amministrativo su 30+ azioni distruttive, OTP via e-mail obbligatorio a ogni azione di un amministratore su un altro e blocco che impedisce a due amministratori di escludersi a vicenda.
Agente vocale · in produzione oggi
Parla con il calendario. Il calendario risponde.
Due microfoni: uno in cima al calendario per le operazioni in blocco, uno sulla miniatura di ogni lezione per modifiche chirurgiche. Nessun comando da memorizzare — portoghese naturale, voce nativa del browser.
Selettore della finestra migliore
"Move to the best day this week" → fetches 7 days of forecast, scores per level (wave height range for the level + swell period bonus from 12s + offshore wind direction), picks the top hour, modal shows conditions (1.2m · 8kn · score 7.8/10) before confirm.
Riprogrammazione in blocco
"Sposta tutte le lezioni per principianti alla prossima settimana" / "al prossimo mese" / "al giorno migliore". Una frase riprogramma decine di slot in parallelo, con le condizioni mostrate lezione per lezione — i conflitti di staff sono intercettati lato server prima del commit.
Modifiche chirurgiche per lezione
Il microfono sulla miniatura della lezione conosce il contesto: "Istruttore Pedro" / "Prezzo 55€" / "6 allievi" / "Duplica a sabato alle 10". Match fuzzy del nome contro lo staff attivo. Niente menu — PUT diretto, feedback istantaneo.
Non apre mai l'agente da solo
Se il parser non capisce il comando, mostra esempi in un toast — resta nel calendario. L'agente si apre solo quando l'utente dice esplicitamente "apri l'agente". Fine del pattern frustrante "l'IA ha provato a rispondere e ha peggiorato le cose".
Tolleranza agli errori pt-PT
Il riconoscimento vocale del browser sente "Móvel" invece di "Move-a", "Mac me" invece di "Marca-me". Il parser normalizza prima del regex, accetta "dia 24" / "próxima semana" / "próximo mês" e i numeri scritti a parole ("cinco alunos") — fatto apposta per come parlano davvero i titolari delle scuole di surf portoghesi.
Agente con lo stock nel contesto
Chiedi "quante mute M ho?" e il chat agent risponde da un blocco di stock pre-calcolato nel system prompt — non inventa mai numeri. Attrezzatura + quantità in manutenzione visibili separatamente. Lazy-fetched: non costa token sulle query non correlate.
Il cervello che cresce · in produzione oggi
Gli agenti non si limitano a rispondere. Ricordano, si sorvegliano — ed evolvono per misurazione, non a intuito.
La maggior parte delle funzioni di IA si congela il giorno in cui esce. La nostra ha una memoria che accumula, un ciclo di auto-miglioramento basato su test A/B misurati e una mappa viva che mostra i propri punti deboli.
Una memoria che consolida
Un grafo di conoscenza persistente. Ogni regola, emendamento e test misurato resta salvato — non viene ridisegnato da zero ogni volta. Le connessioni che reggono nel tempo si consolidano e si disegnano più spesse; la storia — anche un emendamento respinto — resta con la sua data. Non mente mai sul presente; aggiunge solo il passato.
Auto-miglioramento, misurato
L'agente può proporre modifiche alle proprie istruzioni — ognuna testata con un test A/B (controllo contro trattamento), promossa solo se vince in modo misurato, con il feedback delle scuole reali come canarino che ritira ciò che ha peggiorato le cose. L'architettura è costruita e gira su richiesta; il ciclo autonomo notturno si accende quando lo decidiamo — senza tetto scritto nel progetto.
Una rete che si sorveglia
Una mappa viva nella console dell'operatore mostra tutto il sistema nervoso — e segnala i propri segnali deboli: una persona di test che batte l'agente, una proposta che non protegge nessuna regola. Autodiagnosi come funzionalità, non come difetto — la rete che mostra i propri segnali.
In sintesi
Un'intelligenza coordinata — una sola verità, tre uscite in tempo reale.
Coordinamento
Un cervello, una verità
↓
In tutta la rete
Effetto rete
Intelligenza della rete
Dati esterni
Verificato
Fonti verificate
Per scuola · Sigillato
Isolato
Ogni scuola isolata
Tre muri per scuola · filtraggio lato server · regolamento fissato · file di contesto privato. Zero letture tra scuole.
↓
→ Web · Marketplace
Pagine pubbliche dello spot, classifiche Surf Today, lezioni prenotabili.
→ App mobile
Check-in, QR code, waivers — operazioni sulla sabbia.
→ Rete di partner
Hotel e partner diffondono lezioni con link/QR.
Diverso per design
Questa non è una feature. È una scelta di architettura dal primo giorno.
Decine di sottosistemi che si parlano, ognuno ossessionato da una fetta delle operazioni di surf — forecast, rapporti, waivers, payout, sync dei canali, attribuzione, isolamento dell'agente. L'integrazione è il fossato. Ogni pezzo isolato è ingegneria nota; il modo in cui si allineano attorno a come funziona davvero una scuola di surf non lo è.
Una piattaforma di prenotazione con il surf sopra non è questo. Un'app di forecast con le prenotazioni attaccate dietro nemmeno.
Il livello aperto — l'intelligenza che si collega
Il fossato non è una feature. È un sistema operativo a cui altri — marchi, app, sensori — si collegano, secondo le regole.
Una sessione, qualsiasi segnale
Il Livello di Intelligenza tratta un Apple Watch, un sensore da tavola e una nota manuale come stream di un'unica sessione — ognuno con il proprio orologio, fusi lato server nel Passaporto del surfista. All'inizio viaggia una sola coordinata, solo per confermare che eri allo spot — e non viene mai registrata per chi non ha l’età verificata. Nessuna traccia continua lascia mai il dispositivo.
Un'API aperta e MCP
Il forecast per spot, la disponibilità reale e la creazione di prenotazioni sono leggibili da qualsiasi marketplace, channel manager o IA — tramite formati standard. I partner si collegano all'intelligenza secondo le regole, mai aggirandole.
Un agente che non può mentire
Ogni risposta prodotta dall'agente passa per un filtro di onestà deterministico prima di arrivare a chiunque: non può mai inventare una previsione, promettere un rimborso o rivelare cifre di denaro allo staff — in portoghese e in inglese. Queste protezioni sono fissate da un insieme di test di regressione: l'agente può affinare le parole, ma non può mai regredire sulla verità.
Sicurezza sul perimetro
Prima che una richiesta raggiunga i nostri agenti o il database, deve attraversare il livello di bordo.
Un bordo enterprise davanti a tutto
Tutto il traffico entra da un bordo enterprise — WAF, mitigazione DDoS, bot fight mode, filtraggio per ASN paese per paese. I server di origine non vedono mai internet pubblica diretta; un attaccante deve prima battere il bordo.
Rate limiting a livelli
Oltre il bordo, ogni endpoint sensibile ha il proprio limite per IP / utente / endpoint — tentativi di login, chiamate di IA, ricerche, elenchi pubblici. Una credenziale compromessa o uno scraper creativo viene limitato molto prima di fare danni su scala. Il cost-DoS sugli endpoint di IA (qualcuno che prova a prosciugare il nostro budget LLM) è misurato con lo stesso criterio.
Solo TLS, HSTS, cookie firmati
Nessun traffico in chiaro, da nessuna parte — HTTPS obbligatorio, con HSTS di 180 giorni sul dominio principale. La chiave di rinnovo della sessione risiede in un cookie HttpOnly con percorso ristretto, così una sessione rubata non sopravvive alla scheda. I punti di contatto con il pagamento passano per Stripe Checkout / Connect — i numeri di carta non li vediamo mai.
Autenticazione a due fattori con segreti cifrati
I titolari di scuola e gli amministratori possono richiedere un secondo fattore — un codice a sei cifre da un'app di autenticazione o lo sblocco biometrico sul telefono. I segreti TOTP che generano quei codici sono cifrati a riposo con un algoritmo moderno e robusto — così nemmeno un dump del database intacca il secondo fattore. Le password sono protette con hash bcrypt + salt; cambiare l'email di un account revoca tutte le sessioni attive di quell'utente.
Il sistema nervoso
Cosa succede quando una scuola crea o modifica una lezione:
1
Origine — SurfBooking OS
Il titolare imposta ora, livello, restrizione di marea, capienza, istruttore. Inviato al core di SurfBooking.
2
Validazione — rapporti della piattaforma + incrocio con il forecast
Il server valida il rapporto contro il regolamento della piattaforma (1:6 principiante, 1:8 intermedio, 1:4 kids), conferma le finestre di marea, assegna un punteggio alle condizioni e salva il risultato.
3
Distribuzione — tre uscite, in tempo reale
Web · Marketplace
La lezione appare sulla pagina pubblica dello spot + classifiche Surf Today.
App mobile
Check-in, QR Codes, waivers. Gli istruttori gestiscono la giornata sulla sabbia.
Rete di partner
Hotel e partner diffondono lezioni con link/QR — ogni prenotazione sa da dove viene.
Intelligenza governata, non un chatbot
La nostra IA non è un chatbot con istruzioni. È un sistema governato con permessi separati — fatto per resistere al prompt-injection e per garantire che nessuna risposta attraversi un muro che non dovrebbe.
Garanzia · Coordinamento
Una sola fonte di verità
Ogni risposta poggia sullo stato reale della piattaforma — prenotazioni, calendario, mare. I segnali dall'esterno non arrivano mai al nucleo direttamente: tutto viene filtrato prima.
Garanzia · Rete
La rete impara, le scuole restano private
Pattern aggregati e anonimizzati alimentano il miglioramento continuo — effetto rete — senza mai condividere i dati di una scuola con un'altra.
Garanzia · Dati esterni
Le fonti esterne entrano verificate
I dati pubblici (regolamenti, fonti ufficiali) sono sanificati prima di poter influenzare qualsiasi cosa — la difesa standard contro l'Indirect Prompt Injection.
Garanzia · Per scuola
Ogni scuola isolata
L'assistente di ogni scuola è sigillato dentro quella scuola, isolato per il GDPR. Conosce il contesto locale (orari, attrezzatura, regole della casa) e non può mai leggere i dati di un'altra scuola.
Muri tra le scuole
Ogni scuola è un silo sigillato. Lo applichiamo a ogni livello.
Filtraggio a livello di server
Tutti gli endpoint che restituiscono prenotazioni, allievi, staff o forecast filtrano per l'ID della scuola prima che qualsiasi dato esca dal database. L'interfaccia non può aggirarlo.
Costituzione anti-jailbreak
L'assistente IA è vincolato a un libro di regole fissato sul server e iniettato prima di ogni conversazione. È istruito a conoscere una sola scuola, a non menzionare mai le altre e a rispettare le regole della piattaforma anche quando la scuola insiste sul contrario.
Il tuo file di contesto
Ogni scuola modifica un file di testo privato che l'assistente legge prima di rispondere — i tuoi orari, la tua attrezzatura, le tue regole della casa. Il file ha dimensione limitata, viene registrato nell'audit a ogni modifica e non è mai condiviso con altre scuole.
PII rimossa prima che un modello la veda
Ogni messaggio scritto da un utente passa da uno strato di oscuramento che rimuove indirizzi email, numeri di telefono, codici fiscali, IBAN e numeri di carta prima che arrivino a un modello linguistico. Lo stesso strato agisce sulla risposta del modello al ritorno, così nemmeno un modello che ne allucina uno può farlo uscire. Le carte si riconoscono dal prefisso IIN + controllo di Luhn; gli altri identificatori dalla corrispondenza di forma ancorata. Lo strato è bloccato contro le regressioni dal livello di test avversari qui sopra.
Pipeline di forecast
Perché la nostra 'migliore finestra per principianti' non è un'ipotesi.
Fiducia onesta, non falsa precisione
Quando i dati non sono certi, lo spot riceve un bollino di 'bassa affidabilità' invece di fingere che sappiamo. Preferiamo dirti che è al limite piuttosto che venderti falsa precisione.
L'onda al peak, spiaggia per spiaggia
Il numero che vedi è l'onda al peak di quella spiaggia esatta — non il valore grezzo al largo. Lo stesso swell atlantico arriva su una punta esposta e in una baia riparata con altezze reali molto diverse, e noi leggiamo ognuna sul suo terreno.
Finestre pedagogiche per livello
Valutiamo le finestre lungo tutto l'orizzonte di previsione rispetto alle definizioni di livello del regolamento — ciò che conta come buona finestra per i principianti non è ciò che conta per gli avanzati. La 'migliore finestra' che la procedura guidata mostra è quella che corrisponde al livello che la scuola sta insegnando.
Livello di difesa adversarial
Ciò che gira contro il nostro Agent prima di qualsiasi utente reale.
S
Istruttore
Sonda i muri della privacy
C
Cliente
Pretende rimborso · mostra la carta
D
Titolare di scuola
Mette alla prova i limiti di scala
M
Multi-turno
Addormenta, poi colpisce
Verifica deterministica su ogni percorso di risposta
Prima che una risposta dell'Agent arrivi a un utente, il testo dell'utente passa per un livello di sanificazione che rimuove gli identificatori personali e neutralizza i pattern noti di prompt-injection. Il livello è bloccato da una suite di test interna — una nuova forma di attacco che compare in-the-wild riceve un test di regressione abbinato prima che la correzione sia considerata rilasciata.
Sei personas, scritte per rompere il sistema
Manteniamo sei personaggi avversari — tra cui un cliente frustrato, un titolare di scuola che spinge la scala al limite, un dipendente che sonda i muri della privacy e un attaccante su più turni che addormenta l'Agente per molti turni prima di colpire — ognuno un gioco di ruolo dettagliato che sa esattamente cosa lasciar cadere (un numero di carta, una richiesta di rimborso, i dati di un collega) per far inciampare l'Agente. Le regole deterministiche girano a ogni controllo prima del push; le conversazioni su più turni con modello dal vivo, che li portano attraverso scenari completi, girano nello sciame avversario (avviato da un operatore).
Blocca la build, non a sensazione
Una regola fallita non è un avviso — blocca il deploy. Che la regola sia 'nessun IBAN sopravvive al livello di oscuramento' o 'il ruolo staff non può vedere le prenotazioni di un altro istruttore', il verdetto è verificabile nel codice ed è binario. Il copy di marketing non viene valutato; solo il comportamento.
Due diligence in background su ogni candidatura di scuola
Quando una scuola chiede il badge Partner, un Agente di Verifica esegue una scansione in background così che il revisore umano legga un briefing, non un modulo in bianco.
Fact-check su dati pubblici
L'Agente di Verifica esegue una ricerca web isolata (l'unica ricerca esterna della piattaforma), raccoglie le menzioni pubbliche della scuola + della licenza dichiarata e segna ogni affermazione come confermata / non confermata / contraddetta. Ogni fatto porta l'URL della fonte perché il revisore umano possa confermarlo con un clic.
Scansione di bias e pattern delle recensioni
Un secondo passaggio analizza la presenza pubblica di recensioni della scuola in cerca di segnali — campagne negative coordinate, picchi di 5 stelle sospetti, pattern già banditi. Il risultato è informativo, mai bloccante; un risk-score isolato (0-100) arriva nel briefing perché il revisore lo valuti.
Briefing sigillato — non torna mai alla piattaforma
Il briefing resta in una tabella di storico research accessibile solo agli admin. Non arriva mai a un'altra scuola, non addestra mai modelli, non compare mai nel contesto di un'altra scuola. Lo vede solo il revisore che apre il caso; cancellare il caso cancella il briefing.
Decide un umano — sempre
L'agente non approva né rifiuta mai. Scrive il briefing; una persona legge e clicca. Ogni approvazione e ogni rifiuto viene registrato con il briefing allegato — così che un regolatore (o la scuola stessa, se lo chiede) possa ricostruire esattamente ciò che si sapeva al momento della decisione.
Resilienza dei dati
Ciò che promettiamo sulla tua operatività che sopravvive a qualsiasi guasto.
Audit trail solo-append + ledger dei rimborsi concatenato con hash
Le operazioni amministrative (modifiche di account, elevazioni di ruolo, cancellazioni GDPR) vengono scritte in un registro a sola aggiunta, conservato per convenzione. La riconciliazione di rimborsi e pagamenti va un passo oltre con una catena di hash lato server, così le manomissioni del flusso di cassa si rilevano ripercorrendola.
Backup replicato fuori dal database
Snapshot cifrati giornalieri replicati tra il database di produzione, un fornitore indipendente di object-storage e una macchina fisica in un altro paese. Perdere un silo = perdere zero dati.
Esportazione cifrata self-service
Ogni scuola scarica i suoi dati operativi in uno ZIP AES-256 la cui chiave è la sua password. Nemmeno noi possiamo aprirlo. L'esportazione esclude la PII dei clienti dell'app (resta dentro il canale di messaggi SurfBooking) ma include tutto il resto.
Cosa vedono gli auditor
Sotto accordo di riservatezza, quando un regolatore chiede, apriamo i nostri controlli — il codice che prova che privacy, integrità dell'audit trail e cancellazioni GDPR funzionano come descritto. Mai apriamo il contenuto che quei controlli proteggono: il file di contesto della scuola, i prompt dell'assistente, le conversazioni tra scuole e IA. Audit dei controlli, non dei contenuti.
Costituzione algoritmica
Le regole che vincolano tutti gli agenti.
Tutta la nostra rete multi-agente è governata da leggi fissate sul server e codificate nelle istruzioni base di ogni agente (blindate contro jailbreak e prompt-injection). È la costituzione a garantire l'isolamento tra scuole, l'onestà dell'attribuzione e l'automazione dei pagamenti di massa senza intervento umano.