Optimize backend search and evaluation pipeline
build-push / docker (push) Has been cancelled

This commit is contained in:
AI Assistant
2026-03-16 16:13:43 +09:00
parent c5f6c611ec
commit 60fdd7842c
7 changed files with 371 additions and 10 deletions
+14
View File
@@ -255,6 +255,20 @@
- backend debug broadcasts
## Recent Change Log
- Date: `2026-03-16`
- What changed:
- Added in-process response caching for repeated SearXNG requests and for source fetches used during Envato / Artgrid enrichment.
- Added in-process Gemini visual cache for fetched thumbnails and extracted preview frames so repeated candidate evaluation no longer re-downloads the same asset or reruns `ffmpeg` every time.
- Tightened backend tests to cover the new cache helpers.
- Why it changed:
- Even after reducing query fan-out, repeated search passes and Gemini reevaluation were still paying duplicate network and media-processing cost inside the same running backend.
- How it was verified:
- `go test ./...`
- `bash scripts/selftest.sh`
- What is still risky or incomplete:
- These caches are process-local and TTL-based, so they do not survive container restarts and can still grow until expiry under heavy query diversity.
- Cache invalidation is intentionally simple; if upstream preview assets change rapidly, stale data can be served for a few minutes.
- Date: `2026-03-16`
- What changed:
- Result modal layout was rebuilt to match a top `16:9` embedded viewer with bottom-left full AI note and bottom-right action panel.