495 Commits
Author SHA1 Message Date
Dariusz L 5d5aa6ae76 Update pyproject.toml v1.0.2 2026-07-06 16:18:52 +02:00
Dariusz L 7962ab2050 Update publish.yml 2026-07-06 16:12:03 +02:00
Dariusz L 488f9512c8 Update pyproject.toml 2026-07-06 16:08:18 +02:00
Dariusz L 0cecfab2a0 Switch default log level from DEBUG to ERROR across backend, frontend, and options defaults 2026-07-06 16:05:50 +02:00
Dariusz L b27572d84f Suppress noisy no-op metadata build log when all models were skipped 2026-07-06 15:23:54 +02:00
Dariusz L 23c0f79444 Add paginated show-more behavior to metadata build history 2026-07-06 14:57:44 +02:00
Dariusz L 8f525044e8 feat(options): make metadata panels collapsible and add summary icons 2026-07-06 14:51:15 +02:00
Dariusz L 5a9e81cc70 refactor(options): use visibility-based transitions for metadata build panels and defer history rendering 2026-07-06 13:58:31 +02:00
Dariusz L f3c0024d46 Replace metadata build history select with custom action filter menu 2026-07-05 22:47:07 +02:00
Dariusz L 39943d5e17 Make metadata history filterable and full-length, and stabilize build progress UI 2026-07-05 22:25:01 +02:00
Dariusz L b9f364e3e4 Add Local Metadata Builder UI and backend API
This change introduces a complete Local Metadata Builder feature in the resolver
options panel. It allows users to scan local model files, create or update
.metadata.json sidecars, fill missing SHA256 hashes from safetensors headers or
file hashing, and review run history with cancel/error handling.

Changes include:
- backend API: /model_resolver/metadata-build/{capabilities,start,progress/{id},cancel}
- backend worker: core/metadata_builder.py with parallel metadata generation
- frontend section: Local Metadata Builder tab in Options
- frontend polling UI: progress, worker breakdown, history table, status/notifications
2026-07-05 21:52:57 +02:00
Dariusz L de6b7738e1 Reorganize options sidebar into Tools and System sections
Move Metadata Sizes into a dedicated Tools group and Maintenance into a System group to improve navigation clarity in the resolver options panel.
2026-07-05 20:59:14 +02:00
Dariusz L 85bbbef06d Add metadata size audit for model sidecar metadata 2026-07-05 18:03:29 +02:00
Dariusz L 6c1e940203 refactor(sources): centralize search result construction and shared helpers
Move MODEL_TITLE_MATCH_THRESHOLD to core/matcher.py.

Add shared helpers to core/type_utils.py:
- normalize_lora_manager_type
- normalize_model_file_info
- build_search_result

Refactor civarchive, civitai, lora_manager_archive, and huggingface
sources to use centralized helpers, removing duplicated inline dict
construction, type normalization, username extraction, and search
query wrappers.
2026-07-05 06:34:16 +02:00
Dariusz L e386930936 Improve base model matching and subfolder suggestion UX 2026-07-05 05:57:54 +02:00
Dariusz L f691af6387 annotate active downloads in local matches 2026-07-05 05:16:20 +02:00
Dariusz L 629bc791a6 feat: extract richer local metadata from safetensors headers, improve base-model inference, and preserve local data when remote lookups fail 2026-07-05 04:22:25 +02:00
Dariusz L a079733130 Extract SHA256 from safetensors header and track hash source 2026-07-05 03:00:07 +02:00
Dariusz L 3f54bd4979 Restrict file access to configured model roots and sanitize download filenames 2026-07-04 23:56:50 +02:00
Dariusz L 683eb6dfef Translate Polish workflow output and docstrings to English 2026-07-04 20:42:46 +02:00
Dariusz L 7d3c966a9e Update README.md 2026-07-04 20:26:19 +02:00
GitHub Action ce4fc1d5e7 Create or update Model Resolver downloads badge 2026-07-04 18:21:09 +00:00
Dariusz L ef63dbd564 Update ComfyUIdownloads.yml 2026-07-04 20:19:09 +02:00
Dariusz L c244eeec77 Delete badges/DOWNLOADS.md 2026-07-04 20:17:49 +02:00
GitHub Action a558cff2b8 Create Model Resolver badge 2026-07-04 18:10:02 +00:00
Dariusz L 9b177fdd20 chore(CI): update checkout versions and migrate publishing workflow to comfy-cli 2026-07-04 20:09:11 +02:00
Dariusz L cc8fdda32c chore: add pyproject metadata, CI workflows, and reorganize clone badge into badges/ v1.0.0 2026-07-04 19:59:03 +02:00
Dariusz L 03a284a34b Update README.md 2026-07-04 19:19:50 +02:00
Dariusz L 4d9b1e70d7 Update README.md 2026-07-04 19:12:32 +02:00
Dariusz L 8d4b8d879f docs(README): clarify Aria2 setup, path templates, and downloader settings 2026-07-04 19:09:41 +02:00
Dariusz L f75f6878a2 Add unet_gguf category support and bad-folder warnings 2026-07-04 18:24:44 +02:00
Dariusz L 724579a607 fix(civitai): recognize civitai.red URLs in parse_civitai_url
The URL parser previously required the hostname to contain "civitai.com",
so CivitAI download links using the "civitai.red" domain were treated as
non-CivitAI URLs and rejected.

