malkuthroandClaude Opus 4.7 111ca6d40d fix(sidebar): resolve placeholder-drop Promise on every cancel path (#116)
`dropPlaceholdersForPacks` wraps `showConfirmModal` in `new Promise`,
but only the OK path resolved — Cancel, Escape, and click-outside left
the Promise pending forever (#84 part 2). Caller's `await` never
returned; any future UI state tied to the result would have been stuck.

Two-layered fix so the wider modal contract is sound, not just the one
call site:

- `showConfirmModal` (web/sidebar/modals.js) now fires `onCancel` for
  the Cancel button, Escape, AND overlay-click. An idempotent `settled`
  flag keeps the callback to a single fire; the OK path flips the flag
  before tearing down the overlay so it doesn't trigger onCancel via
  the wrapped `overlay.remove`. Previously only the Cancel button ran
  the callback — Esc and click-outside silently bypassed it.

- `dropPlaceholdersForPacks` (web/sidebar/canvas_io.js) now passes
  `onCancel: () => resolve({ ok: false, reason: "cancelled" })`,
  matching the function's other failure shapes (`no-packs`,
  `load-failed`).

Side win: same modals.js change closes a latent Esc/click-outside leak
in the existing "Discard offline copy" recovery toast at
`web/koolook_sidebar.js:130`, which had wired `onCancel` for the Cancel
button only.

Refs #84 (part 2 — part 1, stale serialized link cleanup, is on
codex/pr-cleanups).

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 22:15:56 +02:00
2025-09-28 14:48:07 +02:00

ComfyUI-Koolook

Kforge Labs for ComfyUI: a project-kit sidebar plus Koolook nodes for VFX, image, and video workflows.

The main experience is the Kforge Labs sidebar. It helps you keep a project setup together: favorite nodes, saved workflows, reusable modules, tags, snapshots, and recovery tools.

Kforge Labs Sidebar

Use the sidebar as a reusable project kit.

Feature What it does
Snapshots Save and load the whole Kforge Labs state: favorite nodes, workflows, modules, tags, archive, and recovery data.
Search Find nodes, workflows, directories, and tags from one field. Tags keep exact capitalization, so Depth and depth can be separate folders.
Nodes Keep favorite nodes close, grouped by theme or repository name.
Workflows Save the whole script, save a selection of nodes, load workflows, or insert saved modules into the current canvas.
Recovery Use autosaves, starter presets, snapshot library settings, and missing-pack install helpers.

New users should start with the bundled visual guide: web/guide/index.html

Inside ComfyUI, open it from the Kforge Labs sidebar with Tools → Info.

Included Nodes

Node ID Display name Category
EasyWan22Prompt Wan 2.2 Easy Prompt (Koolook) Koolook/Wan_Video
EasyResize_Koolook Easy Resize (Koolook) Koolook/Image
EasyAIPipeline Easy AI Pipeline (Koolook) Koolook/Pipeline
easy_ImageBatch Easy Image Batch (Koolook) Koolook/Image
KoolookLoadCameraPosesAbsolute Koolook Load Camera Poses (Absolute Path) Koolook/Camera
Easy_hdr_VAE_encode Easy HDR VAE Encode (Koolook) Koolook/VAE
Easy_hdr_VAE_decode Easy HDR VAE Decode (Koolook) Koolook/VAE

The root Koolook nodes and the slim Radiance Koolook VAE wrappers have no extra Python dependencies beyond torch, which ComfyUI already requires.

Install

ComfyUI-Manager

  1. Open ComfyUI Manager.
  2. Choose Install Custom Nodes.
  3. Install by Git URL: https://github.com/malkuthro/ComfyUI-Koolook.git
  4. Restart ComfyUI.
  5. Open the Kforge Labs sidebar tab.

Manual

Clone this repository into ComfyUI/custom_nodes/:

git clone https://github.com/malkuthro/ComfyUI-Koolook.git

Restart ComfyUI after installation.

Learn More

Stability

For production work, install a pinned release tag or commit instead of following a moving branch head. Node IDs are treated carefully so saved ComfyUI workflows continue to load across compatible updates.

License

GPL-3.0. See LICENSE.

This package incorporates and adapts GPL-3.0 code from fxtdstudios/radiance under forks/radiance_koolook/. Attribution and per-fork modification notes are tracked in forks/THIRD_PARTY.md and forks/forks_manifest.yaml.

S
Description
No description provided
Readme GPL-3.0
220 MiB
Languages
Python 67.9%
JavaScript 30.3%
HTML 1%
CSS 0.5%
Shell 0.2%
Other 0.1%