Commit Graph
9 Commits
Author SHA1 Message Date
Jason Hoku 490cec842f refactor: delete network_utils.py (~60 lines)
The CivitAI function moved to the ComfyUI-USCG-CivitAI companion in this
phase. After Phase 1 (HF VAE) and Phase 2 (Distribution), this was the
only function left. Now the file is empty and removable.

network_utils.py shrunk: 281 (original) -> 189 (Phase 1) -> 60 (Phase 2)
-> 0 (Phase 3, deleted).

Also tidies any dead network_utils references in tests/conftest.py.
2026-05-19 18:56:30 -07:00
Jason Hoku 23c857353b feat(civitai): add facade for ComfyUI-USCG-CivitAI companion
Adds is_civitai_available() and civitai_fetch_by_hash() with SILENT
fallback (returns None) when companion missing. No RuntimeError because
CivitAI lookup is an optional convenience — the LoRA workflow works
without auto-trigger detection.

Pre-existing callers already handle None on network failure, so this
facade is drop-in compatible.

Also updates tests/conftest.py to importlib-load the real civitai.py
(matches Phase 1/2 patterns for remote_vae + distribution).

Callers (config_builder_node.py + lora_utils.py) still import from
.network_utils as of this commit; the swap lands in the next commit.
2026-05-19 18:43:33 -07:00
Jason Hoku 13149ff5f9 feat(distribution): add facade for ComfyUI-USCG-Distributed companion
Adds is_distribution_available(), _require_companion(), create_manager(),
set_active_manager(), clear_active_manager(), notify_workers_to_start(),
stop_all_workers(), get_master_url() plus INSTALL_INSTRUCTIONS.

create_manager passes three callbacks through to the companion's
DistributionManager (job_completed_check required, build_prompt_with_triggers
and get_model_cache_key optional) — avoids bidirectional imports back into
main USCG that the original distribution_manager.py had at line 91 (and 419).

Lazy try-import of the companion returns a clear error if not installed.
Defensive minimum-version check (>= 0.1.0). clear_active_manager is silent
when companion missing so cleanup paths are safe even if companion gets
uninstalled mid-run.

Also updates tests/conftest.py to importlib-load the real distribution.py
so facade tests exercise actual code (matches Phase 1's remote_vae pattern).

Old code paths in generation_orchestrator/distribution_routes/etc still
active; the swap lands in the next commits.
2026-05-19 15:03:28 -07:00
Jason Hoku f20a17d6ea refactor(orchestrator): drop HF_ENDPOINTS import; pass endpoint name to worker
The companion plugin (ComfyUI-USCG-RemoteVAE) resolves endpoint names to
URLs internally. Main USCG no longer needs the URL allowlist - it only
passes the endpoint NAME (e.g. 'SDXL') through the worker.
2026-05-19 13:19:19 -07:00
Jason Hoku e5f690eae5 feat(remote_vae): add facade for ComfyUI-USCG-RemoteVAE companion
Adds is_remote_vae_available(), get_endpoint_names(), _companion_decode()
plus INSTALL_INSTRUCTIONS constant. Lazy try-import of the companion module
returns a clear error if not installed. Old code paths still active; the
remote_decode_hf -> _companion_decode swap lands in the next task.

Also updates tests/conftest.py to load the real remote_vae module (via
importlib.util) so facade tests exercise actual code rather than a stub.
Adds network_utils real-load and diffusers/diffusers.image_processor stubs
to satisfy the remote_vae.py import chain in the test environment.
2026-05-19 13:08:27 -07:00
Jason Hoku 712ec83253 feat: florence2_hires — pure-Python crop_image_by_mask + tests
Also: conftests now try to load real torch before installing the torch stub,
so tests that genuinely need real torch tensors (crop/paste, integration)
work when the Comfy embedded Python is used. Other tests are unaffected.
2026-05-18 01:20:29 -07:00
Jason Hoku dca70cb90f feat: cache key for ltx_video model_type 2026-04-25 16:48:32 -07:00
Jason Hoku ef866b50db feat: cartesian expansion for ltx fields with audio_mode 'both' normalization 2026-04-25 16:43:08 -07:00
Jason Hoku 1ea4d7892d feat: ltx sigma string parser with tests 2026-04-25 16:34:19 -07:00