12 Commits
Author SHA1 Message Date
Dariusz L ddc5333bd2 refactor: unify model data contracts 2026-08-21 23:10:26 +02:00
Dariusz L 348f7ed8e0 refactor: unify model result builders 2026-08-06 16:20:31 +02:00
Dariusz L 7a219bd2d2 refactor: unify primary model file selection 2026-08-05 14:29:02 +02:00
Dariusz L 24d0dae0e0 refactor: unify CivitAI result payloads 2026-08-05 14:24:07 +02:00
Dariusz L 5e85fdb8da perf: optimize LoRA Manager archive hash search and guard SHA-256 fallback
- Skip name fallback in search provider runner when request already has sha256
- Add direct SQLite hash lookup in lora_manager_archive with result caching
- Add timing and logging for archive search
- Refresh HuggingFace author index metadata
- Add tests for hash search and provider fallback behavior
2026-08-04 06:01:08 +02:00
Dariusz L 428d0c0b46 test: cover provider status aggregation 2026-08-02 22:18:15 +02:00
Dariusz L c0abf02040 refactor: normalize CivArchive diagnostics 2026-08-02 22:15:53 +02:00
Dariusz L 0531f4e9b2 feat: expose CivArchive provider status 2026-08-02 22:00:51 +02:00
Dariusz L a6634a5f61 test(search): add SearchOrchestrator component tests 2026-08-02 01:24:41 +02:00
Dariusz L 1f82523bef test(search): add search service component tests, coverage config, and dev dependencies 2026-08-02 01:15:45 +02:00
Dariusz L b9054f0d22 refactor(search): centralize route context dependency resolution in SearchDependencies 2026-08-02 01:04:10 +02:00
Dariusz L b4b03bb335 refactor(search): extract orchestrator, providers, and cache from SearchService
Replace the 1095-line monolithic SearchService with a thin facade that
delegates to SearchOrchestrator. Split the implementation into three
focused modules:

- search_orchestrator.py: request parsing, provider coordination, and
  response construction
- search_providers.py: per-source execution, progress callbacks, and
  async task creation
- search_cache.py: timestamping and stable cache stamping for results

Add unit tests for the new components in
tests/test_search_service_components.py. Preserve the existing HTTP
route behavior by keeping SearchService.search_sources as the stable
route-facing API.
2026-08-02 00:56:18 +02:00