AITM conserva in locale una discreta quantità di stato, in modo da operare in modo affidabile e ricordare ciò che ha appreso sui progetti. Ecco una mappa in linguaggio semplice di cosa viene memorizzato e perché è importante.

Quali dati memorizza AITM

La mappa dei dati

Cos'èDove si trovaPerché è importante
Database per progettoUn file di database dedicato per ogni progetto gestitoContiene i contratti e la cronologia dei Task del progetto — tenuti separati per progetto, così i dati di un progetto non si mescolano mai con quelli di un altro
Database globaleUn database condiviso per AITM stessoContiene le impostazioni dell'intera applicazione, gli hint, il registro delle variabili e altra configurazione trasversale ai progetti
Log di esecuzione dei TaskCartelle di log per progettoIl resoconto dettagliato, riga per riga, di ciò che è accaduto durante l'esecuzione di un Task — utile per il debug di un Task che si è comportato in modo inatteso
Cartelle dati dei TaskCartelle dei Task per progetto, una sottocartella per numero di TaskContiene i file dei risultati, i metadati e gli eventuali screenshot acquisiti per quel Task — alimenta la vista Risultati & Archive
WorktreeCheckout Git temporanei, uno per ogni Task in esecuzioneLa copia di lavoro isolata che gli Agent AI di un Task modificano effettivamente; viene creata all'avvio del Task e rimossa automaticamente dopo il merge — vedere La Pipeline
Documenti del knowledge graphFile di documentazione generati automaticamenteEsportazioni leggibili dei contratti e della conoscenza sulle dipendenze descritti in Knowledge Sharing; rigenerati automaticamente dopo ogni merge

Perché lo stato locale e persistente è importante

Nulla di tutto ciò è una semplice contabilità accessoria — è il meccanismo alla base di tutto ciò che viene trattato altrove in questa guida:

  • Il database per progetto è ciò che consente a contratti, cronologia dei Task e ricerche di precedenti di sopravvivere tra una sessione e l'altra e tra un Task e l'altro, invece di azzerarsi ogni volta che si chiude l'app.
  • Le cartelle dati dei Task sono ciò che rende l'Archive una traccia di audit davvero utile e non un semplice elenco di titoli — ogni risultato, screenshot e campo di metadati visibile lì viene letto direttamente da queste cartelle.
  • I Worktree sono il fondamento meccanico della garanzia di isolamento descritta in La Pipeline — poiché ogni Task ottiene un checkout del filesystem realmente separato, il lavoro in corso non può mai finire per errore nel branch principale.
  • I documenti del knowledge graph sono ciò che trasforma "l'AI si è per caso ricordata qualcosa" in "il progetto dispone di un registro durevole e ispezionabile del proprio comportamento" — vedere Knowledge Sharing.

Come i backup del database sono protetti da crescita illimitata e perdita silenziosa di dati

Anche i backup del database hanno bisogno di una protezione propria — altrimenti potrebbero riempire il disco o sparire silenziosamente proprio quando servono di più. AITM li mantiene con una policy di conservazione a livelli e ne monitora le dimensioni per rilevare anomalie:

  • Conservazione a livelli — invece di un'unica soglia fissa che elimina in una volta tutti i backup del database più vecchi di N giorni (e potrebbe cancellare tutti i backup in un colpo solo se un'esecuzione giornaliera fosse saltata), AITM dirada i backup gradualmente: conserva una manciata dei backup giornalieri più recenti, alcuni backup più vecchi distanziati di diversi giorni e un backup settimanale ancora più vecchio. Il risultato è un insieme ridotto ma ben distribuito di punti di ripristino, senza lasciare crescere senza limite lo spazio occupato dai backup.
  • Avvisi di anomalia di dimensione — prima di qualsiasi potatura, AITM confronta la dimensione del backup del database di oggi con quella di ieri. Un calo significativo (possibile perdita di dati) o una crescita inattesa significativa fa scattare un avviso via e-mail con la dimensione precedente, quella attuale e la variazione percentuale, così l'anomalia viene scoperta prima che un vecchio backup sano venga sovrascritto o potato.
  • Potatura verificata dei backup incrementali (delta) — i backup di ripristino incrementali più vecchi di 3 giorni vengono potati con continuità, ma solo dopo aver verificato l'integrità del backup più recente ancora conservato in quella catena. Se la verifica fallisce, la potatura si ferma per quel database e nulla di più vecchio viene eliminato — così un singolo backup recente corrotto non può mai propagarsi fino a eliminare i backup più vecchi, ancora validi, sottostanti.

Suggerimenti

  • Il codice del progetto non viene mai modificato al di fuori di un Worktree — la normale copia di lavoro resta intatta mentre un Task è in esecuzione.
  • Nulla lascia la macchina, tranne le chiamate al provider AI configurato.
  • Questa conoscenza locale e persistente è ciò che permette ad AITM di migliorare nel tempo sul proprio progetto invece di ripartire da zero a ogni Task.