Immagine AI

Amazon Web Services ha reso generalmente disponibile AWS Emulator, un ambiente locale per lo sviluppo e il collaudo di applicazioni cloud, la cui implementazione software è stata prodotta e verificata da agenti di intelligenza artificiale autonomi. Il sistema utilizza 438 modelli delle API AWS e copre oltre 200 servizi, permettendo agli sviluppatori di eseguire operazioni su risorse simulate senza dover disporre di un account AWS o distribuire immediatamente le applicazioni nel cloud. L’emulatore espone un endpoint HTTPS locale compatibile con AWS CLI, SDK e strumenti di programmazione agentica. La configurazione delle variabili d’ambiente consente di indirizzare le richieste verso il computer dello sviluppatore, mantenendo invariato il codice applicativo utilizzato per comunicare con i servizi cloud. Sono disponibili pacchetti RPM e Debian per Linux, distribuzioni Docker per macOS e Windows e una modalità integrata destinata ai test Rust. L’utilizzo dell’emulatore non comporta costi aggiuntivi, mentre rimangono applicabili le tariffe delle risorse effettivamente distribuite nell’infrastruttura AWS.

La particolarità del progetto riguarda il processo di sviluppo adottato. Secondo il responsabile tecnico Matthew Goldberg, il gruppo di ingegneri AWS non ha scritto né revisionato direttamente il codice dell’emulatore, concentrandosi invece sulla definizione delle specifiche, dell’infrastruttura di test, delle condizioni di accettazione e delle procedure di pubblicazione. Il progetto è partito da un esperimento nel quale Kiro ha realizzato in circa quindici minuti una prima implementazione di Amazon SQS, producendo test, confrontandone il comportamento con quello del servizio reale e costruendo un’applicazione in memoria capace di superarli. Il prototipo è stato successivamente esteso attraverso procedure automatizzate, fino alla realizzazione di un sistema che utilizza tre gruppi di agenti con responsabilità distinte. I primi producono scenari di verifica a partire dai modelli pubblici delle API e li confrontano con AWS reale; i secondi ripetono le prove e identificano anomalie riconducibili a cause comuni; i terzi elaborano le correzioni. Centinaia di agenti operano contemporaneamente, con decine di migliaia di test di fedeltà e migliaia di problemi corretti quotidianamente secondo i dati comunicati da AWS.

Ogni modifica deve superare controlli automatici di compilazione, qualità del codice, sicurezza e fedeltà funzionale prima dell’integrazione. Un agente di sicurezza indipendente esegue verifiche avversariali durante lo sviluppo e nella pipeline di rilascio. Il codice attraversa AWS CodeCommit e CodePipeline prima della pubblicazione su GitHub, dove sono disponibili cronologia delle modifiche, risultati delle valutazioni e cartelle dedicate ai problemi risolti e ancora aperti. La distribuzione utilizza una dedica al pubblico dominio CC0, con eccezioni per componenti di terze parti soggetti alla licenza Apache 2.0. Il repository accetta segnalazioni attraverso GitHub Issues, ma non contributi mediante pull request. La fedeltà viene misurata confrontando interi flussi operativi con i servizi reali, compresi codici di stato, corpi delle risposte, messaggi di errore e risorse prodotte. Le operazioni non implementate restituiscono HTTP 501 e ogni prova pubblicata è stata verificata su almeno due account AWS di test isolati. L’emulatore non riproduce tuttavia integralmente le verifiche IAM e le autorizzazioni associate alle risorse: alcune operazioni negate dal servizio reale potrebbero riuscire in locale. Per questa ragione non è destinato ai carichi produttivi o ai test di sicurezza, ma allo sviluppo, all’integrazione continua e alla sperimentazione. Ogni istanza simula un solo account e una sola regione e conserva le risorse in memoria, eliminandole alla chiusura. Il progetto costituisce anche un esempio operativo di sviluppo software nel quale gli agenti generano e correggono il codice, mentre gli ingegneri definiscono le specifiche e le condizioni verificabili che ne determinano l’accettazione.

Questo articolo è stato redatto con il supporto di strumenti di intelligenza artificiale (AI)

Di Fantasy