tipPLAN_ZA_CC
verzija1.0
statusSPREMAN_ZA_IZVRSENJE
prioritetP0_BLOKIRA_QR_KAMPANJU
kontekst{
"cilj": "Nakon ova 3 fixa: QR kod ide Stanku Stefanovu (FB grupa vozača). Vozač klikne → Genesis login → dashboard → šefu kaže 'uzmi dispo modul'. To je prodajni lijevak.",
"projekt": "/var/www/genesis/tahograf-mvp/",
"git_branch": "master",
"kljucni_fajlovi": {
"genesis_auth": "/var/www/genesis/tahograf-mvp/pwa/genesis-auth.js",
"app_js": "/var/www/genesis/tahograf-mvp/pwa/app.js",
"dispatcher_js": "/var/www/genesis/tahograf-mvp/pwa/dispatcher.js",
"tahograf_api": "/va
bug_1{
"naziv": "BroadcastChannel — popup se ne zatvara nakon login",
"fajl": "/var/www/genesis/tahograf-mvp/pwa/app.js",
"linija_problema": "~305: window.location.href = '/' — page reload, ali popup ostaje otvoren",
"simptom": "Vozač uspješno završi Genesis login u popup prozoru, ali popup ostaje otvoren. Korisnik mora ručno zatvoriti.",
"root_cause": "Nakon primanja GENESIS_AUTH_RESULT poruke, kod radi window.location.href = '/' ali NE zatvara popup prozor.",
"fix": {
"gdje": "app.j
bug_2{
"naziv": "Auth bridge — Genesis token → Tahograf API (poruke idu kao 'anonimno')",
"fajl": "/var/www/genesis/tahograf-mvp/api/tahograf.py",
"simptom": "Vozač je prijavljen s Genesis identity ali API pozivi na /api/v1/tahograf/* ne prepoznaju tko je on. Dispatcher vidi vozača kao 'anonimno'.",
"root_cause_istrazivanje": {
"korak_1": "Pročitaj kako tahograf.py validira Authorization header: grep -n 'Authorization\\|Bearer\\|token\\|get_current' /var/www/genesis/tahograf-mvp/api/tahog
bug_3{
"naziv": "SDK: getToken() + getWeise3() — provjera u dispatcher.js",
"vazna_napomena": "getToken() i getWeise3() POSTOJE u genesis-auth.js (linija 121-122). Bug je vjerojatno da dispatcher.js ne uključuje genesis-auth.js ili ima svoju verziju bez tih metoda.",
"istrazivanje": {
"korak_1": "grep -n 'getToken\\|getWeise3\\|GenesisAuth\\|genesis-auth' /var/www/genesis/tahograf-mvp/pwa/dispatcher.html | head -20",
"korak_2": "grep -n 'getToken\\|getWeise3\\|GenesisAuth' /var/www/gene
redoslijed_izvrsavanja[
"PRVO: Istraži Bug 3 (dispatcher.html includes) — 10 min čitanja",
"ZATIM: Fix Bug 3 ako treba (dodaj script tag) — 5 min",
"ZATIM: Istraži Bug 2 (tahograf.py auth) — 15 min čitanja",
"ZATIM: Fix Bug 2 (genesis token bridge) — 30-60 min",
"ZADNJE: Fix Bug 1 (popup.close()) — 5 min",
"TEST: End-to-end flow vozač → Genesis login → dispatcher vidi ime"
]
end_to_end_test{
"opis": "Nakon sva 3 fixa, testiraj ovaj flow:",
"koraci": [
"1. Otvori https://digigraf.online/ u inkognito prozoru",
"2. Klikni 'Prijava s Genesis ID-om'",
"3. Popup se otvori → logiraj se s testnim Genesis accountom",
"4. Popup se AUTOMATSKI zatvori (Bug 1 fix)",
"5. Dashboard se prikaže s ispravnim imenom/weise3_id (ne 'anonimno')",
"6. Otvori dispatcher.html → provjeri vidis li vozaca s imenom (Bug 2 fix)",
"7. U browser konzoli: window.GenesisAuth.getToken
commit_formatfix(digigraf): {opis} — feat(tahograf): {opis}
chain_entry_nakonKreiraj c0160_digigraf_auth_bridge_done.dok.json s rezultatima
sto_dolazi_nakon{
"qr_kod": "digigraf.online/vozac?ref=STANKO → QR kod za FB grupu",
"stanko_post": "Ivan kontaktira Stanka Stefanova s linkom",
"kruljac_usbc": "100 USB-C čitača → distribucija kroz Robi Cesar mrežu",
"cilj_godisnji": "1000 dispo ureda × EUR 49/mj = EUR 49.000/mj"
}
_chain_meta{
"prev_entry": "c0158_genesis_sso_c0150_sesija_20260508.dok.json",
"opp_seal": "WEISE3::c0159::AUTH_BRIDGE::FENIX2026",
"lanac_visina": 159
}