* refactor(nodes): drop keyframe_batch alias from Easy Image Batch
The keyframe_batch input was a deprecated alias of keyframes_insert,
added in 0.4.1 during PR #246 review to keep pre-rename workflows
loading. The old name only ever existed in unreleased dev builds before
the rename, so no published workflow depends on it and the alias only
cluttered the node with a second IMAGE input.
Remove the input, its parameter, and the alias-routing fallback; the
node now exposes a single keyframes_insert insert input. Tests and the
behavior spec updated; CHANGELOG notes the removal under [Unreleased].
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* docs(policy): make backward compatibility opt-in for Koolook nodes
Invert the default: backward compatibility is no longer a standing
constraint for Koolook-created nodes (the root k_*.py custom nodes).
By default, make the cleanest change — rename/drop/reorder IDs, inputs,
and outputs freely, no deprecation aliases or _v2 suffixes. Compatibility
with saved workflows is only preserved when the maintainer explicitly
says "check backward compatibility".
Forks are explicitly excluded: anything under forks/ (including the
Koolook-original nodes exposed via SKIP_VERSION_SUFFIX) keeps full
back-compat discipline by default, no request needed. The
__koolook_vX_Y_Z collision suffix always applies.
Scoped across the binding instruction files and skills: CLAUDE.md,
copilot-instructions, node-versioning.md, versioning.md, and the
preflight-release / add-external-fork / tdd skills. The preflight
workflows check is reframed as a drift detector for Koolook IDs and a
hard back-compat gate for fork IDs.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* docs: clarify keyframe_batch alias removal
* fix: retain keyframe_batch compatibility alias
---------
Co-authored-by: AI Machine <ai.machine@x.baconcph.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Audit triggered while debugging the v0.2.0 release surfaced drift in
the maintainer docs vs current code: dead curated_defaults.json
references (file replaced by starter_preset.json in PR #72), the
v1_0_1 fork example (removed in v0.1.5), and a "tooling we don't have
yet" entry that's now covered by tools/preflight_release.py. Adds a
new conventions.md for cross-cutting rules — currently the
Mermaid-for-diagrams convention.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Bundles two changes for v0.1.7:
1. PR #36 (already on main, just rolling [Unreleased] -> [0.1.7]):
suffix all node display names with " (Koolook)" so they group
together in ComfyUI's node-add search. Class IDs unchanged.
2. Docs reorg:
- git mv Glossary.md -> docs/reference/glossary.md
- git mv RELEASING.md -> docs/maintainers/releasing.md
- Three audience buckets under docs/: user_guide/ (end users),
reference/ (lookups), maintainers/ (project ops). Each gets a
short index README.md.
- Top-level docs/README.md as the navigation entry point.
- New: docs/maintainers/registry-api.md captures the Comfy Registry
undocumented version-management API (deprecate/yank/status enum,
auto-deprecation behavior, curl recipes, optional GH Actions
workflow YAML for codified mgmt without exposing the token).
- New: docs/maintainers/node-versioning.md codifies the rules from
the v0.1.5 PR-review discussion for changing INPUT_TYPES /
RETURN_TYPES / class names without breaking saved workflows.
- Imported the existing untracked docs/ images that the maintainer
started locally (node inventory screenshot, Easy Image Batch
helper image).
- Cross-references updated in README.md, CLAUDE.md, the issue
template, and .claude/skills/add-external-fork/SKILL.md.
Root drops from 6 -> 4 markdown files. The four that stay (README,
LICENSE, CHANGELOG, CLAUDE.md) are the ones that *must* live there for
GitHub / Comfy Registry / tooling / Claude Code reasons.
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>