ComfyUI loads custom nodes as packages (relative import needed),
pytest runs at top level (absolute import needed). Handle both.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
ComfyUI has its own nodes.py module at the root level, so our
nodes/ package name collides with it. Renamed to immich_nodes/.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Uploads images to Immich via API with embedded PNG metadata
- Embeds full ComfyUI workflow + prompt data in PNG (matches SaveImage behavior)
- Sets Immich description and album assignment in same operation
- Config via .env file (gitignored, persists across updates)
- Stdlib-only HTTP (no requests dependency)
- Per-image error handling — one failure doesn't kill the batch
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>