← DokArh Portal
IMPLEMENTACIJA

Slim klijenti + Redis backend — POS asimilacija

Kreator: Ivan Seki + CC Datum: 2026-05-31 Status:
WeisE3™ ID: w3_c0c457700681be1dce302ec8bab7c1484ccae359
tipIMPLEMENTACIJA
rednic1209
sto_je{ "kratko": "Zamjena debelih JS klijenata s tankim fetch-only klijentima. Sva logika premjestena na server. ZAKON 41.", "princip": "Piranha analiza: stari JS = samostalni mozgovi, 0 fetch poziva. Novi slim JS = ciste fetch ljuske. Server je jedina istina.", "zakon_41": "Nema vanjskih SDK-ova. Nema lokalnog state machinea. Browser-native fetch i Web Speech API." }
slim_klijenti{ "genesis_kernel_slim.js": { "zamjenjuje": "genesis_kernel.js", "uklonjeno": [ "lokalni h256", "lokalna Krunica", "lokalna Sesija", "offline state machine" ], "api": { "Puz.udi": "POST /api/v1/pos/auth/verify → token, weise3_id, trust", "Puz.udi_offline": "POST /api/v1/pos/auth/verify s tprg_token", "Sesija.puls": "GET /api/v1/pos/sesija/puls → stanje, preostalo_s", "Sesija.atom": "POST /api/v1/pos/krunica/atom → redni, hash",
server_backend{ "pos_kernel.py": { "lokacija": "/var/www/fenix-v4/api/v1/pos_kernel.py", "server": "MAR fenix-v4 port 8005", "framework": "FastAPI async, Python 3.13", "endpointi": 10, "redis_db": 5, "redis_namespace": "fenix4:pos:", "redis_kljucevi": { "fenix4:pos:sesija:{token}": "JSON sesije, TTL 8h (28800s)", "fenix4:pos:krunica:{wid}": "LIST atoma smjene, SHA3-256 lanac", "fenix4:pos:tura:{id}": "JSON stanice ture", "fenix4:pos:tureSmjene:{wid}": "SET
pos_adaptive_patch{ "fajl": "templates/pos/adaptive.html", "dodano": [ "slim script tagovi: genesis_kernel_slim, ai_promatrac_slim, vozac_vertikala_slim, eho_ai_slim", "smjena bar UI: weise3_id, preostalo vrijeme, Produzi i Predaj gumbi", "mic gumb: Web Speech API, ZAKON 41, hr-HR locale", "_posInit: sessionStorage pos_slim_token, Puz.udi pri startu", "_smjenaPuls: interval 60s, Sesija.puls azurira UI", "_micToggle: SpeechRecognition → ai.slusaj → dodajArtikl" ] }
nginx_routing{ "MAR_dodano": [ "location /api/v1/pos/ → proxy_pass http://127.0.0.1:8005", "location /api/v1/eho/ → proxy_pass http://127.0.0.1:8005" ], "napomena": "Specificni blokovi moraju biti ISPRED catch-all /api/v1/ → :8010" }
arhitekturalne_odluke[ { "odluka": "Redis db=5 za POS i EHO", "razlog": "Izolacija od fina db=1 i genesis/brsljani db=4" }, { "odluka": "UMD format za slim JS", "razlog": "Drop-in zamjena: isti interface kao debeli klijenti, bez promjena na stranicama" }, { "odluka": "X-Pos-Token u HTTP headeru", "razlog": "ZAKON 29: token nije u URL-u ni logu" }, { "odluka": "EHO API na fenix-v4 MAR, ne samo EU genesis", "razlog": "JS slim klijent koristi relativne putanje. POS je na li
testovi_provedeni[ { "opis": "auth/verify, Redis sesija kreirana", "ok": true }, { "opis": "krunica/atom, SHA3-256 lanac u Redis", "ok": true }, { "opis": "sesija/predaj, paket atoma vraca se za POSB prijelaz", "ok": true }, { "opis": "tura planiraj+pomakni 4x, ALIBI atom pri ISPORUCENO", "ok": true }, { "opis": "EHO 3-agentni lanac TVRDIM→POTVRDJUJEM→DOKAZUJEM", "ok": true }, { "opis": "EHO multi-worker Redis shared state", "ok": true },
sesija2026-05-31 — piranha analiza + 10 endpointa + 4 slim JS + Redis backend + nginx routing
krunica_hashd33f39b76690cf72f46efe9c68e6a03bfd92cd17e1ab1b19654f8a967e9ca0fb