Vai al contenuto

Handoff Area File Tecnici

Data: 2026-07-18

Stato ultimo intervento

  • Reso collassabile il pannello I miei file.
  • Reso collassabile il pannello File condivisi con me da altri.
  • Reso collassabile il pannello Quota spazio, chiuso di default per ridurre ingombro su monitor Full HD.
  • Allineata la paginazione dei pannelli file personali/condivisi con stato disabilitato piu' chiaro.
  • Portato Documenti cliente a ricerca e paginazione server-side tramite endpoint /client-documents/<cliente_id>?q=&page=&per_page=.
  • Limitata la lista clienti della workspace tecnica ai soli clienti assegnati all'utente.
  • Rimosso il bypass admin dall'autorizzazione cliente della workspace tecnica: anche un admin operativo vede/pubblica solo sui clienti assegnati in questa area.
  • Allineato Import intelligente agli stessi clienti assegnati, per evitare suggerimenti AI fuori perimetro.
  • Se l'AI crea o recupera un cliente da una proposta documento, il cliente viene assegnato automaticamente all'utente corrente in commerciale_user_cliente_scope.
  • Aggiunto scudo sugli errori del motore AI: timeout, provider non raggiungibile, coda non disponibile o risposta non JSON mostrano messaggi operativi invece di errori tecnici generici.
  • Allineata anche la pagina Import intelligente: se gli endpoint AI tornano HTML/500 o risposta non JSON, la UI mostra un messaggio pulito e non rompe il flusso.
  • Chiuso il bypass admin sui file dell'area tecnica: accesso diretto consentito solo a proprietario o utenti con condivisione; modifica, pubblicazione, condivisione, spostamento ed eliminazione restano solo al proprietario.
  • Versionato anche l'allegato singolo aggiunto a un documento cliente: viene creata subito la versione iniziale v1, come gia' avviene per gli allegati pubblicati tramite pacchetto tecnico.
  • Spostato l'avvio dei job ZIP massivo e conversione CAD su Celery: il web accoda il lavoro e mostra stato/progresso, mentre il worker esegue la parte pesante.
  • Aggiunti indici mirati e cleanup schedulato dei job ZIP/CAD: ZIP scaduti e job vecchi vengono rimossi da Celery Beat, con cancellazione dei file ZIP temporanei.
  • Ottimizzata la view Documenti cliente: aggiunti indici su tabelle documentali usate da ricerca/join e rimosso il conteggio versioni allegato N+1 con una query aggregata per pagina.
  • Ottimizzati i badge riepilogo Documenti cliente: non caricano piu' fino a 500 documenti in Python per calcolare contatori, ma usano query aggregate.
  • Portato Import intelligente a paginazione server-side: la proposta analizza una pagina di file alla volta con controlli pagina e dimensione pagina.
  • Reso piu' robusto il download allegati cliente: se manca cliente_id nel link, viene risolto un cliente autorizzato tra quelli assegnati all'utente.

Scelte prestazionali

  • I miei file e File condivisi restano su query server-side con LIMIT/OFFSET e per_page controllato.
  • Documenti cliente non scarica piu' fino a 500 documenti in una volta per poi filtrare nel browser: richiede solo la pagina corrente.
  • La ricerca documenti cliente copre oggetto, nome file documento, nome categoria e nome allegato.
  • Le autorizzazioni cliente usano direttamente gli ID assegnati, senza costruire la lista label completa.
  • La creazione cliente AI non lascia piu' record invisibili all'utente che li ha generati.
  • Gli errori AI non espongono dettagli tecnici di trasporto in UI; il documento resta caricato e l'utente puo' riprovare o procedere manualmente.
  • La pagina pilota usa parsing protetto per stato AI, avvio AI singolo e avvio batch AI.
  • I job ZIP/CAD non restano indefinitamente nelle tabelle operative: il cleanup giornaliero limita crescita DB e file temporanei.
  • Documenti cliente mantiene paginazione server-side e usa conteggi versione allegato batchati sulla pagina corrente.
  • I badge riepilogo sono volutamente indicatori aggregati SQL; la lista documenti resta la fonte puntuale e paginata per il dettaglio.
  • Import intelligente resta vista pilota, ma non dipende piu' da un limite fisso ultimi 60: usa la stessa logica di paginazione dell'area file.
  • I link allegato non dipendono piu' rigidamente dal parametro cliente, ma restano vincolati ai clienti assegnati all'utente.

Prossimi micro-passi

  1. Verificare in UI reale il comportamento di Documenti cliente con clienti con molti documenti.
  2. Valutare indici DB mirati se le ricerche su documento.nome_file, documento.oggetto, categoria.nome, allegato.nome_file risultano lente.
  3. Uniformare eventuali altri pannelli tecnici che usano ancora paginazione o ricerca client-side.
  4. Prossimo punto audit tecnico: verificare in UI reale il flusso Import intelligente con molte pagine e bozze salvate.
  5. Riprendere separatamente le note precedenti: formazione/WooCommerce, pulizia incoming, RAM VM ancora a 16 GB.