User: absolute pixel target unintuitive and vague. New param is
relative to the input latent: 2 = double each side, 1 = unchanged,
0.5 = half. Semantics:
- scale applies PER SIDE (old absolute form over-upscaled the short
side of non-square inputs — both sides doubled until the smaller
hit the pixel target)
- up >1 keeps paper 2x-stage quantization: 1.2-2.0 -> one 2x stage,
4 -> two; final may land above exact scale
- scale <1 (0.25-1): single guided refinement stage at the smaller
size; reference trajectory bicubic-resized down, walk unchanged
- range [0.25, 8] validated at node + core
_stage_latent_sizes rewritten (nearest-snap helper split out);
cascade + node params renamed; workflow JSON updated; 158 hiflow
tests (new: downscale stage, per-side non-square, range, scale-2
single stage); suite 1310 passed / 4 skipped; ruff F,E9 green;
v2.13.0.