Dariusz L
28af2d9e61
refactor: centralize CivitAI sidecar persistence
2026-08-07 02:54:02 +02:00
Dariusz L
e21672196d
refactor: share model path root validation
2026-08-07 01:20:14 +02:00
Dariusz L
1bba061a29
refactor: centralize filename extraction callsites
2026-08-07 01:15:45 +02:00
Dariusz L
069a588fb1
refactor: unify CivitAI metadata payloads
2026-08-06 23:06:14 +02:00
Dariusz L
62a4f597b7
refactor: unify workflow payload validation
2026-08-06 20:42:37 +02:00
Dariusz L
233731acce
refactor: unify local hash match enrichment
2026-08-06 20:35:38 +02:00
Dariusz L
6f35df33d6
refactor(core): reuse shared path containment check
2026-08-06 16:58:06 +02:00
Dariusz L
348f7ed8e0
refactor: unify model result builders
2026-08-06 16:20:31 +02:00
Dariusz L
07f5f5829a
fix: prevent download UI collisions for custom nodes and handle missing preview probes
2026-08-06 01:47:33 +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
2daa09032c
refactor: share download result status response
2026-08-05 05:14:22 +02:00
Dariusz L
e1870a130a
refactor: share metadata payload parsing
2026-08-05 04:39:33 +02:00
Dariusz L
eb86f647c8
refactor: unify model download URL collection
2026-08-05 02:47:37 +02:00
Dariusz L
6118ff9eeb
refactor workflow node traversal
2026-08-05 00:39:31 +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
3f0e753edd
feat: add SHA-256 search support and refresh HuggingFace author index
...
- Propagate sha256 through search orchestrator and providers
- Add hash-based lookup for CivitAI, HuggingFace, CivArchive, and LoRA Manager Archive
- Update search UI to accept SHA-256 hashes and refine link/name toggle styling
- Refresh HuggingFace author index metadata
2026-08-04 05:41:51 +02:00
Dariusz L
0f70d85f56
Add analysis_id support across workflow analysis pipeline
2026-08-03 20:01:02 +02:00
Dariusz L
7cba340de1
Unify hash request validation
2026-08-03 14:15:00 +02:00
Dariusz L
e1e725792b
Unify shared path normalization
2026-08-03 12:59:04 +02:00
Dariusz L
510aa570ce
Unify remote dead-link detection
2026-08-03 12:54:55 +02:00
Dariusz L
2559145fc1
Unify model category aliases across backend and UI
2026-08-03 12:52:20 +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
9daa3403e4
refactor: extract dynamic workflow widgets
2026-08-02 19:21:14 +02:00
Dariusz L
8cfb595f92
refactor: extract static workflow widgets
2026-08-02 19:10:13 +02:00
Dariusz L
4d65a4dc87
refactor(search): extract search support service
2026-08-02 03:08:50 +02:00
Dariusz L
3f0359e1f4
refactor(context): require hash and download dependencies
2026-08-02 03:04:29 +02:00
Dariusz L
0b2166ae58
refactor(context): require metadata service dependencies
2026-08-02 03:01:10 +02:00
Dariusz L
d43fd41d32
refactor(context): require loaded models dependencies
2026-08-02 02:59:38 +02:00
Dariusz L
b7a1b1cf07
refactor(context): require workflow service dependencies
2026-08-02 02:58:08 +02:00
Dariusz L
9cd8966d13
refactor(context): require directory service dependencies
2026-08-02 02:55:06 +02:00
Dariusz L
39a0606afa
refactor(context): require scanner service dependencies
2026-08-02 02:52:37 +02:00
Dariusz L
8744da536b
refactor(settings): extract settings routes into SettingsService
2026-08-02 02:48:51 +02:00
Dariusz L
3fdec8c24e
refactor(loaded): extract loaded model route handlers into service
2026-08-02 02:38:08 +02:00
Dariusz L
d8aed83e04
refactor(directories): extract directory route handlers into DirectoryService
2026-08-02 02:25:08 +02:00
Dariusz L
c2f44e7831
refactor(metadata): extract metadata route handlers into MetadataService and add tests
2026-08-02 02:14:10 +02:00
Dariusz L
627dd5a84a
refactor(scanner): extract scanner route handlers into ScannerService and add tests
2026-08-02 02:05:27 +02:00
Dariusz L
68321b7799
refactor(downloads): extract download route handlers into DownloadService and add tests
2026-08-02 01:50:27 +02:00
Dariusz L
e9ffb8f632
refactor(hash): extract hash route handlers into HashService and add tests
2026-08-02 01:38:01 +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
Dariusz L
380e5d4f9b
refactor: replace generic DependencyCallable with explicit Protocols for model services
2026-08-02 00:32:57 +02:00
Dariusz L
1dd1b50635
refactor: introduce typed dependency dataclasses for model services
...
Replace dynamic MODEL_SERVICE_DEPENDENCIES injection with frozen dataclasses
(CivitAISearchDependencies, CustomUrlDependencies, ModelDetailsDependencies)
to make service dependencies explicit and type-safe. Update model services to
construct via RouteContext, and add tests enforcing minimal dataclass fields.
2026-08-02 00:25:45 +02:00
Dariusz L
c247c4a7a4
refactor: split model_service into focused service classes
...
Break down the monolithic model_service into smaller, single-responsibility
services: CivitAISearchService, CustomUrlService, and ModelDetailsService.
Introduce ModelServiceDependencies base class to centralize RouteContext
dependency injection. Update model_service to act as a thin facade that
delegates to the specialized services. Add unit tests validating the new
service boundaries and basic request validation behavior.
2026-08-02 00:17:45 +02:00
Dariusz L
5fd9bc5802
refactor: extract model route handlers into ModelService
2026-08-02 00:10:25 +02:00
Dariusz L
be0794e36d
refactor: extract workflow route handlers into WorkflowService
2026-08-01 23:56:17 +02:00
Dariusz L
91fa8f391d
refactor(search): extract search orchestration into SearchService
2026-08-01 23:50:56 +02:00