docs: modifica messaggi e firma in chat — STATUS, STATE, design system
La cosa da rileggere fra sei mesi: propagare una modifica richiede insieme il filtro allargato a edited_at e il watermark del client sul massimo dei due timestamp. Una sola delle due e o la modifica non arriva, o arriva a ogni giro per sempre. Più il perché di due scelte che sembrano sviste: il non-letto resta su created_at, e la foto è un URL esterno perché l'upload su volume non esiste (la deroga LOCKED #5 è scritta ma mai costruita). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+6
-5
@@ -3,9 +3,9 @@ gsd_state_version: 1.0
|
||||
milestone: v2.5
|
||||
milestone_name: Audit
|
||||
status: executing
|
||||
stopped_at: "v2.5 in PAUSA. Modifiche hub: A, B, C1, rifiniture e chat a canali (0021) in prod; C2 (TidyCal) bloccato sulle credenziali API. La chat non e' stata provata a mano: .env.local non autentica piu'."
|
||||
last_updated: "2026-08-21T16:10:00.000Z"
|
||||
last_activity: 2026-08-21 -- chat a canali (portale + inbox admin), migration 0021
|
||||
stopped_at: "v2.5 in PAUSA. Modifiche hub: A, B, C1, rifiniture, chat a canali (0021) e modifica messaggi + firma (0022) in prod; C2 (TidyCal) bloccato sulle credenziali API. Niente della chat e' stato provato a mano: .env.local non autentica piu'."
|
||||
last_updated: "2026-08-21T20:55:00.000Z"
|
||||
last_activity: 2026-08-21 -- modifica dei messaggi (0022) e firma di chi risponde in chat
|
||||
progress:
|
||||
total_phases: 4
|
||||
completed_phases: 0
|
||||
@@ -40,6 +40,7 @@ Phase 27 resta a metà — schema e fonti in prod, resto da scrivere.
|
||||
| Rifiniture — tassonomie, "In revisione", tab pagamenti, riordino task | ✅ in prod 2026-08-20 (migration `0019`) |
|
||||
| Portale cliente — stepper compatto/full-width, card offerta | ✅ in prod 2026-08-21 (`0020`); override provato su Caruso Speaker |
|
||||
| Chat a canali — portale + inbox admin per canale | ✅ in prod 2026-08-21 (`0021`); build verde, **mai provata a mano** |
|
||||
| Chat — modifica messaggi + firma admin da `settings` | ✅ in prod 2026-08-21 (`0022`); menzioni rimandate, manca l'attribuzione |
|
||||
| D — Whop → audit | ⏸️ dipende dal motore v2.5 |
|
||||
|
||||
Progress: [███░░░░░░░] 25% (v2.5)
|
||||
@@ -92,6 +93,6 @@ Log completo in `PROJECT.md`. Vive per il lavoro corrente:
|
||||
## Session Continuity
|
||||
|
||||
Last session: 2026-08-21
|
||||
Stopped at: **chat a canali** — "Generale" + una per fase, chiave derivata in `src/lib/chat-channels.ts` e condivisa fra portale e inbox admin (se le due sponde la calcolassero da sole, la risposta finirebbe in un altro tab). Migration `0021` applicata a prod prima del push, tabella riletta a conferma: `client_channel_reads` per il non-letto per canale lato cliente (l'admin resta su `admin_last_read_at`), più il primo indice mai esistito su `comments`. Build e lint verdi. **Scritto e buildato, non provato a mano**: le credenziali locali non lo permettono più.
|
||||
Next: (1) aprire il portale in prod e provare la chat — mandare un messaggio su una fase e verificare che la risposta admin torni nello stesso tab; (2) sbloccare TidyCal con token o documentazione; (3) `LEAD_WEBHOOK_SECRET` su Coolify — finché manca la route risponde 403 a tutti; (4) poi v2.5 da `src/lib/audit/schema.ts` + `agents/`.
|
||||
Stopped at: **modifica dei messaggi** (stile Slack: illimitata, senza storico, etichetta «modificato» — scelta deliberata, motivata in `STATUS.md`) e **firma di chi risponde**, che era la stringa `iamcavalli` cablata nel pannello. Migration `0022` applicata a prod prima del push e riletta a conferma; il nome e la foto (URL esterno, l'upload su volume non esiste) stanno in `settings`, nessuna migration. La lezione da non perdere: il difficile non era scrivere la modifica ma **propagarla** — il poll filtra su `created_at`, che una modifica non cambia, quindi servono insieme il filtro allargato a `edited_at` **e** il watermark del client sul massimo dei due; una sola delle due e o la modifica non arriva, o arriva a ogni giro per sempre. Build e lint verdi. **Niente di tutto questo è stato provato a mano.**
|
||||
Next: (1) provare la chat in prod — la verifica che conta è modificare un messaggio admin con la chat del cliente aperta e vedere il testo cambiare da solo entro ~20s senza duplicarsi; (2) sbloccare TidyCal con token o documentazione; (3) `LEAD_WEBHOOK_SECRET` su Coolify — finché manca la route risponde 403 a tutti; (4) poi v2.5 da `src/lib/audit/schema.ts` + `agents/`.
|
||||
Resume file: None
|
||||
|
||||
Reference in New Issue
Block a user