6 Commits
Author SHA1 Message Date
BRADSEC 33bcce9d3e Step roles via combo control_after_generate; bump 1.3.2
Replace the custom mode/value/start/end/counter machinery with ComfyUI's
native per-widget control_after_generate on the role combo. Set it to
'increment wrap' to advance one role per generation (wrapping), or
'randomize' for a random role; 'fixed' holds the selection. The frontend
steps the combo, so the role visibly updates on the node, and no internal
index, seed, modulo, or NaN re-run logic is needed. Outputs unchanged:
system_prompt, role_name, resolved_index. Dual-API preserved; V3 passes
control_after_generate inside try/except TypeError for older comfy_api.
2026-06-28 12:27:19 +10:00
BRADSEC 734c8cc160 Self-contained increment/random modes; bump 1.3.1
increment now steps to the next role alphabetically on its own (per-node
counter, wraps start..end) and random picks fresh each generation. Removes
the value INT and its control_after_generate, which made increment behave
randomly because the companion widget defaults to randomize. Mode now drives
selection directly; increment/random force a re-run via NaN fingerprint while
fixed still caches on file mtime. Per-node state keyed by hidden unique_id.
2026-06-28 12:12:47 +10:00
BRADSEC 2af7ad30b6 Merge index and seed inputs into a single value (v1.3.0)
The node exposed two stepping INT inputs, index (increment mode) and seed
(random mode), each with its own auto-generated control_after_generate
widget. Only one was ever read per mode, so the other widget could advance
every run with no effect, which was confusing.

Collapse them into one `value` INT with a single control_after_generate:
increment mode uses it as the wrapping position, random mode uses it as the
seed. Updates pick_index/select/select_fingerprint signatures, both the V1
and V3 node schemas, tooltips, README, and tests. Also fixes a stale shipped-
role test that referenced the pre-photo_ prefix label.
2026-06-28 10:09:58 +10:00
BRADSEC b2ca977e12 Revert to seed/index selection modes (v1.2.0)
The combo control_after_generate approach did not step on the user's
ComfyUI frontend: IS_CHANGED was stable so the node cached after the first
run and the Run button had no further effect. Restore the mode/index/seed/
start/end node whose seed/index change each generation (via
control_after_generate), forcing a re-run and cycling roles. Outputs
system_prompt, role_name, resolved_index. 25 tests pass.
2026-06-27 21:51:50 +10:00
BRADSEC f1f12e00c2 Simplify role stepping to native combo control_after_generate
Replace the custom mode/index/seed/start/end machinery with ComfyUI's native
per-widget control_after_generate on the role dropdown. The frontend steps the
combo itself: increment-wrap cycles roles 0->1->0 (verified ComfyUI_frontend
valueControl.ts), randomize picks one, fixed holds. Number-widget increment
clamps and never wraps, which is why the old INT index showed huge values and
never returned to 0; a combo wraps cleanly and shows role names.

Outputs reduced to system_prompt + role_name. Bump 1.0.0 -> 1.1.0. 15 tests pass.
2026-06-27 17:17:14 +10:00
BRADSEC b868dd4efd Initial commit 2026-06-27 16:59:01 +10:00