Dati di fiera: utenti e progetti dimostrativi con misure per le statistiche #85

Closed
opened 2026-10-23 21:44:19 +00:00 by Adriano · 4 comments
Owner

COSA: script di seed per il PC fiera (DESKTOP-RABEHJJ, pacchetto Windows 3.0.0, SQLite): utenti per la fiera e due o tre ricette dimostrative con quote, tolleranze e storico di misure realistico (settimane, deriva, qualche fuori tolleranza) per carte di controllo e statistiche; una ricetta con task dxf_compare per la demo visione.
PERCHÉ: Adriano 23/10 sera, fiera A&T Vicenza 27-29/10.
CRITERIO DI FATTO: sul PC fiera le pagine statistiche mostrano carte e indici sui dati demo; gli utenti entrano; lo script è ripetibile.

COSA: script di seed per il PC fiera (DESKTOP-RABEHJJ, pacchetto Windows 3.0.0, SQLite): utenti per la fiera e due o tre ricette dimostrative con quote, tolleranze e storico di misure realistico (settimane, deriva, qualche fuori tolleranza) per carte di controllo e statistiche; una ricetta con task dxf_compare per la demo visione. PERCHÉ: Adriano 23/10 sera, fiera A&T Vicenza 27-29/10. CRITERIO DI FATTO: sul PC fiera le pagine statistiche mostrano carte e indici sui dati demo; gli utenti entrano; lo script è ripetibile.
Adriano added the sviluppoassegnata:daitarn labels 2026-10-23 21:44:45 +00:00
Author
Owner

🔵 daitarn — preso in carico 2026-10-23T21:44:43Z
ramo: lavoro/daitarn · capacità: build-windows, gpu

🔵 daitarn — **preso in carico** 2026-10-23T21:44:43Z ramo: `lavoro/daitarn` · capacità: build-windows, gpu
Author
Owner