This extracts the host check into _is_civitai_host() and accepts both
"civitai.com" and "civitai.red" base domains, so resolve/parse flows
handle all CivitAI download links correctly.
2026-07-04 18:05:30 +02:00
Dariusz L 44f539ce49 Refactor frontend apply path for auto-resolve and queue selections 2026-07-04 17:45:17 +02:00
Dariusz L 245bf79800 fix: deduplicate missing models by category+filename and expand per-node resolutions
Previously, identify_missing_models grouped missing entries only by filename,
which could merge unrelated models from different categories that happen to
share a filename. This change deduplicates by (category, filename) and tracks
all_node_refs with a reference_count so the frontend can preserve one
resolution per node reference instead of collapsing duplicates.

Frontend changes in resolve_download_methods.js iterate over all_node_refs,
and missing_browser_methods.js now shows '+ N refs' in the missing-model
label and clarifies the locate tooltip when multiple workflow references
share the same missing model.
2026-07-04 17:26:35 +02:00
Dariusz L d9dacc2016 refactor: centralize Model Resolver button activation with fallback click handling 2026-07-04 04:40:00 +02:00
Dariusz L b57412f5cd Switch Model Resolver shortcut to native ComfyUI commands/keybindings with dynamic tooltip and exclude non-model categories 2026-07-04 04:34:34 +02:00
Dariusz L 1e22b2ba73 refactor: centralize repeated route logic into shared helpers 2026-07-04 01:23:46 +02:00
Dariusz L 546784e68a refactor: simplify aria2 status route and remove wrapper functions
- Merge GET and POST aria2 status handlers into one route
- Remove redundant calculate_file_sha256 wrapper and use path_utils directly
- Remove redundant _normalize_archive_image, _normalize_filename, and _similarity wrappers
- Replace urllib with requests for remote JSON fetching in model_list
- Update metadata timestamps
2026-07-04 01:03:00 +02:00
Dariusz L 4c065818e3 feat: add custom URL resolution to missing browser 2026-07-04 00:45:13 +02:00
Dariusz L cb666902e5 refactor: centralize hash calculation callbacks and catalog backup logic 2026-07-04 00:18:41 +02:00
Dariusz L 5de1500537 refactor: consolidate inline mappings and precondition checks into shared helpers 2026-07-04 00:04:22 +02:00
Dariusz L 4091dbb88d feat(civitai): add public API search fallback and improve search robustness 2026-07-03 22:00:13 +02:00
Dariusz L cbf91eb960 fix: filter local hash match candidates and avoid sidecar self-match 2026-07-03 20:20:36 +02:00
Dariusz L 65ff2baa30 Add local hash match cache and invalidate it on rescan/downloads 2026-07-03 17:09:35 +02:00
Dariusz L 42b13bbb60 feat: improve local hash matching and strengthen download selection metadata
- add POST /model_resolver/local-matches-by-hash backend endpoint
- expand local hash lookup sources to lora_manager_archive, popular, and model_list
- deduplicate backend hash matches by SHA256 value instead of source-hash tuple
- add frontend sync for remote hash matches and hash-label disambiguation
- propagate sha256, file_info, selected_file, and selected_version in model selection/download flows
- render local match status with consistent hash labels across search panel and resolvers
2026-07-03 16:37:10 +02:00
Dariusz L 4c777e5c50 feat: add local hash match identity tracking and highlights; simplify CivitAI import and hash lookup 2026-07-03 01:30:06 +02:00
Dariusz L f2358d4f5c Update huggingface-author-index.json 2026-07-03 00:26:41 +02:00
Dariusz L b28cd72ae5 refactor: deduplicate filename cleanup and generic token helpers 2026-07-03 00:26:18 +02:00
Dariusz L 9c0ec8b26b Add progress reporting for loaded model and workflow analysis
- Add server-side loaded models progress tracking in __init__.py
- Report workflow node analysis progress from workflow_analyzer.py
- Add frontend polling, rendering, and UI flow for loaded models progress
2026-07-03 00:06:04 +02:00
Dariusz L 1a94a7badc Validate civitai URL input before parsing
Add an early guard in core/sources/civitai.py to return None for non-string or empty URL inputs before calling urlparse. This prevents exceptions and unexpected behavior when callers pass None or empty values, making the parser more robust.
2026-07-02 23:43:37 +02:00