{"id":"c1224","filename":"c1224_spore1_kamera_integracija.dok.json","weise3_id":"","tip":"implementacija","naziv":"SPORE-1 kamera integracija — BackgroundTasks + Celery trigger","kreator":"genesis","datum":"","snippet":"","status":"","prev_weise3":"","bunker_l":"#00d4ff","full":{"tip":"implementacija","naziv":"SPORE-1 kamera integracija — BackgroundTasks + Celery trigger","sto_treba":"Integrirati SPORE-1 destilaciju u dokarh_kamera ingest flow bez usporavanja HTTP response-a","faze":[{"naziv":"KORAK 1 — Analiza kamera endpointa","status":"DONE","opis":"Pročitan dokarh_kamera.py — 4 ingest endpointa, SQLAlchemy AsyncSession, JSONResponse pattern"},{"naziv":"KORAK 2 — BackgroundTasks integracija u Genesis","status":"DONE","opis":"Patched dokarh_kamera.py: dodano BackgroundTasks u /ingest, /ingest/predavanje, /ingest/url, /ingest/lidar. Response odmah vraca spore1=queued. Helper _spore1_background koristi istu SQLAlchemy AsyncSession."},{"naziv":"KORAK 3 — spore1_tasks.py na MAR","status":"DONE","opis":"Kreiran /var/www/fenix-v4/tasks/spore1_tasks.py — Celery shared_task destiliraj_zapis, queue=scheduled, max_retries=3, poziva Genesis POST /api/v1/kamera/spore1/{zapis_id}"},{"naziv":"KORAK 4 — spore1_trigger endpoint","status":"DONE","opis":"Dodan POST /api/v1/kamera/spore1/{zapis_id} — sync trigger za Celery i direktni poziv. Testirano: spore1_run vratio sve_ok=true, R1-R9 OK, lambda_id=2, 60ms"},{"naziv":"KORAK 5 — MAR worker queue fix","status":"DONE","opis":"celery-fenix-v4.service patched: --queues=default,scheduled,high_priority,archive,media. Restart OK, worker aktivan."},{"naziv":"Fix lambda_lanci konflikat","status":"DONE","opis":"Stara lambda_lanci tablica ima drugačiju shemu (WeisE3λ ledger). Kreirana nova spore1_lambda_lanci tablica. spore1_runner.py patched da koristi spore1_lambda_lanci. DDL razdvojen na 3 zasebna execute() poziva jer asyncpg ne podrzava multi-statement prepared statements."}],"provjera":{"ingest_url_response":"spore1=queued u response","spore1_trigger_9":"sve_ok=true, R1-R9 OK, lambda_id=2, 60ms","ingest_latency":"99ms (bez blokiranja na SPORE-1)","celery_mar":"active (running), slusa archive,media,scheduled,default,high_priority","genesis_eu":"active (running), 2 workers"},"zakon":["ZAKON_3","ZAKON_27","ZAKON_37"],"fajlovi":["/var/www/genesis/api/dokarh_kamera.py","/var/www/genesis/services/spore1_runner.py","/var/www/fenix-v4/tasks/spore1_tasks.py","/etc/systemd/system/celery-fenix-v4.service"],"weise3_id":"","bunker_seal_id":"","created_at":"2026-06-01T14:38:00Z"}}