fix(gamedev): card_art hires roto (UltimateSDUpscale exige batch_size) + INDEX conteo gamedev 10->20
El nodo UltimateSDUpscale declara batch_size como input requerido en /object_info; comfyui_build_hires_fix_workflow y comfyui_inject_hires_fix no lo proveian, por lo que card_art con hires=True fallaba en runtime. Se anade batch_size: 1 a ambos constructores + guards de regresion en los tests (card_art golden hires, builder e inject). Verificado con una generacion real en ComfyUI (carta 768x1152, sin node_errors, prompt_id 4033fb0b). Bump de version 1.0.0->1.0.1 en ambos .md con growth log y gotcha. INDEX.md: la fila gamedev decia count=10; el cluster de assets 2D documentado en gamedev-2d.md tiene 20 funciones (15 builders tag gamedev-2d + 5 de apoyo). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -3,7 +3,7 @@ name: comfyui_inject_hires_fix
|
||||
kind: function
|
||||
lang: py
|
||||
domain: ml
|
||||
version: "1.0.0"
|
||||
version: "1.0.1"
|
||||
purity: pure
|
||||
signature: "def comfyui_inject_hires_fix(workflow: dict, *, upscale_by: float = 1.5, denoise: float = 0.4, steps: int = 20, cfg: float = 7.0, seed: int = 0, upscale_model: str = '4x_foolhardy_Remacri.pth', sampler_name: str = 'euler', scheduler: str = 'normal', tile_width: int = 512, tile_height: int = 512) -> dict"
|
||||
description: "Inyecta una segunda pasada hires-fix en un workflow ComfyUI ya construido (API format) que termina en VAEDecode -> SaveImage. Anade UpscaleModelLoader + UltimateSDUpscale (re-difusion por tiles) conectados a la imagen del VAEDecode y al model/vae del CheckpointLoaderSimple, y repunta el SaveImage a la imagen ampliada. Version encadenable-sobre-dict de comfyui_build_hires_fix_workflow. Pura: no muta el dict de entrada (copia profunda)."
|
||||
@@ -39,7 +39,7 @@ params:
|
||||
desc: "Alto de tile de UltimateSDUpscale (px). keyword-only."
|
||||
output: "copia del workflow con UpscaleModelLoader + UltimateSDUpscale anadidos (node_ids = max id numerico + 1 y + 2) y el SaveImage repuntado a la salida [ultimatesdupscale_id, 0]. Si no habia SaveImage, se anade uno con filename_prefix 'hires'."
|
||||
tested: true
|
||||
tests: ["no muta el dict de entrada (pureza)", "inserta UltimateSDUpscale y UpscaleModelLoader", "repunta el SaveImage al UltimateSDUpscale", "params reflejados (upscale_by/denoise/seed)", "lanza ValueError si falta VAEDecode"]
|
||||
tests: ["no muta el dict de entrada (pureza)", "inserta UltimateSDUpscale y UpscaleModelLoader", "repunta el SaveImage al UltimateSDUpscale", "params reflejados (upscale_by/denoise/seed) + batch_size", "lanza ValueError si falta VAEDecode"]
|
||||
test_file_path: "python/functions/ml/tests/test_comfyui_inject_hires_fix.py"
|
||||
file_path: "python/functions/ml/comfyui_inject_hires_fix.py"
|
||||
---
|
||||
@@ -81,3 +81,12 @@ VAEDecode -> SaveImage. Una sola llamada anade la segunda pasada completa.
|
||||
Para grafos multi-salida construye con un builder dedicado.
|
||||
- El nuevo node_id es `max(ids numericos) + 1` (y +2). Si tu workflow usa ids no
|
||||
numericos, el contador cae a `len(workflow) + 1`.
|
||||
- El nodo `UltimateSDUpscale` declara `batch_size` como input **requerido** en
|
||||
`/object_info`; la inyección lo fija a `1`. Sin él, el submit pasaba la
|
||||
validación de POST pero el grafo fallaba en runtime por input faltante.
|
||||
|
||||
## Capability growth log
|
||||
|
||||
- v1.0.1 (2026-06-27) — bugfix paralelo al de `comfyui_build_hires_fix_workflow`:
|
||||
el nodo `UltimateSDUpscale` exige `batch_size` (input requerido en `/object_info`);
|
||||
se añade `batch_size: 1` al nodo inyectado para que el workflow no falle en runtime.
|
||||
|
||||
Reference in New Issue
Block a user