Skip to content
v1.2 — Assistente raggiungibile, anelli fuori dall'avambraccio, try-on diagnosticato

Il tag segna lo stato di main al 2026-09-01. La numerazione riprende da v1.1
(1 aprile 2026): in mezzo ci sono 659 commit mai taggati, quindi queste note
coprono l'ultimo ciclo di lavoro, non l'intero intervallo.

ASSISTENTE
  L'assistente del negozio non rispondeva: POST /api/chat tornava
  {"type":"error","errorText":"fetch failed"} in un decimo di secondo, cioe'
  connessione rifiutata. Le variabili AI_* erano vuote e si ricadeva su un
  Ollama in localhost:11434, che dentro il container non esiste.
  - Il widget ora dice quando non raggiunge il modello: useChat espone `error`
    e non veniva letto, quindi uno stream fallito finiva senza messaggio e
    senza avviso, indistinguibile da un widget rotto.
  - docker-compose.prod.yml porta gli indirizzi dei modelli interni come
    default invece di stringhe vuote; l'.env dell'host continua a vincere.
  - Chat e vision passano ai modelli serviti da ignis: Qwen3-Coder-30B per la
    conversazione (tool calling e streaming verificati end-to-end attraverso
    l'AI SDK) e Qwen3-VL-8B per l'analisi delle foto, dopo che il vecchio host
    Ollama ha smesso di rispondere.

TRY-ON
  - Un anello non si prova piu' attorno all'avambraccio. Era classificato nello
    stesso ramo del bracciale e finiva nella scena polso, dimensionato su un
    diametro di polso stimato. La posa di MediaPipe non ha landmark per le
    dita, quindi la tipologia resta senza prova finche' non esiste una scena su
    HandLandmarker: una tipologia il cui tracker non ha una scena ora non offre
    la prova, invece di cadere in mano al primo renderer che la accetta.
  - L'occluder della testa viene dal corpo e non piu' da un ellissoide: il
    contorno del viso estruso all'indietro, che non puo' scivolare via perche'
    e' la silhouette. Stesso difetto corretto nella scena polso/piede, dove
    l'occluder era dimensionato sul PRODOTTO, cosi' ingrandire un bracciale
    ingrassava il polso della persona.
  - La posa della testa viene dal fit di MediaPipe invece che da tre landmark.

CATALOGO
  La descrizione del prodotto sta sotto al prezzo, non piu' dopo il selettore
  di taglia e il bottone di acquisto.

DIAGNOSI APERTA
  Il difetto residuo del try-on 3D non e' l'occlusione. Il test lo mascherava:
  lanciava i raggi da un punto, cioe' in prospettiva, mentre le scene rendono
  con una OrthographicCamera. Corretto a raggi paralleli, il prisma copre
  davvero l'asta lontana; quella visibile sulla guancia e' la VICINA, e ci deve
  stare. Sembra sbagliata perche' sotto ortografica non si accorcia mai.

  Misurato: 1 unita' di scena vale 33.6 cm a 25 cm dalla camera e 76.5 cm a 60;
  la larghezza di riferimento deriva del +8.4% a 60 gradi di imbardata;
  l'errore sul ponte degli occhiali passa da 0.21 cm frontale a 1.49 cm a 40
  gradi. L'unita' di scena non e' metrica.

  La correzione e' lo spazio metrico di MediaPipe: PerspectiveCamera a 63
  gradi, near 1 cm, far 10000, matrice di posa 4x4 intera, asset in centimetri
  attorno al canonical face model. Prossimo rilascio.