{"id":"c0096","filename":"c0096_cc2_server_dispatcher_plan.dok.json","weise3_id":"3d3ff97d99d51eaff1d5788757489d1991cf17b3c47fa5eea7c4a35b4aae5f02","tip":"plan","naziv":"CC2 Execution Plan — Server / Dispatcher Layer","kreator":"genesis-cc","datum":"2026-05-07","snippet":"","status":"","prev_weise3":"","bunker_l":"#4061ff","full":{"tip":"plan","naziv":"CC2 Execution Plan — Server / Dispatcher Layer","weise3_id":"3d3ff97d99d51eaff1d5788757489d1991cf17b3c47fa5eea7c4a35b4aae5f02","nastao":"2026-05-07T00:00:00Z","datum":"2026-05-07","kreator":"genesis-cc","kontekst":"digigraf","izolacija":{"dozvoljeno":["/var/www/genesis/api/","/var/www/genesis/tahograf-mvp/dispatcher.html (append only)","/var/www/genesis/tahograf-mvp/dispatcher.js (append only)","/var/www/genesis/schema_dokarh/genesis/ (chain entries c0104-c0114)","/var/www/genesis/plans/"],"zabranjeno":["/var/www/genesis/tahograf-mvp/pwa/ ← CC1 territory","pwa/edd-viewer.js, pwa/ghost-driver.js ← CC1 territory"]},"zadaci":[{"id":"T1","naziv":"Twilio SMS Fallback Endpoint","fajl":"api/sms_fallback.py (novi)","prioritet":"N+2","chain":"c0104","opis":"6 komandi, HMAC validacija, SOS bypass, TwiML reply, SMSEvent model (ZAKON 27)"},{"id":"T2","naziv":"ComplianceRecord DokArh Type","fajl":"api/compliance.py (novi)","prioritet":"N+2","chain":"c0105","opis":"Model s VIVUS lifecycle, expires_at, Celery cleanup (ZAKON 27+28), /compliance/status/{vehicle_id} endpoint"},{"id":"T3","naziv":"IMI SOAP Proxy Stub","fajl":"api/imi_proxy.py (novi)","prioritet":"N+2","chain":"c0106","opis":"Zeep klijent server-side, Celery async task, stub dok EU Login M2M credentials ne stignu (3-6 mj.)"},{"id":"T4","naziv":"Kabotaža State Machine","fajl":"api/kabotaza.py (novi)","prioritet":"N+3","chain":"c0107","opis":"5-state FSM: IDLE→INTERNATIONAL→CABOTAGE_1/2/3→COOLING_OFF, hard blokada na /kabotaza/check"},{"id":"T5","naziv":"Return of Vehicle Tracker","fajl":"api/return_of_vehicle.py (novi)","prioritet":"N+4","chain":"c0108","opis":"VehicleReturnClock model, 8-tjedni sat, 4 statusa 🟢🟠🔴⚫, trigger na border crossing"},{"id":"T6","naziv":"Cabotage Bundle PDF Generator","fajl":"api/kabotaza_bundle.py (novi)","prioritet":"N+3","chain":"c0109","opis":"ReportLab, originalni CMR + 3 kabotažna CMR, BPZ-9 sealed, BAG inspect ready"},{"id":"T7","naziv":"Alfa Mule Health.json Extension","fajl":"api/mule.py ili api/borg_health.py","prioritet":"N+4","chain":"c0110","opis":"alfa_mule:true flag, upload_available_mb, trusted_fleets, wifi_direct_ssid u health.json"},{"id":"T8","naziv":"Compliance Shield Dispatcher UI","fajl":"dispatcher.html + dispatcher.js (append)","prioritet":"N+3","chain":"c0111","opis":"Per-vehicle IMI/KAB/RET badge u fleet table, pull od /api/compliance/status/, emoji status"},{"id":"T9","naziv":"Ghost Driver Compliance Pre-check","fajl":"api/tahograf.py (modifikacija ghost_simulate)","prioritet":"N+2","chain":"c0112","opis":"Kabotaža + Return check PRIJE simulacije, compliance_warnings u response"},{"id":"T10","naziv":"Dispatcher Confidence Tier UI","fajl":"dispatcher.js (append)","prioritet":"N+2","chain":"c0113","opis":"🟢🔵🟡🟠🔴 per vehicle, last_seen age determines tier, 5 tiers matching degradation stack"},{"id":"T11","naziv":"GENESIS_ZAKON.md + ZAKON.py Update","fajl":"GENESIS_ZAKON.md + ZAKON.py","prioritet":"ODMAH","chain":"c0114","opis":"Dodati ZAKON 33/34/35/36 tekst i ZAKON.py check funkcije"}],"chain_numeracija":{"c0104":"SMS Fallback server","c0105":"ComplianceRecord model","c0106":"IMI SOAP proxy","c0107":"Kabotaža state machine","c0108":"Return of Vehicle","c0109":"Cabotage Bundle PDF","c0110":"Alfa Mule extension","c0111":"Compliance Shield dispatcher","c0112":"Ghost compliance pre-check","c0113":"Dispatcher confidence tier","c0114":"ZAKON 33-36 update"},"napomene":{"cc1_chain_range":"c0097-c0103 su CC1 territory — ne pisati u taj raspon","imi_eu_login":"EU Login M2M registracija je administrativni preduvjet — implementirati stub, aktivirati kad stignu credentials","kabotaza_hard_block":"Hard UI blokada, ne advisory — vozač FIZIČKI ne može kreirati novu CMR"},"plan_md":"/var/www/genesis/plans/cc2_server_dispatcher.md","url":"https://genesis.limit-connect.com/v/3d3ff97d99d51eaff1d5788757489d1991cf17b3c47fa5eea7c4a35b4aae5f02"}}