Tolleranze: nessuna validazione d'ordine ltl ≤ lwl ≤ nominale ≤ uwl ≤ utl #26

Closed
opened 2026-09-21 20:14:49 +00:00 by Adriano · 3 comments
Owner

GRAVITÀ: media
FILE: src/backend/models/api/task.py:12-39
COSA: limiti invertiti accettati: ogni misura diventa fail, Cp negativo, fascia di warning sparisce se uwl > utl.
INPUT: PUT /api/subtasks/1 {"utl":9,"ltl":8} con nominale 10 → 200.
VERIFICATO: script pytest → 200. I confronti ai bordi sono corretti (> e < stretti).

ORIGINE: revisione fable del 21/09/2026 su ramo V3.0.0, commit 8cc5e82. Documento completo: _output/2026-09-21-TieMeasureFlow-revisione.md su Wasabi.

GRAVITÀ: media FILE: src/backend/models/api/task.py:12-39 COSA: limiti invertiti accettati: ogni misura diventa fail, Cp negativo, fascia di warning sparisce se uwl > utl. INPUT: `PUT /api/subtasks/1 {"utl":9,"ltl":8}` con nominale 10 → 200. VERIFICATO: script pytest → 200. I confronti ai bordi sono corretti (`>` e `<` stretti). ORIGINE: revisione fable del 21/09/2026 su ramo `V3.0.0`, commit 8cc5e82. Documento completo: `_output/2026-09-21-TieMeasureFlow-revisione.md` su Wasabi.
Adriano added the bug label 2026-09-21 20:14:49 +00:00
Adriano added the assegnata:jeeg label 2026-09-21 20:23:07 +00:00
Author
Owner

⚡ jeeg — preso in carico 2026-09-21T20:23:08Z
ramo: lavoro/jeeg · capacità: docker, gpu, systemd

⚡ jeeg — **preso in carico** 2026-09-21T20:23:08Z ramo: `lavoro/jeeg` · capacità: docker, gpu, systemd
Author
Owner

ANALISI (passo 1) — ramo lavoro/jeeg, worktree ~/lavoro/TieMeasureFlow su jeeg, lotto A1

MODIFICHE: src/backend/models/api/task.py — validatore sui modelli di creazione quota: fra i campi non nulli deve valere ltl ≤ lwl ≤ nominal ≤ uwl ≤ utl → 422. Per SubtaskUpdate (parziale) la verifica va fatta nel router src/backend/api/routers/tasks.py update_subtask sui valori risultanti (esistenti + nuovi) prima del flush → 422.
TEST: utl < ltl → 422; uwl > utl → 422; update parziale che inverte → 422; tolleranza unilaterale (solo utl) → ok.

ANALISI (passo 1) — ramo `lavoro/jeeg`, worktree `~/lavoro/TieMeasureFlow` su jeeg, lotto A1 MODIFICHE: src/backend/models/api/task.py — validatore sui modelli di creazione quota: fra i campi non nulli deve valere ltl ≤ lwl ≤ nominal ≤ uwl ≤ utl → 422. Per `SubtaskUpdate` (parziale) la verifica va fatta nel router src/backend/api/routers/tasks.py `update_subtask` sui valori risultanti (esistenti + nuovi) prima del flush → 422. TEST: utl < ltl → 422; uwl > utl → 422; update parziale che inverte → 422; tolleranza unilaterale (solo utl) → ok.
Author
Owner

Soluzione

ESITO: fatto
COSA: Ordine ltl ≤ lwl ≤ nominale ≤ uwl ≤ utl validato alla creazione (modello) e all'update parziale sui valori risultanti (router) → 422. Prova originale rilanciata: PUT utl 9 / ltl 8 → 422.
COMMIT (ramo lavoro/jeeg, unito su V3.0.0 a d483fa1): 77d95fd
PROVA: uv run --extra server --extra client --extra dev pytest -q → 622 passed, 4 skipped (erano 391); visione su Python 3.13 → 16 passed (erano 8).

**Soluzione** ESITO: fatto COSA: Ordine ltl ≤ lwl ≤ nominale ≤ uwl ≤ utl validato alla creazione (modello) e all'update parziale sui valori risultanti (router) → 422. Prova originale rilanciata: PUT utl 9 / ltl 8 → 422. COMMIT (ramo lavoro/jeeg, unito su V3.0.0 a d483fa1): 77d95fd PROVA: `uv run --extra server --extra client --extra dev pytest -q` → 622 passed, 4 skipped (erano 391); visione su Python 3.13 → 16 passed (erano 8).
Adriano removed the assegnata:jeeg label 2026-09-21 21:56:32 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Adriano/TieMeasureFlow#26