style: unify workbench typography and prepare isolated visual review
This commit is contained in:
@@ -0,0 +1,109 @@
|
||||
# Revisione grafica: consegna su worktree e Docker
|
||||
|
||||
Stato: **pubblicata per revisione visiva, non integrata in main**.
|
||||
|
||||
## Dove provarla
|
||||
|
||||
- Docker locale: <http://127.0.0.1:8080/>.
|
||||
- Worktree: `/Users/mp/projects/ThothII-visual-review`.
|
||||
- Ramo: `codex/ui-visual-review`.
|
||||
- Base preservata: `2d1b714ebe31419d712e9c3324a5e171d5f0317d`.
|
||||
- Checkout originale: `/Users/mp/projects/ThothII`, ramo `codex/prototype-administration-pages`, lasciato intatto, incluse le note non ancora committate e i prototipi.
|
||||
|
||||
Non è stato eseguito alcun merge, push o aggiornamento di Gitea. Questa consegna richiede la revisione ottica del proprietario prima dell'adozione.
|
||||
|
||||
## Interventi
|
||||
|
||||
Impeccable, registro product, ha guidato le scelte: Manrope sans-serif locale per tutta la UI; niente serif nei componenti o nei documenti; cinque ruoli tipografici condivisi; monospace conservato per contenuto tecnico. I font non dipendono più da Google Fonts.
|
||||
|
||||
Le etichette ordinarie non usano più monospace maiuscolo. Le piccole dimensioni arbitrarie dei componenti sono state ricondotte a 12, 14 o 16 px. Titoli Admin a 24 px; intestazioni, controlli e prosa sono coerenti fra superfici.
|
||||
|
||||
Il rosso resta l'accento principale. Date e protocolli sono neutri. Verde e ambra usano token semantici leggibili anche in tema scuro. La guida Pi non è più presentata come un grande avviso ambra. Il tema delle utility segue il tema dell'app/portale, non autonomamente quello del sistema operativo. Placeholder e focus sono più leggibili.
|
||||
|
||||
Interventi specifici:
|
||||
|
||||
- Workspace: tipografia e stati uniformati, mantenute quattro schede e preprocessing.
|
||||
- Database: riepilogo più compatto, Catalog summary al posto di Fleet summary, intestazioni delle griglie senza monospace maiuscolo, selezioni compatibili con il tema scuro.
|
||||
- Memory: titoli e form sans-serif; messaggio distinto per libreria vuota e nessun risultato filtrato; paginazione mostrata quando serve.
|
||||
- Evidence: istruzioni tecniche espandibili, percorso host sempre disponibile e copiabile nella relativa sezione, filtri responsive con ricerca di larghezza utile.
|
||||
- Pi: guida leggibile a 16 px, codice correttamente su più righe, tab OS coerenti, testo che distingue default d'installazione e modello selezionato, Available models.
|
||||
- Core/sessioni: uniformazione estetica senza modifiche al workflow; otto fasi, gate, log, input e gestione sessioni conservati. Nei layout compatti il lettore documenti usa lo spazio disponibile anziché una colonna illeggibile.
|
||||
|
||||
Il modello globale, i default, le autorizzazioni e i blocchi di navigazione non sono stati ridisegnati. Non sono state eseguite elaborazioni LLM o mutate informazioni applicative per questa verifica.
|
||||
|
||||
## Verifica
|
||||
|
||||
| Verifica | Esito |
|
||||
| --- | --- |
|
||||
| Frontend, suite Vitest | 679 test passati |
|
||||
| TypeScript + build produzione | Passati |
|
||||
| Playwright dedicato | 7 scenari passati, nessun retry |
|
||||
| Larghezze | 390, 649, 768, 1280, 1600 CSS px |
|
||||
| Superfici Playwright | Cinque Admin, guida Pi, Core iniziale, My/All sessions e lettore archivio |
|
||||
| Interazioni | Tab OS da tastiera, modifica Memory trattenuta durante tentativo di navigazione, ritorno al Core dopo annullamento |
|
||||
| Tema | Chiaro indipendente dal tema OS; scuro tramite attributo del portale |
|
||||
| Spazio host | Simulazione di 240 px riservati al menu sinistro e 72 px all'header, con utility concorrente |
|
||||
| Docker reale | Accesso e navigazione fra le cinque pagine Admin; titolo sans-serif 24 px e nessun overflow dell'intera pagina nel viewport verificato |
|
||||
|
||||
I test visuali usano fixture e intercettano tutte le richieste API prima che possano raggiungere un'installazione. Nessuna scrittura è ammessa: ogni scenario controlla che non ne siano state tentate. Gli screenshot sono negli output locali ignorati da Git, `frontend/test-results/visual-review/`.
|
||||
|
||||
Comandi di verifica nel worktree:
|
||||
|
||||
```sh
|
||||
cd /Users/mp/projects/ThothII-visual-review/frontend
|
||||
npm test -- --maxWorkers=2 --minWorkers=1
|
||||
npm run build
|
||||
npx playwright test --config playwright.visual.config.ts
|
||||
```
|
||||
|
||||
Contrasti calcolati sulle coppie di token opachi di riferimento, non su ogni possibile composizione/hover:
|
||||
|
||||
| Coppia | Chiaro | Scuro |
|
||||
| --- | --- | --- |
|
||||
| Testo principale / card | 15,16:1 | 13,61:1 |
|
||||
| Testo secondario / card | 5,67:1 | 8,40:1 |
|
||||
| Successo / card | 6,76:1 | 8,69:1 |
|
||||
| Avvertimento / card | 6,64:1 | 9,44:1 |
|
||||
| Bordo input / card | 3,36:1 | 4,56:1 |
|
||||
| Testo pulsante primario / riempimento | 5,03:1 | 6,83:1 |
|
||||
|
||||
Limiti: non è una certificazione WCAG completa; non è stata eseguita una nuova sessione LLM sul Docker reale. La prova con geometria host non equivale all'integrazione nel vero Omics Portal. Lo zoom browser 200% e tutte le combinazioni di hover/trasparenza non sono stati verificati esaustivamente. I test funzionali già esistenti coprono fasi, sessioni e protezioni; le modifiche non cambiano la loro logica.
|
||||
|
||||
## Docker e ripristino
|
||||
|
||||
Progetto Compose: `thothii-18998cca7b0a`. È stato ricreato **solo frontend** con `--no-deps --no-build` dopo una build esplicita dal nuovo worktree.
|
||||
|
||||
| Elemento | Valore verificato |
|
||||
| --- | --- |
|
||||
| Immagine nuova | `thothii-frontend:visual-review-20260912` |
|
||||
| Digest immagine nuova | `sha256:eeccb28f5c5cd78da08fd007e259e3fb88f26b4f1415a825a3b5829061f79ed3` |
|
||||
| Immagine precedente conservata | `thothii-frontend:before-visual-review-20260912` |
|
||||
| Digest precedente | `sha256:635f25477f11a476034052e87b2129ae26a9a049c4bedde0ada3a1d65e4ee924` |
|
||||
| Container frontend nuovo | `50dd012cd400`, healthy |
|
||||
| Core invariato | `0dcce917be0c`, healthy |
|
||||
| Catalog DB invariato | `89755e439dc7`, healthy |
|
||||
| Qdrant invariato | `52ebd5c47955`, healthy |
|
||||
| Embedding invariato | `7f690e534eda`, healthy |
|
||||
| Bundle servito | `/index-Cd-Ma0ye.js`, `/index-CptC2K6s.css` |
|
||||
|
||||
Per tornare al look precedente, senza rebuild e senza modificare dati o Core:
|
||||
|
||||
```sh
|
||||
bash /private/tmp/thothii-memory-preview.sh \
|
||||
-f /Users/mp/projects/ThothII-visual-review/deploy/compose.visual-review-rollback.yaml \
|
||||
up -d --no-deps --no-build frontend
|
||||
```
|
||||
|
||||
Per ripubblicare il look di revisione già costruito:
|
||||
|
||||
```sh
|
||||
bash /private/tmp/thothii-memory-preview.sh \
|
||||
-f /Users/mp/projects/ThothII-visual-review/deploy/compose.visual-review.yaml \
|
||||
up -d --no-deps --no-build frontend
|
||||
```
|
||||
|
||||
Questi override sono deliberatamente locali e usano il launcher dell'installazione già presente; non vanno applicati sul server PSD. Il launcher in `/private/tmp` dipende dai profili locali esistenti: se rimosso, ricostruire l'invocazione dai profili dell'installazione, senza sostituire configurazioni o volumi. Le immagini di review e rollback restano taggate: non eseguire una pulizia delle immagini prima della decisione.
|
||||
|
||||
## Decisione successiva
|
||||
|
||||
Il proprietario valuta il look su Docker. Solo dopo approvazione si procederà con l'integrazione su `main`, verificando anche l'eventuale differenza fra `main` e il ramo di partenza. Un rifiuto della revisione richiede soltanto il ripristino frontend sopra indicato; codice e prototipi precedenti sono preservati.
|
||||
Reference in New Issue
Block a user