Files
PozzettiAndrea-ComfyUI-Geom…/main/linux-cpu/session.log
T
2026-05-19 10:43:40 +00:00

4845 lines
396 KiB
Plaintext

[00:00] Crash dump logging enabled: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GeometryPack-2057/dev/linux-cpu/crash_dump.log
[00:00]
[00:00] [1/5] SYNTAX
[00:00] ----------------------------------------
[00:00]
[DEBUG] server=None, api=None
[00:00] Found pyproject.toml (modern format)
[00:00] Found requirements.txt (legacy format)
[00:00] Unicode check: OK (all characters cp1252-safe)
[00:00] Forbidden patterns check: OK
[00:00] [SYNTAX] PASSED
[00:00]
[00:00] [2/5] INSTALL
[00:00] ----------------------------------------
[00:00]
[DEBUG] server=None, api=None
[00:00]
Setting up ComfyUI...
[00:00] Creating virtual environment...
[00:00] Running: uv venv /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/.venv --python 3.13
[00:01] torch_version='2.10.0' -> pinning torch==2.10.0 torchvision==0.25.0 torchaudio==2.10.0
[00:01] Cloning ComfyUI (latest)...
[00:01] Running: git clone --depth 1 https://github.com/comfyanonymous/ComfyUI.git /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI
[00:03] Pinning torch family from https://download.pytorch.org/whl/cpu: torch==2.10.0 torchvision==0.25.0 torchaudio==2.10.0
[00:03] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/.venv/bin/python --index-url https://download.pytorch.org/whl/cpu --extra-index-url https://pypi.org/simple --index-strategy unsafe-best-match torch==2.10.0 torchvision==0.25.0 torchaudio==2.10.0
[00:08] Installing ComfyUI requirements...
[00:08] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/.venv/bin/python --index-url https://download.pytorch.org/whl/cpu --extra-index-url https://pypi.org/simple --index-strategy unsafe-best-match -r /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/requirements.txt
[00:13]
Installing custom node...
[00:13] Copying ComfyUI-GeometryPack to custom_nodes/...
[00:13] Installing node requirements...
[00:13] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/.venv/bin/python --index-url https://download.pytorch.org/whl/cpu --extra-index-url https://pypi.org/simple --index-strategy unsafe-best-match -r /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack/requirements.txt
[00:15]
Running install.py...
[00:15] Running: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/.venv/bin/python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack/install.py
[00:16] [comfy-env] _discover: scanning /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes
[00:16] [comfy-env] _discover: ComfyUI-GeometryPack -> geometrypack-nodes (custom_nodes/ComfyUI-GeometryPack/nodes/comfy-env.toml)
[00:16] [comfy-env] Workspace: /home/runner/.ce
[00:16] [comfy-env] ComfyUI: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI
[00:16] [comfy-env] Found 1 node config(s):
[00:16] - geometrypack-nodes <- custom_nodes/ComfyUI-GeometryPack/nodes/comfy-env.toml (python=host)
[00:16] [comfy-env] Bootstrap interpreter has python 3.13 + torch 2.10.0 (cpu). Looking for cuda-only wheels matching cpu/torch2.10/cp313.
[00:18] [comfy-env] GPU: No GPU detected
[00:18] [comfy-env] No CUDA detected -- pinning comfyui torch to CPU index
[00:18] [comfy-env] Host glibc 2.39 -> system-requirements
[00:18] Generated /home/runner/.ce/pixi.toml
[00:18] [comfy-env] Installing 1 environment(s):
[00:18] - geometrypack-nodes (python=host, 14 pypi deps, 1 cuda wheels)
[00:18] [comfy-env] Running `pixi install -e geometrypack-nodes`...
[00:40] WARN Skipped running the post-link scripts because `run-post-link-scripts` = `false`
[00:40] - bin/.librsvg-pre-unlink.sh
[00:40] To enable them, run:
[00:40] pixi config set --local run-post-link-scripts insecure
[00:40] More info:
[00:40] https://pixi.sh/latest/reference/pixi_configuration/#run-post-link-scripts
[00:46] ✔ The geometrypack-nodes environment has been installed.
[00:46] [comfy-env] Recorded install hash b87d7ceefda4 -> /home/runner/.ce/install.hash
[00:46] [comfy-env] Install log: /home/runner/.ce/install.log
[00:46]
[00:46] Installation complete!
[00:47] Installing validation endpoint...
[00:47] Cloning PozzettiAndrea/ComfyUI-validate-endpoint...
[00:47] Running: git clone --depth 1 https://x-access-token:***@github.com/PozzettiAndrea/ComfyUI-validate-endpoint.git /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-validate-endpoint
[00:47] CUDA packages absent (will mock): cumesh
[00:47] [INSTALL] PASSED
[00:47]
[00:47] [3/5] REGISTRATION
[00:47] ----------------------------------------
[00:47]
[DEBUG] server=None, api=None
[00:47]
Starting ComfyUI server...
[00:47] Starting ComfyUI server on port 41889...
[00:47] CUDA mock packages: cumesh
[00:47] Starting ComfyUI server on port 41889...
[00:47] Waiting for server to be ready (timeout: 600s)...
[00:48] [ComfyUI] setup plugin alembic.autogenerate.schemas
[00:48] [ComfyUI] setup plugin alembic.autogenerate.tables
[00:48] [ComfyUI] setup plugin alembic.autogenerate.types
[00:48] [ComfyUI] setup plugin alembic.autogenerate.constraints
[00:48] [ComfyUI] setup plugin alembic.autogenerate.defaults
[00:48] [ComfyUI] setup plugin alembic.autogenerate.comments
[00:48] [ComfyUI] [comfy-env] ComfyUI-GeometryPack: 1 isolation env(s):
[00:48] [ComfyUI] [comfy-env] nodes -> /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack/nodes
[00:48] [ComfyUI] [comfy-env] Workspace: /home/runner/.ce
[00:48] [ComfyUI] [comfy-env] env: /home/runner/.ce/.pixi/envs/geometrypack-nodes [OK]
[00:48] [ComfyUI] [comfy-env] prestartup complete
[00:48] [ComfyUI]
[00:48] [ComfyUI] Prestartup times for custom nodes:
[00:48] [ComfyUI] 0.2 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack
[00:48] [ComfyUI]
[00:52] [ComfyUI] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []}
[00:52] [ComfyUI] Found comfy_kitchen backend eager: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'dequantize_mxfp8', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'scaled_mm_mxfp8', 'scaled_mm_nvfp4']}
[00:52] [ComfyUI] Found comfy_kitchen backend cuda: {'available': False, 'disabled': True, 'unavailable_reason': 'CUDA not available on this system', 'capabilities': []}
[00:52] [ComfyUI] Checkpoint files will always be loaded safely.
[00:52] [ComfyUI] Total VRAM 15990 MB, total RAM 15990 MB
[00:52] [ComfyUI] pytorch version: 2.10.0+cpu
[00:52] [ComfyUI] Set vram state to: DISABLED
[00:52] [ComfyUI] Device: cpu
[00:53] [ComfyUI] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention
[00:57] [ComfyUI] Python version: 3.13.13 (main, May 10 2026, 19:26:54) [Clang 22.1.3 ]
[00:57] [ComfyUI] ComfyUI version: 0.21.1
[00:57] [ComfyUI] comfy-aimdo version: 0.3.0
[00:57] [ComfyUI] comfy-kitchen version: 0.2.8
[00:57] [ComfyUI] ****** User settings have been changed to be stored on the server instead of browser storage. ******
[00:57] [ComfyUI] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ******
[00:57] [ComfyUI] comfyui-frontend-package version: 1.43.18
[00:57] [ComfyUI] comfyui-workflow-templates version: 0.9.77
[00:57] [ComfyUI] comfyui-embedded-docs version: 0.5.0
[00:57] [ComfyUI] comfy-kitchen version: 0.2.8
[00:57] [ComfyUI] comfy-aimdo version: 0.3.0
[00:57] [ComfyUI] [Prompt Server] web root: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/.venv/lib/python3.13/site-packages/comfyui_frontend_package/static
[00:57] [ComfyUI] Asset seeder disabled
[01:00] [ComfyUI] loading...
[01:00] [ComfyUI] calling register_nodes
[01:00] [ComfyUI] [comfy-env] Version: 0.3.89
[01:00] [ComfyUI] [comfy-env] register_nodes: ComfyUI-GeometryPack
[01:00] [ComfyUI] [comfy-env] ComfyUI source dir: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI
[01:00] [ComfyUI] [comfy-env] Found 1 isolation env(s)
[01:00] [ComfyUI] [comfy-env] Scanning nodes metadata (isolation root)...
[01:00] [ComfyUI] [comfy-env] Metadata scan: /home/runner/.pixi/bin/pixi run --as-is --manifest-path /home/runner/.ce/pixi.toml -e geometrypack-nodes python /tmp/comfy_meta_p62dwf37.py /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack nodes /tmp/comfy_meta_out_k6nd7tsc.pkl
[01:00] [ComfyUI] [comfy-env] Scan env PATH for nodes:
[01:00] [ComfyUI] [comfy-env] [0] /opt/hostedtoolcache/Python/3.11.15/x64/bin
[01:00] [ComfyUI] [comfy-env] [1] /opt/hostedtoolcache/Python/3.11.15/x64
[01:00] [ComfyUI] [comfy-env] [2] /snap/bin
[01:00] [ComfyUI] [comfy-env] [3] /home/runner/.local/bin
[01:00] [ComfyUI] [comfy-env] [4] /opt/pipx_bin
[01:00] [ComfyUI] [comfy-env] [5] /home/runner/.cargo/bin
[01:00] [ComfyUI] [comfy-env] [6] /home/runner/.config/composer/vendor/bin
[01:00] [ComfyUI] [comfy-env] [7] /usr/local/.ghcup/bin
[01:00] [ComfyUI] [comfy-env] [8] /home/runner/.dotnet/tools
[01:00] [ComfyUI] [comfy-env] [9] /usr/local/sbin
[01:00] [ComfyUI] [comfy-env] [10] /usr/local/bin
[01:00] [ComfyUI] [comfy-env] [11] /usr/sbin
[01:00] [ComfyUI] [comfy-env] [12] /usr/bin
[01:00] [ComfyUI] [comfy-env] [13] /sbin
[01:00] [ComfyUI] [comfy-env] [14] /bin
[01:00] [ComfyUI] [comfy-env] [15] /usr/games
[01:00] [ComfyUI] [comfy-env] [16] /usr/local/games
[01:00] [ComfyUI] [comfy-env] [17] /snap/bin
[01:04] [ComfyUI] [comfy-env] Metadata scan stderr for nodes:
[01:04] [ComfyUI] [comfy-env] [meta-scan] importing nodes from /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack
[01:04] [ComfyUI] [comfy-env] ERROR:root:Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[01:04] [ComfyUI] [comfy-env] [meta-scan] import OK
[01:04] [ComfyUI] [comfy-env] Scanned nodes: 125 nodes (4.3s)
[01:04] [ComfyUI] [comfy-env] Scanned nodes root: 125 nodes (4.3s)
[01:04] [ComfyUI] [comfy-env] Imported nodes root: 125 nodes (isolation)
[01:04] [ComfyUI] [comfy-env] Registered 125 total nodes
[01:04] [ComfyUI]
[01:04] [ComfyUI] Import times for custom nodes:
[01:04] [ComfyUI] 0.0 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/websocket_image_save.py
[01:04] [ComfyUI] 0.0 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-validate-endpoint
[01:04] [ComfyUI] 4.5 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack
[01:04] [ComfyUI]
[01:04] [ComfyUI] Context impl SQLiteImpl.
[01:04] [ComfyUI] Will assume non-transactional DDL.
[01:04] [ComfyUI] Context impl SQLiteImpl.
[01:04] [ComfyUI] Will assume non-transactional DDL.
[01:04] [ComfyUI] Running upgrade -> 0001_assets, Initial assets schema
[01:04] [ComfyUI] Revision ID: 0001_assets
[01:04] [ComfyUI] Revises: None
[01:04] [ComfyUI] Create Date: 2025-12-10 00:00:00
[01:04] [ComfyUI] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table.
[01:04] [ComfyUI] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references.
[01:04] [ComfyUI] Change preview_id FK from assets.id to asset_references.id.
[01:04] [ComfyUI] Database upgraded from None to 0003_add_metadata_job_id
[01:04] [ComfyUI] Starting server
[01:04] [ComfyUI]
[01:04] [ComfyUI] To see the GUI go to: http://127.0.0.1:41889
[01:05] Server responding, waiting for nodes to load...
[01:25] Server is ready!
[01:25] Checking for import errors in server logs...
[01:25] No import errors detected
[01:25] Found 847 registered nodes
[01:25] [REGISTRATION] PASSED
[01:25]
[01:25] [4/5] INSTANTIATION
[01:25] ----------------------------------------
[01:25]
[DEBUG] server=<comfy_test.comfyui.server.ComfyUIServer object at 0x7fac7b9f7b10>, api=<comfy_test.comfyui.api.ComfyUIAPI object at 0x7fac7cc84a50>
[01:25] Testing node constructors...
[01:26] All 125 node(s) instantiated successfully!
[01:26] [INSTANTIATION] PASSED
[01:26]
[01:26] [5/5] EXECUTION
[01:26] ----------------------------------------
[01:26]
[DEBUG] server=<comfy_test.comfyui.server.ComfyUIServer object at 0x7fac7b9f7b10>, api=<comfy_test.comfyui.api.ComfyUIAPI object at 0x7fac7cc84a50>
[01:26] CPU runner - will execute 30 workflow(s)
[01:26] Running 33 workflow(s) (all with videos)...
[01:26] Installing screenshot dependencies (playwright, pillow)...
[01:27] Packages installed, downloading chromium browser...
[01:40] Screenshot dependencies installed successfully
[01:40] Starting headless browser...
[01:40] Installing Mesa llvmpipe (apt)...
[01:47] Mesa install failed: E: Unable to locate package libegl1-mesa
[01:47] No GPU, no Mesa -- using SwiftShader software rendering
[01:48] Capturing execution frames: alpha_wrap.json
[01:55] Frame 1 saved (frame_000.jpg, t=0.0s)
[01:55] Validating workflow...
[01:55] [ComfyUI] === /validate endpoint called ===
[01:55] [ComfyUI] Received JSON with keys: ['prompt']
[01:55] [ComfyUI] Prompt has 5 nodes
[01:55] [ComfyUI] Node 4: GeomPackLoadMesh
[01:55] [ComfyUI] Inputs: {"file_path": "3d/ArmoredWarrior_00005_.glb"}
[01:55] [ComfyUI] Node 5: GeomPackAlphaWrap
[01:55] Queuing workflow for execution...
[01:55] [ComfyUI] Inputs: {"alpha_percent": 1.1, "offset_percent": 0.01, "report_panel": "false", "input_mesh": ["4", 0]}
[01:55] [ComfyUI] Node 6: GeomPackPreviewMeshDual
[01:55] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[1.6361067258611197,1.6476459280683735,1.6093683
[01:55] [ComfyUI] Node 9: GeomPackPreviewMeshMulti
[01:55] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[1.6361067258611197,1.6476459280683735,1.6093683078862575],\\\"focalPoint\\\":[0.0000012814998626708984,-
[01:55] [ComfyUI] Node 11: GeomPackRemesh
[01:55] [ComfyUI] Inputs: {"backend": "pymeshlab_isotropic", "backend.target_edge_length": 1, "backend.iterations": 3, "backend.feature_angle": 30, "backend.adaptive": "false", "report_panel": "false", "trimesh": ["5", 0]}
[01:55] [ComfyUI] Generated prompt_id: 791b2054-9a82-441c-97ab-86227373a571
[01:55] [ComfyUI] Calling execution.validate_prompt()...
[01:55] [ComfyUI] Validation result: valid=True
[01:55] [ComfyUI] === Validation PASSED ===
[01:55] [ComfyUI] got prompt
[01:55] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/ArmoredWarrior_00005_.glb'
[01:55] [ComfyUI] [comfy-env] SubprocessWorker: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[01:55] [ComfyUI] [comfy-env] env_vars: {'KMP_DUPLICATE_LIB_OK': 'TRUE', 'OMP_NUM_THREADS': '1', 'COMFYUI_BASE': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI'}
[01:55] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[01:55] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[01:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:55] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[01:55] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[01:55] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_2hj8ki3t/persistent_worker.py', 'abstract://comfy_worker_6fe1c8f539f2']...
[01:55] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_6fe1c8f539f2 (abstract, no filesystem path)
[01:56] [ComfyUI] [worker:ComfyUI-GeometryPack] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[01:56] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:56] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:56] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[01:56] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:56] [ComfyUI] [SubprocessWorker] call_id=1 sending call_method
[01:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/ArmoredWarrior_00005_.glb
[01:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/ArmoredWarrior_00005_.glb
[01:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting Scene to single mesh (scene has 1 geometries)
[01:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 18061 vertices, 19827 faces
[01:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 18061 vertices, 19827 faces
[01:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 18061 vertices, 19827 faces
[01:57] [ComfyUI] [SubprocessWorker] got response: ok
[01:57] Frame 2 saved (frame_001.jpg, t=2.3s)
[01:57] [capture-periodic] freeze=2ms shot=102ms unfreeze=4ms saved=True
[01:57] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.87s): result: NodeOutput
[01:57] [ComfyUI] [comfy-env] Running GeomPackAlphaWrap: alpha_percent: 1.1, offset_percent: 0.01, input_mesh: Trimesh
[01:57] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction_cgal.alpha_wrap.AlphaWrapNode.EXECUTE_NORMALIZED
[01:57] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:57] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[01:57] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[01:57] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:57] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[01:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:58] [ComfyUI] [SubprocessWorker] call_id=2 sending call_method
[01:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 18,061 vertices, 19,827 faces (mesh)
[01:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Bounding box diagonal: 1.4618
[01:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Alpha: 0.016080 (1.1% of bbox)
[01:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Offset: 0.000146 (0.01% of bbox)
[01:58] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2
[01:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Built CGAL input data in 0.1s
[01:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Running CGAL Alpha Wrap...
[01:59] Frame 3 saved (frame_002.jpg, t=4.5s)
[01:59] [capture-periodic] freeze=2ms shot=93ms unfreeze=4ms saved=True
[02:00] [capture-loop] iter=50 t=5.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.9/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=27% browser_rss=0.85GB
[02:00] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2
[02:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Alpha Wrap finished in 0.0s, RSS 643 MB (+33 MB)
[02:01] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extracted result mesh in 0.2s
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 12,770 vertices, 25,536 faces
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Watertight: True
[02:01] [ComfyUI] [SubprocessWorker] got response: ok
[02:01] [ComfyUI] [comfy-env] GeomPackAlphaWrap done (3.13s): result: NodeOutput
[02:01] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[02:01] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[02:01] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:01] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:01] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:01] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:01] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:01] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:01] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:01] [ComfyUI] [SubprocessWorker] call_id=3 sending call_method
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[02:01] [ComfyUI] [SubprocessWorker] got response: ok
[02:01] [ComfyUI] [comfy-env] GeomPackRemesh done (0.02s): result: NodeOutput
[02:01] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[02:01] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[02:01] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:01] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:01] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:01] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:01] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:01] Node executed (1 total), capturing...
[02:01] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:01] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:01] [ComfyUI] [SubprocessWorker] call_id=4 sending call_method
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 18061 vertices, 19827 faces
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 12770 vertices, 25536 faces
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=texture, texture=True, vertex_colors=False
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_eef7232c.stl
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_eef7232c.stl
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[02:01] [ComfyUI] [SubprocessWorker] got response: ok
[02:01] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.11s): result: NodeOutput
[02:01] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[02:01] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[02:01] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:01] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:01] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:01] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:01] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:01] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:01] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:01] [ComfyUI] [SubprocessWorker] call_id=5 sending call_method
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 12770 vertices, 25536 faces
[02:01] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[02:01] Frame 4 saved (frame_003.jpg, t=6.4s)
[02:01] [capture-node] freeze=47ms shot=562ms unfreeze=9ms saved=True
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 1973 vertices, 3942 faces
[02:02] [ComfyUI] [SubprocessWorker] got response: ok
[02:02] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (1.31s): result: NodeOutput
[02:02] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh
[02:02] Node executed (2 total), capturing...
[02:02] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[02:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:02] [ComfyUI] [SubprocessWorker] created 3 shm blocks
[02:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:02] [ComfyUI] [SubprocessWorker] call_id=6 sending call_method
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 18061 vertices, 19827 faces
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_2b62f661.vtp
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (18061 vertices)
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 18061 vertices, 19827 faces
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_2b62f661.vtp
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 12770 vertices, 25536 faces
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_2b62f661.vtp
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (12770 vertices)
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 12770 vertices, 25536 faces
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_2b62f661.vtp
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 1973 vertices, 3942 faces
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_2b62f661.vtp
[02:02] Frame 5 saved (frame_004.jpg, t=7.8s)
[02:02] [capture-node] freeze=3ms shot=108ms unfreeze=4ms saved=True
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (1973 vertices)
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 1973 vertices, 3942 faces
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_2b62f661.vtp
[02:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready
[02:02] [ComfyUI] [SubprocessWorker] got response: ok
[02:02] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.34s): result: NodeOutput
[02:02] [ComfyUI] Prompt executed in 7.78 seconds
[02:02] Node executed (3 total), capturing...
[02:03] [capture-node] freeze=3ms shot=128ms unfreeze=17ms saved=False
[02:03] Node executed (4 total), capturing...
[02:04] Frame 6 saved (frame_005.jpg, t=9.1s)
[02:04] [capture-node] freeze=47ms shot=129ms unfreeze=0ms saved=True
[02:04] Execution complete (t=9.1s)
[02:04] Captured 6 unique frames over 9.3s
[02:04] [debug] iframes: 2
[02:04] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[02:04] [debug] iframe[1]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=244x393, rafFrozen=True
[02:04] [timing] trigger_3d_previews: 0.0s
[02:06] Saved high-quality screenshot: alpha_wrap_executed.png
[02:06] [timing] final_screenshot: 0.3s
[02:06] Capturing execution frames: batch_remesh.json
[02:12] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:12] Validating workflow...
[02:12] [ComfyUI] === /validate endpoint called ===
[02:12] [ComfyUI] Received JSON with keys: ['prompt']
[02:12] [ComfyUI] Prompt has 4 nodes
[02:12] [ComfyUI] Node 1: GeomPackLoadMeshBatch
[02:12] [ComfyUI] Inputs: {"folder_path": "3d", "start_index": 0, "max_meshes": 4}
[02:12] [ComfyUI] Node 4: GeomPackMeshInfo
[02:12] Queuing workflow for execution...
[02:12] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]}
[02:12] [ComfyUI] Node 6: GeomPackPreviewMeshVTKBatch
[02:12] [ComfyUI] Inputs: {"mode": "fields", "index": 0, "preview_vtk_batch": "{\"show_edges\":false,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\
[02:12] [ComfyUI] Node 11: GeomPackRemesh
[02:12] [ComfyUI] Inputs: {"backend": "pymeshlab_isotropic", "backend.target_edge_length": 1, "backend.iterations": 3, "backend.feature_angle": 30, "backend.adaptive": "false", "report_panel": "false", "trimesh": ["1", 0]}
[02:12] [ComfyUI] Generated prompt_id: 04952c9c-0508-4616-b1d4-f473ca980c16
[02:12] [ComfyUI] Calling execution.validate_prompt()...
[02:12] [ComfyUI] Validation result: valid=True
[02:12] [ComfyUI] === Validation PASSED ===
[02:12] [ComfyUI] got prompt
[02:12] [ComfyUI] [comfy-env] Running GeomPackLoadMeshBatch: folder_path: '3d', start_index: 0, max_meshes: 4
[02:12] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh_batch.LoadMeshBatch.EXECUTE_NORMALIZED
[02:12] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:12] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:12] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:12] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:12] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:12] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:12] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:12] [ComfyUI] [SubprocessWorker] call_id=7 sending call_method
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found folder in input: 3d
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 12 mesh files
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading up to 4 meshes
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/ArmoredWarrior_00005_.glb
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting Scene to single mesh (scene has 1 geometries)
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 18061 vertices, 19827 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 18061 vertices, 19827 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [1/4] Loaded ArmoredWarrior_00005_.glb: 18061 vertices, 19827 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/Stanford_Bunny.stl
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [2/4] Loaded Stanford_Bunny.stl: 56203 vertices, 112402 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/camel_b.obj
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2032 vertices, 3576 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2032 vertices, 3576 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [3/4] Loaded camel_b.obj: 2032 vertices, 3576 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/camelhead.off
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [4/4] Loaded camelhead.off: 11381 vertices, 22704 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded 4 meshes
[02:12] [ComfyUI] [SubprocessWorker] got response: ok
[02:12] [ComfyUI] [comfy-env] GeomPackLoadMeshBatch done (0.53s): result: NodeOutput
[02:12] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[02:12] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[02:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:13] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:13] [ComfyUI] [SubprocessWorker] call_id=8 sending call_method
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[02:13] [ComfyUI] [SubprocessWorker] got response: ok
[02:13] [ComfyUI] [comfy-env] GeomPackRemesh done (0.13s): result: NodeOutput
[02:13] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[02:13] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[02:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:13] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:13] [ComfyUI] [SubprocessWorker] call_id=9 sending call_method
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[02:13] [ComfyUI] [SubprocessWorker] got response: ok
[02:13] [ComfyUI] [comfy-env] GeomPackRemesh done (0.02s): result: NodeOutput
[02:13] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[02:13] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[02:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:13] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:13] [ComfyUI] [SubprocessWorker] call_id=10 sending call_method
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[02:13] [ComfyUI] [SubprocessWorker] got response: ok
[02:13] [ComfyUI] [comfy-env] GeomPackRemesh done (0.01s): result: NodeOutput
[02:13] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[02:13] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[02:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:13] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:13] [ComfyUI] [SubprocessWorker] call_id=11 sending call_method
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[02:13] [ComfyUI] [SubprocessWorker] got response: ok
[02:13] [ComfyUI] [comfy-env] GeomPackRemesh done (0.01s): result: NodeOutput
[02:13] [ComfyUI] [comfy-env] Running GeomPackMeshInfo: trimesh: list[4]
[02:13] [ComfyUI] [SubprocessWorker] call_method: nodes.analysis.mesh_info.MeshInfoNode.EXECUTE_NORMALIZED
[02:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:13] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[02:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:13] [ComfyUI] [SubprocessWorker] call_id=12 sending call_method
[02:13] [ComfyUI] [SubprocessWorker] got response: ok
[02:13] [ComfyUI] [comfy-env] GeomPackMeshInfo done (0.30s): result: NodeOutput
[02:13] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[02:13] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[02:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:13] Node executed (1 total), capturing...
[02:13] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:13] [ComfyUI] [SubprocessWorker] call_id=13 sending call_method
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 18061 vertices, 19827 faces
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[02:13] Frame 2 saved (frame_001.jpg, t=1.3s)
[02:13] [capture-node] freeze=2ms shot=93ms unfreeze=4ms saved=True
[02:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 5249 vertices, 11066 faces
[02:14] [ComfyUI] [SubprocessWorker] got response: ok
[02:14] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (1.15s): result: NodeOutput
[02:14] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[02:14] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[02:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:14] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:14] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:14] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:14] [ComfyUI] [SubprocessWorker] call_id=14 sending call_method
[02:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[02:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces
[02:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[02:14] Node executed (2 total), capturing...
[02:15] Frame 3 saved (frame_002.jpg, t=2.6s)
[02:15] [capture-node] freeze=3ms shot=106ms unfreeze=3ms saved=True
[02:17] Frame 4 saved (frame_003.jpg, t=4.8s)
[02:17] [capture-periodic] freeze=2ms shot=95ms unfreeze=4ms saved=True
[02:18] [capture-loop] iter=50 t=6.1s state={'complete': False, 'error': None, 'executedCount': 2, 'wsState': 1} eval_ms=2 ram=3.3/15.6GB (21%) swap=0.0/3.0GB (0%) cpu=34% browser_rss=1.04GB
[02:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 32288 vertices, 64572 faces
[02:20] [ComfyUI] [SubprocessWorker] got response: ok
[02:20] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (5.48s): result: NodeOutput
[02:20] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[02:20] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[02:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:20] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:20] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:20] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:20] [ComfyUI] [SubprocessWorker] call_id=15 sending call_method
[02:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[02:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2032 vertices, 3576 faces
[02:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[02:20] Node executed (3 total), capturing...
[02:20] Frame 5 saved (frame_004.jpg, t=8.0s)
[02:20] [capture-node] freeze=3ms shot=99ms unfreeze=3ms saved=True
[02:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 9672 vertices, 19342 faces
[02:20] [ComfyUI] [SubprocessWorker] got response: ok
[02:20] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (0.51s): result: NodeOutput
[02:20] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[02:20] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[02:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:20] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:20] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:20] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:20] [ComfyUI] [SubprocessWorker] call_id=16 sending call_method
[02:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[02:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 11381 vertices, 22704 faces
[02:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[02:20] Node executed (4 total), capturing...
[02:20] Frame 6 saved (frame_005.jpg, t=8.5s)
[02:20] [capture-node] freeze=3ms shot=97ms unfreeze=4ms saved=True
[02:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 207 vertices, 396 faces
[02:21] [ComfyUI] [SubprocessWorker] got response: ok
[02:21] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (0.84s): result: NodeOutput
[02:21] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTKBatch: mode: list[1], index: list[1], trimesh: list[4]
[02:21] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk_batch.PreviewMeshVTKBatchNode.EXECUTE_NORMALIZED
[02:21] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:21] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:21] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:21] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[02:21] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:21] [ComfyUI] [SubprocessWorker] call_id=17 sending call_method
[02:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Batch size: 4, showing index: 1/4
[02:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 5249 vertices, 11066 faces
[02:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[02:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[02:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP/STL export
[02:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_batch_c4e97108.stl
[02:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=False, volume=None, area=4.31976988243847, no fields
[02:21] [ComfyUI] [SubprocessWorker] got response: ok
[02:21] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTKBatch done (0.03s): result: NodeOutput
[02:21] [ComfyUI] Prompt executed in 9.02 seconds
[02:21] Node executed (5 total), capturing...
[02:21] Frame 7 saved (frame_006.jpg, t=9.3s)
[02:21] [capture-node] freeze=3ms shot=95ms unfreeze=4ms saved=True
[02:21] Node executed (6 total), capturing...
[02:22] Frame 8 saved (frame_007.jpg, t=9.8s)
[02:22] [capture-node] freeze=3ms shot=94ms unfreeze=0ms saved=True
[02:22] Execution complete (t=9.8s)
[02:22] Captured 8 unique frames over 9.93s
[02:22] [debug] iframes: 1
[02:22] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779137, canvas=622x373, rafFrozen=True
[02:22] [timing] trigger_3d_previews: 0.0s
[02:24] Saved high-quality screenshot: batch_remesh_executed.png
[02:24] [timing] final_screenshot: 0.2s
[02:24] Capturing execution frames: boolean_ops.json
[02:30] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:30] Validating workflow...
[02:30] [ComfyUI] === /validate endpoint called ===
[02:30] [ComfyUI] Received JSON with keys: ['prompt']
[02:30] [ComfyUI] Prompt has 5 nodes
[02:30] [ComfyUI] Node 1: GeomPackCreatePrimitive
[02:30] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1}
[02:30] [ComfyUI] Node 2: GeomPackCreatePrimitive
[02:30] Queuing workflow for execution...
[02:30] [ComfyUI] Inputs: {"shape": "sphere", "size": 2.5, "subdivisions": 2}
[02:30] [ComfyUI] Node 21: GeomPackPreviewMeshDual
[02:30] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"se
[02:30] [ComfyUI] Node 22: GeomPackPreviewMeshVTK
[02:30] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":true,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\"}", "trimesh": ["2
[02:30] [ComfyUI] Node 25: GeomPackBoolean
[02:30] [ComfyUI] Inputs: {"operation": "union", "backend": "libigl_cgal", "mesh_a": ["1", 0], "mesh_b": ["2", 0]}
[02:30] [ComfyUI] Generated prompt_id: fa7b9c6b-921f-442e-83c6-d1eb363e33fa
[02:30] [ComfyUI] Calling execution.validate_prompt()...
[02:30] [ComfyUI] Validation result: valid=True
[02:30] [ComfyUI] === Validation PASSED ===
[02:30] [ComfyUI] got prompt
[02:30] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 2.5, subdivisions: 2
[02:30] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[02:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:30] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:30] [ComfyUI] [SubprocessWorker] call_id=18 sending call_method
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 162 vertices, 320 faces
[02:30] [ComfyUI] [SubprocessWorker] got response: ok
[02:30] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[02:30] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1
[02:30] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[02:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:30] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:30] [ComfyUI] [SubprocessWorker] call_id=19 sending call_method
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[02:30] [ComfyUI] [SubprocessWorker] got response: ok
[02:30] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[02:30] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[02:30] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[02:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:30] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:30] [ComfyUI] [SubprocessWorker] call_id=20 sending call_method
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 8 vertices, 12 faces
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 162 vertices, 320 faces
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_c9db1d0d.stl
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_c9db1d0d.stl
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[02:30] [ComfyUI] [SubprocessWorker] got response: ok
[02:30] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[02:30] [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'union', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh
[02:30] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.EXECUTE_NORMALIZED
[02:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:30] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:30] [ComfyUI] [SubprocessWorker] call_id=21 sending call_method
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: libigl_cgal -> GeomPackBoolean_LibiglCGAL
[02:30] [ComfyUI] [SubprocessWorker] got response: ok
[02:30] [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput
[02:30] [ComfyUI] [comfy-env] Running GeomPackBoolean_LibiglCGAL: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'union'
[02:30] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.backends.libigl_cgal.BooleanLibiglCGALNode.EXECUTE_NORMALIZED
[02:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:30] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:30] [ComfyUI] [SubprocessWorker] call_id=22 sending call_method
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_cgal
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 8 vertices, 12 faces
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 162 vertices, 320 faces
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: union
[02:30] Node executed (1 total), capturing...
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 302 vertices, 600 faces
[02:30] [ComfyUI] [SubprocessWorker] got response: ok
[02:30] [ComfyUI] [comfy-env] GeomPackBoolean_LibiglCGAL done (0.24s): result: NodeOutput
[02:30] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh
[02:30] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[02:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:30] [ComfyUI] [SubprocessWorker] call_id=23 sending call_method
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 302 vertices, 600 faces
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_b07f9343.vtp
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (302 vertices)
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 302 vertices, 600 faces
[02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_b07f9343.vtp
[02:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=True, volume=9.214489033870414, area=25.093742655540616, no fields
[02:31] [ComfyUI] [SubprocessWorker] got response: ok
[02:31] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.03s): result: NodeOutput
[02:31] [ComfyUI] Prompt executed in 0.32 seconds
[02:31] Frame 2 saved (frame_001.jpg, t=0.4s)
[02:31] [capture-node] freeze=61ms shot=263ms unfreeze=99ms saved=True
[02:31] Node executed (3 total), capturing...
[02:31] Frame 3 saved (frame_002.jpg, t=1.1s)
[02:31] [capture-node] freeze=2ms shot=126ms unfreeze=0ms saved=True
[02:31] Execution complete (t=1.1s)
[02:31] Captured 3 unique frames over 1.3s
[02:31] [debug] iframes: 2
[02:31] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[02:31] [debug] iframe[1]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779138, canvas=486x348, rafFrozen=True
[02:31] [timing] trigger_3d_previews: 0.0s
[02:34] Saved high-quality screenshot: boolean_ops_executed.png
[02:34] [timing] final_screenshot: 0.3s
[02:34] Capturing execution frames: boolean_ops_all.json
[02:40] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:40] Validating workflow...
[02:40] [ComfyUI] === /validate endpoint called ===
[02:40] [ComfyUI] Received JSON with keys: ['prompt']
[02:40] [ComfyUI] Prompt has 5 nodes
[02:40] [ComfyUI] Node 1: GeomPackCreatePrimitive
[02:40] [ComfyUI] Inputs: {"shape": "sphere", "size": 1, "subdivisions": 4}
[02:40] [ComfyUI] Node 2: GeomPackCreatePrimitive
[02:40] Queuing workflow for execution...
[02:40] [ComfyUI] Inputs: {"shape": "cube", "size": 0.8, "subdivisions": 1}
[02:40] [ComfyUI] Node 3: GeomPackBoolean
[02:40] [ComfyUI] Inputs: {"operation": "difference", "backend": "libigl_cgal", "mesh_a": ["1", 0], "mesh_b": ["2", 0]}
[02:40] [ComfyUI] Node 4: GeomPackBoolean
[02:40] [ComfyUI] Inputs: {"operation": "difference", "backend": "blender_exact", "mesh_a": ["1", 0], "mesh_b": ["2", 0]}
[02:40] [ComfyUI] Node 5: GeomPackPreviewMeshMulti
[02:40] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[1.2245775204403364,1.2245775204403364,1.2245775204403364],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\":[0,0
[02:40] [ComfyUI] Generated prompt_id: ae9f9f26-c060-4dc0-bc18-82d9c8c2ac31
[02:40] [ComfyUI] Calling execution.validate_prompt()...
[02:40] [ComfyUI] Validation result: valid=True
[02:40] [ComfyUI] === Validation PASSED ===
[02:40] [ComfyUI] got prompt
[02:40] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 0.8, subdivisions: 1
[02:40] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[02:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:40] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:40] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:40] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:40] [ComfyUI] [SubprocessWorker] call_id=24 sending call_method
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[02:40] [ComfyUI] [SubprocessWorker] got response: ok
[02:40] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[02:40] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 1.0, subdivisions: 4
[02:40] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[02:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:40] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:40] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:40] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:40] [ComfyUI] [SubprocessWorker] call_id=25 sending call_method
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 2562 vertices, 5120 faces
[02:40] [ComfyUI] [SubprocessWorker] got response: ok
[02:40] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[02:40] [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'difference', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh
[02:40] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.EXECUTE_NORMALIZED
[02:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:40] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:40] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:40] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:40] [ComfyUI] [SubprocessWorker] call_id=26 sending call_method
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: libigl_cgal -> GeomPackBoolean_LibiglCGAL
[02:40] [ComfyUI] [SubprocessWorker] got response: ok
[02:40] [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput
[02:40] [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'difference', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh
[02:40] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.EXECUTE_NORMALIZED
[02:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:40] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:40] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:40] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:40] [ComfyUI] [SubprocessWorker] call_id=27 sending call_method
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: blender_exact -> GeomPackBoolean_BlenderExact
[02:40] [ComfyUI] [SubprocessWorker] got response: ok
[02:40] [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput
[02:40] [ComfyUI] [comfy-env] Running GeomPackBoolean_LibiglCGAL: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'difference'
[02:40] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.backends.libigl_cgal.BooleanLibiglCGALNode.EXECUTE_NORMALIZED
[02:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:40] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:40] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:40] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:40] [ComfyUI] [SubprocessWorker] call_id=28 sending call_method
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_cgal
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 2562 vertices, 5120 faces
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 8 vertices, 12 faces
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: difference
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 2202 vertices, 4380 faces
[02:40] [ComfyUI] [SubprocessWorker] got response: ok
[02:40] [ComfyUI] [comfy-env] GeomPackBoolean_LibiglCGAL done (0.67s): result: NodeOutput
[02:40] [ComfyUI] [comfy-env] Running GeomPackBoolean_BlenderExact: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'difference'
[02:40] [ComfyUI] [SubprocessWorker] call_method: nodes.blender_boolean.boolean.BooleanBlenderExactNode.EXECUTE_NORMALIZED
[02:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:40] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:40] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:40] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:40] [ComfyUI] [SubprocessWorker] call_id=29 sending call_method
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: blender_exact
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 2562 vertices, 5120 faces
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 8 vertices, 12 faces
[02:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: difference
[02:40] Node executed (1 total), capturing...
[02:41] Frame 2 saved (frame_001.jpg, t=1.0s)
[02:41] [capture-node] freeze=3ms shot=89ms unfreeze=4ms saved=True
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 2202 vertices, 4380 faces
[02:42] [ComfyUI] [SubprocessWorker] got response: ok
[02:42] [ComfyUI] [comfy-env] GeomPackBoolean_BlenderExact done (1.11s): result: NodeOutput
[02:42] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh
[02:42] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[02:42] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:42] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:42] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:42] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:42] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:42] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:42] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:42] [ComfyUI] [SubprocessWorker] call_id=30 sending call_method
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2202 vertices, 4380 faces
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_97c75ad7.vtp
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2202 vertices)
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2202 vertices, 4380 faces
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_97c75ad7.vtp
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2202 vertices, 4380 faces
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_97c75ad7.vtp
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2202 vertices)
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2202 vertices, 4380 faces
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_97c75ad7.vtp
[02:42] Node executed (2 total), capturing...
[02:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready
[02:42] [ComfyUI] [SubprocessWorker] got response: ok
[02:42] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.06s): result: NodeOutput
[02:42] [ComfyUI] Prompt executed in 1.89 seconds
[02:42] Frame 3 saved (frame_002.jpg, t=2.2s)
[02:42] [capture-node] freeze=198ms shot=238ms unfreeze=2ms saved=True
[02:42] Node executed (3 total), capturing...
[02:43] [capture-node] freeze=3ms shot=153ms unfreeze=0ms saved=False
[02:43] Execution complete (t=2.9s)
[02:43] Captured 3 unique frames over 3.05s
[02:43] [debug] iframes: 1
[02:43] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x393, rafFrozen=True
[02:43] [timing] trigger_3d_previews: 0.0s
[02:45] Saved high-quality screenshot: boolean_ops_all_executed.png
[02:45] [timing] final_screenshot: 0.3s
[02:45] Capturing execution frames: decimate.json
[02:51] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:51] Validating workflow...
[02:51] [ComfyUI] === /validate endpoint called ===
[02:51] [ComfyUI] Received JSON with keys: ['prompt']
[02:51] [ComfyUI] Prompt has 3 nodes
[02:51] [ComfyUI] Node 2: GeomPackLoadMesh
[02:51] [ComfyUI] Inputs: {"file_path": "3d/spot_the_cow.obj"}
[02:51] [ComfyUI] Node 3: GeomPackPreviewMeshDual
[02:51] Queuing workflow for execution...
[02:51] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-3.3575253938003646,2.5035395853711653,0.519424
[02:51] [ComfyUI] Node 4: GeomPackDecimateMesh
[02:51] [ComfyUI] Inputs: {"backend": "quadric_edge_collapse", "backend.target_face_count": 1004, "backend.quality_threshold": 0.3, "backend.preserve_boundary": "true", "backend.preserve_normal": "true", "backend.preserve_topo
[02:51] [ComfyUI] Generated prompt_id: 5aab75a4-a8d1-4be9-8b54-a32ef7a92369
[02:51] [ComfyUI] Calling execution.validate_prompt()...
[02:51] [ComfyUI] Validation result: valid=True
[02:51] [ComfyUI] === Validation PASSED ===
[02:51] [ComfyUI] got prompt
[02:51] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/spot_the_cow.obj'
[02:51] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[02:51] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:51] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:51] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:51] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:51] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:51] [ComfyUI] [SubprocessWorker] call_id=31 sending call_method
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/spot_the_cow.obj
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/spot_the_cow.obj
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 3225 vertices, 5856 faces
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 3225 vertices, 5856 faces
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 3225 vertices, 5856 faces
[02:51] [ComfyUI] [SubprocessWorker] got response: ok
[02:51] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.04s): result: NodeOutput
[02:51] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[02:51] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[02:51] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:51] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:51] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:51] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:51] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:51] [ComfyUI] [SubprocessWorker] call_id=32 sending call_method
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: quadric_edge_collapse -> GeomPackDecimate_QuadricEdgeCollapse
[02:51] [ComfyUI] [SubprocessWorker] got response: ok
[02:51] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.02s): result: NodeOutput
[02:51] [ComfyUI] [comfy-env] Running GeomPackDecimate_QuadricEdgeCollapse: trimesh: Trimesh, target_face_count: 1004, quality_threshold: 0.3, preserve_boundary: 'true', preserve_normal: 'true', preserve_topology: 'true', planar_quadric: 'false'
[02:51] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.quadric_edge_collapse.DecimateQuadricEdgeCollapseNode.EXECUTE_NORMALIZED
[02:51] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:51] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:51] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:51] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:51] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:51] [ComfyUI] [SubprocessWorker] call_id=33 sending call_method
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: quadric_edge_collapse
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 3,225 vertices, 5,856 faces
[02:51] [ComfyUI] [SubprocessWorker] got response: ok
[02:51] [ComfyUI] [comfy-env] GeomPackDecimate_QuadricEdgeCollapse done (0.10s): result: NodeOutput
[02:51] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[02:51] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[02:51] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:51] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:51] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:51] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:51] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:51] [ComfyUI] [SubprocessWorker] call_id=34 sending call_method
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 3225 vertices, 5856 faces
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 504 vertices, 1004 faces
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=texture, texture=True, vertex_colors=False
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[02:51] Node executed (1 total), capturing...
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_233213e9.stl
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_233213e9.stl
[02:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[02:51] [ComfyUI] [SubprocessWorker] got response: ok
[02:51] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[02:51] [ComfyUI] Prompt executed in 0.18 seconds
[02:52] Frame 2 saved (frame_001.jpg, t=0.5s)
[02:52] [capture-node] freeze=129ms shot=242ms unfreeze=3ms saved=True
[02:52] Node executed (2 total), capturing...
[02:52] [capture-node] freeze=3ms shot=132ms unfreeze=0ms saved=False
[02:52] Execution complete (t=1.1s)
[02:52] Captured 2 unique frames over 1.28s
[02:52] [debug] iframes: 1
[02:52] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[02:52] [timing] trigger_3d_previews: 0.0s
[02:54] Saved high-quality screenshot: decimate_executed.png
[02:54] [timing] final_screenshot: 0.3s
[02:55] Capturing execution frames: decimate_all.json
[03:00] Frame 1 saved (frame_000.jpg, t=0.0s)
[03:00] Validating workflow...
[03:00] [ComfyUI] === /validate endpoint called ===
[03:00] [ComfyUI] Received JSON with keys: ['prompt']
[03:00] [ComfyUI] Prompt has 7 nodes
[03:00] [ComfyUI] Node 1: GeomPackLoadMesh
[03:00] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[03:00] [ComfyUI] Node 2: GeomPackDecimateMesh
[03:00] Queuing workflow for execution...
[03:00] [ComfyUI] Inputs: {"backend": "quadric_edge_collapse", "backend.target_face_count": 5000, "backend.quality_threshold": 0.3, "backend.preserve_boundary": "true", "backend.preserve_normal": "true", "backend.preserve_topo
[03:00] [ComfyUI] Node 3: GeomPackDecimateMesh
[03:00] [ComfyUI] Inputs: {"backend": "fast_simplification", "backend.target_reduction": 0.8, "backend.aggressiveness": 7, "trimesh": ["1", 0]}
[03:00] [ComfyUI] Node 4: GeomPackDecimateMesh
[03:00] [ComfyUI] Inputs: {"backend": "vertex_clustering", "backend.cluster_threshold": 3, "trimesh": ["1", 0]}
[03:00] [ComfyUI] Node 6: GeomPackDecimateMesh
[03:00] [ComfyUI] Inputs: {"backend": "decimate_pro", "backend.target_reduction": 0.8, "backend.feature_angle": 15, "backend.preserve_topology": "true", "trimesh": ["1", 0]}
[03:00] [ComfyUI] Node 7: GeomPackPreviewMeshMulti
[03:00] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[156.15573456772853,45.50443036606394,116.04835655422535],\\\"focalPoint\\\":[30.319300651550293,1.894807
[03:00] [ComfyUI] Node 8: GeomPackPreviewMeshMulti
[03:00] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[156.15573456772853,45.50443036606394,116.04835655422535],\\\"focalPoint\\\":[30.319300651550293,1.894807
[03:00] [ComfyUI] Generated prompt_id: cef3d2bb-eb74-4bc0-8b1f-8d87c58a0e82
[03:00] [ComfyUI] Calling execution.validate_prompt()...
[03:00] [ComfyUI] Validation result: valid=True
[03:00] [ComfyUI] === Validation PASSED ===
[03:00] [ComfyUI] got prompt
[03:00] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[03:00] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[03:00] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:00] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[03:00] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[03:00] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:00] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[03:00] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[03:00] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_2hj8ki3t/persistent_worker.py', 'abstract://comfy_worker_4712687ed601']...
[03:00] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[03:00] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_4712687ed601 (abstract, no filesystem path)
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[03:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:02] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[03:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:02] [ComfyUI] [SubprocessWorker] call_id=35 sending call_method
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/Stanford_Bunny.stl
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[03:02] [ComfyUI] [SubprocessWorker] got response: ok
[03:02] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.06s): result: NodeOutput
[03:02] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[03:02] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[03:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:02] [ComfyUI] [SubprocessWorker] call_id=36 sending call_method
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: decimate_pro -> GeomPackDecimate_DecimatePro
[03:02] [ComfyUI] [SubprocessWorker] got response: ok
[03:02] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput
[03:02] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[03:02] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[03:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:02] [ComfyUI] [SubprocessWorker] call_id=37 sending call_method
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: vertex_clustering -> GeomPackDecimate_VertexClustering
[03:02] [ComfyUI] [SubprocessWorker] got response: ok
[03:02] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput
[03:02] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[03:02] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[03:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:02] [ComfyUI] [SubprocessWorker] call_id=38 sending call_method
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: fast_simplification -> GeomPackDecimate_FastSimplification
[03:02] [ComfyUI] [SubprocessWorker] got response: ok
[03:02] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput
[03:02] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[03:02] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[03:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:02] [ComfyUI] [SubprocessWorker] call_id=39 sending call_method
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: quadric_edge_collapse -> GeomPackDecimate_QuadricEdgeCollapse
[03:02] [ComfyUI] [SubprocessWorker] got response: ok
[03:02] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput
[03:02] [ComfyUI] [comfy-env] Running GeomPackDecimate_DecimatePro: trimesh: Trimesh, target_reduction: 0.8, feature_angle: 15.0, preserve_topology: 'true'
[03:02] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.decimate_pro.DecimateProNode.EXECUTE_NORMALIZED
[03:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:02] [ComfyUI] [SubprocessWorker] call_id=40 sending call_method
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: decimate_pro
[03:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[03:03] Frame 2 saved (frame_001.jpg, t=2.2s)
[03:03] [capture-periodic] freeze=3ms shot=108ms unfreeze=6ms saved=True
[03:03] [ComfyUI] [SubprocessWorker] got response: ok
[03:03] [ComfyUI] [comfy-env] GeomPackDecimate_DecimatePro done (0.79s): result: NodeOutput
[03:03] [ComfyUI] [comfy-env] Running GeomPackDecimate_VertexClustering: trimesh: Trimesh, cluster_threshold: 3.0
[03:03] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.vertex_clustering.DecimateVertexClusteringNode.EXECUTE_NORMALIZED
[03:03] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:03] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:03] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:03] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:03] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:03] [ComfyUI] [SubprocessWorker] call_id=41 sending call_method
[03:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: vertex_clustering
[03:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[03:03] Node executed (1 total), capturing...
[03:03] [ComfyUI] [SubprocessWorker] got response: ok
[03:03] [ComfyUI] [comfy-env] GeomPackDecimate_VertexClustering done (0.19s): result: NodeOutput
[03:03] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh
[03:03] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[03:03] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:03] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:03] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:03] [ComfyUI] [SubprocessWorker] created 3 shm blocks
[03:03] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:03] [ComfyUI] [SubprocessWorker] call_id=42 sending call_method
[03:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3
[03:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[03:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_7b8ca9be.vtp
[03:04] Frame 3 saved (frame_002.jpg, t=3.3s)
[03:04] [capture-node] freeze=3ms shot=111ms unfreeze=3ms saved=True
[03:04] Node executed (2 total), capturing...
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_7b8ca9be.vtp
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11242 vertices, 22480 faces
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_7b8ca9be.vtp
[03:04] Frame 4 saved (frame_003.jpg, t=3.7s)
[03:04] [capture-node] freeze=3ms shot=94ms unfreeze=5ms saved=True
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11242 vertices)
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11242 vertices, 22480 faces
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_7b8ca9be.vtp
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 1272 vertices, 2582 faces
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_7b8ca9be.vtp
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (1272 vertices)
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 1272 vertices, 2582 faces
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_7b8ca9be.vtp
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready
[03:04] [ComfyUI] [SubprocessWorker] got response: ok
[03:04] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.62s): result: NodeOutput
[03:04] [ComfyUI] [comfy-env] Running GeomPackDecimate_FastSimplification: trimesh: Trimesh, target_reduction: 0.8, aggressiveness: 7
[03:04] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.fast_simplification.DecimateFastSimplificationNode.EXECUTE_NORMALIZED
[03:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:04] [ComfyUI] [SubprocessWorker] call_id=43 sending call_method
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: fast_simplification
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[03:04] Node executed (3 total), capturing...
[03:04] [ComfyUI] [SubprocessWorker] got response: ok
[03:04] [ComfyUI] [comfy-env] GeomPackDecimate_FastSimplification done (0.16s): result: NodeOutput
[03:04] [ComfyUI] [comfy-env] Running GeomPackDecimate_QuadricEdgeCollapse: trimesh: Trimesh, target_face_count: 5000, quality_threshold: 0.3, preserve_boundary: 'true', preserve_normal: 'true', preserve_topology: 'true', planar_quadric: 'false'
[03:04] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.quadric_edge_collapse.DecimateQuadricEdgeCollapseNode.EXECUTE_NORMALIZED
[03:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:04] [ComfyUI] [SubprocessWorker] call_id=44 sending call_method
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: quadric_edge_collapse
[03:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[03:06] [ComfyUI] [SubprocessWorker] got response: ok
[03:06] [ComfyUI] [comfy-env] GeomPackDecimate_QuadricEdgeCollapse done (2.11s): result: NodeOutput
[03:06] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh
[03:06] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[03:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:06] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:06] [ComfyUI] [SubprocessWorker] created 3 shm blocks
[03:06] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:06] [ComfyUI] [SubprocessWorker] call_id=45 sending call_method
[03:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3
[03:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[03:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_d9647104.vtp
[03:06] Frame 5 saved (frame_004.jpg, t=4.2s)
[03:06] [capture-node] freeze=1272ms shot=810ms unfreeze=3ms saved=True
[03:07] Node executed (5 total), capturing...
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_d9647104.vtp
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2502 vertices, 5000 faces
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_d9647104.vtp
[03:07] Frame 6 saved (frame_005.jpg, t=6.5s)
[03:07] [capture-node] freeze=3ms shot=151ms unfreeze=4ms saved=True
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2502 vertices)
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2502 vertices, 5000 faces
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_d9647104.vtp
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 11242 vertices, 22480 faces
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_d9647104.vtp
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11242 vertices)
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11242 vertices, 22480 faces
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_d9647104.vtp
[03:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready
[03:07] [ComfyUI] [SubprocessWorker] got response: ok
[03:07] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.64s): result: NodeOutput
[03:07] [ComfyUI] Prompt executed in 6.71 seconds
[03:07] Node executed (6 total), capturing...
[03:07] Frame 7 saved (frame_006.jpg, t=7.0s)
[03:07] [capture-node] freeze=3ms shot=173ms unfreeze=55ms saved=True
[03:09] Execution complete (t=8.4s)
[03:09] Captured 7 unique frames over 8.84s
[03:09] [debug] iframes: 2
[03:09] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=244x393, rafFrozen=False
[03:09] [debug] iframe[1]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=244x393, rafFrozen=False
[03:09] [timing] trigger_3d_previews: 0.0s
[03:11] Saved high-quality screenshot: decimate_all_executed.png
[03:11] [timing] final_screenshot: 0.4s
[03:12] Capturing execution frames: depth_map_to_mesh.json
[03:17] Frame 1 saved (frame_000.jpg, t=0.0s)
[03:17] Validating workflow...
[03:17] [ComfyUI] === /validate endpoint called ===
[03:17] [ComfyUI] Received JSON with keys: ['prompt']
[03:17] [ComfyUI] Prompt has 4 nodes
[03:17] [ComfyUI] Node 1: LoadImage
[03:17] [ComfyUI] Inputs: {"image": "example.png"}
[03:17] [ComfyUI] Node 4: GeomPackPreviewMeshVTK
[03:17] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"{\\\"position\\\":[-0.24987848276768215,0.32154187563545744,0.9133299327529744],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\":[0
[03:17] Queuing workflow for execution...
[03:17] [ComfyUI] Node 6: ImageToMask
[03:17] [ComfyUI] Inputs: {"channel": "red", "image": ["1", 0]}
[03:17] [ComfyUI] Node 7: GeomPackTextureToGeometry
[03:17] [ComfyUI] Inputs: {"height_scale": 1, "backend": "grid", "backend.smooth_normals": "true", "field_name": "field", "invert_height": "false", "skip_black": "false", "black_threshold": 0.01, "report_panel": "false", "mask
[03:17] [ComfyUI] Generated prompt_id: dbe41066-7e5f-43aa-ac97-e680b61e44bd
[03:17] [ComfyUI] Calling execution.validate_prompt()...
[03:17] [ComfyUI] Validation result: valid=True
[03:17] [ComfyUI] === Validation PASSED ===
[03:17] [ComfyUI] got prompt
[03:17] [ComfyUI] [comfy-env] Running GeomPackTextureToGeometry: height_scale: 1.0, backend: dict, field_name: 'field', invert_height: 'false', skip_black: 'false', black_threshold: 0.01, mask: torch.float32 [1,768,768] cpu
[03:17] [ComfyUI] [SubprocessWorker] call_method: nodes.texture_remeshing.texture_to_geometry.TextureToGeometryNode.EXECUTE_NORMALIZED
[03:17] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:17] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:17] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:17] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:17] [ComfyUI] [comfy-env] PRE-SERIALIZE 'mask' shape: torch.Size([1, 768, 768])
[03:17] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:17] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[03:17] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:17] [ComfyUI] [SubprocessWorker] call_id=46 sending call_method
[03:17] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[03:17] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 768, 768]
[03:17] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 768, 768])
[03:17] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting to geometry using backend: grid
[03:17] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using mask input
[03:17] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using native resolution: 768x768, range: [0.000, 1.000]
[03:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated 589824 points
[03:20] Frame 2 saved (frame_001.jpg, t=2.2s)
[03:20] [capture-periodic] freeze=2ms shot=88ms unfreeze=6ms saved=True
[03:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 589824 vertices, 1176578 faces
[03:21] [ComfyUI] [SubprocessWorker] got response: ok
[03:21] [ComfyUI] [comfy-env] GeomPackTextureToGeometry done (3.45s): result: NodeOutput
[03:21] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh
[03:21] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[03:21] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:21] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:21] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:21] Node executed (1 total), capturing...
[03:21] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:21] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:21] [ComfyUI] [SubprocessWorker] call_id=47 sending call_method
[03:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 589824 vertices, 1176578 faces
[03:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[03:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[03:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export
[03:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_273cd45b.vtp
[03:21] Frame 3 saved (frame_002.jpg, t=3.8s)
[03:21] [capture-node] freeze=2ms shot=94ms unfreeze=3ms saved=True
[03:23] [capture-loop] iter=50 t=5.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.4/15.6GB (22%) swap=0.0/3.0GB (0%) cpu=28% browser_rss=1.08GB
[03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (589824 vertices)
[03:23] Frame 4 saved (frame_003.jpg, t=6.0s)
[03:23] [capture-periodic] freeze=3ms shot=101ms unfreeze=3ms saved=True
[03:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 589824 vertices, 1176578 faces
[03:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_273cd45b.vtp
[03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=False, volume=None, area=11.966723990015208, no fields
[03:25] [ComfyUI] [SubprocessWorker] got response: ok
[03:25] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (4.18s): result: NodeOutput
[03:25] [ComfyUI] Prompt executed in 7.64 seconds
[03:25] Node executed (2 total), capturing...
[03:29] Frame 5 saved (frame_004.jpg, t=8.2s)
[03:29] [capture-node] freeze=102ms shot=3045ms unfreeze=2ms saved=True
[03:29] Execution complete (t=11.7s)
[03:29] Captured 5 unique frames over 11.65s
[03:29] [debug] iframes: 1
[03:29] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779138, canvas=486x348, rafFrozen=False
[03:29] [timing] trigger_3d_previews: 0.0s
[03:31] Saved high-quality screenshot: depth_map_to_mesh_executed.png
[03:31] [timing] final_screenshot: 0.2s
[03:31] [8/33] SKIPPED (not in cpu list) fill_holes_all.json
[03:31] Capturing execution frames: fix_normals_all.json
[03:37] Frame 1 saved (frame_000.jpg, t=0.0s)
[03:37] Validating workflow...
[03:37] [ComfyUI] === /validate endpoint called ===
[03:37] [ComfyUI] Received JSON with keys: ['prompt']
[03:37] [ComfyUI] Prompt has 8 nodes
[03:37] [ComfyUI] Node 1: GeomPackLoadMesh
[03:37] [ComfyUI] Inputs: {"file_path": "3d/truck.obj"}
[03:37] Queuing workflow for execution...
[03:37] [ComfyUI] Node 2: GeomPackFixNormals
[03:37] [ComfyUI] Inputs: {"backend": "trimesh", "report_panel": "false", "trimesh": ["1", 0]}
[03:37] [ComfyUI] Node 3: GeomPackFixNormals
[03:37] [ComfyUI] Inputs: {"backend": "igl_bfs", "report_panel": "false", "trimesh": ["1", 0]}
[03:37] [ComfyUI] Node 4: GeomPackFixNormals
[03:37] [ComfyUI] Inputs: {"backend": "igl_winding", "report_panel": "false", "trimesh": ["1", 0]}
[03:37] [ComfyUI] Node 5: GeomPackFixNormals
[03:37] [ComfyUI] Inputs: {"backend": "igl_raycast", "report_panel": "false", "trimesh": ["1", 0]}
[03:37] [ComfyUI] Node 6: GeomPackFixNormals
[03:37] [ComfyUI] Inputs: {"backend": "igl_signed_dist", "report_panel": "false", "trimesh": ["1", 0]}
[03:37] [ComfyUI] Node 8: GeomPackPreviewMeshMulti
[03:37] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[2.4457834419570967,0.9339641357719854,-1.1112698573158992],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\":[-0
[03:37] [ComfyUI] Node 9: GeomPackPreviewMeshMulti
[03:37] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[2.4457834419570967,0.9339641357719854,-1.1112698573158992],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\":[-0
[03:37] [ComfyUI] Generated prompt_id: 6ddc55a8-8df3-4312-91da-3bfc50c3111a
[03:37] [ComfyUI] Calling execution.validate_prompt()...
[03:37] [ComfyUI] Validation result: valid=True
[03:37] [ComfyUI] === Validation PASSED ===
[03:37] [ComfyUI] got prompt
[03:37] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/truck.obj'
[03:37] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[03:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:37] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:37] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[03:37] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:37] [ComfyUI] [SubprocessWorker] call_id=48 sending call_method
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/truck.obj
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/truck.obj
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2956 vertices, 4770 faces
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2956 vertices, 4770 faces
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2956 vertices, 4770 faces
[03:37] [ComfyUI] [SubprocessWorker] got response: ok
[03:37] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.02s): result: NodeOutput
[03:37] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:37] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:37] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:37] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:37] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:37] [ComfyUI] [SubprocessWorker] call_id=49 sending call_method
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_signed_dist -> GeomPackFixNormals_IglSignedDist
[03:37] [ComfyUI] [SubprocessWorker] got response: ok
[03:37] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput
[03:37] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:37] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:37] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:37] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:37] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:37] [ComfyUI] [SubprocessWorker] call_id=50 sending call_method
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_raycast -> GeomPackFixNormals_IglRaycast
[03:37] [ComfyUI] [SubprocessWorker] got response: ok
[03:37] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput
[03:37] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:37] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:37] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:37] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:37] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:37] [ComfyUI] [SubprocessWorker] call_id=51 sending call_method
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_winding -> GeomPackFixNormals_IglWinding
[03:37] [ComfyUI] [SubprocessWorker] got response: ok
[03:37] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput
[03:37] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:37] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:37] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:37] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:37] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:37] [ComfyUI] [SubprocessWorker] call_id=52 sending call_method
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_bfs -> GeomPackFixNormals_IglBfs
[03:37] [ComfyUI] [SubprocessWorker] got response: ok
[03:37] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput
[03:37] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:37] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:37] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:37] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:37] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:37] [ComfyUI] [SubprocessWorker] call_id=53 sending call_method
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: trimesh -> GeomPackFixNormals_Trimesh
[03:37] [ComfyUI] [SubprocessWorker] got response: ok
[03:37] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput
[03:37] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglSignedDist: trimesh: Trimesh
[03:37] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_signed_dist.FixNormalsIglSignedDistNode.EXECUTE_NORMALIZED
[03:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:37] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:37] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:37] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:37] [ComfyUI] [SubprocessWorker] call_id=54 sending call_method
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl_signed_dist: flipped 4757/4770 faces
[03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> False
[03:37] [ComfyUI] [SubprocessWorker] got response: ok
[03:37] [ComfyUI] [comfy-env] GeomPackFixNormals_IglSignedDist done (0.09s): result: NodeOutput
[03:37] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglRaycast: trimesh: Trimesh
[03:37] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_raycast.FixNormalsIglRaycastNode.EXECUTE_NORMALIZED
[03:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:37] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:37] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:37] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:37] [ComfyUI] [SubprocessWorker] call_id=55 sending call_method
[03:37] Node executed (1 total), capturing...
[03:38] Frame 2 saved (frame_001.jpg, t=0.5s)
[03:38] [capture-node] freeze=2ms shot=98ms unfreeze=3ms saved=True
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl_raycast: flipped 3339/4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> False
[03:39] [ComfyUI] [SubprocessWorker] got response: ok
[03:39] [ComfyUI] [comfy-env] GeomPackFixNormals_IglRaycast done (1.21s): result: NodeOutput
[03:39] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh
[03:39] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[03:39] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:39] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:39] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:39] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[03:39] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:39] [ComfyUI] [SubprocessWorker] call_id=56 sending call_method
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_ee491421.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_ee491421.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_ee491421.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_ee491421.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready
[03:39] [ComfyUI] [SubprocessWorker] got response: ok
[03:39] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.05s): result: NodeOutput
[03:39] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglWinding: trimesh: Trimesh
[03:39] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_winding.FixNormalsIglWindingNode.EXECUTE_NORMALIZED
[03:39] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:39] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:39] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:39] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:39] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:39] [ComfyUI] [SubprocessWorker] call_id=57 sending call_method
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl_winding: flipped 4022/4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> False
[03:39] [ComfyUI] [SubprocessWorker] got response: ok
[03:39] [ComfyUI] [comfy-env] GeomPackFixNormals_IglWinding done (0.04s): result: NodeOutput
[03:39] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglBfs: trimesh: Trimesh
[03:39] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_bfs.FixNormalsIglBfsNode.EXECUTE_NORMALIZED
[03:39] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:39] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:39] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:39] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:39] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:39] [ComfyUI] [SubprocessWorker] call_id=58 sending call_method
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl.bfs_orient: 66 orientation components
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> True
[03:39] [ComfyUI] [SubprocessWorker] got response: ok
[03:39] [ComfyUI] [comfy-env] GeomPackFixNormals_IglBfs done (0.02s): result: NodeOutput
[03:39] [ComfyUI] [comfy-env] Running GeomPackFixNormals_Trimesh: trimesh: Trimesh
[03:39] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.trimesh_fix.FixNormalsTrimeshNode.EXECUTE_NORMALIZED
[03:39] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:39] Node executed (3 total), capturing...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:39] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:39] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:39] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:39] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:39] [ComfyUI] [SubprocessWorker] call_id=59 sending call_method
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> True
[03:39] [ComfyUI] [SubprocessWorker] got response: ok
[03:39] [ComfyUI] [comfy-env] GeomPackFixNormals_Trimesh done (0.51s): result: NodeOutput
[03:39] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[03:39] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[03:39] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:39] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:39] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:39] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[03:39] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:39] [ComfyUI] [SubprocessWorker] call_id=60 sending call_method
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_7248a931.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_7248a931.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_7248a931.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_7248a931.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_7248a931.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_7248a931.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_7248a931.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_7248a931.vtp
[03:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[03:39] [ComfyUI] [SubprocessWorker] got response: ok
[03:39] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.14s): result: NodeOutput
[03:39] [ComfyUI] Prompt executed in 2.15 seconds
[03:40] Frame 3 saved (frame_002.jpg, t=1.8s)
[03:40] [capture-node] freeze=335ms shot=880ms unfreeze=3ms saved=True
[03:40] Node executed (7 total), capturing...
[03:41] Frame 4 saved (frame_003.jpg, t=3.4s)
[03:41] [capture-node] freeze=2ms shot=129ms unfreeze=0ms saved=True
[03:41] Execution complete (t=3.4s)
[03:41] Captured 4 unique frames over 3.59s
[03:41] [debug] iframes: 2
[03:41] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x393, rafFrozen=True
[03:41] [debug] iframe[1]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[03:41] [timing] trigger_3d_previews: 0.0s
[03:43] Saved high-quality screenshot: fix_normals_all_executed.png
[03:43] [timing] final_screenshot: 0.3s
[03:43] Capturing execution frames: fix_self_intersection.json
[03:49] Frame 1 saved (frame_000.jpg, t=0.0s)
[03:49] Validating workflow...
[03:49] [ComfyUI] === /validate endpoint called ===
[03:49] [ComfyUI] Received JSON with keys: ['prompt']
[03:49] [ComfyUI] Prompt has 5 nodes
[03:49] [ComfyUI] Node 1: GeomPackLoadMesh
[03:49] [ComfyUI] Inputs: {"file_path": "3d/camelhead.off"}
[03:49] Queuing workflow for execution...
[03:49] [ComfyUI] Node 14: GeomPackDetectSelfIntersections
[03:49] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]}
[03:49] [ComfyUI] Node 17: GeomPackFixSelfIntersectionsByPerturbation
[03:49] [ComfyUI] Inputs: {"epsilon": 0.0001, "max_iterations": 12, "direction": "adaptive", "scale_by_intersection_count": true, "re_detect_after_fix": true, "report_panel": "false", "trimesh": ["14", 0]}
[03:49] [ComfyUI] Node 21: GeomPackPreviewMeshDual
[03:49] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.09236526786018014,0.17034567262454137,0.1140
[03:49] [ComfyUI] Node 22: GeomPackDetectSelfIntersections
[03:49] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["17", 0]}
[03:49] [ComfyUI] Generated prompt_id: 45ffae58-defb-46fe-820a-fdf1523020a3
[03:49] [ComfyUI] Calling execution.validate_prompt()...
[03:49] [ComfyUI] Validation result: valid=True
[03:49] [ComfyUI] === Validation PASSED ===
[03:49] [ComfyUI] got prompt
[03:49] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/camelhead.off'
[03:49] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[03:49] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:49] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:49] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:49] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[03:49] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:49] [ComfyUI] [SubprocessWorker] call_id=61 sending call_method
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/camelhead.off
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/camelhead.off
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 11381 vertices, 22704 faces
[03:49] [ComfyUI] [SubprocessWorker] got response: ok
[03:49] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.07s): result: NodeOutput
[03:49] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh
[03:49] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED
[03:49] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:49] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:49] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:49] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:49] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:49] [ComfyUI] [SubprocessWorker] call_id=62 sending call_method
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11381 vertices, 22704 faces
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 6 intersecting faces (5 intersection pairs)
[03:49] [ComfyUI] [SubprocessWorker] got response: ok
[03:49] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.09s): result: NodeOutput
[03:49] [ComfyUI] [comfy-env] Running GeomPackFixSelfIntersectionsByPerturbation: epsilon: 0.0001, max_iterations: 12, direction: 'adaptive', scale_by_intersection_count: True, re_detect_after_fix: True, trimesh: Trimesh
[03:49] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.fix_intersections_perturbation.FixSelfIntersectionsByPerturbationNode.EXECUTE_NORMALIZED
[03:49] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:49] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:49] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:49] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:49] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:49] [ComfyUI] [SubprocessWorker] call_id=63 sending call_method
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Processing mesh: 11381 vertices, 22704 faces
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Params: epsilon=0.0001, max_iter=12, direction=adaptive, re_detect=True
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 8 vertices to perturb
[03:49] Node executed (1 total), capturing...
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 1: avg displacement = 0.000004
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 2: avg displacement = 0.000008
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 3: avg displacement = 0.000011
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 4: avg displacement = 0.000015
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 5: avg displacement = 0.000019
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 6: avg displacement = 0.000023
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 7: avg displacement = 0.000026
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 8: avg displacement = 0.000030
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 9: avg displacement = 0.000034
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 10: avg displacement = 0.000038
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 11: avg displacement = 0.000041
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 12: avg displacement = 0.000045
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Re-detecting self-intersections...
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: No self-intersections remaining!
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Complete: perturbed 8 vertices over 12 iterations
[03:49] [ComfyUI] [SubprocessWorker] got response: ok
[03:49] [ComfyUI] [comfy-env] GeomPackFixSelfIntersectionsByPerturbation done (0.23s): result: NodeOutput
[03:49] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh
[03:49] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED
[03:49] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:49] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:49] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:49] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:49] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:49] [ComfyUI] [SubprocessWorker] call_id=64 sending call_method
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11381 vertices, 22704 faces
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: No self-intersections detected
[03:49] [ComfyUI] [SubprocessWorker] got response: ok
[03:49] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.10s): result: NodeOutput
[03:49] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[03:49] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[03:49] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:49] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:49] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:49] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[03:49] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:49] [ComfyUI] [SubprocessWorker] call_id=65 sending call_method
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 11381 vertices, 22704 faces
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11381 vertices, 22704 faces
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_81086fc0.vtp
[03:49] Frame 2 saved (frame_001.jpg, t=0.5s)
[03:49] [capture-node] freeze=3ms shot=132ms unfreeze=8ms saved=True
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11381 vertices)
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1)
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1)
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11381 vertices, 22704 faces
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_81086fc0.vtp
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_81086fc0.vtp
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11381 vertices)
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1)
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1)
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting
[03:49] Node executed (3 total), capturing...
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11381 vertices, 22704 faces
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_81086fc0.vtp
[03:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[03:49] [ComfyUI] [SubprocessWorker] got response: ok
[03:49] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.20s): result: NodeOutput
[03:49] [ComfyUI] Prompt executed in 0.69 seconds
[03:50] Frame 3 saved (frame_002.jpg, t=0.9s)
[03:50] [capture-node] freeze=58ms shot=498ms unfreeze=3ms saved=True
[03:50] Node executed (4 total), capturing...
[03:51] [capture-node] freeze=2ms shot=198ms unfreeze=0ms saved=False
[03:51] Execution complete (t=1.9s)
[03:51] Captured 3 unique frames over 2.09s
[03:51] [debug] iframes: 1
[03:51] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[03:51] [timing] trigger_3d_previews: 0.0s
[03:53] Saved high-quality screenshot: fix_self_intersection_executed.png
[03:53] [timing] final_screenshot: 0.4s
[03:53] Capturing execution frames: mesh_info.json
[03:59] Frame 1 saved (frame_000.jpg, t=0.0s)
[03:59] Validating workflow...
[03:59] [ComfyUI] === /validate endpoint called ===
[03:59] [ComfyUI] Received JSON with keys: ['prompt']
[03:59] [ComfyUI] Prompt has 3 nodes
[03:59] [ComfyUI] Node 1: GeomPackCreatePrimitive
[03:59] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1}
[03:59] [ComfyUI] Node 7: GeomPackMeshInfo
[03:59] Queuing workflow for execution...
[03:59] [ComfyUI] Inputs: {"report_panel": "true", "trimesh": ["1", 0]}
[03:59] [ComfyUI] Node 12: GeomPackMeshQuality
[03:59] [ComfyUI] Inputs: {"include_face_quality": true, "include_edge_stats": true, "report_panel": "true", "trimesh": ["1", 0]}
[03:59] [ComfyUI] Generated prompt_id: 9872f6b3-e83f-47a5-85bf-f9eb2d1389f2
[03:59] [ComfyUI] Calling execution.validate_prompt()...
[03:59] [ComfyUI] Validation result: valid=True
[03:59] [ComfyUI] === Validation PASSED ===
[03:59] [ComfyUI] got prompt
[03:59] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1
[03:59] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[03:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:59] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:59] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[03:59] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:59] [ComfyUI] [SubprocessWorker] call_id=66 sending call_method
[03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[03:59] [ComfyUI] [SubprocessWorker] got response: ok
[03:59] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[03:59] [ComfyUI] [comfy-env] Running GeomPackMeshQuality: include_face_quality: True, include_edge_stats: True, trimesh: Trimesh
[03:59] [ComfyUI] [SubprocessWorker] call_method: nodes.analysis.mesh_quality.MeshQualityNode.EXECUTE_NORMALIZED
[03:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:59] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:59] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:59] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:59] [ComfyUI] [SubprocessWorker] call_id=67 sending call_method
[03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 8 vertices, 12 faces
[03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analysis complete
[03:59] [ComfyUI] [SubprocessWorker] got response: ok
[03:59] [ComfyUI] [comfy-env] GeomPackMeshQuality done (0.02s): result: NodeOutput
[03:59] [ComfyUI] [comfy-env] Running GeomPackMeshInfo: trimesh: list[1]
[03:59] [ComfyUI] [SubprocessWorker] call_method: nodes.analysis.mesh_info.MeshInfoNode.EXECUTE_NORMALIZED
[03:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:59] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:59] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:59] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:59] [ComfyUI] [SubprocessWorker] call_id=68 sending call_method
[03:59] [ComfyUI] [SubprocessWorker] got response: ok
[03:59] [ComfyUI] [comfy-env] GeomPackMeshInfo done (0.01s): result: NodeOutput
[03:59] [ComfyUI] Prompt executed in 0.03 seconds
[03:59] Node executed (1 total), capturing...
[03:59] Frame 2 saved (frame_001.jpg, t=0.3s)
[03:59] [capture-node] freeze=2ms shot=90ms unfreeze=3ms saved=True
[03:59] Node executed (2 total), capturing...
[03:59] [capture-node] freeze=2ms shot=91ms unfreeze=0ms saved=False
[03:59] Execution complete (t=0.7s)
[03:59] Captured 2 unique frames over 0.82s
[03:59] [debug] iframes: 0
[03:59] [timing] trigger_3d_previews: 0.0s
[04:02] Saved high-quality screenshot: mesh_info_executed.png
[04:02] [timing] final_screenshot: 0.2s
[04:02] Capturing execution frames: mesh_mesh_distance.json
[04:07] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:07] Validating workflow...
[04:07] [ComfyUI] === /validate endpoint called ===
[04:07] [ComfyUI] Received JSON with keys: ['prompt']
[04:07] [ComfyUI] Prompt has 5 nodes
[04:07] [ComfyUI] Node 3: GeomPackMeshToMeshDistance
[04:07] [ComfyUI] Inputs: {"metric": "hausdorff", "sample_count": 10000, "symmetric": "true", "report_panel": "true", "mesh_a": ["8", 0], "mesh_b": ["15", 0]}
[04:07] [ComfyUI] Node 8: GeomPackLoadMesh
[04:07] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[04:07] Queuing workflow for execution...
[04:07] [ComfyUI] Node 10: GeomPackMeshToMeshDistance
[04:07] [ComfyUI] Inputs: {"metric": "hausdorff", "sample_count": 10000, "symmetric": "true", "report_panel": "false", "mesh_a": ["8", 0], "mesh_b": ["16", 0]}
[04:07] [ComfyUI] Node 15: GeomPackRemesh
[04:07] [ComfyUI] Inputs: {"backend": "pymeshlab_isotropic", "backend.target_edge_length": 1, "backend.iterations": 3, "backend.feature_angle": 30, "backend.adaptive": "false", "report_panel": "false", "trimesh": ["8", 0]}
[04:07] [ComfyUI] Node 16: GeomPackRemesh
[04:07] [ComfyUI] Inputs: {"backend": "cgal_isotropic", "backend.cgal_edge_length": 1, "backend.cgal_iterations": 3, "backend.protect_boundaries": "true", "report_panel": "false", "trimesh": ["8", 0]}
[04:07] [ComfyUI] Generated prompt_id: 09faa5e4-76ec-4519-8f24-3c751703801a
[04:07] [ComfyUI] Calling execution.validate_prompt()...
[04:07] [ComfyUI] Validation result: valid=True
[04:07] [ComfyUI] === Validation PASSED ===
[04:07] [ComfyUI] got prompt
[04:07] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[04:07] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[04:08] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[04:08] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[04:08] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[04:08] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[04:08] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[04:08] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_2hj8ki3t/persistent_worker.py', 'abstract://comfy_worker_95fbe75c12d1']...
[04:08] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_95fbe75c12d1 (abstract, no filesystem path)
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[04:09] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:09] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:09] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:09] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:09] [ComfyUI] [SubprocessWorker] call_id=69 sending call_method
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/Stanford_Bunny.stl
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[04:09] [ComfyUI] [SubprocessWorker] got response: ok
[04:09] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.00s): result: NodeOutput
[04:09] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[04:10] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[04:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:10] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:10] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:10] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:10] [ComfyUI] [SubprocessWorker] call_id=70 sending call_method
[04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: cgal_isotropic -> GeomPackRemesh_CGAL
[04:10] [ComfyUI] [SubprocessWorker] got response: ok
[04:10] [ComfyUI] [comfy-env] GeomPackRemesh done (0.03s): result: NodeOutput
[04:10] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[04:10] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[04:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:10] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:10] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:10] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:10] [ComfyUI] [SubprocessWorker] call_id=71 sending call_method
[04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[04:10] [ComfyUI] [SubprocessWorker] got response: ok
[04:10] [ComfyUI] [comfy-env] GeomPackRemesh done (0.03s): result: NodeOutput
[04:10] [ComfyUI] [comfy-env] Running GeomPackRemesh_CGAL: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, protect_boundaries: 'true'
[04:10] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing_cgal.remesh.RemeshCGALNode.EXECUTE_NORMALIZED
[04:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:10] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:10] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:10] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:10] [ComfyUI] [SubprocessWorker] call_id=72 sending call_method
[04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: cgal_isotropic
[04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, protect_boundaries=true
[04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Running CGAL isotropic remesh (target_edge_length=1.0)...
[04:10] Frame 2 saved (frame_001.jpg, t=2.3s)
[04:10] [capture-periodic] freeze=3ms shot=99ms unfreeze=4ms saved=True
[04:12] Frame 3 saved (frame_002.jpg, t=4.5s)
[04:12] [capture-periodic] freeze=2ms shot=89ms unfreeze=4ms saved=True
[04:13] [capture-loop] iter=50 t=5.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.6/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=26% browser_rss=1.00GB
[04:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 41466 vertices (-14737), 82928 faces (-29474)
[04:14] [ComfyUI] [SubprocessWorker] got response: ok
[04:14] [ComfyUI] [comfy-env] GeomPackRemesh_CGAL done (4.61s): result: NodeOutput
[04:14] [ComfyUI] [comfy-env] Running GeomPackMeshToMeshDistance: metric: 'hausdorff', sample_count: 10000, symmetric: 'true', mesh_a: Trimesh, mesh_b: Trimesh
[04:14] [ComfyUI] [SubprocessWorker] call_method: nodes.distance.mesh_to_mesh_distance.MeshDistanceNode.EXECUTE_NORMALIZED
[04:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:14] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:14] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[04:14] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:14] [ComfyUI] [SubprocessWorker] call_id=73 sending call_method
[04:14] [ComfyUI] /home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages/point_cloud_utils/_ray_mesh_intersector.py:13: SyntaxWarning: invalid escape sequence '\#'
[04:14] [ComfyUI] mesh_v : \#v by 3 array of vertex positions (each row is a vertex)
[04:14] [ComfyUI] /home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages/point_cloud_utils/_ray_mesh_intersector.py:27: SyntaxWarning: invalid escape sequence '\#'
[04:14] [ComfyUI] ray_o : array of shape (\#rays, 3) of ray origins (one per row) or a single array of shape (3,) to use
[04:14] [ComfyUI] /home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages/point_cloud_utils/_point_cloud_geometry.py:71: SyntaxWarning: invalid escape sequence '\#'
[04:14] [ComfyUI] p : \#p by 3 array of vertex positions (each row is a vertex)
[04:14] [ComfyUI] /home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages/point_cloud_utils/_point_cloud_geometry.py:91: SyntaxWarning: invalid escape sequence '\#'
[04:14] [ComfyUI] p : \#p by 3 array of vertex positions (each row is a vertex)
[04:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Metric: hausdorff, Samples: 10000
[04:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 56203 vertices, 112402 faces
[04:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 41466 vertices, 82928 faces
[04:14] Node executed (1 total), capturing...
[04:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 2.991372
[04:14] [ComfyUI] [SubprocessWorker] got response: ok
[04:14] [ComfyUI] [comfy-env] GeomPackMeshToMeshDistance done (0.13s): result: NodeOutput
[04:14] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[04:14] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[04:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:14] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:14] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:14] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:14] [ComfyUI] [SubprocessWorker] call_id=74 sending call_method
[04:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[04:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces
[04:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[04:15] Frame 4 saved (frame_003.jpg, t=7.0s)
[04:15] [capture-node] freeze=3ms shot=102ms unfreeze=4ms saved=True
[04:15] Node executed (2 total), capturing...
[04:15] [capture-node] freeze=3ms shot=99ms unfreeze=4ms saved=False
[04:19] [capture-loop] iter=100 t=11.7s state={'complete': False, 'error': None, 'executedCount': 2, 'wsState': 1} eval_ms=2 ram=2.4/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=34% browser_rss=0.87GB
[04:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 32288 vertices, 64572 faces
[04:20] [ComfyUI] [SubprocessWorker] got response: ok
[04:20] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (5.71s): result: NodeOutput
[04:20] [ComfyUI] [comfy-env] Running GeomPackMeshToMeshDistance: metric: 'hausdorff', sample_count: 10000, symmetric: 'true', mesh_a: Trimesh, mesh_b: Trimesh
[04:20] [ComfyUI] [SubprocessWorker] call_method: nodes.distance.mesh_to_mesh_distance.MeshDistanceNode.EXECUTE_NORMALIZED
[04:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:20] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:20] Node executed (3 total), capturing...
[04:20] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[04:20] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:20] [ComfyUI] [SubprocessWorker] call_id=75 sending call_method
[04:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Metric: hausdorff, Samples: 10000
[04:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 56203 vertices, 112402 faces
[04:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 32288 vertices, 64572 faces
[04:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 3.238775
[04:20] [ComfyUI] [SubprocessWorker] got response: ok
[04:20] [ComfyUI] [comfy-env] GeomPackMeshToMeshDistance done (0.11s): result: NodeOutput
[04:20] [ComfyUI] Prompt executed in 12.63 seconds
[04:20] Frame 5 saved (frame_004.jpg, t=12.8s)
[04:20] [capture-node] freeze=3ms shot=99ms unfreeze=3ms saved=True
[04:20] Node executed (4 total), capturing...
[04:21] Frame 6 saved (frame_005.jpg, t=13.2s)
[04:21] [capture-node] freeze=3ms shot=100ms unfreeze=3ms saved=True
[04:21] Execution complete (t=13.5s)
[04:21] Captured 6 unique frames over 13.48s
[04:21] [debug] iframes: 0
[04:21] [timing] trigger_3d_previews: 0.0s
[04:23] Saved high-quality screenshot: mesh_mesh_distance_executed.png
[04:23] [timing] final_screenshot: 0.2s
[04:23] Capturing execution frames: normals.json
[04:29] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:29] Validating workflow...
[04:29] [ComfyUI] === /validate endpoint called ===
[04:29] [ComfyUI] Received JSON with keys: ['prompt']
[04:29] [ComfyUI] Prompt has 4 nodes
[04:29] [ComfyUI] Node 1: GeomPackLoadMesh
[04:29] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[04:29] [ComfyUI] Node 2: GeomPackCheckNormals
[04:29] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]}
[04:29] [ComfyUI] Node 3: GeomPackComputeNormals
[04:29] Queuing workflow for execution...
[04:29] [ComfyUI] Inputs: {"smooth_vertex_normals": "true", "trimesh": ["1", 0]}
[04:29] [ComfyUI] Node 7: GeomPackPreviewMeshVTK
[04:29] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\"}", "trimesh": ["
[04:29] [ComfyUI] Generated prompt_id: 971f5812-f6cc-4986-a040-61f4596794f2
[04:29] [ComfyUI] Calling execution.validate_prompt()...
[04:29] [ComfyUI] Validation result: valid=True
[04:29] [ComfyUI] === Validation PASSED ===
[04:29] [ComfyUI] got prompt
[04:29] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[04:29] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[04:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:29] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:29] [ComfyUI] [SubprocessWorker] call_id=76 sending call_method
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/Stanford_Bunny.stl
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[04:29] [ComfyUI] [SubprocessWorker] got response: ok
[04:29] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.22s): result: NodeOutput
[04:29] [ComfyUI] [comfy-env] Running GeomPackCheckNormals: trimesh: Trimesh
[04:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.check_normals.CheckNormalsNode.EXECUTE_NORMALIZED
[04:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:29] [ComfyUI] [SubprocessWorker] call_id=77 sending call_method
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh with 56203 vertices, 112402 faces
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Winding: True, Watertight: True, Degenerate: 1
[04:29] [ComfyUI] [SubprocessWorker] got response: ok
[04:29] [ComfyUI] [comfy-env] GeomPackCheckNormals done (0.10s): result: NodeOutput
[04:29] [ComfyUI] [comfy-env] Running GeomPackComputeNormals: smooth_vertex_normals: 'true', trimesh: Trimesh
[04:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.compute_normals.ComputeNormalsNode.EXECUTE_NORMALIZED
[04:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:29] [ComfyUI] [SubprocessWorker] call_id=78 sending call_method
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Processing mesh with 56203 vertices, 112402 faces
[04:29] Node executed (1 total), capturing...
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computed smooth vertex normals
[04:29] [ComfyUI] [SubprocessWorker] got response: ok
[04:29] [ComfyUI] [comfy-env] GeomPackComputeNormals done (0.09s): result: NodeOutput
[04:29] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh
[04:29] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[04:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:29] [ComfyUI] [SubprocessWorker] call_id=79 sending call_method
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 56203 vertices, 112402 faces
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export
[04:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_0b6600c6.vtp
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[04:30] Frame 2 saved (frame_001.jpg, t=0.7s)
[04:30] [capture-node] freeze=3ms shot=89ms unfreeze=5ms saved=True
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_x (components: 1)
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_y (components: 1)
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_z (components: 1)
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_magnitude (components: 1)
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_0b6600c6.vtp
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Vertex attributes: ['normal_x', 'normal_y', 'normal_z', 'normal_magnitude']
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Face attributes: ['stl']
[04:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=True, volume=279628.2991519195, area=29684.951065464225, fields=['normal_x', 'normal_y', 'normal_z', 'normal_magnitude', 'face.stl']
[04:30] [ComfyUI] [SubprocessWorker] got response: ok
[04:30] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.70s): result: NodeOutput
[04:30] [ComfyUI] Prompt executed in 1.11 seconds
[04:30] Node executed (2 total), capturing...
[04:31] Frame 3 saved (frame_002.jpg, t=1.5s)
[04:31] [capture-node] freeze=646ms shot=106ms unfreeze=0ms saved=True
[04:31] Execution complete (t=1.5s)
[04:31] Captured 3 unique frames over 2.29s
[04:31] [debug] iframes: 1
[04:31] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779138, canvas=486x348, rafFrozen=True
[04:31] [timing] trigger_3d_previews: 0.0s
[04:33] Saved high-quality screenshot: normals_executed.png
[04:33] [timing] final_screenshot: 0.2s
[04:34] Capturing execution frames: point_mesh_distance.json
[04:39] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:39] Validating workflow...
[04:39] [ComfyUI] === /validate endpoint called ===
[04:39] [ComfyUI] Received JSON with keys: ['prompt']
[04:39] [ComfyUI] Prompt has 6 nodes
[04:39] [ComfyUI] Node 1: GeomPackCreatePrimitive
[04:39] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1}
[04:39] [ComfyUI] Node 2: GeomPackCreatePrimitive
[04:39] Queuing workflow for execution...
[04:39] [ComfyUI] Inputs: {"shape": "sphere", "size": 2.5, "subdivisions": 2}
[04:39] [ComfyUI] Node 4: GeomPackMeshToPointCloud
[04:39] [ComfyUI] Inputs: {"mode": "surface_sampling", "sample_count": 10000, "sampling_method": "uniform", "include_normals": "true", "trimesh": ["1", 0]}
[04:39] [ComfyUI] Node 5: GeomPackPointToMeshDistance
[04:39] [ComfyUI] Inputs: {"distance_type": "unsigned", "sign_method": "default", "report_panel": "false", "target_mesh": ["2", 0], "pointcloud": ["4", 0]}
[04:39] [ComfyUI] Node 7: GeomPackCombineMeshes
[04:39] [ComfyUI] Inputs: {"report_panel": "false", "mesh_a": ["1", 0], "mesh_b": ["2", 0]}
[04:39] [ComfyUI] Node 8: GeomPackPreviewMeshDual
[04:39] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":false,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"s
[04:39] [ComfyUI] Generated prompt_id: da9ddd87-353e-4093-8665-99c5d055509a
[04:39] [ComfyUI] Calling execution.validate_prompt()...
[04:39] [ComfyUI] Validation result: valid=True
[04:39] [ComfyUI] === Validation PASSED ===
[04:39] [ComfyUI] got prompt
[04:39] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1
[04:39] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[04:39] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:39] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:39] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:39] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:39] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:39] [ComfyUI] [SubprocessWorker] call_id=80 sending call_method
[04:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[04:39] [ComfyUI] [SubprocessWorker] got response: ok
[04:39] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[04:39] [ComfyUI] [comfy-env] Running GeomPackMeshToPointCloud: mode: 'surface_sampling', sample_count: 10000, sampling_method: 'uniform', include_normals: 'true', trimesh: Trimesh
[04:39] [ComfyUI] [SubprocessWorker] call_method: nodes.conversion.mesh_to_pointcloud.MeshToPointCloudNode.EXECUTE_NORMALIZED
[04:39] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:39] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:39] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:39] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:39] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:39] [ComfyUI] [SubprocessWorker] call_id=81 sending call_method
[04:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sampling 10,000 points using uniform method
[04:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated point cloud with 10,000 points
[04:39] [ComfyUI] [SubprocessWorker] got response: ok
[04:39] [ComfyUI] [comfy-env] GeomPackMeshToPointCloud done (0.02s): result: NodeOutput
[04:39] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 2.5, subdivisions: 2
[04:39] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[04:39] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:39] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:39] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:39] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:39] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:39] [ComfyUI] [SubprocessWorker] call_id=82 sending call_method
[04:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 162 vertices, 320 faces
[04:39] [ComfyUI] [SubprocessWorker] got response: ok
[04:39] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[04:39] [ComfyUI] [comfy-env] Running GeomPackPointToMeshDistance: distance_type: 'unsigned', sign_method: 'default', target_mesh: Trimesh, pointcloud: Trimesh
[04:39] [ComfyUI] [SubprocessWorker] call_method: nodes.distance.point_to_mesh_distance.PointToMeshDistanceNode.EXECUTE_NORMALIZED
[04:39] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:39] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:39] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:39] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:39] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[04:39] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:39] [ComfyUI] [SubprocessWorker] call_id=83 sending call_method
[04:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computing unsigned distances for 10,000 points
[04:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: Point Cloud
[04:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Target Mesh: 162 vertices, 320 faces
[04:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using trimesh.proximity.closest_point (unsigned)
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: 0.000006, Max: 0.502755, Mean: 0.137579
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Distance field added to vertex_attributes['distance']
[04:40] [ComfyUI] [SubprocessWorker] got response: ok
[04:40] [ComfyUI] [comfy-env] GeomPackPointToMeshDistance done (0.41s): result: NodeOutput
[04:40] [ComfyUI] [comfy-env] Running GeomPackCombineMeshes: mesh_a: Trimesh, mesh_b: Trimesh
[04:40] [ComfyUI] [SubprocessWorker] call_method: nodes.combine.combine_meshes.CombineMeshesNode.EXECUTE_NORMALIZED
[04:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:40] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:40] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[04:40] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:40] [ComfyUI] [SubprocessWorker] call_id=84 sending call_method
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Combining 2 meshes
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: 8 vertices, 12 faces
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: 162 vertices, 320 faces
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 170 vertices, 332 faces
[04:40] [ComfyUI] [SubprocessWorker] got response: ok
[04:40] [ComfyUI] [comfy-env] GeomPackCombineMeshes done (0.01s): result: NodeOutput
[04:40] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[04:40] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[04:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:40] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:40] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[04:40] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:40] [ComfyUI] [SubprocessWorker] call_id=85 sending call_method
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 170 vertices, 332 faces
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Point Cloud - 10000 vertices, 0 faces
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: ['distance']
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_c942febe.stl
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting point cloud to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_c942febe.vtp
[04:40] Node executed (1 total), capturing...
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: distance (components: 1)
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 10000 points
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_c942febe.vtp
[04:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[04:40] [ComfyUI] [SubprocessWorker] got response: ok
[04:40] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.06s): result: NodeOutput
[04:40] [ComfyUI] Prompt executed in 0.51 seconds
[04:40] Frame 2 saved (frame_001.jpg, t=0.8s)
[04:40] [capture-node] freeze=42ms shot=248ms unfreeze=3ms saved=True
[04:40] Node executed (3 total), capturing...
[04:40] Frame 3 saved (frame_002.jpg, t=1.4s)
[04:40] [capture-node] freeze=3ms shot=114ms unfreeze=0ms saved=True
[04:40] Execution complete (t=1.4s)
[04:40] Captured 3 unique frames over 1.52s
[04:40] [debug] iframes: 1
[04:40] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[04:40] [timing] trigger_3d_previews: 0.0s
[04:43] Saved high-quality screenshot: point_mesh_distance_executed.png
[04:43] [timing] final_screenshot: 0.3s
[04:43] Capturing execution frames: preview_mesh_threejs.json
[04:49] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:49] Validating workflow...
[04:49] [ComfyUI] === /validate endpoint called ===
[04:49] [ComfyUI] Received JSON with keys: ['prompt']
[04:49] [ComfyUI] Prompt has 2 nodes
[04:49] [ComfyUI] Node 1: GeomPackLoadMesh
[04:49] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[04:49] Queuing workflow for execution...
[04:49] [ComfyUI] Node 3: GeomPackPreviewMesh
[04:49] [ComfyUI] Inputs: {"preview": "", "trimesh": ["1", 0]}
[04:49] [ComfyUI] Generated prompt_id: c0e7ec9b-fa37-484f-9bc1-7fe5b329b435
[04:49] [ComfyUI] Calling execution.validate_prompt()...
[04:49] [ComfyUI] Validation result: valid=True
[04:49] [ComfyUI] === Validation PASSED ===
[04:49] [ComfyUI] got prompt
[04:49] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[04:49] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[04:49] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:49] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:49] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:49] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:49] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:49] [ComfyUI] [SubprocessWorker] call_id=86 sending call_method
[04:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[04:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/Stanford_Bunny.stl
[04:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[04:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[04:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[04:49] [ComfyUI] [SubprocessWorker] got response: ok
[04:49] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.25s): result: NodeOutput
[04:49] [ComfyUI] [comfy-env] Running GeomPackPreviewMesh: trimesh: Trimesh
[04:49] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh.PreviewMeshNode.EXECUTE_NORMALIZED
[04:49] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:49] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:49] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:49] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:49] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:49] [ComfyUI] [SubprocessWorker] call_id=87 sending call_method
[04:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 56203 vertices, 112402 faces
[04:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_65df2d9f.glb
[04:49] [ComfyUI] [SubprocessWorker] got response: ok
[04:49] [ComfyUI] [comfy-env] GeomPackPreviewMesh done (0.04s): result: NodeOutput
[04:49] [ComfyUI] Prompt executed in 0.30 seconds
[04:49] Node executed (1 total), capturing...
[04:49] Frame 2 saved (frame_001.jpg, t=0.7s)
[04:49] [capture-node] freeze=9ms shot=149ms unfreeze=0ms saved=True
[04:49] Execution complete (t=0.7s)
[04:49] Captured 2 unique frames over 0.88s
[04:49] [debug] iframes: 1
[04:49] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer.html?v=17791381495, canvas=486x486, rafFrozen=True
[04:49] [timing] trigger_3d_previews: 0.0s
[04:52] Saved high-quality screenshot: preview_mesh_threejs_executed.png
[04:52] [timing] final_screenshot: 0.2s
[04:52] Capturing execution frames: reconstruct_all.json
[04:58] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:58] Validating workflow...
[04:58] [ComfyUI] === /validate endpoint called ===
[04:58] [ComfyUI] Received JSON with keys: ['prompt']
[04:58] [ComfyUI] Prompt has 8 nodes
[04:58] [ComfyUI] Node 1: GeomPackLoadMesh
[04:58] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[04:58] [ComfyUI] Node 2: GeomPackMeshToPointCloud
[04:58] [ComfyUI] Inputs: {"mode": "surface_sampling", "sample_count": 10000, "sampling_method": "uniform", "include_normals": "true", "trimesh": ["1", 0]}
[04:58] [ComfyUI] Node 3: GeomPackReconstructSurface
[04:58] [ComfyUI] Inputs: {"backend": "poisson", "backend.poisson_depth": 8, "backend.poisson_scale": 1.1, "backend.estimate_normals": "true", "backend.normal_radius": 0.1, "report_panel": "false", "points": ["2", 0]}
[04:58] [ComfyUI] Node 4: GeomPackReconstructSurface
[04:58] [ComfyUI] Inputs: {"backend": "ball_pivoting", "backend.ball_radius": 3, "backend.estimate_normals": "true", "backend.normal_radius": 0.5, "report_panel": "false", "points": ["2", 0]}
[04:58] [ComfyUI] Node 5: GeomPackReconstructSurface
[04:58] [ComfyUI] Inputs: {"backend": "alpha_shape", "backend.alpha": 8, "report_panel": "false", "points": ["2", 0]}
[04:58] Queuing workflow for execution...
[04:58] [ComfyUI] Node 6: GeomPackReconstructSurface
[04:58] [ComfyUI] Inputs: {"backend": "convex_hull", "report_panel": "false", "points": ["2", 0]}
[04:58] [ComfyUI] Node 10: GeomPackPreviewMeshMulti
[04:58] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[30.06530722689757,-256.0460141720188,95.11427347765263],\\\"focalPoint\\\":[30.322647094726562,1.8909549
[04:58] [ComfyUI] Node 14: GeomPackPreviewMeshVTK
[04:58] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"{\\\"position\\\":[30.06530722689757,-256.0460141720188,95.11427347765263],\\\"focalPoint\\\":[30.322647094726562,1.89095497
[04:58] [ComfyUI] Generated prompt_id: 04c0c572-49e7-4ef0-bea9-46744042864e
[04:58] [ComfyUI] Calling execution.validate_prompt()...
[04:58] [ComfyUI] Validation result: valid=True
[04:58] [ComfyUI] === Validation PASSED ===
[04:58] [ComfyUI] got prompt
[04:58] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[04:58] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[04:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:58] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:58] [ComfyUI] [SubprocessWorker] call_id=88 sending call_method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/Stanford_Bunny.stl
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[04:58] [ComfyUI] [SubprocessWorker] got response: ok
[04:58] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.23s): result: NodeOutput
[04:58] [ComfyUI] [comfy-env] Running GeomPackMeshToPointCloud: mode: 'surface_sampling', sample_count: 10000, sampling_method: 'uniform', include_normals: 'true', trimesh: Trimesh
[04:58] [ComfyUI] [SubprocessWorker] call_method: nodes.conversion.mesh_to_pointcloud.MeshToPointCloudNode.EXECUTE_NORMALIZED
[04:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:58] [ComfyUI] [SubprocessWorker] call_id=89 sending call_method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sampling 10,000 points using uniform method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated point cloud with 10,000 points
[04:58] [ComfyUI] [SubprocessWorker] got response: ok
[04:58] [ComfyUI] [comfy-env] GeomPackMeshToPointCloud done (0.06s): result: NodeOutput
[04:58] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[04:58] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[04:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:58] [ComfyUI] [SubprocessWorker] call_id=90 sending call_method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: convex_hull -> GeomPackReconstruct_ConvexHull
[04:58] [ComfyUI] [SubprocessWorker] got response: ok
[04:58] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[04:58] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[04:58] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[04:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:58] [ComfyUI] [SubprocessWorker] call_id=91 sending call_method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: poisson -> GeomPackReconstruct_Poisson
[04:58] [ComfyUI] [SubprocessWorker] got response: ok
[04:58] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[04:58] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[04:58] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[04:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:58] [ComfyUI] [SubprocessWorker] call_id=92 sending call_method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: alpha_shape -> GeomPackReconstruct_AlphaShape
[04:58] [ComfyUI] [SubprocessWorker] got response: ok
[04:58] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[04:58] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[04:58] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[04:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:58] [ComfyUI] [SubprocessWorker] call_id=93 sending call_method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: ball_pivoting -> GeomPackReconstruct_BallPivoting
[04:58] [ComfyUI] [SubprocessWorker] got response: ok
[04:58] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[04:58] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh
[04:58] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[04:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:58] [ComfyUI] [SubprocessWorker] call_id=94 sending call_method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Point Cloud - 10000 vertices, 0 faces
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting point cloud to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_815535a6.vtp
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 10000 points
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_815535a6.vtp
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=False, volume=None, area=None, no fields
[04:58] [ComfyUI] [SubprocessWorker] got response: ok
[04:58] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.05s): result: NodeOutput
[04:58] [ComfyUI] [comfy-env] Running GeomPackReconstruct_ConvexHull: points: Trimesh
[04:58] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.convex_hull.ReconstructConvexHullNode.EXECUTE_NORMALIZED
[04:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:58] [ComfyUI] [SubprocessWorker] call_id=95 sending call_method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: convex_hull
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computing convex hull...
[04:58] [ComfyUI] [SubprocessWorker] got response: ok
[04:58] [ComfyUI] [comfy-env] GeomPackReconstruct_ConvexHull done (0.04s): result: NodeOutput
[04:58] [ComfyUI] [comfy-env] Running GeomPackReconstruct_Poisson: points: Trimesh, poisson_depth: 8, poisson_scale: 1.1, estimate_normals: 'true', normal_radius: 0.1
[04:58] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.poisson.ReconstructPoissonNode.EXECUTE_NORMALIZED
[04:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:58] [ComfyUI] [SubprocessWorker] call_id=96 sending call_method
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: poisson
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using normals from input
[04:58] Node executed (2 total), capturing...
[04:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using PyMeshLab Poisson reconstruction...
[04:59] Frame 2 saved (frame_001.jpg, t=0.8s)
[04:59] [capture-node] freeze=121ms shot=143ms unfreeze=3ms saved=True
[05:03] Frame 3 saved (frame_002.jpg, t=5.3s)
[05:03] [capture-periodic] freeze=3ms shot=135ms unfreeze=3ms saved=True
[05:03] [ComfyUI] [SubprocessWorker] got response: ok
[05:03] [ComfyUI] [comfy-env] GeomPackReconstruct_Poisson done (5.34s): result: NodeOutput
[05:03] [ComfyUI] [comfy-env] Running GeomPackReconstruct_AlphaShape: points: Trimesh, alpha: 8.0
[05:03] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.alpha_shape.ReconstructAlphaShapeNode.EXECUTE_NORMALIZED
[05:03] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:03] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:03] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:03] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:03] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:03] [ComfyUI] [SubprocessWorker] call_id=97 sending call_method
[05:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: alpha_shape
[05:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computing alpha shape...
[05:03] Node executed (3 total), capturing...
[05:04] Frame 4 saved (frame_003.jpg, t=6.2s)
[05:04] [capture-node] freeze=2ms shot=108ms unfreeze=4ms saved=True
[05:04] [capture-loop] iter=50 t=6.6s state={'complete': False, 'error': None, 'executedCount': 3, 'wsState': 1} eval_ms=2 ram=2.7/15.6GB (17%) swap=0.0/3.0GB (0%) cpu=26% browser_rss=1.11GB
[05:05] [ComfyUI] [SubprocessWorker] got response: ok
[05:05] [ComfyUI] [comfy-env] GeomPackReconstruct_AlphaShape done (1.78s): result: NodeOutput
[05:05] [ComfyUI] [comfy-env] Running GeomPackReconstruct_BallPivoting: points: Trimesh, ball_radius: 3.0, estimate_normals: 'true', normal_radius: 0.5
[05:05] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.ball_pivoting.ReconstructBallPivotingNode.EXECUTE_NORMALIZED
[05:05] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:05] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:05] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:05] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:05] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:05] [ComfyUI] [SubprocessWorker] call_id=98 sending call_method
[05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: ball_pivoting
[05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using PyMeshLab Ball Pivoting...
[05:05] Node executed (4 total), capturing...
[05:05] [ComfyUI] [SubprocessWorker] got response: ok
[05:05] [ComfyUI] [comfy-env] GeomPackReconstruct_BallPivoting done (0.14s): result: NodeOutput
[05:05] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[05:05] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[05:05] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:05] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:05] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:05] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[05:05] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:05] [ComfyUI] [SubprocessWorker] call_id=99 sending call_method
[05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 43955 vertices, 87977 faces
[05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_c3da705d.vtp
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (43955 vertices)
[05:06] Frame 5 saved (frame_004.jpg, t=7.9s)
[05:06] [capture-node] freeze=3ms shot=127ms unfreeze=3ms saved=True
[05:06] Node executed (5 total), capturing...
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 43955 vertices, 87977 faces
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_c3da705d.vtp
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 10000 vertices, 16541 faces
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_c3da705d.vtp
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (10000 vertices)
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 10000 vertices, 16541 faces
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_c3da705d.vtp
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 5794 vertices, 12256 faces
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_c3da705d.vtp
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (5794 vertices)
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 5794 vertices, 12256 faces
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_c3da705d.vtp
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 712 vertices, 1420 faces
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_c3da705d.vtp
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (712 vertices)
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 712 vertices, 1420 faces
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_c3da705d.vtp
[05:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[05:06] [ComfyUI] [SubprocessWorker] got response: ok
[05:06] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.53s): result: NodeOutput
[05:06] [ComfyUI] Prompt executed in 8.22 seconds
[05:06] [capture-node] freeze=2ms shot=110ms unfreeze=4ms saved=False
[05:06] Node executed (6 total), capturing...
[05:08] Frame 6 saved (frame_005.jpg, t=8.9s)
[05:08] [capture-node] freeze=998ms shot=545ms unfreeze=0ms saved=True
[05:08] Execution complete (t=8.9s)
[05:08] Captured 6 unique frames over 10.5s
[05:08] [debug] iframes: 2
[05:08] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779138, canvas=486x384, rafFrozen=True
[05:08] [debug] iframe[1]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[05:08] [timing] trigger_3d_previews: 0.0s
[05:10] Saved high-quality screenshot: reconstruct_all_executed.png
[05:10] [timing] final_screenshot: 0.3s
[05:11] Capturing execution frames: refine_mesh.json
[05:16] Frame 1 saved (frame_000.jpg, t=0.0s)
[05:16] Validating workflow...
[05:16] [ComfyUI] === /validate endpoint called ===
[05:16] [ComfyUI] Received JSON with keys: ['prompt']
[05:16] [ComfyUI] Prompt has 3 nodes
[05:16] [ComfyUI] Node 1: GeomPackLoadMesh
[05:16] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[05:16] Queuing workflow for execution...
[05:16] [ComfyUI] Node 3: GeomPackPreviewMeshDual
[05:16] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"se
[05:16] [ComfyUI] Node 4: RefineMesh
[05:16] [ComfyUI] Inputs: {"operation": "decimation", "target_face_count": 5000, "decimation_method": "trimesh", "subdivision_iterations": 1, "smoothing_iterations": 5, "lambda_factor": 0.5, "report_panel": "false", "trimesh":
[05:16] [ComfyUI] Generated prompt_id: 15f098cb-e055-4ff3-bbf0-bd73a03a1c78
[05:16] [ComfyUI] Calling execution.validate_prompt()...
[05:16] [ComfyUI] Validation result: valid=True
[05:16] [ComfyUI] === Validation PASSED ===
[05:16] [ComfyUI] got prompt
[05:16] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[05:16] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[05:16] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[05:16] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[05:16] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[05:16] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[05:16] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[05:16] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_2hj8ki3t/persistent_worker.py', 'abstract://comfy_worker_22ca0d484620']...
[05:16] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_22ca0d484620 (abstract, no filesystem path)
[05:17] [ComfyUI] [worker:ComfyUI-GeometryPack] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[05:17] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:17] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:17] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[05:17] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:17] [ComfyUI] [SubprocessWorker] call_id=100 sending call_method
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/Stanford_Bunny.stl
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[05:18] [ComfyUI] [SubprocessWorker] got response: ok
[05:18] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.10s): result: NodeOutput
[05:18] [ComfyUI] [comfy-env] Running RefineMesh: operation: 'decimation', target_face_count: 5000, decimation_method: 'trimesh', subdivision_iterations: 1, smoothing_iterations: 5, lambda_factor: 0.5, trimesh: Trimesh
[05:18] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.refine.RefineMeshNode.EXECUTE_NORMALIZED
[05:18] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:18] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:18] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:18] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:18] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:18] [ComfyUI] [SubprocessWorker] call_id=101 sending call_method
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: decimation
[05:18] Frame 2 saved (frame_001.jpg, t=2.2s)
[05:18] [capture-periodic] freeze=2ms shot=100ms unfreeze=4ms saved=True
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2502 vertices (-53701), 5000 faces (-107402)
[05:18] [ComfyUI] [SubprocessWorker] got response: ok
[05:18] [ComfyUI] [comfy-env] RefineMesh done (0.16s): result: NodeOutput
[05:18] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[05:18] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[05:18] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:18] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:18] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:18] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[05:18] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:18] [ComfyUI] [SubprocessWorker] call_id=102 sending call_method
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2502 vertices, 5000 faces
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['face.stl']
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[05:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_e17d0fcf.vtp
[05:18] Node executed (1 total), capturing...
[05:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[05:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[05:19] Frame 3 saved (frame_002.jpg, t=2.6s)
[05:19] [capture-node] freeze=3ms shot=83ms unfreeze=3ms saved=True
[05:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[05:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_e17d0fcf.vtp
[05:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_e17d0fcf.stl
[05:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[05:19] [ComfyUI] [SubprocessWorker] got response: ok
[05:19] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.51s): result: NodeOutput
[05:19] [ComfyUI] Prompt executed in 2.77 seconds
[05:19] Node executed (2 total), capturing...
[05:20] Frame 4 saved (frame_003.jpg, t=3.1s)
[05:20] [capture-node] freeze=224ms shot=692ms unfreeze=0ms saved=True
[05:20] Execution complete (t=3.1s)
[05:20] Captured 4 unique frames over 4.07s
[05:20] [debug] iframes: 1
[05:20] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=387x485, rafFrozen=True
[05:20] [timing] trigger_3d_previews: 0.0s
[05:22] Saved high-quality screenshot: refine_mesh_executed.png
[05:22] [timing] final_screenshot: 0.2s
[05:23] Capturing execution frames: remesh_intersections.json
[05:28] Frame 1 saved (frame_000.jpg, t=0.0s)
[05:28] Validating workflow...
[05:28] [ComfyUI] === /validate endpoint called ===
[05:28] [ComfyUI] Received JSON with keys: ['prompt']
[05:28] [ComfyUI] Prompt has 5 nodes
[05:28] [ComfyUI] Node 1: GeomPackLoadMesh
[05:28] [ComfyUI] Inputs: {"file_path": "3d/camelhead.off"}
[05:28] [ComfyUI] Node 5: GeomPackDetectSelfIntersections
[05:28] Queuing workflow for execution...
[05:28] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]}
[05:28] [ComfyUI] Node 8: GeomPackDetectSelfIntersections
[05:28] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["12", 0]}
[05:28] [ComfyUI] Node 12: GeomPackRemeshSelfIntersections
[05:28] [ComfyUI] Inputs: {"detect_only": false, "remove_unreferenced": true, "extract_outer_hull": false, "stitch_all": true, "report_panel": "false", "mesh": ["1", 0]}
[05:28] [ComfyUI] Node 13: GeomPackPreviewMeshDual
[05:28] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.09589855044406126,0.14917436072323867,0.1071
[05:28] [ComfyUI] Generated prompt_id: e67a5776-d2d2-4ad0-b03d-01f197dd3fa6
[05:28] [ComfyUI] Calling execution.validate_prompt()...
[05:28] [ComfyUI] Validation result: valid=True
[05:28] [ComfyUI] === Validation PASSED ===
[05:28] [ComfyUI] got prompt
[05:28] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/camelhead.off'
[05:28] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[05:28] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:28] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:28] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:28] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[05:28] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:28] [ComfyUI] [SubprocessWorker] call_id=103 sending call_method
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/camelhead.off
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/camelhead.off
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 11381 vertices, 22704 faces
[05:28] [ComfyUI] [SubprocessWorker] got response: ok
[05:28] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.08s): result: NodeOutput
[05:28] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh
[05:28] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED
[05:28] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:28] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:28] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:28] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:28] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:28] [ComfyUI] [SubprocessWorker] call_id=104 sending call_method
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11381 vertices, 22704 faces
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 6 intersecting faces (5 intersection pairs)
[05:28] [ComfyUI] [SubprocessWorker] got response: ok
[05:28] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.10s): result: NodeOutput
[05:28] [ComfyUI] [comfy-env] Running GeomPackRemeshSelfIntersections: detect_only: False, remove_unreferenced: True, extract_outer_hull: False, stitch_all: True, mesh: Trimesh
[05:28] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.remesh_intersections.RemeshSelfIntersectionsNode.EXECUTE_NORMALIZED
[05:28] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:28] Node executed (1 total), capturing...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:28] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:28] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:28] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:28] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:28] [ComfyUI] [SubprocessWorker] call_id=105 sending call_method
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Processing mesh: 11381 vertices, 22704 faces
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Options: detect_only=False, remove_unreferenced=True, extract_outer_hull=False, stitch_all=True
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remeshing complete: 11385 vertices, 22720 faces
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Removing unreferenced vertices...
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: After cleanup: 11385 vertices, 22720 faces
[05:28] [ComfyUI] [SubprocessWorker] got response: ok
[05:28] [ComfyUI] [comfy-env] GeomPackRemeshSelfIntersections done (0.21s): result: NodeOutput
[05:28] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh
[05:28] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED
[05:28] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:28] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:28] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:28] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:28] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:28] [ComfyUI] [SubprocessWorker] call_id=106 sending call_method
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11385 vertices, 22720 faces
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: No self-intersections detected
[05:28] Frame 2 saved (frame_001.jpg, t=0.5s)
[05:28] [capture-node] freeze=9ms shot=84ms unfreeze=3ms saved=True
[05:28] [ComfyUI] [SubprocessWorker] got response: ok
[05:28] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.10s): result: NodeOutput
[05:28] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[05:28] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[05:28] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:28] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:28] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:28] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[05:28] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:28] [ComfyUI] [SubprocessWorker] call_id=107 sending call_method
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 11381 vertices, 22704 faces
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11385 vertices, 22720 faces
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_c36acc1e.vtp
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11381 vertices)
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1)
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1)
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11381 vertices, 22704 faces
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_c36acc1e.vtp
[05:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_c36acc1e.vtp
[05:28] Node executed (3 total), capturing...
[05:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11385 vertices)
[05:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1)
[05:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1)
[05:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting
[05:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11385 vertices, 22720 faces
[05:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_c36acc1e.vtp
[05:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[05:29] [ComfyUI] [SubprocessWorker] got response: ok
[05:29] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.19s): result: NodeOutput
[05:29] [ComfyUI] Prompt executed in 0.68 seconds
[05:29] Frame 3 saved (frame_002.jpg, t=0.9s)
[05:29] [capture-node] freeze=4ms shot=132ms unfreeze=10ms saved=True
[05:29] Node executed (4 total), capturing...
[05:29] Frame 4 saved (frame_003.jpg, t=1.5s)
[05:29] [capture-node] freeze=38ms shot=99ms unfreeze=0ms saved=True
[05:29] Execution complete (t=1.5s)
[05:29] Captured 4 unique frames over 1.65s
[05:29] [debug] iframes: 1
[05:29] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[05:29] [timing] trigger_3d_previews: 0.0s
[05:32] Saved high-quality screenshot: remesh_intersections_executed.png
[05:32] [timing] final_screenshot: 0.2s
[05:32] Capturing execution frames: remeshing.json
[05:38] Frame 1 saved (frame_000.jpg, t=0.0s)
[05:38] Validating workflow...
[05:38] [ComfyUI] === /validate endpoint called ===
[05:38] [ComfyUI] Received JSON with keys: ['prompt']
[05:38] [ComfyUI] Prompt has 3 nodes
[05:38] [ComfyUI] Node 1: GeomPackLoadMesh
[05:38] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[05:38] [ComfyUI] Node 25: GeomPackPreviewMeshDual
[05:38] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[25.772299630393015,-184.35090618167206,132.3708
[05:38] Queuing workflow for execution...
[05:38] [ComfyUI] Node 27: GeomPackRemesh
[05:38] [ComfyUI] Inputs: {"backend": "quadwild", "backend.qw_sharp_angle": 35, "backend.qw_alpha": 0.02, "backend.qw_scale_factor": 1, "backend.qw_remesh": "true", "backend.qw_smooth": "true", "report_panel": "false", "trimes
[05:38] [ComfyUI] Generated prompt_id: 28934928-24ae-42d2-a97c-19f1093d1f2f
[05:38] [ComfyUI] Calling execution.validate_prompt()...
[05:38] [ComfyUI] Validation result: valid=True
[05:38] [ComfyUI] === Validation PASSED ===
[05:38] [ComfyUI] got prompt
[05:38] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[05:38] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[05:38] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:38] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:38] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:38] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[05:38] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:38] [ComfyUI] [SubprocessWorker] call_id=108 sending call_method
[05:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[05:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/Stanford_Bunny.stl
[05:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[05:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[05:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[05:38] [ComfyUI] [SubprocessWorker] got response: ok
[05:38] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.24s): result: NodeOutput
[05:38] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[05:38] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[05:38] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:38] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:38] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:38] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:38] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:38] [ComfyUI] [SubprocessWorker] call_id=109 sending call_method
[05:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: quadwild -> GeomPackRemesh_QuadWild
[05:38] [ComfyUI] [SubprocessWorker] got response: ok
[05:38] [ComfyUI] [comfy-env] GeomPackRemesh done (0.03s): result: NodeOutput
[05:38] [ComfyUI] [comfy-env] Running GeomPackRemesh_QuadWild: trimesh: Trimesh, qw_sharp_angle: 35.0, qw_alpha: 0.02, qw_scale_factor: 1.0, qw_remesh: 'true', qw_smooth: 'true'
[05:38] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.quadwild.RemeshQuadWildNode.EXECUTE_NORMALIZED
[05:38] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:38] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:38] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:38] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:38] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:38] [ComfyUI] [SubprocessWorker] call_id=110 sending call_method
[05:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: quadwild
[05:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces
[05:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: sharp_angle=35.0, alpha=0.02, scale=1.0, remesh=true, smooth=true
[05:40] Frame 2 saved (frame_001.jpg, t=2.2s)
[05:40] [capture-periodic] freeze=3ms shot=101ms unfreeze=5ms saved=True
[05:42] Frame 3 saved (frame_002.jpg, t=4.4s)
[05:42] [capture-periodic] freeze=2ms shot=98ms unfreeze=3ms saved=True
[05:43] [capture-loop] iter=50 t=5.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.6/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=28% browser_rss=0.93GB
[05:49] [capture-loop] iter=100 t=11.2s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.6/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.92GB
[05:54] [capture-loop] iter=150 t=16.6s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.5/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=33% browser_rss=0.92GB
[05:59] [ComfyUI] Initital dimension: 33361 x 33361, number of constraints: 0, number of integer variables: 20091, use reordering: yes
[05:59] [ComfyUI] make_constraints_independent took 0.00035000000000000005 s.
[05:59] [ComfyUI] Constraint integration took 3.4e-05 s.
[05:59] [ComfyUI] Constraint elimination took 0.0033900000000000002 s.
[05:59] [ComfyUI] Reindexing took 0.00042200000000000001 s.
[05:59] [ComfyUI] eliminate_constraints took 0.003947 s.
[05:59] [ComfyUI] Eliminated dimension: 33361 x 33361
[05:59] [ComfyUI] #nonzeros: 152419
[05:59] [ComfyUI] integer variables #: 20091
[05:59] [ComfyUI] continuous variables #: 13270
[05:59] [ComfyUI] initial full solution
[05:59] [ComfyUI] calc_system_eigen took 0.017920999999999999 s.
[06:00] [capture-loop] iter=200 t=22.2s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.5/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.92GB
[06:00] [ComfyUI] final full solution
[06:00] [ComfyUI] update_system_eigen took 0.0060699999999999999 s.
[06:00] [ComfyUI] *** Statistics of MiSo Solver ***
[06:00] [ComfyUI] Number of LOCAL iterations = 3042
[06:00] [ComfyUI] Number of CG iterations = 0
[06:00] [ComfyUI] Number of FULL iterations = 2
[06:00] [ComfyUI] Number of ROUNDING = 20091
[06:00] [ComfyUI] solve_multiple_rounding took 0.49099799999999999 s.
[06:00] [ComfyUI] solve took 0.49107899999999999 s.
[06:00] [ComfyUI] restore_eliminated_vars took 8.2999999999999998e-05 s.
[06:00] [ComfyUI] solve took 0.49577199999999999 s.
[06:02] [ComfyUI] performed 180 adjustments for even rhs
[06:02] [ComfyUI] performed 170 adjustments for even rhs
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6118 vertices, 12228 faces
[06:04] [ComfyUI] [SubprocessWorker] got response: ok
[06:04] [ComfyUI] [comfy-env] GeomPackRemesh_QuadWild done (26.14s): result: NodeOutput
[06:04] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[06:04] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[06:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:04] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[06:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:04] [ComfyUI] [SubprocessWorker] call_id=111 sending call_method
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6118 vertices, 12228 faces
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['face.stl']
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_54b3ac61.vtp
[06:04] Node executed (1 total), capturing...
[06:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[06:05] Frame 4 saved (frame_003.jpg, t=26.7s)
[06:05] [capture-node] freeze=3ms shot=92ms unfreeze=4ms saved=True
[06:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[06:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[06:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_54b3ac61.vtp
[06:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_54b3ac61.stl
[06:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[06:05] [ComfyUI] [SubprocessWorker] got response: ok
[06:05] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.51s): result: NodeOutput
[06:05] [ComfyUI] Prompt executed in 26.92 seconds
[06:05] Node executed (2 total), capturing...
[06:05] Frame 5 saved (frame_004.jpg, t=27.2s)
[06:05] [capture-node] freeze=3ms shot=92ms unfreeze=0ms saved=True
[06:05] Execution complete (t=27.2s)
[06:05] Captured 5 unique frames over 27.37s
[06:05] [debug] iframes: 1
[06:05] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=0x0, rafFrozen=False
[06:05] [timing] trigger_3d_previews: 0.0s
[06:07] Saved high-quality screenshot: remeshing_executed.png
[06:07] [timing] final_screenshot: 0.3s
[06:08] [20/33] SKIPPED (not in cpu list) remeshing_all.json
[06:08] Capturing execution frames: sMOOth.json
[06:13] Frame 1 saved (frame_000.jpg, t=0.0s)
[06:13] Validating workflow...
[06:13] [ComfyUI] === /validate endpoint called ===
[06:13] [ComfyUI] Received JSON with keys: ['prompt']
[06:13] [ComfyUI] Prompt has 3 nodes
[06:13] [ComfyUI] Node 1: GeomPackPreviewMeshDual
[06:13] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-1.264590737186599,0.4315551722479547,-0.956898
[06:13] Queuing workflow for execution...
[06:13] [ComfyUI] Node 3: GeomPackLoadMesh
[06:13] [ComfyUI] Inputs: {"file_path": "3d/cow.off"}
[06:13] [ComfyUI] Node 5: GeomPackSmoothMesh
[06:13] [ComfyUI] Inputs: {"backend": "taubin", "backend.iterations": 5, "backend.lambda_": 1, "backend.mu": -0.8, "trimesh": ["3", 0]}
[06:13] [ComfyUI] Generated prompt_id: d932261a-95ac-463e-92b2-739603dc7f6f
[06:13] [ComfyUI] Calling execution.validate_prompt()...
[06:13] [ComfyUI] Validation result: valid=True
[06:13] [ComfyUI] === Validation PASSED ===
[06:13] [ComfyUI] got prompt
[06:13] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/cow.off'
[06:13] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[06:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:13] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[06:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:13] [ComfyUI] [SubprocessWorker] call_id=112 sending call_method
[06:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/cow.off
[06:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/cow.off
[06:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2761 vertices, 5520 faces
[06:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2761 vertices, 5520 faces
[06:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2761 vertices, 5520 faces
[06:13] [ComfyUI] [SubprocessWorker] got response: ok
[06:13] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.03s): result: NodeOutput
[06:13] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[06:13] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED
[06:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:13] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:13] [ComfyUI] [SubprocessWorker] call_id=113 sending call_method
[06:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: taubin -> GeomPackSmooth_Taubin
[06:13] [ComfyUI] [SubprocessWorker] got response: ok
[06:13] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[06:13] [ComfyUI] [comfy-env] Running GeomPackSmooth_Taubin: trimesh: Trimesh, iterations: 5, lambda_: 1.0, mu: -0.8
[06:13] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.taubin.SmoothTaubinNode.EXECUTE_NORMALIZED
[06:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:13] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:13] [ComfyUI] [SubprocessWorker] call_id=114 sending call_method
[06:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: taubin
[06:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[06:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=5, lambda=1.000, mu=-0.800
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.007834, max: 0.047218
[06:14] [ComfyUI] [SubprocessWorker] got response: ok
[06:14] [ComfyUI] [comfy-env] GeomPackSmooth_Taubin done (0.15s): result: NodeOutput
[06:14] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[06:14] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[06:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:14] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:14] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[06:14] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:14] [ComfyUI] [SubprocessWorker] call_id=115 sending call_method
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_a5485a7f.stl
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_a5485a7f.stl
[06:14] Node executed (1 total), capturing...
[06:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[06:14] [ComfyUI] [SubprocessWorker] got response: ok
[06:14] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[06:14] [ComfyUI] Prompt executed in 0.22 seconds
[06:14] Frame 2 saved (frame_001.jpg, t=0.5s)
[06:14] [capture-node] freeze=5ms shot=267ms unfreeze=2ms saved=True
[06:14] Node executed (2 total), capturing...
[06:14] Frame 3 saved (frame_002.jpg, t=1.1s)
[06:14] [capture-node] freeze=3ms shot=113ms unfreeze=0ms saved=True
[06:14] Execution complete (t=1.1s)
[06:14] Captured 3 unique frames over 1.26s
[06:14] [debug] iframes: 1
[06:14] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[06:14] [timing] trigger_3d_previews: 0.0s
[06:17] Saved high-quality screenshot: sMOOth_executed.png
[06:17] [timing] final_screenshot: 0.3s
[06:17] Capturing execution frames: sharpen.json
[06:22] Frame 1 saved (frame_000.jpg, t=0.0s)
[06:22] Validating workflow...
[06:22] [ComfyUI] === /validate endpoint called ===
[06:22] [ComfyUI] Received JSON with keys: ['prompt']
[06:22] [ComfyUI] Prompt has 4 nodes
[06:22] [ComfyUI] Node 4: GeomPackLoadMesh
[06:22] [ComfyUI] Inputs: {"file_path": "3d/noisy/Fandisk0.3/Noisy.obj"}
[06:22] [ComfyUI] Node 6: GeomPackLoadMesh
[06:22] Queuing workflow for execution...
[06:22] [ComfyUI] Inputs: {"file_path": "3d/noisy/Fandisk0.3/Original.obj"}
[06:22] [ComfyUI] Node 7: GeomPackSharpenMesh
[06:22] [ComfyUI] Inputs: {"backend": "two_step", "backend.smooth_steps": 2, "backend.normal_threshold": 60, "trimesh": ["4", 0]}
[06:22] [ComfyUI] Node 8: GeomPackPreviewMeshMulti
[06:22] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[11.988365833801835,17.82450062324679,9.744545997398912],\\\"focalPoint\\\":[2.4225937947630882,15.191427
[06:22] [ComfyUI] Generated prompt_id: 87ad57e7-ce5d-4617-9ef7-043905e11f24
[06:22] [ComfyUI] Calling execution.validate_prompt()...
[06:22] [ComfyUI] Validation result: valid=True
[06:22] [ComfyUI] === Validation PASSED ===
[06:22] [ComfyUI] got prompt
[06:22] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/noisy/Fandisk0.3/Noisy.obj'
[06:22] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[06:22] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:22] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:22] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[06:22] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[06:22] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[06:22] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[06:22] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[06:22] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_2hj8ki3t/persistent_worker.py', 'abstract://comfy_worker_eefa77c19cac']...
[06:22] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_eefa77c19cac (abstract, no filesystem path)
[06:23] [ComfyUI]
[06:23] [ComfyUI] Closed: Mon May 18 21:04:06 2026
[06:23] [ComfyUI]
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[06:24] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:24] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:24] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[06:24] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:24] [ComfyUI] [SubprocessWorker] call_id=116 sending call_method
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/noisy/Fandisk0.3/Noisy.obj
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/noisy/Fandisk0.3/Noisy.obj
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 6475 vertices, 12946 faces
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 6475 vertices, 12946 faces
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 6475 vertices, 12946 faces
[06:24] [ComfyUI] [SubprocessWorker] got response: ok
[06:24] [ComfyUI] [comfy-env] GeomPackLoadMesh done (1.91s): result: NodeOutput
[06:24] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:24] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:24] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:24] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:24] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:24] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:24] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:24] [ComfyUI] [SubprocessWorker] call_id=117 sending call_method
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: two_step -> GeomPackSharpen_TwoStep
[06:24] [ComfyUI] [SubprocessWorker] got response: ok
[06:24] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:24] [ComfyUI] [comfy-env] Running GeomPackSharpen_TwoStep: trimesh: Trimesh, smooth_steps: 2, normal_threshold: 60.0
[06:24] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.two_step.SharpenTwoStepNode.EXECUTE_NORMALIZED
[06:24] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:24] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:24] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:24] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:24] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:24] [ComfyUI] [SubprocessWorker] call_id=118 sending call_method
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: two_step
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: smooth_steps=2, normal_threshold=60.0
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.050268, max: 0.269867
[06:25] [ComfyUI] [SubprocessWorker] got response: ok
[06:25] [ComfyUI] [comfy-env] GeomPackSharpen_TwoStep done (0.21s): result: NodeOutput
[06:25] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/noisy/Fandisk0.3/Original.obj'
[06:25] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[06:25] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:25] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:25] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:25] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:25] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[06:25] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:25] [ComfyUI] [SubprocessWorker] call_id=119 sending call_method
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/noisy/Fandisk0.3/Original.obj
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/noisy/Fandisk0.3/Original.obj
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 6475 vertices, 12946 faces
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 6475 vertices, 12946 faces
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 6475 vertices, 12946 faces
[06:25] [ComfyUI] [SubprocessWorker] got response: ok
[06:25] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.06s): result: NodeOutput
[06:25] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh
[06:25] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[06:25] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:25] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:25] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:25] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:25] [ComfyUI] [SubprocessWorker] created 3 shm blocks
[06:25] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:25] [ComfyUI] [SubprocessWorker] call_id=120 sending call_method
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 6475 vertices, 12946 faces
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_1053ed23.vtp
[06:25] Frame 2 saved (frame_001.jpg, t=2.2s)
[06:25] [capture-periodic] freeze=2ms shot=104ms unfreeze=2ms saved=True
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_1053ed23.vtp
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6475 vertices, 12946 faces
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_1053ed23.vtp
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_1053ed23.vtp
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 6475 vertices, 12946 faces
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_1053ed23.vtp
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:25] Node executed (1 total), capturing...
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_1053ed23.vtp
[06:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready
[06:25] [ComfyUI] [SubprocessWorker] got response: ok
[06:25] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.15s): result: NodeOutput
[06:25] [ComfyUI] Prompt executed in 2.35 seconds
[06:26] Frame 3 saved (frame_002.jpg, t=2.6s)
[06:26] [capture-node] freeze=486ms shot=300ms unfreeze=3ms saved=True
[06:26] Node executed (2 total), capturing...
[06:26] [capture-node] freeze=2ms shot=104ms unfreeze=0ms saved=False
[06:26] Execution complete (t=3.7s)
[06:26] Captured 3 unique frames over 3.79s
[06:26] [debug] iframes: 1
[06:26] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=244x393, rafFrozen=True
[06:26] [timing] trigger_3d_previews: 0.0s
[06:28] Saved high-quality screenshot: sharpen_executed.png
[06:28] [timing] final_screenshot: 0.2s
[06:29] Capturing execution frames: sharpen_all.json
[06:34] Frame 1 saved (frame_000.jpg, t=0.0s)
[06:34] Validating workflow...
[06:34] [ComfyUI] === /validate endpoint called ===
[06:34] [ComfyUI] Received JSON with keys: ['prompt']
[06:34] [ComfyUI] Prompt has 10 nodes
[06:34] [ComfyUI] Node 1: GeomPackLoadMesh
[06:34] [ComfyUI] Inputs: {"file_path": "3d/noisy/Fandisk0.3/Noisy.obj"}
[06:34] [ComfyUI] Node 2: GeomPackSharpenMesh
[06:34] Queuing workflow for execution...
[06:34] [ComfyUI] Inputs: {"backend": "two_step", "backend.smooth_steps": 3, "backend.normal_threshold": 60, "trimesh": ["1", 0]}
[06:34] [ComfyUI] Node 4: GeomPackSharpenMesh
[06:34] [ComfyUI] Inputs: {"backend": "libigl_unsharp", "backend.weight": 0.5, "backend.iterations": 3, "trimesh": ["1", 0]}
[06:34] [ComfyUI] Node 5: GeomPackSharpenMesh
[06:34] [ComfyUI] Inputs: {"backend": "l0_minimize", "backend.alpha": 0.001, "backend.beta": 2, "backend.iterations": 10, "trimesh": ["1", 0]}
[06:34] [ComfyUI] Node 6: GeomPackSharpenMesh
[06:34] [ComfyUI] Inputs: {"backend": "guided_normal", "backend.normal_iterations": 5, "backend.vertex_iterations": 10, "backend.sigma_s": 1, "backend.sigma_r": 0.35, "trimesh": ["1", 0]}
[06:34] [ComfyUI] Node 8: GeomPackSharpenMesh
[06:34] [ComfyUI] Inputs: {"backend": "fast_effective", "backend.threshold_T": 0.2, "backend.normal_iterations": 10, "backend.vertex_iterations": 20, "trimesh": ["1", 0]}
[06:34] [ComfyUI] Node 9: GeomPackSharpenMesh
[06:34] [ComfyUI] Inputs: {"backend": "non_iterative", "backend.sigma_f": 1, "backend.sigma_g": 1, "trimesh": ["1", 0]}
[06:34] [ComfyUI] Node 10: GeomPackPreviewMeshMulti
[06:34] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-5.961122528109332,15.888697444123462,3.5443586005740766],\\\"focalPoint\\\":[2.429478704929352,15.20779
[06:34] [ComfyUI] Node 11: GeomPackPreviewMeshMulti
[06:34] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-5.961122528109332,15.888697444123462,3.5443586005740766],\\\"focalPoint\\\":[2.429478704929352,15.20779
[06:34] [ComfyUI] Node 15: GeomPackSharpenMesh
[06:34] [ComfyUI] Inputs: {"backend": "unsharp_mask", "backend.weight": 0.3, "backend.iterations": 5, "trimesh": ["1", 0]}
[06:34] [ComfyUI] Generated prompt_id: 4a138e3b-052a-4722-8cbe-1dca8a9bd3ff
[06:34] [ComfyUI] Calling execution.validate_prompt()...
[06:34] [ComfyUI] Validation result: valid=True
[06:34] [ComfyUI] === Validation PASSED ===
[06:34] [ComfyUI] got prompt
[06:34] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/noisy/Fandisk0.3/Noisy.obj'
[06:34] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[06:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:34] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[06:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:34] [ComfyUI] [SubprocessWorker] call_id=121 sending call_method
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/noisy/Fandisk0.3/Noisy.obj
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/noisy/Fandisk0.3/Noisy.obj
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 6475 vertices, 12946 faces
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 6475 vertices, 12946 faces
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 6475 vertices, 12946 faces
[06:34] [ComfyUI] [SubprocessWorker] got response: ok
[06:34] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.04s): result: NodeOutput
[06:34] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:34] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:34] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:34] [ComfyUI] [SubprocessWorker] call_id=122 sending call_method
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: non_iterative -> GeomPackSharpen_NonIterative
[06:34] [ComfyUI] [SubprocessWorker] got response: ok
[06:34] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:34] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:34] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:34] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:34] [ComfyUI] [SubprocessWorker] call_id=123 sending call_method
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: guided_normal -> GeomPackSharpen_GuidedNormal
[06:34] [ComfyUI] [SubprocessWorker] got response: ok
[06:34] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:34] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:34] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:34] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:34] [ComfyUI] [SubprocessWorker] call_id=124 sending call_method
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: fast_effective -> GeomPackSharpen_FastEffective
[06:34] [ComfyUI] [SubprocessWorker] got response: ok
[06:34] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:34] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:34] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:34] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:34] [ComfyUI] [SubprocessWorker] call_id=125 sending call_method
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: two_step -> GeomPackSharpen_TwoStep
[06:34] [ComfyUI] [SubprocessWorker] got response: ok
[06:34] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:34] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:34] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:34] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:34] [ComfyUI] [SubprocessWorker] call_id=126 sending call_method
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: libigl_unsharp -> GeomPackSharpen_LibiglUnsharp
[06:34] [ComfyUI] [SubprocessWorker] got response: ok
[06:34] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:34] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:34] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:34] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:34] [ComfyUI] [SubprocessWorker] call_id=127 sending call_method
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: unsharp_mask -> GeomPackSharpen_UnsharpMask
[06:34] [ComfyUI] [SubprocessWorker] got response: ok
[06:34] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:34] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:34] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:34] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:34] [ComfyUI] [SubprocessWorker] call_id=128 sending call_method
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: l0_minimize -> GeomPackSharpen_L0Minimize
[06:34] [ComfyUI] [SubprocessWorker] got response: ok
[06:34] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:34] [ComfyUI] [comfy-env] Running GeomPackSharpen_NonIterative: trimesh: Trimesh, sigma_f: 1.0, sigma_g: 1.0
[06:34] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.non_iterative.SharpenNonIterativeNode.EXECUTE_NORMALIZED
[06:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:34] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:34] [ComfyUI] [SubprocessWorker] call_id=129 sending call_method
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: non_iterative
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: sigma_f=1.000, sigma_g=1.000
[06:36] Frame 2 saved (frame_001.jpg, t=2.3s)
[06:36] [capture-periodic] freeze=2ms shot=101ms unfreeze=8ms saved=True
[06:39] Frame 3 saved (frame_002.jpg, t=4.5s)
[06:39] [capture-periodic] freeze=3ms shot=116ms unfreeze=6ms saved=True
[06:40] [capture-loop] iter=50 t=5.8s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.4/15.6GB (15%) swap=0.0/3.0GB (0%) cpu=28% browser_rss=0.92GB
[06:41] Frame 4 saved (frame_003.jpg, t=6.6s)
[06:41] [capture-periodic] freeze=3ms shot=105ms unfreeze=3ms saved=True
[06:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[06:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.021192, max: 0.087476
[06:41] [ComfyUI] [SubprocessWorker] got response: ok
[06:41] [ComfyUI] [comfy-env] GeomPackSharpen_NonIterative done (7.12s): result: NodeOutput
[06:41] [ComfyUI] [comfy-env] Running GeomPackSharpen_GuidedNormal: trimesh: Trimesh, normal_iterations: 5, vertex_iterations: 10, sigma_s: 1.0, sigma_r: 0.35
[06:41] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.guided_normal.SharpenGuidedNormalNode.EXECUTE_NORMALIZED
[06:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:41] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:41] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:41] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:41] [ComfyUI] [SubprocessWorker] call_id=130 sending call_method
[06:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: guided_normal
[06:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: normal_iter=5, vertex_iter=10, sigma_s=1.00, sigma_r=0.350
[06:41] Node executed (1 total), capturing...
[06:42] Frame 5 saved (frame_004.jpg, t=7.6s)
[06:42] [capture-node] freeze=4ms shot=105ms unfreeze=9ms saved=True
[06:44] Frame 6 saved (frame_005.jpg, t=9.8s)
[06:44] [capture-periodic] freeze=2ms shot=118ms unfreeze=6ms saved=True
[06:46] [capture-loop] iter=100 t=11.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/15.6GB (15%) swap=0.0/3.0GB (0%) cpu=33% browser_rss=0.92GB
[06:51] [capture-loop] iter=150 t=17.3s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.3/15.6GB (15%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.92GB
[06:57] [capture-loop] iter=200 t=22.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.4/15.6GB (15%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.92GB
[07:02] [capture-loop] iter=250 t=28.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.4/15.6GB (15%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.92GB
[07:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[07:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.025300, max: 0.123510
[07:07] [ComfyUI] [SubprocessWorker] got response: ok
[07:07] [ComfyUI] [comfy-env] GeomPackSharpen_GuidedNormal done (25.59s): result: NodeOutput
[07:07] [ComfyUI] [comfy-env] Running GeomPackSharpen_FastEffective: trimesh: Trimesh, threshold_T: 0.2, normal_iterations: 10, vertex_iterations: 20
[07:07] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.fast_effective.SharpenFastEffectiveNode.EXECUTE_NORMALIZED
[07:07] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:07] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:07] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:07] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:07] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:07] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:07] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:07] [ComfyUI] [SubprocessWorker] call_id=131 sending call_method
[07:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: fast_effective
[07:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[07:07] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: threshold_T=0.200, normal_iter=10, vertex_iter=20
[07:07] Node executed (2 total), capturing...
[07:07] Frame 7 saved (frame_006.jpg, t=33.1s)
[07:07] [capture-node] freeze=2ms shot=115ms unfreeze=2ms saved=True
[07:08] [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 2, 'wsState': 1} eval_ms=2 ram=2.3/15.6GB (15%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.92GB
[07:09] Frame 8 saved (frame_007.jpg, t=35.3s)
[07:09] [capture-periodic] freeze=3ms shot=125ms unfreeze=16ms saved=True
[07:14] [capture-loop] iter=350 t=39.8s state={'complete': False, 'error': None, 'executedCount': 2, 'wsState': 1} eval_ms=2 ram=2.4/15.6GB (15%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.92GB
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.026954, max: 0.126612
[07:15] [ComfyUI] [SubprocessWorker] got response: ok
[07:15] [ComfyUI] [comfy-env] GeomPackSharpen_FastEffective done (8.28s): result: NodeOutput
[07:15] [ComfyUI] [comfy-env] Running GeomPackSharpen_TwoStep: trimesh: Trimesh, smooth_steps: 3, normal_threshold: 60.0
[07:15] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.two_step.SharpenTwoStepNode.EXECUTE_NORMALIZED
[07:15] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:15] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:15] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:15] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:15] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:15] [ComfyUI] [SubprocessWorker] call_id=132 sending call_method
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: two_step
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: smooth_steps=3, normal_threshold=60.0
[07:15] Node executed (3 total), capturing...
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.059156, max: 0.318610
[07:15] [ComfyUI] [SubprocessWorker] got response: ok
[07:15] [ComfyUI] [comfy-env] GeomPackSharpen_TwoStep done (0.11s): result: NodeOutput
[07:15] [ComfyUI] [comfy-env] Running GeomPackSharpen_LibiglUnsharp: trimesh: Trimesh, weight: 0.5, iterations: 3
[07:15] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.libigl_unsharp.SharpenLibiglUnsharpNode.EXECUTE_NORMALIZED
[07:15] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:15] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:15] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:15] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:15] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:15] [ComfyUI] [SubprocessWorker] call_id=133 sending call_method
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_unsharp
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[07:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: weight=0.500, iterations=3
[07:16] Frame 9 saved (frame_008.jpg, t=41.4s)
[07:16] [capture-node] freeze=3ms shot=108ms unfreeze=4ms saved=True
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.541299, max: 1.039092
[07:16] [ComfyUI] [SubprocessWorker] got response: ok
[07:16] [ComfyUI] [comfy-env] GeomPackSharpen_LibiglUnsharp done (0.31s): result: NodeOutput
[07:16] [ComfyUI] [comfy-env] Running GeomPackSharpen_UnsharpMask: trimesh: Trimesh, weight: 0.3, iterations: 5
[07:16] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.unsharp_mask.SharpenUnsharpMaskNode.EXECUTE_NORMALIZED
[07:16] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:16] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:16] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:16] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:16] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:16] [ComfyUI] [SubprocessWorker] call_id=134 sending call_method
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: unsharp_mask
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: weight=0.300, iterations=5
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.013687, max: 0.066009
[07:16] [ComfyUI] [SubprocessWorker] got response: ok
[07:16] [ComfyUI] [comfy-env] GeomPackSharpen_UnsharpMask done (0.03s): result: NodeOutput
[07:16] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[07:16] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[07:16] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:16] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:16] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:16] Node executed (5 total), capturing...
[07:16] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[07:16] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:16] [ComfyUI] [SubprocessWorker] call_id=135 sending call_method
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_0bdfff51.vtp
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_0bdfff51.vtp
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_0bdfff51.vtp
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_0bdfff51.vtp
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_0bdfff51.vtp
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_0bdfff51.vtp
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_0bdfff51.vtp
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_0bdfff51.vtp
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[07:16] [ComfyUI] [SubprocessWorker] got response: ok
[07:16] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.24s): result: NodeOutput
[07:16] [ComfyUI] [comfy-env] Running GeomPackSharpen_L0Minimize: trimesh: Trimesh, alpha: 0.001, beta: 2.0, iterations: 10
[07:16] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.l0_minimize.SharpenL0MinimizeNode.EXECUTE_NORMALIZED
[07:16] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:16] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:16] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:16] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:16] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:16] [ComfyUI] [SubprocessWorker] call_id=136 sending call_method
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: l0_minimize
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[07:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: alpha=0.0010, beta=2.0, iterations=10
[07:16] Frame 10 saved (frame_009.jpg, t=41.9s)
[07:16] [capture-node] freeze=3ms shot=244ms unfreeze=20ms saved=True
[07:17] Node executed (7 total), capturing...
[07:17] Frame 11 saved (frame_010.jpg, t=43.2s)
[07:17] [capture-node] freeze=172ms shot=140ms unfreeze=4ms saved=True
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.009479, max: 0.060807
[07:20] [ComfyUI] [SubprocessWorker] got response: ok
[07:20] [ComfyUI] [comfy-env] GeomPackSharpen_L0Minimize done (3.83s): result: NodeOutput
[07:20] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[07:20] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[07:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:20] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:20] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[07:20] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:20] [ComfyUI] [SubprocessWorker] call_id=137 sending call_method
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 6475 vertices, 12946 faces
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_6b9a7088.vtp
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_6b9a7088.vtp
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6475 vertices, 12946 faces
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_6b9a7088.vtp
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_6b9a7088.vtp
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 6475 vertices, 12946 faces
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_6b9a7088.vtp
[07:20] Node executed (8 total), capturing...
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_6b9a7088.vtp
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 6475 vertices, 12946 faces
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_6b9a7088.vtp
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_6b9a7088.vtp
[07:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[07:20] [ComfyUI] [SubprocessWorker] got response: ok
[07:20] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.24s): result: NodeOutput
[07:20] [ComfyUI] Prompt executed in 45.86 seconds
[07:20] Frame 12 saved (frame_011.jpg, t=46.1s)
[07:20] [capture-node] freeze=14ms shot=139ms unfreeze=3ms saved=True
[07:21] Node executed (9 total), capturing...
[07:21] Frame 13 saved (frame_012.jpg, t=47.2s)
[07:21] [capture-node] freeze=54ms shot=152ms unfreeze=0ms saved=True
[07:21] Execution complete (t=47.2s)
[07:21] Captured 13 unique frames over 47.42s
[07:21] [debug] iframes: 2
[07:21] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[07:21] [debug] iframe[1]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[07:21] [timing] trigger_3d_previews: 0.0s
[07:24] Saved high-quality screenshot: sharpen_all_executed.png
[07:24] [timing] final_screenshot: 0.3s
[07:24] Capturing execution frames: side_by_side_viewer.json
[07:30] Frame 1 saved (frame_000.jpg, t=0.0s)
[07:30] Validating workflow...
[07:30] [ComfyUI] === /validate endpoint called ===
[07:30] [ComfyUI] Received JSON with keys: ['prompt']
[07:30] [ComfyUI] Prompt has 3 nodes
[07:30] [ComfyUI] Node 1: GeomPackCreatePrimitive
[07:30] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1}
[07:30] Queuing workflow for execution...
[07:30] [ComfyUI] Node 2: GeomPackCreatePrimitive
[07:30] [ComfyUI] Inputs: {"shape": "sphere", "size": 2.5, "subdivisions": 2}
[07:30] [ComfyUI] Node 7: GeomPackPreviewMeshDual
[07:30] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"se
[07:30] [ComfyUI] Generated prompt_id: 51efff35-0518-49cd-bc7c-4a40dd50fac0
[07:30] [ComfyUI] Calling execution.validate_prompt()...
[07:30] [ComfyUI] Validation result: valid=True
[07:30] [ComfyUI] === Validation PASSED ===
[07:30] [ComfyUI] got prompt
[07:30] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 2.5, subdivisions: 2
[07:30] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[07:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:30] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[07:30] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[07:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[07:30] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[07:30] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[07:30] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_2hj8ki3t/persistent_worker.py', 'abstract://comfy_worker_ba4dbc362365']...
[07:30] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_ba4dbc362365 (abstract, no filesystem path)
[07:31] [ComfyUI] [worker:ComfyUI-GeometryPack] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[07:31] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:31] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:31] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:31] [ComfyUI] [SubprocessWorker] call_id=138 sending call_method
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 162 vertices, 320 faces
[07:32] [ComfyUI] [SubprocessWorker] got response: ok
[07:32] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (1.77s): result: NodeOutput
[07:32] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1
[07:32] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[07:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:32] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:32] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:32] [ComfyUI] [SubprocessWorker] call_id=139 sending call_method
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[07:32] [ComfyUI] [SubprocessWorker] got response: ok
[07:32] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[07:32] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[07:32] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[07:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:32] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:32] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[07:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:32] [ComfyUI] [SubprocessWorker] call_id=140 sending call_method
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 8 vertices, 12 faces
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 162 vertices, 320 faces
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_fd7e783e.stl
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_fd7e783e.stl
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[07:32] [ComfyUI] [SubprocessWorker] got response: ok
[07:32] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[07:32] [ComfyUI] Prompt executed in 1.80 seconds
[07:32] Node executed (1 total), capturing...
[07:32] Frame 2 saved (frame_001.jpg, t=2.2s)
[07:32] [capture-node] freeze=12ms shot=147ms unfreeze=0ms saved=True
[07:32] Execution complete (t=2.2s)
[07:32] Captured 2 unique frames over 2.37s
[07:32] [debug] iframes: 1
[07:32] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[07:32] [timing] trigger_3d_previews: 0.0s
[07:35] Saved high-quality screenshot: side_by_side_viewer_executed.png
[07:35] [timing] final_screenshot: 0.2s
[07:35] Capturing execution frames: skeleton_all.json
[07:41] Frame 1 saved (frame_000.jpg, t=0.0s)
[07:41] Validating workflow...
[07:41] [ComfyUI] === /validate endpoint called ===
[07:41] [ComfyUI] Received JSON with keys: ['prompt']
[07:41] [ComfyUI] Prompt has 11 nodes
[07:41] [ComfyUI] Node 1: GeomPackLoadMesh
[07:41] [ComfyUI] Inputs: {"file_path": "3d/cow.off"}
[07:41] [ComfyUI] Node 2: GeomPackExtractSkeleton
[07:41] [ComfyUI] Inputs: {"fix_mesh": "wavefront", "normalize": false, "backend": "wavefront", "backend.waves": 1, "backend.step_size": 1, "trimesh": ["1", 0]}
[07:41] [ComfyUI] Node 3: GeomPackExtractSkeleton
[07:41] Queuing workflow for execution...
[07:41] [ComfyUI] Inputs: {"fix_mesh": "vertex_clusters", "normalize": false, "backend": "vertex_clusters", "backend.sampling_dist": 1, "backend.cluster_pos": "median", "trimesh": ["1", 0]}
[07:41] [ComfyUI] Node 4: GeomPackExtractSkeleton
[07:41] [ComfyUI] Inputs: {"fix_mesh": "edge_collapse", "normalize": false, "backend": "edge_collapse", "backend.shape_weight": 1, "backend.sample_weight": 0.1, "trimesh": ["1", 0]}
[07:41] [ComfyUI] Node 5: GeomPackExtractSkeleton
[07:41] [ComfyUI] Inputs: {"fix_mesh": "teasar", "normalize": false, "backend": "teasar", "backend.inv_dist": 10, "backend.min_length": 0, "trimesh": ["1", 0]}
[07:41] [ComfyUI] Node 6: GeomPackMeshFromSkeleton
[07:41] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["2", 0]}
[07:41] [ComfyUI] Node 7: GeomPackMeshFromSkeleton
[07:41] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["3", 0]}
[07:41] [ComfyUI] Node 8: GeomPackMeshFromSkeleton
[07:41] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["4", 0]}
[07:41] [ComfyUI] Node 9: GeomPackMeshFromSkeleton
[07:41] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["5", 0]}
[07:41] [ComfyUI] Node 12: GeomPackPreviewMeshMulti
[07:41] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.10839671976880196,-0.004104770901572197,-1.5722856770085691],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\
[07:41] [ComfyUI] Node 13: GeomPackPreviewMeshMulti
[07:41] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.10839671976880196,-0.004104770901572197,-1.5722856770085691],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\
[07:41] [ComfyUI] Generated prompt_id: 45ef86ee-38c3-46d8-ae30-97c1ca13c8b1
[07:41] [ComfyUI] Calling execution.validate_prompt()...
[07:41] [ComfyUI] Validation result: valid=True
[07:41] [ComfyUI] === Validation PASSED ===
[07:41] [ComfyUI] got prompt
[07:41] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/cow.off'
[07:41] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[07:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:41] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:41] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:41] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:41] [ComfyUI] [SubprocessWorker] call_id=141 sending call_method
[07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/cow.off
[07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/cow.off
[07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2761 vertices, 5520 faces
[07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2761 vertices, 5520 faces
[07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2761 vertices, 5520 faces
[07:41] [ComfyUI] [SubprocessWorker] got response: ok
[07:41] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.03s): result: NodeOutput
[07:41] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:41] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED
[07:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:41] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:41] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:41] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:41] [ComfyUI] [SubprocessWorker] call_id=142 sending call_method
[07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: edge_collapse -> GeomPackSkeleton_EdgeCollapse
[07:41] [ComfyUI] [SubprocessWorker] got response: ok
[07:41] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:41] [ComfyUI] [comfy-env] Running GeomPackSkeleton_EdgeCollapse: trimesh: Trimesh, fix_mesh: True, normalize: False, shape_weight: 1.0, sample_weight: 0.1
[07:41] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.edge_collapse.SkeletonEdgeCollapseNode.EXECUTE_NORMALIZED
[07:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:41] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:41] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:41] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:41] [ComfyUI] [SubprocessWorker] call_id=143 sending call_method
[07:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: edge_collapse
[07:42] [ComfyUI]
[07:42] [ComfyUI] Collapsing edges: 0%| | 0/5520 [00:00<?, ?it/s]
[07:43] [ComfyUI] Collapsing edges: 7%|▋ | 378/5520 [00:00<00:01, 3776.52it/s]
[07:43] [ComfyUI] Collapsing edges: 14%|█▎ | 756/5520 [00:00<00:01, 3245.46it/s]
[07:43] [ComfyUI] Collapsing edges: 20%|██ | 1122/5520 [00:00<00:01, 3418.84it/s]
[07:43] [ComfyUI] Collapsing edges: 27%|██▋ | 1486/5520 [00:00<00:01, 3497.49it/s]
[07:43] Frame 2 saved (frame_001.jpg, t=2.3s)
[07:43] [capture-periodic] freeze=3ms shot=117ms unfreeze=7ms saved=True
[07:43] [ComfyUI] Collapsing edges: 33%|███▎ | 1840/5520 [00:00<00:01, 3447.95it/s]
[07:43] [ComfyUI] Collapsing edges: 41%|████ | 2238/5520 [00:00<00:00, 3617.37it/s]
[07:43] [ComfyUI] Collapsing edges: 48%|████▊ | 2664/5520 [00:00<00:00, 3822.10it/s]
[07:43] [ComfyUI] Collapsing edges: 56%|█████▌ | 3078/5520 [00:00<00:00, 3916.41it/s]
[07:43] [ComfyUI] Collapsing edges: 64%|██████▍ | 3522/5520 [00:00<00:00, 4073.90it/s]
[07:43] [ComfyUI] Collapsing edges: 72%|███████▏ | 3984/5520 [00:01<00:00, 4239.07it/s]
[07:44] [ComfyUI] Collapsing edges: 81%|████████ | 4458/5520 [00:01<00:00, 4389.87it/s]
[07:44] [ComfyUI] Collapsing edges: 89%|████████▉ | 4922/5520 [00:01<00:00, 4465.48it/s]
[07:44] [ComfyUI] Collapsing edges: 98%|█████████▊| 5384/5520 [00:01<00:00, 4508.63it/s]
[07:44] [ComfyUI] Collapsing edges: 100%|█████████▉| 5518/5520 [00:01<00:00, 4001.72it/s]
[07:44] [ComfyUI] [SubprocessWorker] got response: ok
[07:44] [ComfyUI] [comfy-env] GeomPackSkeleton_EdgeCollapse done (3.07s): result: NodeOutput
[07:44] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:44] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:44] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:44] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:44] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:44] [ComfyUI] [SubprocessWorker] call_id=144 sending call_method
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[55, 3]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([55, 3])
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[54, 2]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([54, 2])
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 55 joints, 54 bones
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.505, normalized=False
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.507, -0.308, -0.140]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.503, 0.319, 0.138]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.010, 0.627, 0.277]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.002, 0.005, -0.001]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 6362 vertices, 12288 faces
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.527, -0.328, -0.160]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.522, 0.338, 0.158]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.049, 0.666, 0.317]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.002, 0.005, -0.001]
[07:44] [ComfyUI] [SubprocessWorker] got response: ok
[07:44] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.10s): result: NodeOutput
[07:44] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:44] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED
[07:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:44] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:44] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:44] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:44] [ComfyUI] [SubprocessWorker] call_id=145 sending call_method
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: vertex_clusters -> GeomPackSkeleton_VertexClusters
[07:44] [ComfyUI] [SubprocessWorker] got response: ok
[07:44] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:44] [ComfyUI] [comfy-env] Running GeomPackSkeleton_VertexClusters: trimesh: Trimesh, fix_mesh: True, normalize: False, sampling_dist: 1.0, cluster_pos: 'median'
[07:44] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.vertex_clusters.SkeletonVertexClustersNode.EXECUTE_NORMALIZED
[07:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:44] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:44] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:44] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:44] [ComfyUI] [SubprocessWorker] call_id=146 sending call_method
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: vertex_clusters
[07:44] [ComfyUI]
[07:44] [ComfyUI] Clustering: 0%| | 0/2761 [00:00<?, ?it/s]
[07:44] [ComfyUI] Clustering: 100%|██████████| 2761/2761 [00:00<00:00, 609049.82it/s]
[07:44] [ComfyUI] [SubprocessWorker] got response: ok
[07:44] [ComfyUI] [comfy-env] GeomPackSkeleton_VertexClusters done (0.20s): result: NodeOutput
[07:44] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:44] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:44] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:44] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:44] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:44] [ComfyUI] [SubprocessWorker] call_id=147 sending call_method
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[25, 3]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([25, 3])
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[24, 2]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([24, 2])
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 25 joints, 24 bones
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.453, normalized=False
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.481, -0.320, -0.111]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.425, 0.308, 0.123]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [0.906, 0.628, 0.234]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.028, -0.006, 0.006]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 2882 vertices, 5568 faces
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.500, -0.339, -0.131]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.445, 0.328, 0.143]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [0.945, 0.667, 0.274]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.028, -0.006, 0.006]
[07:44] [ComfyUI] [SubprocessWorker] got response: ok
[07:44] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.06s): result: NodeOutput
[07:44] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:44] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED
[07:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:44] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:44] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:44] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:44] [ComfyUI] [SubprocessWorker] call_id=148 sending call_method
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: wavefront -> GeomPackSkeleton_Wavefront
[07:44] [ComfyUI] [SubprocessWorker] got response: ok
[07:44] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:44] [ComfyUI] [comfy-env] Running GeomPackSkeleton_Wavefront: trimesh: Trimesh, fix_mesh: True, normalize: False, waves: 1, step_size: 1.0
[07:44] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.wavefront.SkeletonWavefrontNode.EXECUTE_NORMALIZED
[07:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:44] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:44] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:44] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:44] [ComfyUI] [SubprocessWorker] call_id=149 sending call_method
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: wavefront
[07:44] [ComfyUI]
[07:44] [ComfyUI] Skeletonizing: 0%| | 0/2761 [00:00<?, ?it/s]
[07:44] [ComfyUI] Skeletonizing: 100%|██████████| 2761/2761 [00:00<00:00, 317090.81it/s]
[07:44] [ComfyUI] [SubprocessWorker] got response: ok
[07:44] [ComfyUI] [comfy-env] GeomPackSkeleton_Wavefront done (0.06s): result: NodeOutput
[07:44] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:44] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:44] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:44] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:44] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:44] [ComfyUI] [SubprocessWorker] call_id=150 sending call_method
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[96, 3]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([96, 3])
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[95, 2]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([95, 2])
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 96 joints, 95 bones
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.515, normalized=False
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.512, -0.315, -0.154]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.519, 0.320, 0.138]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.031, 0.635, 0.292]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [0.003, 0.002, -0.008]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 11118 vertices, 21472 faces
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.531, -0.334, -0.174]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.538, 0.339, 0.158]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.070, 0.674, 0.332]
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [0.003, 0.002, -0.008]
[07:44] [ComfyUI] [SubprocessWorker] got response: ok
[07:44] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.15s): result: NodeOutput
[07:44] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[07:44] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[07:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:44] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:44] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[07:44] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:44] [ComfyUI] [SubprocessWorker] call_id=151 sending call_method
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_c54e664b.vtp
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_c54e664b.vtp
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11118 vertices, 21472 faces
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_c54e664b.vtp
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11118 vertices)
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11118 vertices, 21472 faces
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_c54e664b.vtp
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 2882 vertices, 5568 faces
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_c54e664b.vtp
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2882 vertices)
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2882 vertices, 5568 faces
[07:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_c54e664b.vtp
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 6362 vertices, 12288 faces
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_c54e664b.vtp
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6362 vertices)
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6362 vertices, 12288 faces
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_c54e664b.vtp
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[07:45] [ComfyUI] [SubprocessWorker] got response: ok
[07:45] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.20s): result: NodeOutput
[07:45] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:45] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED
[07:45] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:45] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:45] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:45] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:45] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:45] [ComfyUI] [SubprocessWorker] call_id=152 sending call_method
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: teasar -> GeomPackSkeleton_Teasar
[07:45] [ComfyUI] [SubprocessWorker] got response: ok
[07:45] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:45] [ComfyUI] [comfy-env] Running GeomPackSkeleton_Teasar: trimesh: Trimesh, fix_mesh: True, normalize: False, inv_dist: 10.0, min_length: 0.0
[07:45] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.teasar.SkeletonTeasarNode.EXECUTE_NORMALIZED
[07:45] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:45] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:45] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:45] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:45] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:45] [ComfyUI] [SubprocessWorker] call_id=153 sending call_method
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: teasar
[07:45] [ComfyUI]
[07:45] [ComfyUI] Invalidating: 0%| | 0/2761 [00:00<?, ?it/s]
[07:45] Node executed (1 total), capturing...
[07:45] [ComfyUI]
[07:45] [ComfyUI] [SubprocessWorker] got response: ok
[07:45] [ComfyUI] [comfy-env] GeomPackSkeleton_Teasar done (0.11s): result: NodeOutput
[07:45] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:45] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:45] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:45] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:45] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:45] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:45] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:45] [ComfyUI] [SubprocessWorker] call_id=154 sending call_method
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[37, 3]
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([37, 3])
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[36, 2]
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([36, 2])
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 37 joints, 36 bones
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.325, normalized=False
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.498, -0.152, -0.129]
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.152, 0.231, 0.017]
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [0.650, 0.383, 0.146]
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.173, 0.040, -0.056]
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 4274 vertices, 8256 faces
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.518, -0.171, -0.149]
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.171, 0.251, 0.037]
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [0.689, 0.422, 0.186]
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.173, 0.040, -0.056]
[07:45] [ComfyUI] [SubprocessWorker] got response: ok
[07:45] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.08s): result: NodeOutput
[07:45] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh
[07:45] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[07:45] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:45] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:45] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:45] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[07:45] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:45] [ComfyUI] [SubprocessWorker] call_id=155 sending call_method
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 4274 vertices, 8256 faces
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_05134008.vtp
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (4274 vertices)
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 4274 vertices, 8256 faces
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_05134008.vtp
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6362 vertices, 12288 faces
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_05134008.vtp
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6362 vertices)
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6362 vertices, 12288 faces
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_05134008.vtp
[07:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready
[07:45] [ComfyUI] [SubprocessWorker] got response: ok
[07:45] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.14s): result: NodeOutput
[07:45] [ComfyUI] Prompt executed in 4.23 seconds
[07:46] Frame 3 saved (frame_002.jpg, t=4.3s)
[07:46] [capture-node] freeze=488ms shot=686ms unfreeze=2ms saved=True
[07:46] Node executed (2 total), capturing...
[07:46] Frame 4 saved (frame_003.jpg, t=5.8s)
[07:46] [capture-node] freeze=2ms shot=115ms unfreeze=0ms saved=True
[07:46] Execution complete (t=5.8s)
[07:46] Captured 4 unique frames over 5.96s
[07:46] [debug] iframes: 2
[07:46] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x393, rafFrozen=True
[07:46] [debug] iframe[1]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[07:46] [timing] trigger_3d_previews: 0.0s
[07:49] Saved high-quality screenshot: skeleton_all_executed.png
[07:49] [timing] final_screenshot: 0.3s
[07:49] Capturing execution frames: skeleton_extraction.json
[07:55] Frame 1 saved (frame_000.jpg, t=0.0s)
[07:55] Validating workflow...
[07:55] [ComfyUI] === /validate endpoint called ===
[07:55] [ComfyUI] Received JSON with keys: ['prompt']
[07:55] [ComfyUI] Prompt has 4 nodes
[07:55] [ComfyUI] Node 1: GeomPackLoadMesh
[07:55] [ComfyUI] Inputs: {"file_path": "3d/cow.off"}
[07:55] Queuing workflow for execution...
[07:55] [ComfyUI] Node 3: GeomPackMeshFromSkeleton
[07:55] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["6", 0]}
[07:55] [ComfyUI] Node 5: GeomPackPreviewMeshDual
[07:55] [ComfyUI] Inputs: {"layout": "overlay", "mode": "fields", "opacity_1": 0.5, "opacity_2": 0.5, "preview_dual": "{\"show_edges\":false,\"camera_state\":\"{\\\"position\\\":[1.3662524844520427,1.1685429744811375,-2.017582
[07:55] [ComfyUI] Node 6: GeomPackExtractSkeleton
[07:55] [ComfyUI] Inputs: {"fix_mesh": "wavefront", "normalize": false, "backend": "wavefront", "backend.waves": 1, "backend.step_size": 1, "trimesh": ["1", 0]}
[07:55] [ComfyUI] Generated prompt_id: a4f86905-aeb2-4dd2-b6b3-5d6a94866875
[07:55] [ComfyUI] Calling execution.validate_prompt()...
[07:55] [ComfyUI] Validation result: valid=True
[07:55] [ComfyUI] === Validation PASSED ===
[07:55] [ComfyUI] got prompt
[07:55] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/cow.off'
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[07:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:55] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:55] [ComfyUI] [SubprocessWorker] call_id=156 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/cow.off
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/cow.off
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.03s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED
[07:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:55] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:55] [ComfyUI] [SubprocessWorker] call_id=157 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: wavefront -> GeomPackSkeleton_Wavefront
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSkeleton_Wavefront: trimesh: Trimesh, fix_mesh: True, normalize: False, waves: 1, step_size: 1.0
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.wavefront.SkeletonWavefrontNode.EXECUTE_NORMALIZED
[07:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:55] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:55] [ComfyUI] [SubprocessWorker] call_id=158 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: wavefront
[07:55] [ComfyUI]
[07:55] [ComfyUI] Skeletonizing: 0%| | 0/2761 [00:00<?, ?it/s]
[07:55] [ComfyUI] Skeletonizing: 100%|██████████| 2761/2761 [00:00<00:00, 279782.40it/s]
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSkeleton_Wavefront done (0.07s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:55] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:55] [ComfyUI] [SubprocessWorker] call_id=159 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[96, 3]
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([96, 3])
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[95, 2]
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([95, 2])
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 96 joints, 95 bones
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.515, normalized=False
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.512, -0.315, -0.154]
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.519, 0.320, 0.138]
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.031, 0.635, 0.292]
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [0.003, 0.002, -0.008]
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 11118 vertices, 21472 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.531, -0.334, -0.174]
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.538, 0.339, 0.158]
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.070, 0.674, 0.332]
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [0.003, 0.002, -0.008]
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.15s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'overlay', mode: 'fields', opacity_1: 0.5, opacity_2: 0.5, mesh_1: Trimesh, mesh_2: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[07:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:55] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[07:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:55] [ComfyUI] [SubprocessWorker] call_id=160 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: overlay, Mode: fields
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 11118 vertices, 21472 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Added mesh_id field and red/blue colors for overlay
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_overlay_e81e9605.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (13879 vertices)
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: mesh_id (components: 1)
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 13879 vertices, 26992 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported combined VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_overlay_e81e9605.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Combined Mesh: 13879 vertices, 26992 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.13s): result: NodeOutput
[07:55] [ComfyUI] Prompt executed in 0.40 seconds
[07:55] Node executed (1 total), capturing...
[07:56] Frame 2 saved (frame_001.jpg, t=0.8s)
[07:56] [capture-node] freeze=42ms shot=126ms unfreeze=0ms saved=True
[07:56] Execution complete (t=0.8s)
[07:56] Captured 2 unique frames over 1.01s
[07:56] [debug] iframes: 1
[07:56] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=742x485, rafFrozen=True
[07:56] [timing] trigger_3d_previews: 0.0s
[07:58] Saved high-quality screenshot: skeleton_extraction_executed.png
[07:58] [timing] final_screenshot: 0.2s
[07:58] Capturing execution frames: smooth_all.json
[08:03] Frame 1 saved (frame_000.jpg, t=0.0s)
[08:03] Validating workflow...
[08:04] [ComfyUI] === /validate endpoint called ===
[08:04] [ComfyUI] Received JSON with keys: ['prompt']
[08:04] [ComfyUI] Prompt has 8 nodes
[08:04] [ComfyUI] Node 1: GeomPackLoadMesh
[08:04] [ComfyUI] Inputs: {"file_path": "3d/cow.off"}
[08:04] [ComfyUI] Node 2: GeomPackSmoothMesh
[08:04] [ComfyUI] Inputs: {"backend": "taubin", "backend.iterations": 5, "backend.lambda_": 0.5, "backend.mu": -0.53, "trimesh": ["1", 0]}
[08:04] Queuing workflow for execution...
[08:04] [ComfyUI] Node 3: GeomPackSmoothMesh
[08:04] [ComfyUI] Inputs: {"backend": "laplacian", "backend.iterations": 5, "backend.cotangent_weight": "true", "trimesh": ["1", 0]}
[08:04] [ComfyUI] Node 4: GeomPackSmoothMesh
[08:04] [ComfyUI] Inputs: {"backend": "hc_laplacian", "trimesh": ["1", 0]}
[08:04] [ComfyUI] Node 5: GeomPackSmoothMesh
[08:04] [ComfyUI] Inputs: {"backend": "trimesh_laplacian", "backend.iterations": 7, "backend.lambda_": 0.5, "trimesh": ["1", 0]}
[08:04] [ComfyUI] Node 6: GeomPackSmoothMesh
[08:04] [ComfyUI] Inputs: {"backend": "trimesh_taubin", "backend.iterations": 10, "backend.lambda_": 0.6, "backend.mu": -0.53, "trimesh": ["1", 0]}
[08:04] [ComfyUI] Node 8: GeomPackPreviewMeshMulti
[08:04] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.8124876310583045,0.33787129680966865,-2.241461606161383],\\\"focalPoint\\\":[0,-0.0000846534967422485
[08:04] [ComfyUI] Node 9: GeomPackPreviewMeshMulti
[08:04] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.8124876310583045,0.33787129680966865,-2.241461606161383],\\\"focalPoint\\\":[0,-0.0000846534967422485
[08:04] [ComfyUI] Generated prompt_id: 4f49ffed-a31a-4d1a-96d5-8cc2226d799b
[08:04] [ComfyUI] Calling execution.validate_prompt()...
[08:04] [ComfyUI] Validation result: valid=True
[08:04] [ComfyUI] === Validation PASSED ===
[08:04] [ComfyUI] got prompt
[08:04] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/cow.off'
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=161 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/cow.off
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/cow.off
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.03s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=162 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: trimesh_taubin -> GeomPackSmooth_TrimeshTaubin
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=163 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: trimesh_laplacian -> GeomPackSmooth_TrimeshLaplacian
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=164 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: hc_laplacian -> GeomPackSmooth_HCLaplacian
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=165 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: laplacian -> GeomPackSmooth_Laplacian
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=166 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: taubin -> GeomPackSmooth_Taubin
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmooth_TrimeshTaubin: trimesh: Trimesh, iterations: 10, lambda_: 0.6, mu: -0.53
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.trimesh_taubin.SmoothTrimeshTaubinNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=167 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: trimesh_taubin
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=10, lambda=0.600, mu=-0.530
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.013246, max: 0.069047
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmooth_TrimeshTaubin done (0.01s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmooth_TrimeshLaplacian: trimesh: Trimesh, iterations: 7, lambda_: 0.5
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.trimesh_laplacian.SmoothTrimeshLaplacianNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=168 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: trimesh_laplacian
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=7, lambda=0.500
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.013786, max: 0.047123
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmooth_TrimeshLaplacian done (0.04s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=169 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_3a8597c5.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_3a8597c5.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_3a8597c5.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_3a8597c5.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.07s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmooth_HCLaplacian: trimesh: Trimesh
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.hc_laplacian.SmoothHCLaplacianNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] Node executed (3 total), capturing...
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=170 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: hc_laplacian
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.003891, max: 0.020931
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmooth_HCLaplacian done (0.16s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmooth_Laplacian: trimesh: Trimesh, iterations: 5, cotangent_weight: 'true'
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.laplacian.SmoothLaplacianNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=171 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: laplacian
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=5, cotangent_weight=True
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.005665, max: 0.030324
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmooth_Laplacian done (0.03s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackSmooth_Taubin: trimesh: Trimesh, iterations: 5, lambda_: 0.5, mu: -0.53
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.taubin.SmoothTaubinNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=172 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: taubin
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=5, lambda=0.500, mu=-0.530
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.003815, max: 0.025956
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackSmooth_Taubin done (0.02s): result: NodeOutput
[08:04] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[08:04] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[08:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:04] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[08:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:04] [ComfyUI] [SubprocessWorker] call_id=173 sending call_method
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_2badfebf.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_1_2badfebf.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_2badfebf.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_2_2badfebf.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_2badfebf.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_3_2badfebf.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_2badfebf.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_multi_4_2badfebf.vtp
[08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[08:04] [ComfyUI] [SubprocessWorker] got response: ok
[08:04] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.13s): result: NodeOutput
[08:04] [ComfyUI] Prompt executed in 0.55 seconds
[08:05] Frame 2 saved (frame_001.jpg, t=0.5s)
[08:05] [capture-node] freeze=201ms shot=700ms unfreeze=3ms saved=True
[08:05] Node executed (7 total), capturing...
[08:05] Frame 3 saved (frame_002.jpg, t=1.7s)
[08:05] [capture-node] freeze=2ms shot=130ms unfreeze=0ms saved=True
[08:05] Execution complete (t=1.7s)
[08:05] Captured 3 unique frames over 1.9s
[08:05] [debug] iframes: 2
[08:05] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x393, rafFrozen=True
[08:05] [debug] iframe[1]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[08:05] [timing] trigger_3d_previews: 0.0s
[08:08] Saved high-quality screenshot: smooth_all_executed.png
[08:08] [timing] final_screenshot: 0.3s
[08:08] Capturing execution frames: surface_reconstruction.json
[08:13] Frame 1 saved (frame_000.jpg, t=0.0s)
[08:13] Validating workflow...
[08:13] [ComfyUI] === /validate endpoint called ===
[08:13] [ComfyUI] Received JSON with keys: ['prompt']
[08:13] [ComfyUI] Prompt has 4 nodes
[08:13] [ComfyUI] Node 20: GeomPackLoadMesh
[08:13] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[08:13] [ComfyUI] Node 21: GeomPackMeshToPointCloud
[08:13] Queuing workflow for execution...
[08:13] [ComfyUI] Inputs: {"mode": "surface_sampling", "sample_count": 10000, "sampling_method": "uniform", "include_normals": "true", "trimesh": ["20", 0]}
[08:13] [ComfyUI] Node 22: GeomPackReconstructSurface
[08:13] [ComfyUI] Inputs: {"backend": "poisson", "backend.poisson_depth": 8, "backend.poisson_scale": 1.1, "backend.estimate_normals": "true", "backend.normal_radius": 0.1, "report_panel": "false", "points": ["21", 0]}
[08:13] [ComfyUI] Node 28: GeomPackPreviewMeshDual
[08:13] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"se
[08:13] [ComfyUI] Generated prompt_id: 9b69a724-cb06-4f1d-92f3-161261e06cc0
[08:13] [ComfyUI] Calling execution.validate_prompt()...
[08:13] [ComfyUI] Validation result: valid=True
[08:13] [ComfyUI] === Validation PASSED ===
[08:13] [ComfyUI] got prompt
[08:13] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[08:13] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[08:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:13] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:13] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[08:13] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:13] [ComfyUI] [SubprocessWorker] call_id=174 sending call_method
[08:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[08:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/Stanford_Bunny.stl
[08:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[08:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[08:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[08:14] [ComfyUI] [SubprocessWorker] got response: ok
[08:14] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.24s): result: NodeOutput
[08:14] [ComfyUI] [comfy-env] Running GeomPackMeshToPointCloud: mode: 'surface_sampling', sample_count: 10000, sampling_method: 'uniform', include_normals: 'true', trimesh: Trimesh
[08:14] [ComfyUI] [SubprocessWorker] call_method: nodes.conversion.mesh_to_pointcloud.MeshToPointCloudNode.EXECUTE_NORMALIZED
[08:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:14] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:14] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:14] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:14] [ComfyUI] [SubprocessWorker] call_id=175 sending call_method
[08:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sampling 10,000 points using uniform method
[08:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated point cloud with 10,000 points
[08:14] [ComfyUI] [SubprocessWorker] got response: ok
[08:14] [ComfyUI] [comfy-env] GeomPackMeshToPointCloud done (0.07s): result: NodeOutput
[08:14] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[08:14] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[08:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:14] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:14] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:14] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:14] [ComfyUI] [SubprocessWorker] call_id=176 sending call_method
[08:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: poisson -> GeomPackReconstruct_Poisson
[08:14] [ComfyUI] [SubprocessWorker] got response: ok
[08:14] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[08:14] [ComfyUI] [comfy-env] Running GeomPackReconstruct_Poisson: points: Trimesh, poisson_depth: 8, poisson_scale: 1.1, estimate_normals: 'true', normal_radius: 0.1
[08:14] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.poisson.ReconstructPoissonNode.EXECUTE_NORMALIZED
[08:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:14] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:14] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:14] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:14] [ComfyUI] [SubprocessWorker] call_id=177 sending call_method
[08:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: poisson
[08:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using normals from input
[08:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using PyMeshLab Poisson reconstruction...
[08:16] Frame 2 saved (frame_001.jpg, t=2.2s)
[08:16] [capture-periodic] freeze=3ms shot=121ms unfreeze=4ms saved=True
[08:18] Frame 3 saved (frame_002.jpg, t=4.4s)
[08:18] [capture-periodic] freeze=3ms shot=111ms unfreeze=5ms saved=True
[08:19] [ComfyUI] [SubprocessWorker] got response: ok
[08:19] [ComfyUI] [comfy-env] GeomPackReconstruct_Poisson done (5.29s): result: NodeOutput
[08:19] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[08:19] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[08:19] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:19] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:19] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:19] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:19] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:19] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[08:19] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:19] [ComfyUI] [SubprocessWorker] call_id=178 sending call_method
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 43733 vertices, 87486 faces
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['face.stl']
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_e8914c35.vtp
[08:19] [capture-loop] iter=50 t=5.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=4 ram=2.7/15.6GB (17%) swap=0.0/3.0GB (0%) cpu=28% browser_rss=1.09GB
[08:19] Node executed (1 total), capturing...
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[08:19] Frame 4 saved (frame_003.jpg, t=5.9s)
[08:19] [capture-node] freeze=3ms shot=111ms unfreeze=3ms saved=True
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_e8914c35.vtp
[08:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_e8914c35.stl
[08:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[08:20] [ComfyUI] [SubprocessWorker] got response: ok
[08:20] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.57s): result: NodeOutput
[08:20] [ComfyUI] Prompt executed in 6.17 seconds
[08:20] Node executed (2 total), capturing...
[08:21] Frame 5 saved (frame_004.jpg, t=6.8s)
[08:21] [capture-node] freeze=294ms shot=1011ms unfreeze=3ms saved=True
[08:23] Execution complete (t=9.3s)
[08:23] Captured 5 unique frames over 9.34s
[08:23] [debug] iframes: 1
[08:23] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=False
[08:23] [timing] trigger_3d_previews: 0.0s
[08:25] Saved high-quality screenshot: surface_reconstruction_executed.png
[08:25] [timing] final_screenshot: 0.3s
[08:25] Capturing execution frames: test_loading.json
[08:31] Frame 1 saved (frame_000.jpg, t=0.0s)
[08:31] Validating workflow...
[08:31] [ComfyUI] === /validate endpoint called ===
[08:31] [ComfyUI] Received JSON with keys: ['prompt']
[08:31] [ComfyUI] Prompt has 3 nodes
[08:31] [ComfyUI] Node 1: GeomPackLoadMeshBlend
[08:31] [ComfyUI] Inputs: {"file_path": "3d/coca_cola.blend", "report_panel": "false"}
[08:31] Queuing workflow for execution...
[08:31] [ComfyUI] Node 2: GeomPackLoadMeshFBX
[08:31] [ComfyUI] Inputs: {"file_path": "3d/rigged_human.fbx", "report_panel": "false"}
[08:31] [ComfyUI] Node 3: GeomPackPreviewMeshDual
[08:31] [ComfyUI] Inputs: {"layout": "side_by_side", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":false,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"s
[08:31] [ComfyUI] Generated prompt_id: af535e0a-35e0-4372-a846-22e4d84f11b2
[08:31] [ComfyUI] Calling execution.validate_prompt()...
[08:31] [ComfyUI] Validation result: valid=True
[08:31] [ComfyUI] === Validation PASSED ===
[08:31] [ComfyUI] got prompt
[08:31] [ComfyUI] [comfy-env] Running GeomPackLoadMeshBlend: file_path: '3d/coca_cola.blend'
[08:31] [ComfyUI] [SubprocessWorker] call_method: nodes.blender_io.load_mesh_blend.LoadMeshBlend.EXECUTE_NORMALIZED
[08:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[08:31] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[08:31] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[08:31] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.13/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[08:31] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[08:31] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_2hj8ki3t/persistent_worker.py', 'abstract://comfy_worker_d0ee3794389d']...
[08:31] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_d0ee3794389d (abstract, no filesystem path)
[08:32] [ComfyUI] [worker:ComfyUI-GeometryPack] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[08:32] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:32] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[08:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:32] [ComfyUI] [SubprocessWorker] call_id=179 sending call_method
[08:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found .blend in input folder: 3d/coca_cola.blend
[08:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading via bpy: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/coca_cola.blend
[08:33] Frame 2 saved (frame_001.jpg, t=2.2s)
[08:33] [capture-periodic] freeze=2ms shot=85ms unfreeze=4ms saved=True
[08:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 36696 vertices, 73216 faces
[08:33] [ComfyUI] [SubprocessWorker] got response: ok
[08:33] [ComfyUI] [comfy-env] GeomPackLoadMeshBlend done (2.41s): result: NodeOutput
[08:33] [ComfyUI] [comfy-env] Running GeomPackLoadMeshFBX: file_path: '3d/rigged_human.fbx'
[08:33] [ComfyUI] [SubprocessWorker] call_method: nodes.blender_io.load_mesh_fbx.LoadMeshFBX.EXECUTE_NORMALIZED
[08:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:33] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[08:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:33] [ComfyUI] [SubprocessWorker] call_id=180 sending call_method
[08:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found FBX in input folder: 3d/rigged_human.fbx
[08:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading via bpy: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/rigged_human.fbx
[08:33] Node executed (1 total), capturing...
[08:33] [ComfyUI] [worker:ComfyUI-GeometryPack] FBX version: 7400
[08:33] Frame 3 saved (frame_002.jpg, t=2.8s)
[08:33] [capture-node] freeze=3ms shot=95ms unfreeze=3ms saved=True
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 32327 vertices, 50000 faces
[08:34] [ComfyUI] [SubprocessWorker] got response: ok
[08:34] [ComfyUI] [comfy-env] GeomPackLoadMeshFBX done (0.58s): result: NodeOutput
[08:34] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[08:34] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[08:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:34] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[08:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:34] [ComfyUI] [SubprocessWorker] call_id=181 sending call_method
[08:34] Node executed (2 total), capturing...
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 36696 vertices, 73216 faces
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 32327 vertices, 50000 faces
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_1_3b8bd580.stl
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_2_3b8bd580.stl
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[08:34] [ComfyUI] [SubprocessWorker] got response: ok
[08:34] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.11s): result: NodeOutput
[08:34] [ComfyUI] Prompt executed in 3.11 seconds
[08:34] Frame 4 saved (frame_003.jpg, t=3.3s)
[08:34] [capture-node] freeze=3ms shot=102ms unfreeze=11ms saved=True
[08:34] Node executed (3 total), capturing...
[08:34] Frame 5 saved (frame_004.jpg, t=3.8s)
[08:34] [capture-node] freeze=129ms shot=85ms unfreeze=0ms saved=True
[08:34] Execution complete (t=3.8s)
[08:34] Captured 5 unique frames over 4.02s
[08:34] [debug] iframes: 1
[08:34] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[08:34] [timing] trigger_3d_previews: 0.0s
[08:37] Saved high-quality screenshot: test_loading_executed.png
[08:37] [timing] final_screenshot: 0.2s
[08:37] Capturing execution frames: transform.json
[08:43] Frame 1 saved (frame_000.jpg, t=0.0s)
[08:43] Validating workflow...
[08:43] [ComfyUI] === /validate endpoint called ===
[08:43] [ComfyUI] Received JSON with keys: ['prompt']
[08:43] [ComfyUI] Prompt has 3 nodes
[08:43] [ComfyUI] Node 2: GeomPackTransformMesh
[08:43] Queuing workflow for execution...
[08:43] [ComfyUI] Inputs: {"operation": "translate", "operation.translate_x": 0.5, "operation.translate_y": 0.5, "operation.translate_z": 2, "report_panel": "false", "trimesh": ["5", 0]}
[08:43] [ComfyUI] Node 5: GeomPackCreatePrimitive
[08:43] [ComfyUI] Inputs: {"shape": "cube", "size": 1, "subdivisions": 2}
[08:43] [ComfyUI] Node 6: GeomPackPreviewMeshDual
[08:43] [ComfyUI] Inputs: {"layout": "overlay", "mode": "fields", "opacity_1": 1, "opacity_2": 1, "preview_dual": "{\"show_edges\":true,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selecte
[08:43] [ComfyUI] Generated prompt_id: f78cf04e-5dc0-43a9-b933-d5fb20fc9763
[08:43] [ComfyUI] Calling execution.validate_prompt()...
[08:43] [ComfyUI] Validation result: valid=True
[08:43] [ComfyUI] === Validation PASSED ===
[08:43] [ComfyUI] got prompt
[08:43] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 1.0, subdivisions: 2
[08:43] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[08:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:43] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:43] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[08:43] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:43] [ComfyUI] [SubprocessWorker] call_id=182 sending call_method
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[08:43] [ComfyUI] [SubprocessWorker] got response: ok
[08:43] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[08:43] [ComfyUI] [comfy-env] Running GeomPackTransformMesh: operation: dict, trimesh: Trimesh
[08:43] [ComfyUI] [SubprocessWorker] call_method: nodes.transforms.transform.TransformMeshNode.EXECUTE_NORMALIZED
[08:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:43] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:43] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:43] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:43] [ComfyUI] [SubprocessWorker] call_id=183 sending call_method
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 8 vertices, 12 faces
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: translate
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Complete
[08:43] [ComfyUI] [SubprocessWorker] got response: ok
[08:43] [ComfyUI] [comfy-env] GeomPackTransformMesh done (0.01s): result: NodeOutput
[08:43] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'overlay', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh
[08:43] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[08:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:43] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:43] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[08:43] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:43] [ComfyUI] [SubprocessWorker] call_id=184 sending call_method
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: overlay, Mode: fields
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 8 vertices, 12 faces
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 8 vertices, 12 faces
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Added mesh_id field and red/blue colors for overlay
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_overlay_72e33310.vtp
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (16 vertices)
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: mesh_id (components: 1)
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 16 vertices, 24 faces
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported combined VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_dual_overlay_72e33310.vtp
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Combined Mesh: 16 vertices, 24 faces
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[08:43] [ComfyUI] [SubprocessWorker] got response: ok
[08:43] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[08:43] [ComfyUI] Prompt executed in 0.04 seconds
[08:43] Node executed (2 total), capturing...
[08:43] Frame 2 saved (frame_001.jpg, t=0.5s)
[08:43] [capture-node] freeze=2ms shot=95ms unfreeze=0ms saved=True
[08:43] Execution complete (t=0.5s)
[08:43] Captured 2 unique frames over 0.6s
[08:43] [debug] iframes: 1
[08:43] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=742x485, rafFrozen=True
[08:43] [timing] trigger_3d_previews: 0.0s
[08:46] Saved high-quality screenshot: transform_executed.png
[08:46] [timing] final_screenshot: 0.2s
[08:46] Capturing execution frames: uv_unwrap.json
[08:51] Frame 1 saved (frame_000.jpg, t=0.0s)
[08:51] Validating workflow...
[08:51] [ComfyUI] === /validate endpoint called ===
[08:51] [ComfyUI] Received JSON with keys: ['prompt']
[08:51] [ComfyUI] Prompt has 3 nodes
[08:51] [ComfyUI] Node 4: GeomPackLoadMesh
[08:51] [ComfyUI] Inputs: {"file_path": "3d/camelhead.off"}
[08:51] [ComfyUI] Node 8: GeomPackUVUnwrap
[08:51] [ComfyUI] Inputs: {"backend": "xatlas", "report_panel": "false", "trimesh": ["4", 0]}
[08:51] [ComfyUI] Node 9: GeomPackPreviewMeshUV
[08:51] [ComfyUI] Inputs: {"show_checker": false, "show_wireframe": false, "uv_preview": "", "trimesh": ["8", 0]}
[08:51] [ComfyUI] Generated prompt_id: fab02f65-6a22-4269-82c4-a33608d62199
[08:51] [ComfyUI] Calling execution.validate_prompt()...
[08:51] [ComfyUI] Validation result: valid=True
[08:51] [ComfyUI] === Validation PASSED ===
[08:51] Queuing workflow for execution...
[08:51] [ComfyUI] got prompt
[08:51] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/camelhead.off'
[08:51] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[08:51] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:51] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:51] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:51] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[08:51] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:51] [ComfyUI] [SubprocessWorker] call_id=185 sending call_method
[08:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/camelhead.off
[08:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/camelhead.off
[08:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces
[08:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces
[08:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 11381 vertices, 22704 faces
[08:52] [ComfyUI] [SubprocessWorker] got response: ok
[08:52] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.08s): result: NodeOutput
[08:52] [ComfyUI] [comfy-env] Running GeomPackUVUnwrap: backend: dict, trimesh: Trimesh
[08:52] [ComfyUI] [SubprocessWorker] call_method: nodes.uv.uv_unwrap.UVUnwrapNode.EXECUTE_NORMALIZED
[08:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:52] [ComfyUI] [SubprocessWorker] call_id=186 sending call_method
[08:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: UV Unwrap dispatch: xatlas -> GeomPackUV_Xatlas
[08:52] [ComfyUI] [SubprocessWorker] got response: ok
[08:52] [ComfyUI] [comfy-env] GeomPackUVUnwrap done (0.01s): result: NodeOutput
[08:52] [ComfyUI] [comfy-env] Running GeomPackUV_Xatlas: trimesh: Trimesh
[08:52] [ComfyUI] [SubprocessWorker] call_method: nodes.uv.backends.xatlas.UVXatlasNode.EXECUTE_NORMALIZED
[08:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:52] [ComfyUI] [SubprocessWorker] call_id=187 sending call_method
[08:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: xatlas
[08:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 11381 vertices, 22704 faces
[08:54] Frame 2 saved (frame_001.jpg, t=2.2s)
[08:54] [capture-periodic] freeze=3ms shot=129ms unfreeze=3ms saved=True
[08:56] Frame 3 saved (frame_002.jpg, t=4.4s)
[08:56] [capture-periodic] freeze=8ms shot=115ms unfreeze=9ms saved=True
[08:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 14113 vertices, 22704 faces
[08:57] [ComfyUI] [SubprocessWorker] got response: ok
[08:57] [ComfyUI] [comfy-env] GeomPackUV_Xatlas done (5.00s): result: NodeOutput
[08:57] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshUV: show_checker: False, show_wireframe: False, trimesh: Trimesh
[08:57] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_uv.PreviewMeshUVNode.EXECUTE_NORMALIZED
[08:57] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:57] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:57] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:57] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:57] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:57] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:57] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:57] [ComfyUI] [SubprocessWorker] call_id=188 sending call_method
[08:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 14113 vertices, 22704 faces
[08:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found UV data: 14113 UV coordinates
[08:57] Node executed (1 total), capturing...
[08:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: UV stats: range=[0.99957985 0.99956971], in_unit_square=True, coverage=0.5727
[08:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported mesh to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_uv_6aadd4ca.glb
[08:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported UV data to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_uv_f2fb07d5_uvdata.json
[08:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready: has_uvs=True, checker=False, wireframe=False
[08:57] [ComfyUI] [SubprocessWorker] got response: ok
[08:57] [ComfyUI] [comfy-env] GeomPackPreviewMeshUV done (0.30s): result: NodeOutput
[08:57] [ComfyUI] Prompt executed in 5.39 seconds
[08:57] Frame 4 saved (frame_003.jpg, t=5.4s)
[08:57] [capture-node] freeze=7ms shot=105ms unfreeze=3ms saved=True
[08:57] Node executed (2 total), capturing...
[08:58] Frame 5 saved (frame_004.jpg, t=6.1s)
[08:58] [capture-node] freeze=32ms shot=146ms unfreeze=0ms saved=True
[08:58] Execution complete (t=6.1s)
[08:58] Captured 5 unique frames over 6.27s
[08:58] [debug] iframes: 1
[08:58] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_uv.html?v=17791383, canvas=287x287, rafFrozen=True
[08:58] [timing] trigger_3d_previews: 0.0s
[09:00] Saved high-quality screenshot: uv_unwrap_executed.png
[09:00] [timing] final_screenshot: 0.2s
[09:00] [32/33] SKIPPED (not in cpu list) uv_unwrap_all.json
[09:00] Capturing execution frames: view_texture.json
[09:06] Frame 1 saved (frame_000.jpg, t=0.0s)
[09:06] Validating workflow...
[09:06] [ComfyUI] === /validate endpoint called ===
[09:06] [ComfyUI] Received JSON with keys: ['prompt']
[09:06] [ComfyUI] Prompt has 2 nodes
[09:06] [ComfyUI] Node 3: GeomPackLoadMesh
[09:06] [ComfyUI] Inputs: {"file_path": "3d/mount_textured.glb"}
[09:06] [ComfyUI] Node 12: GeomPackPreviewMeshVTK
[09:06] Queuing workflow for execution...
[09:06] [ComfyUI] Inputs: {"mode": "texture", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\"}", "trimesh": [
[09:06] [ComfyUI] Generated prompt_id: 90633a38-3c60-4229-9a4a-f21edaeddbc7
[09:06] [ComfyUI] Calling execution.validate_prompt()...
[09:06] [ComfyUI] Validation result: valid=True
[09:06] [ComfyUI] === Validation PASSED ===
[09:06] [ComfyUI] got prompt
[09:06] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/mount_textured.glb'
[09:06] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[09:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[09:06] [ComfyUI] [SubprocessWorker] worker started/confirmed
[09:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[09:06] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[09:06] [ComfyUI] [SubprocessWorker] sending request via socket...
[09:06] [ComfyUI] [SubprocessWorker] call_id=189 sending call_method
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/mount_textured.glb
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/input/3d/mount_textured.glb
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting Scene to single mesh (scene has 2 geometries)
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 3604 vertices, 6964 faces
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 3604 vertices, 6964 faces
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 3604 vertices, 6964 faces
[09:06] [ComfyUI] [SubprocessWorker] got response: ok
[09:06] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.13s): result: NodeOutput
[09:06] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'texture', trimesh: Trimesh
[09:06] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[09:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[09:06] [ComfyUI] [SubprocessWorker] worker started/confirmed
[09:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[09:06] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[09:06] [ComfyUI] [SubprocessWorker] sending request via socket...
[09:06] [ComfyUI] [SubprocessWorker] call_id=190 sending call_method
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 3604 vertices, 6964 faces
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: texture
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: texture, texture: True, vertex_colors: False
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using texture mode - GLB export
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Set alphaMode to OPAQUE for texture mode
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported GLB to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2057/ComfyUI/output/preview_vtk_ad108b3e.glb
[09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Texture mode info: watertight=False, volume=None, area=720.728733148043, texture=True, vertex_colors=False
[09:06] [ComfyUI] [SubprocessWorker] got response: ok
[09:06] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.21s): result: NodeOutput
[09:06] [ComfyUI] Prompt executed in 0.34 seconds
[09:06] Node executed (1 total), capturing...
[09:07] Frame 2 saved (frame_001.jpg, t=0.6s)
[09:07] [capture-node] freeze=7ms shot=200ms unfreeze=0ms saved=True
[09:07] Execution complete (t=0.6s)
[09:07] Captured 2 unique frames over 0.92s
[09:07] [debug] iframes: 1
[09:07] [debug] iframe[0]: src=http://127.0.0.1:41889/extensions/ComfyUI-GeometryPack/viewer_vtk_textured.html?, canvas=221x249, rafFrozen=True
[09:07] [timing] trigger_3d_previews: 0.0s
[09:09] Saved high-quality screenshot: view_texture_executed.png
[09:09] [timing] final_screenshot: 0.2s
[09:09] Results saved to /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GeometryPack-2057/dev/linux-cpu/results.json
[09:09] Saved: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GeometryPack-2057/dev/linux-cpu/index.html
[09:09] [EXECUTION] PASSED
[09:09]
linux: PASSED
[09:09] Stopping ComfyUI server...