ANALISI (Opus, claude-opus-5-5) — gitea:Adriano/TieMeasureFlow#85
RAMO: lavoro/daitarn-tmf-seedfiera (da origin/V3.0.0 ae2353f = tag v3.0.0-rc3), worktree C:/Users/Adriano/lavoro/TieMeasureFlow-seedfiera
CONTESTO: PC fiera DESKTOP-RABEHJJ con il pacchetto Windows 3.0.0-rc3 (exe Nuitka, SQLite su file in %ProgramData%\Tielogic\TieMeasureFlow, migrazioni Alembic all'avvio: vedi packaging/windows/avvio.py). Installazione nuova: nessun utente, l'interfaccia mostra la procedura di setup (/api/setup). Non si può lanciare Python dentro l'exe: il seed gira su daitarn contro una COPIA del file SQLite (TMF fermo sul PC), poi il file torna sul PC. Questo lo fa chi coordina, non tu.
COSA: nuovo scripts/seed_fiera.py (modello: scripts/seed_collaudo.py, stesse sessioni async e ORM) che, dato --db <percorso file sqlite>, popola:

  1. Utenti (password con auth_service, come seed_collaudo; rispettare le regole di lunghezza/complessità del backend):
    • adriano / !Adriano77 — admin (tutti i ruoli che servono per amministrare e creare ricette);
    • maker / Fiera2026! — Maker;
    • capoturno / Fiera2026! — supervisore/capoturno (il ruolo che seed_collaudo usa per il capoturno);
    • operatore / Fiera2026! — operatore;
    • nomi completi leggibili. Se il setup iniziale del backend richiede altro oltre a un admin (flag di setup completato, impostazioni azienda, stazione di default ST-DEFAULT o Config.STATION_CODE del pacchetto), farlo in modo che al primo avvio NON compaia la procedura di setup. Verificare in src/backend/api/routers/setup.py cosa decide «setup fatto».
  2. Stazione: quella che usa il pacchetto (leggere avvio.py / config per STATION_CODE); camera_url = http://127.0.0.1:8765, camera_source = camera:601020 (Itala sul PC fiera).
  3. Ricette dimostrative assegnate alla stazione, nomi italiani realistici da officina meccanica di precisione:
    • FIERA-FLANGIA «Flangia Ø80»: 5-6 quote con nominale e tolleranze (diametri, spessore, interasse fori, planarità...), misure con calibro/tastiera.
    • FIERA-ALBERO «Albero rettificato»: 4-5 quote, tolleranze strette.
    • FIERA-DXF «Profilo DXF (visione)»: un task dxf_compare (camera_measure se serve) per la demo visione; NIENTE ricetta di visione caricata (si crea in fiera dal pannello «Crea ricetta da DXF»).
  4. Storico misure per le due ricette meccaniche: circa 4 settimane fino a ieri, turni lavorativi (lun-ven 8-17), lotti/seriali coerenti, 150-300 pezzi per ricetta; distribuzioni normali centrate vicino al nominale con Cpk diversi per quota (una quota capace ~1,67, una al limite ~1,0, una con deriva lenta nell'ultima settimana, 1-3% fuori tolleranza su una quota), così carte di controllo e indici mostrano qualcosa di interessante. Usare i campi che le pagine statistiche e SPC leggono davvero (leggere src/backend/api/routers/statistics.py, services, models measurement/production) e i ProductionRun/ProductionEvent se servono perché le misure compaiano. Seme casuale fisso (ripetibile).
  5. Opzioni: --replace (toglie solo i dati FIERA-* e i loro misurati, poi rifà), --dry-run; idempotente sugli utenti (se esistono, aggiorna password e ruoli).
  6. Header del file: cosa fa / come si usa / da cosa dipende, in italiano.
    TEST:
  • test nuovo src/backend/tests/test_seed_fiera.py (o accanto ai test esistenti): crea un SQLite temporaneo, alembic upgrade head, esegue il seed, verifica: utenti con ruoli giusti e login riuscito (auth_service), setup risulta completato (GET /api/setup come lo legge il frontend), 3 ricette assegnate alla stazione, misure nel numero atteso, e che l'endpoint delle statistiche di almeno una quota restituisca media, sigma, Cp/Cpk numerici. Secondo run senza --replace non duplica; con --replace rifà.
  • uv run pytest src/backend/tests → nessun test nuovo rosso; quelli già rossi prima (baseline) elencati nel rapporto.
  • Prova manuale: comando esatto per eseguire il seed su un file sqlite qualsiasi, da scrivere nel rapporto.
    NON TOCCARE: src/** fuori dal file di test nuovo, migrazioni, packaging/, vendor/, scripts/seed_collaudo.py.
ANALISI (Opus, claude-opus-5-5) — gitea:Adriano/TieMeasureFlow#85 RAMO: lavoro/daitarn-tmf-seedfiera (da origin/V3.0.0 ae2353f = tag v3.0.0-rc3), worktree C:/Users/Adriano/lavoro/TieMeasureFlow-seedfiera CONTESTO: PC fiera DESKTOP-RABEHJJ con il pacchetto Windows 3.0.0-rc3 (exe Nuitka, SQLite su file in %ProgramData%\Tielogic\TieMeasureFlow, migrazioni Alembic all'avvio: vedi packaging/windows/avvio.py). Installazione nuova: nessun utente, l'interfaccia mostra la procedura di setup (/api/setup). Non si può lanciare Python dentro l'exe: il seed gira su daitarn contro una COPIA del file SQLite (TMF fermo sul PC), poi il file torna sul PC. Questo lo fa chi coordina, non tu. COSA: nuovo `scripts/seed_fiera.py` (modello: scripts/seed_collaudo.py, stesse sessioni async e ORM) che, dato `--db <percorso file sqlite>`, popola: 1. Utenti (password con auth_service, come seed_collaudo; rispettare le regole di lunghezza/complessità del backend): - `adriano` / `!Adriano77` — admin (tutti i ruoli che servono per amministrare e creare ricette); - `maker` / `Fiera2026!` — Maker; - `capoturno` / `Fiera2026!` — supervisore/capoturno (il ruolo che seed_collaudo usa per il capoturno); - `operatore` / `Fiera2026!` — operatore; - nomi completi leggibili. Se il setup iniziale del backend richiede altro oltre a un admin (flag di setup completato, impostazioni azienda, stazione di default ST-DEFAULT o Config.STATION_CODE del pacchetto), farlo in modo che al primo avvio NON compaia la procedura di setup. Verificare in src/backend/api/routers/setup.py cosa decide «setup fatto». 2. Stazione: quella che usa il pacchetto (leggere avvio.py / config per STATION_CODE); `camera_url` = `http://127.0.0.1:8765`, `camera_source` = `camera:601020` (Itala sul PC fiera). 3. Ricette dimostrative assegnate alla stazione, nomi italiani realistici da officina meccanica di precisione: - FIERA-FLANGIA «Flangia Ø80»: 5-6 quote con nominale e tolleranze (diametri, spessore, interasse fori, planarità...), misure con calibro/tastiera. - FIERA-ALBERO «Albero rettificato»: 4-5 quote, tolleranze strette. - FIERA-DXF «Profilo DXF (visione)»: un task `dxf_compare` (camera_measure se serve) per la demo visione; NIENTE ricetta di visione caricata (si crea in fiera dal pannello «Crea ricetta da DXF»). 4. Storico misure per le due ricette meccaniche: circa 4 settimane fino a ieri, turni lavorativi (lun-ven 8-17), lotti/seriali coerenti, 150-300 pezzi per ricetta; distribuzioni normali centrate vicino al nominale con Cpk diversi per quota (una quota capace ~1,67, una al limite ~1,0, una con deriva lenta nell'ultima settimana, 1-3% fuori tolleranza su una quota), così carte di controllo e indici mostrano qualcosa di interessante. Usare i campi che le pagine statistiche e SPC leggono davvero (leggere src/backend/api/routers/statistics.py, services, models measurement/production) e i ProductionRun/ProductionEvent se servono perché le misure compaiano. Seme casuale fisso (ripetibile). 5. Opzioni: `--replace` (toglie solo i dati FIERA-* e i loro misurati, poi rifà), `--dry-run`; idempotente sugli utenti (se esistono, aggiorna password e ruoli). 6. Header del file: cosa fa / come si usa / da cosa dipende, in italiano. TEST: - test nuovo `src/backend/tests/test_seed_fiera.py` (o accanto ai test esistenti): crea un SQLite temporaneo, `alembic upgrade head`, esegue il seed, verifica: utenti con ruoli giusti e login riuscito (auth_service), setup risulta completato (GET /api/setup come lo legge il frontend), 3 ricette assegnate alla stazione, misure nel numero atteso, e che l'endpoint delle statistiche di almeno una quota restituisca media, sigma, Cp/Cpk numerici. Secondo run senza --replace non duplica; con --replace rifà. - `uv run pytest src/backend/tests` → nessun test nuovo rosso; quelli già rossi prima (baseline) elencati nel rapporto. - Prova manuale: comando esatto per eseguire il seed su un file sqlite qualsiasi, da scrivere nel rapporto. NON TOCCARE: src/** fuori dal file di test nuovo, migrazioni, packaging/**, vendor/**, scripts/seed_collaudo.py.
Adriano removed the assegnata:daitarn label 2026-10-24 03:44:58 +00:00
Author
Owner

🤖 goldrake — liberata nessun segno di daitarn da 6.0 h — 2026-10-24T03:44:58Z

🤖 goldrake — **liberata** nessun segno di daitarn da 6.0 h — 2026-10-24T03:44:58Z
Author
Owner

Soluzione

ESITO: fatto (chiusa su richiesta di Adriano del 06/11/2026)
RIF: gitea:Adriano/TieMeasureFlow#85
COSA: script di seed per il PC fiera: utenti, stazione, ricette FIERA-FLANGIA, FIERA-ALBERO (circa 4 settimane di storico) e FIERA-DXF.
VERIFICATO: scripts/seed_fiera.py su origin/V3.0.0 8c361c1 (header: opzioni --db, --replace, --dry-run, --fine; utenti idempotenti).
USO: 24/10 dati caricati sul PC fiera DESKTOP-RABEHJJ: utenti adriano, maker, capoturno, operatore (password decise da Adriano, scritte nella costante UTENTI dello script), ricette FIERA-FLANGIA 1210 misure e FIERA-ALBERO 764 misure, FIERA-DXF vuota; login provato per i quattro utenti (scheda AI-OS TieMeasureFlow, voce 24/10).
DOPO: 04/11 PC diventato Sacet001; dati della fiera salvati in wasabi://AI-OS/projects/azienda/clienti/Ricerca_e_Misure/TieMeasureFlow/fiera-vicenza/tmf-dati-fiera-20261104.zip.

**Soluzione** ESITO: fatto (chiusa su richiesta di Adriano del 06/11/2026) RIF: gitea:Adriano/TieMeasureFlow#85 COSA: script di seed per il PC fiera: utenti, stazione, ricette FIERA-FLANGIA, FIERA-ALBERO (circa 4 settimane di storico) e FIERA-DXF. VERIFICATO: scripts/seed_fiera.py su origin/V3.0.0 8c361c1 (header: opzioni --db, --replace, --dry-run, --fine; utenti idempotenti). USO: 24/10 dati caricati sul PC fiera DESKTOP-RABEHJJ: utenti adriano, maker, capoturno, operatore (password decise da Adriano, scritte nella costante UTENTI dello script), ricette FIERA-FLANGIA 1210 misure e FIERA-ALBERO 764 misure, FIERA-DXF vuota; login provato per i quattro utenti (scheda AI-OS TieMeasureFlow, voce 24/10). DOPO: 04/11 PC diventato Sacet001; dati della fiera salvati in wasabi://AI-OS/projects/azienda/clienti/Ricerca_e_Misure/TieMeasureFlow/fiera-vicenza/tmf-dati-fiera-20261104.zip.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Adriano/TieMeasureFlow#85