{"id":"c0907","filename":"c0907_digigraf_vozac_flow_fix.dok.json","weise3_id":"","tip":"fix","naziv":"Digigraf vozač flow fix — 4 buga, E2E OK","kreator":"genesis","datum":"2026-05-17","snippet":"","status":"","prev_weise3":"","bunker_l":"#00d4ff","full":{"tip":"fix","naziv":"Digigraf vozač flow fix — 4 buga, E2E OK","verzija":"1.0","datum":"2026-05-17","sustav":"digigraf.online","sto_treba":"Robi u Požegi čeka sa 4 vozila. Flow nije radio — 0 aktivnih vozača.","bugovi":[{"id":"B1","naziv":"?fleet= QR deep link nije handled","opis":"digigraf.online/?fleet=CODE — kod nije pre-fillan u formu. Vozači konfuzirani.","fix":"app.js DOMContentLoaded: detect ?fleet= param, store u tg_pending_fleet, auto-show fleet join form s pre-fillom. Bonus: već-prijavljeni vozač s pending fleet auto-joina flotu."},{"id":"B2","naziv":"vozac.html _onGenesisToken ne postavlja tg_onboarded","opis":"Nakon Genesis SSO prijave redirect na / ali app.js traži tg_onboarded koji nije postavljan — vozač u krug.","fix":"Dodano tg_onboarded=1 i tg_mode=solo u _onGenesisToken()"},{"id":"B3","naziv":"vozac.html startSolo bez device auth sesije","opis":"Klik na 'Probaj bez prijave' → redirect / bez tokena → login loop.","fix":"startSolo() postala async, poziva GenesisAuth.login() (device fallback), postavlja tg_onboarded=1"},{"id":"B4","naziv":"dispo.py sys.path.insert ponavljanje (17x u funkcijama)","opis":"Dirty hack: sys.path.insert ponavljao se unutar svake funkcije koja treba DispoJob model.","fix":"Jednokratni modul-level import. Sve funkcije čiste."}],"e2e_test":{"device_auth":"OK","fleet_create":"OK - code: 1EB92F72","driver_join":"OK - vozac se vidi u statusu","fleet_status":"OK - ukupno_vozaca: 1","dispo_endpoint":"OK"},"commit":"db0b573","fajlovi":["tahograf-mvp/pwa/app.js","tahograf-mvp/pwa/vozac.html","api/dispo.py"],"napomena":"Robi može testirati odmah. Dispatcher: digigraf.online/dispatcher. Vozači: digigraf.online/vozac ili digigraf.online/?fleet=FLEET_CODE"}}