# Stato del progetto gruppobenza.it

## Dal 30/09/2026 la pagina sta su www.benza.it

Benza ha scelto i sottodomini: il sito di Benza Water Storage e' passato su
`riserve-idriche.benza.it`, quello di Benza srl andra' su `arredi-giardino-piscine.benza.it`, e
questa pagina ha preso il posto della home di **www.benza.it** (hosting Aruba di benza.it).

- **Come si pubblica adesso:** `npm run build`, poi FTP in chiaro della cartella `dist/` nella radice
  `/www.benza.it` (stesso account e stesse regole del sito, vedi sito_26). Non piu' Cloudflare Pages.
- **`public/.htaccess`** fa il lavoro su Aruba: tiene qui `/app/`, `/caricamenti/`, `/ponte/`, `/api/`
  e i file di questa pagina, e manda tutto il resto con 301 a riserve-idriche. Il `DirectoryIndex`
  deve restare `index.html index.php`: con solo `index.html` le app di `/app/` rispondono 403.
- **Analytics dal 01/10:** la pagina usa la proprieta' GA4 di Benza Water Storage (`G-42EHH23ZFT`,
  in `.env` come `PUBLIC_GA_ID`): BWS e' titolare della pagina, e cosi' il passaggio dalla pagina a
  riserve-idriche resta nella stessa sessione. La vecchia proprieta' `G-M8QPH6H1CW` e' nel cestino di
  Analytics; le proprieta' Search Console di gruppobenza.it sono state tolte (c'e' la proprieta'
  Dominio benza.it).
- **gruppobenza.it:** regola di redirect su Cloudflare "Tutto verso www.benza.it" (prima in lista,
  percorso e query conservati). Il progetto Pages resta ma non riceve piu' visite. Rinnovo automatico
  del dominio disattivato su Aruba: scade il **07/09/2027** e si lascia andare.
- **Mai "Acqua" contro "Giardino"** (Paolo, 30/09): tutte e due le societa' lavorano con l'acqua, ed e'
  per questo che Benza ha scelto i nomi dei sottodomini. Bottoni e schede dicono "Riserve idriche" e
  "Arredi, giardino e piscine" (EN/FR tradotti). Gli identificatori interni `acqua`/`giardino` restano.
- **01/10/2026:** benzashop.it non c'e' piu'. La quarta card ("Cercare pompe, irrigazione e prodotti
  per il giardino") porta al catalogo di Benza srl, `arredi-giardino-piscine.benza.it/catalogo`, che non
  vende online: il testo lo dice ("Li trovi in negozio a Sanremo"). Tolto anche da `llms.txt`, privacy e
  `sameAs` del JSON-LD. L'evento Analytics resta `garden_shop`.
- **01/10/2026:** le due porte dell'hero vanno dritte ai sottodomini (scheda nuova, come le card), niente
  piu' ancore `#water_info`/`#garden_info`. Contano in Analytics come `water_hero` e `garden_hero`.

Quello che segue e' la storia della versione su Cloudflare, aggiornata all'08/09/2026.
Lo spec sta in `docs/superpowers/specs/`, il piano in `docs/superpowers/plans/`.

## Il sito e' online

**https://www.gruppobenza.it** — tre lingue, certificato Google Trust Services emesso
l'08/09, tutte le rotte a 200, canonical e hreflang corretti.

- Repository: `github.com/paoloalby/gruppobenza` (privato)
- Cloudflare Pages: progetto `gruppobenza`, account Cloudflare personale di Paolo
  (`Paoloalby@hotmail`, id `6164844dd7d12a5c2b03a6b5d2ba26c3`)
- Build automatica a ogni push su `main`: `npm run build`, cartella `dist`
- Variabile su Cloudflare: `PUBLIC_GA_ID = G-M8QPH6H1CW`
- Dominio registrato su Aruba (account `7118509@aruba.it`, **intestato a Benza SAS**),
  ma il **DNS sta su Cloudflare** dall'08/09/2026: name server `natasha.ns.cloudflare.com`
  e `trace.ns.cloudflare.com`. Su Aruba resta solo la registrazione; i record si
  toccano nel pannello Cloudflare, non piu' nel pannello DNS di Aruba.
- `www` e l'apice sono entrambi domini del progetto Pages. L'apice funziona perche'
  Cloudflare appiattisce il CNAME sulla radice, cosa che Aruba non sa fare: e' il
  motivo per cui il DNS si e' spostato.
- Una regola di reindirizzamento manda `gruppobenza.it/*` su
  `https://www.gruppobenza.it/${1}` in 301, conservando percorso e stringa di query:
  l'indirizzo buono e' uno solo.
- **La posta resta su Aruba**: `MX 10 mx.gruppobenza.it` e i sette indirizzi di
  `mx` vivono nella zona Cloudflare **senza proxy**. Col proxy acceso la posta non
  arriverebbe: il proxy tratta solo HTTP.

## Analytics e Search Console

- Proprieta' GA4 **Gruppo Benza - gruppobenza.it**, id misurazione `G-M8QPH6H1CW`,
  nell'account Analytics `duebytes` (accesso con `duebytes@gmail.com`)
