8.3 KiB
Rilascio coordinato ThothII / Omics — 26 settembre 2026
Distribuito; accettazione automatica superata. Collaudo browser positivo per accesso, interfaccia e avvio/interruzione/ripresa sessione; prove estese residue sotto. Finestra esplicitamente confermata dall’utente in chat («confermo»), avvio alle 19:28 Europe/Rome. Riferimento: piano approvato. Maintenance disattivata alle 19:35:27 dopo tutti i controlli automatici.
Versioni e stato finale
| Componente | Risultato |
|---|---|
| ThothII sorgente | Main 497ab84031e285464fdbb73e6e0ce9252687e3ab, checkout pulito in /srv/thothii-v2/releases/497ab84031e285464fdbb73e6e0ce9252687e3ab |
| Core | thothii-v2-core:497ab840-preflight, ID sha256:182f4e0d63404cb7ed6a0e272441e9c55ed27e2bb16fdbf4d7162f892ac76dc7, healthy |
| Frontend | thothii-v2-frontend:497ab840-preflight, ID sha256:5f5a4f81139432d0ac41025c3006edaf1258b623ce388242700b1b20fcce6421, healthy |
| Omics checkout | Fast-forward a 928f7e9fff2aba895416776fecf5668ee957d237; nessuna modifica tracciata, file locali preservati |
| Omics web | Stesso container e immagine sha256:27aa100690b110bf596322b1b0a31acc178ca9d1c709bc10382cbeecbfb5aeca, riavviato e healthy; risposta HTTP Django verificata |
| Omics nginx | Ricreato col fix asset e immagine precedente fissata sha256:b3c656d55d7ad751196f21b7fd2e8d4da9cb430e32f646adcf92441b72f82b14; nginx -t positivo |
| Supporti | Catalogo PostgreSQL, Qdrant e Ollama healthy; immagini e volumi invariati |
| CLI host | /usr/local/bin/tht aggiornato; SHA256 0d39a93fb0a3b2147541a746c75832db20302f3a604bf6510da69d3731bcd783 |
| Maintenance / Pi | Maintenance inattiva, zero processi Pi RPC al controllo finale delle 19:36 |
Descrittore mantenuto nel percorso originale:
/srv/thothii-v2/source/ThothII/deploy/psd-server-v2/thothii-installation.yaml.
Project Compose sempre thothii-7f901b48fe35; shell embedded/en/omics-portal,
auth upstream e storage locale invariati. Cambiati solo projectDirectory e
percorso dell’overlay git-ssh nel descrittore, tag immagini in env/overlay.
Proiezioni rigenerate col nuovo CLI e UID 10001. Descriptor/env 10001:10001 0600;
overlay 1013:1014 0640; CLI root:root 0755.
Il vecchio checkout ThothII dirty resta al suo posto per rollback. Nessun reset, force push, eliminazione di volumi, cambio identità, credenziali, DWH o Authentik. Nessun push Omics eseguito. Nessuna nuova migrazione applicata; i controlli Django prima e dopo il riavvio non rilevano migrazioni o modifiche dei modelli pendenti. L’entrypoint web ha rieseguito i normali comandi di startup, statici e traduzioni.
Backup ed esecuzione
Backup protetto root 0700:
/srv/thothii-v2/backups/20260926-coordinated-release.
Completato e VERIFIED alle 19:31:57, circa 2,89 GiB, 23 checksum,
archivi tar leggibili e indici dei dump verificati. Non è una prova di restore.
Include configurazioni/CLI/generated, sorgenti e Git con file locali, immagini precedenti, bind data/registry/Evidence/Pi/segreti, volumi catalogo/Qdrant/Ollama/static/media, dump catalogo e dump PostgreSQL condiviso. Il DB condiviso è rimasto operativo: il suo dump è una snapshot transazionale, non un backup raw del database fermo. Il volume raw del catalogo ThothII è stato archiviato a servizio fermo. Nessun restore dati eseguito.
Cronologia Europe/Rome:
- 19:28: controllo del piano approvato positivo; riserva 20,9 GiB, liberi 27,8 GiB.
- 19:29:21: configurazione di rollback salvata e verificata prima delle mutazioni.
- 19:29:42: maintenance e chiusura nginx Omics; due controlli Pi negativi.
- 19:30:03: applicazioni ferme; dump, fermo supporti e archiviazione dati.
- 19:31:57: backup verificato.
- 19:32:10: deploy avviato; core 19:32:17, frontend 19:32:23, web Omics 19:32:29, nginx 19:32:36.
- 19:35:27: accettazione automatica completata e maintenance disattivata.
Il periodo tra chiusura e riavvio nginx è stato circa tre minuti; le nuove ammissioni sessione sono rimaste bloccate fino al completamento dei controlli.
Correzione del controllo durante il rilascio
L’accettazione iniziale si è fermata su un falso negativo nello script:
config.js invia due header Cache-Control, no-cache e no-store; il controllo
leggeva solo il primo. Configurazione e risposta HTTP erano corrette.
Riproduzione isolata rossa, correzione di una riga con get_all, 16 test verdi,
compreso il rifiuto quando no-store manca davvero. Nessuna modifica applicativa
necessaria. Maintenance mantenuta attiva fino alla ripetizione completa
dell’accettazione. Non sono stati ripetuti backup, fast-forward o ricreazione.
Directory script/evidenze:
/srv/thothii-v2/operator/releases/20260926-coordinated/reviewed/.
- Script inizialmente approvato conservato in
release.approved.py, SHA256eb2c677c8adbee0c9febf919001f654c8535e71f064d9fb7c7883afd02383a41. - Script corretto
release.py, SHA25620314e68a6a42701456d454d2a0881652cfdbe5e00e9a912a22df9e78129aa00. - Test di regressione:
test_release_reviewed.py,reviewed-tests-cache-fix.log. - Stato finale filtrato:
deployed-evidence.json; avanzamento neljournal.jsonldel backup. Manifest degli artefatti aggiornato, originale conservato.
Accettazione automatica
| Verifica | Esito |
|---|---|
| Digest reali dei container, readiness, doctor | Positivi |
| Alias Docker | Univoci e risolti ai container attuali; manifest raggiungibile da Omics |
| API senza cookie e con principal falsificati | 403 su HTTP e HTTPS locale verificato |
| Bypass asset e traversal codificati | Negati; /datamart-builder/assets/api/me restituisce 404 |
| Config | 200, embedded e no-store su entrambi i percorsi |
| Asset | Tutti i file elencati dal manifest disponibili su HTTP/HTTPS |
| Esposizione core | Nessuna porta pubblicata sull’host |
| Modelli, Pi e credenziali | Hash invariati rispetto alla baseline |
| Documenti persistiti | 2 manifest sessione, 51 file sessione/artifact e 221 file workspace/Evidence confrontati col backup: nessuna differenza |
| Migrazioni e catalogo Omics | Nessuna migrazione pendente; catalogo Superset valido |
| Log startup | Zero occorrenze nelle categorie fatal/config/auth/permessi controllate; nessun contenuto sensibile riportato |
Le prove HTTPS usano la CA interna e risoluzione locale del nome pubblico; non sostituiscono il collaudo dalla postazione esterna. Il controllo degli hash riguarda i file elencati, non certifica da solo l’intera semantica degli archivi.
Rollback disponibile
Usare lo script corretto, dopo controllo di eventuali sessioni Pi attive:
sudo -n python3 /srv/thothii-v2/operator/releases/20260926-coordinated/reviewed/release.py rollback --window-confirmed
Il rollback previsto dalla finestra approvata ripristina CLI/config/proiezioni e immagini ThothII precedenti, mantiene il fix proxy Omics, riavvia e verifica le applicazioni. Conserva dati e volumi; nessun restore del DB condiviso, reset Git o ritorno al nginx vulnerabile. Se l’utente ha avviato sessioni, prima salvarle e fermarle. Il rollback non è stato necessario né eseguito durante questo rilascio.
Collaudo browser — aggiornamento 27 settembre 2026
Conferme dell’utente:
- Omics → Datamart Builder si carica senza problemi, in risposta alla prova di apertura senza secondo login.
- Il 27 settembre: «tutto bene, compreso l’avvio e l’interruzione di una sessione». Nel contesto dei controlli richiesti, registrato esito positivo per IT/EN, tema, fullscreen/Esc e per avvio/interruzione di una sessione.
- Successivamente, sempre il 27 settembre: «ho anche ripreso una sessione interrotta. tutto ok». Confermata anche la ripresa riuscita; il ciclo funzionale avvio → interruzione → ripresa è collaudato dall’utente.
Il collaudo funzionale richiesto ha esito positivo. Su richiesta dell’utente, le verifiche estese sono trasferite a un’attività successiva nel handoff del 27 settembre: lingua persistita, identità/ruoli, logout, origine delle scritture, amministrazione, reload e HTTPS esterno. Il documento contiene passi, responsabili, risultati attesi e registro delle prove; nessuno di questi casi è dichiarato già superato.
La matrice di accettazione resta il riferimento. Nessuna ulteriore modifica ai servizi è stata eseguita per registrare il collaudo o preparare l’handoff del 27 settembre.