Files
kgilper-krea-reference/docs/testing.md
T
Kevin Gilper 65576f9b27 Add V10 artifact set matching the V9 assets
Example workflows (generated from the real V10 INPUT_TYPES so widget
order and combo values cannot drift from the node contract):
- krea-v10-full-showcase-workflow.json: six cards including the new
  palette, environment, and framing recipes, per-card timing, gentle
  balance, and the report/prepared-references previews wired.
- krea-v10-counter-example-workflow.json: toward content anchor plus an
  away style counter-example.
- krea-v10-reference-stack-workflow.json: compact starter mirroring the
  V9 starter graph.

Documentation mirroring the V9 set:
- docs/krea-v10-user-guide.md and .html (visual guide, same styling as
  the V9 HTML guide).
- docs/krea-v10-technical-paper.md: companion paper for the V10
  mechanics (direction math, timing rewrite, balance budget, study
  cache correctness, feedback outputs, packet cross-compatibility,
  verification map, limitations, extension points).
- docs/krea-v10-documentation-index.md and V10 rows across the docs
  landing page, node index, workflow README, and root README.
- docs/testing.md: V10 smoke checklist and the demo-render release step
  (V10 demo PNGs land under docs/assets/krea-v10/demos/ at release).
2026-07-02 21:00:12 -04:00

3.0 KiB

Testing Guide

Use this guide to validate changes with portable paths and test images created for the package.

Local Contract Tests

These tests stub the small parts of ComfyUI needed by the V9 and V10 math and label contracts:

python -m unittest discover -s tests -p "test_*.py" -v

They verify:

  • V9 widget labels remain stable for saved workflow compatibility, and V10 labels are the V9 labels plus appended rows only.
  • Guide packets stay compatible in both directions: V9 cards work in the V10 stack and V10 cards work in the V9 stack.
  • The text/logo guard supports both full prompt rewriting and gentle prompt preservation, and the V10 multilingual vocabulary rewrites Spanish/French/German/Portuguese/Italian marking words without touching English collision words.
  • Per-layer conditioning math handles scalar and layer-weight composition, and the V10 direction feature negates targets with a symmetric layer clamp.
  • Per-card timing rewrites phase multipliers and the blank-surface guard clamp always wins.
  • The V10 balance budget scales hot stacks while preserving card ratios.
  • The V10 study cache skips encoder passes on re-runs and re-studies when reuse is off.
  • Layer-target fallback warns when conditioning cannot split into the expected bands.
  • Strength curves and timestep ranges behave predictably.

Syntax Check

python -m compileall -q kg_krea_v9 kg_krea_v10 __init__.py

Real ComfyUI Smoke Test

Before a release, install the package into a real ComfyUI custom_nodes folder, restart ComfyUI, and confirm these node keys appear:

KGKrea2ImageGuideCardV9
KGTextEncodeKreaImageReferencesV9
KGKrea2ImageGuideCardV10
KGTextEncodeKreaImageReferencesV10

Then load the example workflows and replace placeholder Load Image filenames with test images created for that run. For the V10 workflows, additionally confirm:

  • The stack report (Preview Any) prints per-card lines and the Studies: pass count.
  • The prepared-references contact sheet (Preview Image) shows one treated frame per active card.
  • A second queue with only a strength change reports zero new encoder passes when Reuse image studies is on.
  • The counter-example workflow's away card is marked in the report with negative targets.

V10 Demo Renders (release checklist)

The V10 release mirrors the V9 demo gallery: on a live Krea 2 ComfyUI, render one demo per new control (the four new recipes, an away-card pair, and a per-card timing example), save the PNGs with embedded workflow metadata under docs/assets/krea-v10/demos/, and link them from the V10 guides - the same format as docs/assets/krea-v9/demos/.

Test Images

  • Use images generated specifically for the test, public-domain fixtures, or images explicitly provided for the test.
  • Keep generated test inputs and outputs outside the git repo, or under ignored local folders such as input/, output/, or temp/.
  • Do not commit generated images unless they are intentionally curated public documentation assets.