- Search Console: dall'08/09 la proprieta' buona e' quella **di dominio**,
  `sc-domain:gruppobenza.it`, che copre apice, `www`, http e https in una volta sola.
  E' verificata con il record **TXT** `google-site-verification=...` sull'apice, nella
  zona Cloudflare: **quel TXT non si cancella**, altrimenti la proprieta' decade.
  Si e' potuta fare solo dopo aver portato il DNS su Cloudflare.
- Resta anche la vecchia proprieta' a prefisso URL `https://www.gruppobenza.it/`,
  verificata col meta tag in `src/layouts/BaseLayout.astro`. Non da' fastidio e fa da
  seconda prova di possesso: **anche quel meta non si tocca**.
- La verifica **non** e' passata dal collegamento automatico che Google propone: quello
  chiede accesso all'intero account DNS su Cloudflare. Il TXT a mano gli da' un record
  e basta.
- Sitemap `sitemap-index.xml`: stato **Riuscita**, 6 pagine rilevate

## Cosa manca

1. **Testi inglese e francese** da far leggere a Davide.
2. Il link verso `gruppobenza.it` dal sito **benzasrl.it**: quel sito non e' nostro,
   se ne occupa Benza. Il link dal footer di `benza.it` e il `parentOrganization` nel
   suo JSON-LD sono gia' in produzione dall'08/09.

## Fatto il 09/09/2026

- **Il marchio del gruppo** e' nel footer, ricavato dal PDF vettoriale che ci ha mandato Benza.
  Un SVG di 11 KB, un tracciato solo, senza colore proprio: lo prende da `currentColor`, quindi
  lo stesso file e' bianco sul fondo scuro e azzurro dove il fondo e' chiaro. Le lettere non sono
  disegnate, sono buchi nel tracciato. Il PDF originale sta in `docs/logo-gruppo-originale.pdf`.
  Non e' nell'hero: li' "Gruppo Benza" e' l'h1, e un'immagine toglierebbe ai modelli l'unica riga
  che dice di chi e' la pagina.
- **Serbatoi antincendio e teli in EPDM** ora si leggono nel sommario dell'hero, nel titolo della
  card del centralino, nella descrizione del negozio e in `llms.txt`. Nel JSON-LD Water Storage ha
  una `description` presa dal dizionario (le stesse parole del pannello visibile, cosi' non possono
  divergere) e un `knowsAbout` che li nomina come voci separate.
- **Le porte dell'hero** portano alle card del centralino che rispondono all'intento, non ai
  pannelli delle societa': `#water_info` e `#garden_info`. Su schermo stretto le quattro card
  stanno una sotto l'altra e si somigliano, quindi un anello del colore della card si accende
  all'arrivo e si spegne da solo.
- **La sezione della storia** era la piu' alta della pagina: da circa 1400 px a 1024.
- **Immagini** con le misure intermedie che mancavano, e il nome accessibile del cambio lingua
  ora contiene il testo visibile ("Lingua: Italiano").
- **Search Console**: la proprieta' buona e' quella **di dominio**, `sc-domain:gruppobenza.it`.
  Vedi sopra.

## Cose imparate mettendo il dominio su Cloudflare (08/09/2026)

- La procedura "Connetti un dominio" si era piantata tre volte nei giorni prima;
  all'08/09 e' andata al primo colpo. Se si ripianta, riprovare piu' tardi.
- **La scansione automatica importa i record col proxy acceso su tutto**, compresi i
  sette `mx`, l'`ftp` e l'`admin`. Vanno rimessi su "Solo DNS" a mano **prima** di
  cambiare i name server, altrimenti si spegne la posta.
- Nel modulo di Cloudflare l'interruttore **"Blocca l'addestramento in robots.txt"
  e' acceso di suo**: va spento, altrimenti Cloudflare pubblica direttive che
  contraddicono il nostro `robots.txt`, che quei crawler li invita.
- Su Aruba, alla domanda su come configurare la posta, l'opzione "sui server Aruba" e'
  disabilitata quando si usano name server esterni: si sceglie per forza "server
  esterni". Non cambia nulla, la posta segue l'MX che abbiamo copiato nella zona.
- Il pannello Aruba conserva un pulsante **"Ripristina name server"**: e' la via di
  ritorno se qualcosa va storto.

## Come si guarda il sito in locale

Il dev server di Astro genera le immagini a richiesta e ne fallisce alcune: per vedere
la pagina come e' davvero conviene servire la build.

    npm run build
    cd dist && python3 -m http.server 4399 --bind 127.0.0.1

⚠️ Non usare la porta 4321: sul Chrome di Paolo una service worker di un altro progetto
la intercetta e serve la sua cache.

⚠️ Le sezioni con rivelazione a scorrimento restano invisibili se si salta a un'ancora
invece di scorrere: e' il comportamento normale di `animation-timeline: view()`.

⚠️ Le animazioni allo scorrimento si rompono solo nella build, mai in sviluppo: senza
`vite.build.cssTarget` in `astro.config.mjs` il minificatore piega
`animation-timeline: view()` dentro la scorciatoia `animation` e Chrome butta via tutto.
Il test `non comprime la timeline dentro la scorciatoia animation` in `tests/build.test.ts`
la sorveglia; se fallisce, e' tornata quella.
