Will Miao
1dc189eb39
feat(metadata): implement fallback provider strategy for deleted models
...
Refactor metadata sync service to use a prioritized provider fallback system when handling deleted CivitAI models. The new approach:
1. Attempts civarchive_api provider first for deleted models
2. Falls back to sqlite provider if archive DB is enabled
3. Maintains existing default provider behavior for non-deleted models
4. Tracks provider attempts and errors for better debugging
This improves reliability when fetching metadata for deleted models by trying multiple sources before giving up, and provides clearer error messages based on which providers were attempted.
2025-10-11 17:44:38 +08:00
Will Miao
1e8bd88e28
feat(metadata): improve model ID redirect logic and provider ordering
...
- Fix CivArchive model ID redirect logic to only follow redirects when context points to original model
- Rename CivitaiModelMetadataProvider to CivArchiveModelMetadataProvider for consistency
- Reorder fallback metadata providers to prioritize Civitai API over CivArchive API for better metadata quality
- Remove unused asyncio import and redundant logging from metadata sync service
2025-10-11 16:11:13 +08:00
Will Miao
1f60160e8b
feat(civarchive_client): enhance request handling and context parsing
...
Introduce `_request_json` method for async JSON requests and improved error handling. Add static methods `_normalize_payload`, `_split_context`, `_ensure_list`, and `_build_model_info` to parse and normalize API responses. These changes improve the robustness of the CivArchiveClient by ensuring consistent data structures and handling potential API response issues gracefully.
2025-10-11 13:07:29 +08:00
pixelpaws
8f5e134d3e
fix: skip redundant hydration in metadata sync service
2025-10-10 08:49:54 +08:00
pixelpaws
ef03a2a917
fix(metadata): hydrate cached records before saving
2025-10-10 08:30:51 +08:00
Will Miao
c9a65c7347
feat(metadata): implement model data hydration and enhance metadata handling across services, fixes #547
2025-10-09 22:15:07 +08:00
Will Miao
f542ade628
feat(civitai): implement URL rewriting for Civitai previews and enhance download handling, fixes #499
2025-10-09 17:54:37 +08:00
Will Miao
2b6910bd55
feat(misc): mark model versions in library for Civitai user models
2025-10-09 15:23:42 +08:00
pixelpaws
cf357b57fc
feat(scanner): index cached models by version id
2025-10-09 13:50:44 +08:00
pixelpaws
8cf762ffd3
feat(misc): add civitai user model lookup
2025-10-09 11:49:41 +08:00
pixelpaws
8e51f0f19f
fix(civitai): improve model version retrieval
2025-10-09 10:56:25 +08:00
pixelpaws
c53fa8692b
refactor(settings): lazily initialize manager
2025-10-08 08:56:57 +08:00
Will Miao
3118f3b43c
feat(graph): enhance node handling with graph identifiers and improve metadata updates, see #408 , #538
2025-10-07 23:22:38 +08:00
Will Miao
686ba5024d
fix(tests): add loadingManager mocks in settingsManager tests
2025-10-06 08:24:58 +08:00
pixelpaws
5e53d76f44
fix(model-card): throttle preview video loading
2025-10-06 07:45:51 +08:00
Will Miao
7757f72859
Enhance test for saving paths to ensure cross-platform compatibility in folder paths
2025-10-05 22:40:43 +08:00
pixelpaws
c8cc584049
Merge pull request #536 from willmiao/codex/add-unit-tests-for-config-saving-paths
...
Add regression tests for Config save path handling
2025-10-05 22:24:57 +08:00
pixelpaws
2cdd269bba
Merge pull request #535 from willmiao/codex/add-tests-for-migration-utility-functions
...
test: cover example images migration flows
2025-10-05 22:24:42 +08:00
pixelpaws
d2d97ae5bb
Merge pull request #534 from willmiao/codex/add-tests-for-cache-middleware
...
test: add cache control middleware coverage
2025-10-05 22:24:26 +08:00
pixelpaws
d08d77c555
Merge pull request #533 from willmiao/codex/add-async-test-module-for-lifecycle
...
test: add LoRA manager lifecycle coverage
2025-10-05 22:24:12 +08:00
pixelpaws
50f2c2dfe6
test(config): cover save path migration flows
2025-10-05 22:19:36 +08:00
pixelpaws
3539c453d3
test(utils): cover example images migrations
2025-10-05 22:19:29 +08:00
pixelpaws
1631122f95
test(middleware): add cache control coverage
2025-10-05 22:19:20 +08:00
pixelpaws
8fcb979544
test(routes): cover lora manager lifecycle
2025-10-05 22:19:10 +08:00
pixelpaws
8a5af0b7f3
test(routes): add stats routes coverage
2025-10-05 22:18:59 +08:00
Will Miao
9ac4203b1c
test(example-images): allow monkeypatching os.startfile on linux
2025-10-05 16:30:44 +08:00
Will Miao
413444500e
refactor(model_scanner): normalize path comparisons for model roots
...
fix(example_images_download_manager): re-raise specific exception on download error
refactor(usage_stats): define constants locally to avoid conditional imports
test(example_images_download_manager): update exception handling in download tests
test(example_images_file_manager): differentiate between os.startfile and subprocess.Popen in tests
test(example_images_paths): ensure valid example images root with single-library mode
test(usage_stats): use string literals for metadata payload to avoid conditional imports
2025-10-05 15:48:50 +08:00
pixelpaws
e21d5835ec
Merge pull request #524 from willmiao/codex/add-async-tests-for-websocketmanager
...
Add websocket broadcast and usage stats tests
2025-10-05 15:19:40 +08:00
pixelpaws
b195d4569c
test(usage-stats): allow metadata registry monkeypatch
2025-10-05 15:13:20 +08:00
pixelpaws
fc64e97f92
Merge pull request #525 from willmiao/codex/develop-tests-for-metadatasyncservice-and-modelscanner
...
Add coverage for metadata sync service and scanner reconciliation
2025-10-05 15:03:36 +08:00
pixelpaws
1da0434454
Merge pull request #526 from willmiao/codex/add-tests-for-utility-functions
...
test: add coverage for utility helpers
2025-10-05 15:03:20 +08:00
pixelpaws
cf2fe40612
Merge pull request #527 from willmiao/codex/add-unit-tests-for-metadata-components
...
Add metadata collector unit tests and fixtures
2025-10-05 15:03:04 +08:00
pixelpaws
8f46433ff7
Merge pull request #523 from willmiao/codex/add-tests-for-settingsmanager-migration
...
Add tests for settings migrations and service registry lazy loading
2025-10-05 15:02:44 +08:00
pixelpaws
cfec5447d3
test(metadata): add collector coverage
2025-10-05 14:44:17 +08:00
pixelpaws
2d36b461cf
test(utils): add coverage for helper utilities
2025-10-05 14:43:21 +08:00
pixelpaws
5e23e4b13d
test(metadata): cover sync service and scanner reconciliation
2025-10-05 14:42:13 +08:00
pixelpaws
badae2e8b3
test: cover websocket broadcasts and usage stats
2025-10-05 14:41:47 +08:00
pixelpaws
9e64531de6
test(settings): cover migrations and registry lazy loading
2025-10-05 14:41:24 +08:00
pixelpaws
fdec8d283c
test(example-images): expand coverage for routes and utilities
2025-10-05 14:40:48 +08:00
pixelpaws
5b564cd8a3
fix(example-images): pin downloads to start library
2025-10-05 09:10:25 +08:00
pixelpaws
67c82ba6ea
fix(example-images): reuse migrated folders during downloads
2025-10-05 08:37:11 +08:00
pixelpaws
d43d992362
feat(example-images): namespace storage by library
2025-10-04 20:29:49 +08:00
Will Miao
8dde2d5e0d
feat(websocket-manager): implement caching for initialization progress and enhance broadcast functionality
2025-10-04 18:19:20 +08:00
pixelpaws
d01666f4e2
feat(previews): serve dynamic library previews
2025-10-04 10:38:06 +08:00
pixelpaws
d95e6c939b
test(settings): cover library switch workflow
2025-10-04 09:07:02 +08:00
pixelpaws
b69c24ae14
test(routes): cover settings library endpoints
2025-10-04 08:38:59 +08:00
pixelpaws
3922aec36e
test(routes): extend misc routes coverage
2025-10-04 05:10:43 +08:00
pixelpaws
40e3c6134c
refactor(routes): modularize misc route handling
2025-10-03 22:19:09 +08:00
Will Miao
40d998a026
fix(settings): use timezone-aware datetime for current timestamp
...
fix(tests): normalize stored paths in library upsert test
2025-10-03 20:59:47 +08:00
pixelpaws
e066fa6873
feat(settings): add multi-library backend support
2025-10-03 20:08:35 +08:00