Files
PozzettiAndrea-ComfyUI-Geom…/dev/linux-cpu/session.log
T
2026-05-18 20:42:19 +00:00

4825 lines
394 KiB
Plaintext

[00:00] Crash dump logging enabled: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GeometryPack-2032/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-2032/.venv --python 3.11
[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-2032/ComfyUI
[00:02] Pinning torch family from https://download.pytorch.org/whl/cpu: torch==2.10.0 torchvision==0.25.0 torchaudio==2.10.0
[00:02] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/.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:06] Installing ComfyUI requirements...
[00:06] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/.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-2032/ComfyUI/requirements.txt
[00:11]
Installing custom node...
[00:11] Copying ComfyUI-GeometryPack to custom_nodes/...
[00:11] Installing node requirements...
[00:11] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/.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-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack/requirements.txt
[00:12]
Running install.py...
[00:12] Running: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/.venv/bin/python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack/install.py
[00:13] [comfy-env] _discover: scanning /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes
[00:13] [comfy-env] _discover: ComfyUI-GeometryPack -> geometrypack-nodes (custom_nodes/ComfyUI-GeometryPack/nodes/comfy-env.toml)
[00:13] [comfy-env] Workspace: /home/runner/.ce
[00:13] [comfy-env] ComfyUI: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI
[00:13] [comfy-env] Found 1 node config(s):
[00:13] - geometrypack-nodes <- custom_nodes/ComfyUI-GeometryPack/nodes/comfy-env.toml (python=host)
[00:13] [comfy-env] Bootstrap interpreter has python 3.11 + torch 2.10.0 (cpu). Looking for cuda-only wheels matching cpu/torch2.10/cp311.
[00:15] [comfy-env] GPU: No GPU detected
[00:15] [comfy-env] No CUDA detected -- pinning comfyui torch to CPU index
[00:15] [comfy-env] Host glibc 2.39 -> system-requirements
[00:15] Generated /home/runner/.ce/pixi.toml
[00:15] [comfy-env] Installing 1 environment(s):
[00:15] - geometrypack-nodes (python=host, 14 pypi deps, 1 cuda wheels)
[00:15] [comfy-env] Running `pixi install -e geometrypack-nodes`...
[00:35] WARN Skipped running the post-link scripts because `run-post-link-scripts` = `false`
[00:35] - bin/.librsvg-pre-unlink.sh
[00:35] To enable them, run:
[00:35] pixi config set --local run-post-link-scripts insecure
[00:35] More info:
[00:35] https://pixi.sh/latest/reference/pixi_configuration/#run-post-link-scripts
[00:40] ✔ The geometrypack-nodes environment has been installed.
[00:40] [comfy-env] Recorded install hash b87d7ceefda4 -> /home/runner/.ce/install.hash
[00:40] [comfy-env] Install log: /home/runner/.ce/install.log
[00:40]
[00:40] Installation complete!
[00:40] Installing validation endpoint...
[00:40] Cloning PozzettiAndrea/ComfyUI-validate-endpoint...
[00:40] 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-2032/ComfyUI/custom_nodes/ComfyUI-validate-endpoint
[00:40] CUDA packages absent (will mock): cumesh
[00:40] [INSTALL] PASSED
[00:40]
[00:40] [3/5] REGISTRATION
[00:40] ----------------------------------------
[00:40]
[DEBUG] server=None, api=None
[00:40]
Starting ComfyUI server...
[00:40] Starting ComfyUI server on port 41883...
[00:40] CUDA mock packages: cumesh
[00:40] Starting ComfyUI server on port 41883...
[00:40] Waiting for server to be ready (timeout: 600s)...
[00:41] [ComfyUI] setup plugin alembic.autogenerate.schemas
[00:41] [ComfyUI] setup plugin alembic.autogenerate.tables
[00:41] [ComfyUI] setup plugin alembic.autogenerate.types
[00:41] [ComfyUI] setup plugin alembic.autogenerate.constraints
[00:41] [ComfyUI] setup plugin alembic.autogenerate.defaults
[00:41] [ComfyUI] setup plugin alembic.autogenerate.comments
[00:42] [ComfyUI] [comfy-env] ComfyUI-GeometryPack: 1 isolation env(s):
[00:42] [ComfyUI] [comfy-env] nodes -> /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack/nodes
[00:42] [ComfyUI] [comfy-env] Workspace: /home/runner/.ce
[00:42] [ComfyUI] [comfy-env] env: /home/runner/.ce/.pixi/envs/geometrypack-nodes [OK]
[00:42] [ComfyUI] [comfy-env] prestartup complete
[00:42] [ComfyUI]
[00:42] [ComfyUI] Prestartup times for custom nodes:
[00:42] [ComfyUI] 0.2 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack
[00:42] [ComfyUI]
[00:45] [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:45] [ComfyUI] Found comfy_kitchen backend cuda: {'available': False, 'disabled': True, 'unavailable_reason': 'CUDA not available on this system', 'capabilities': []}
[00:45] [ComfyUI] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []}
[00:45] [ComfyUI] Checkpoint files will always be loaded safely.
[00:45] [ComfyUI] Total VRAM 15990 MB, total RAM 15990 MB
[00:45] [ComfyUI] pytorch version: 2.10.0+cpu
[00:45] [ComfyUI] Set vram state to: DISABLED
[00:45] [ComfyUI] Device: cpu
[00:46] [ComfyUI] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention
[00:50] [ComfyUI] Python version: 3.11.15 (main, May 10 2026, 19:28:18) [Clang 22.1.3 ]
[00:50] [ComfyUI] ComfyUI version: 0.21.1
[00:50] [ComfyUI] comfy-aimdo version: 0.3.0
[00:50] [ComfyUI] comfy-kitchen version: 0.2.8
[00:50] [ComfyUI] ****** User settings have been changed to be stored on the server instead of browser storage. ******
[00:50] [ComfyUI] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ******
[00:50] [ComfyUI] comfyui-frontend-package version: 1.43.18
[00:50] [ComfyUI] comfyui-workflow-templates version: 0.9.77
[00:50] [ComfyUI] comfyui-embedded-docs version: 0.5.0
[00:50] [ComfyUI] comfy-kitchen version: 0.2.8
[00:50] [ComfyUI] comfy-aimdo version: 0.3.0
[00:50] [ComfyUI] [Prompt Server] web root: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/.venv/lib/python3.11/site-packages/comfyui_frontend_package/static
[00:50] [ComfyUI] Asset seeder disabled
[00:53] [ComfyUI] loading...
[00:53] [ComfyUI] calling register_nodes
[00:53] [ComfyUI] [comfy-env] Version: 0.3.89
[00:53] [ComfyUI] [comfy-env] register_nodes: ComfyUI-GeometryPack
[00:53] [ComfyUI] [comfy-env] ComfyUI source dir: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI
[00:53] [ComfyUI] [comfy-env] Found 1 isolation env(s)
[00:53] [ComfyUI] [comfy-env] Scanning nodes metadata (isolation root)...
[00:53] [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_9fhj63o6.py /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack nodes /tmp/comfy_meta_out_cbdl5dtg.pkl
[00:53] [ComfyUI] [comfy-env] Scan env PATH for nodes:
[00:53] [ComfyUI] [comfy-env] [0] /opt/hostedtoolcache/Python/3.13.13/x64/bin
[00:53] [ComfyUI] [comfy-env] [1] /opt/hostedtoolcache/Python/3.13.13/x64
[00:53] [ComfyUI] [comfy-env] [2] /snap/bin
[00:53] [ComfyUI] [comfy-env] [3] /home/runner/.local/bin
[00:53] [ComfyUI] [comfy-env] [4] /opt/pipx_bin
[00:53] [ComfyUI] [comfy-env] [5] /home/runner/.cargo/bin
[00:53] [ComfyUI] [comfy-env] [6] /home/runner/.config/composer/vendor/bin
[00:53] [ComfyUI] [comfy-env] [7] /usr/local/.ghcup/bin
[00:53] [ComfyUI] [comfy-env] [8] /home/runner/.dotnet/tools
[00:53] [ComfyUI] [comfy-env] [9] /usr/local/sbin
[00:53] [ComfyUI] [comfy-env] [10] /usr/local/bin
[00:53] [ComfyUI] [comfy-env] [11] /usr/sbin
[00:53] [ComfyUI] [comfy-env] [12] /usr/bin
[00:53] [ComfyUI] [comfy-env] [13] /sbin
[00:53] [ComfyUI] [comfy-env] [14] /bin
[00:53] [ComfyUI] [comfy-env] [15] /usr/games
[00:53] [ComfyUI] [comfy-env] [16] /usr/local/games
[00:53] [ComfyUI] [comfy-env] [17] /snap/bin
[00:57] [ComfyUI] [comfy-env] Metadata scan stderr for nodes:
[00:57] [ComfyUI] [comfy-env] [meta-scan] importing nodes from /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack
[00:57] [ComfyUI] [comfy-env] ERROR:root:Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[00:57] [ComfyUI] [comfy-env] [meta-scan] import OK
[00:57] [ComfyUI] [comfy-env] Scanned nodes: 125 nodes (4.4s)
[00:57] [ComfyUI] [comfy-env] Scanned nodes root: 125 nodes (4.4s)
[00:57] [ComfyUI] [comfy-env] Imported nodes root: 125 nodes (isolation)
[00:57] [ComfyUI] [comfy-env] Registered 125 total nodes
[00:57] [ComfyUI]
[00:57] [ComfyUI] Import times for custom nodes:
[00:57] [ComfyUI] 0.0 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/websocket_image_save.py
[00:57] [ComfyUI] 0.0 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-validate-endpoint
[00:57] [ComfyUI] 4.7 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack
[00:57] [ComfyUI]
[00:57] [ComfyUI] Context impl SQLiteImpl.
[00:57] [ComfyUI] Will assume non-transactional DDL.
[00:57] [ComfyUI] Context impl SQLiteImpl.
[00:57] [ComfyUI] Will assume non-transactional DDL.
[00:57] [ComfyUI] Running upgrade -> 0001_assets, Initial assets schema
[00:57] [ComfyUI] Revision ID: 0001_assets
[00:57] [ComfyUI] Revises: None
[00:57] [ComfyUI] Create Date: 2025-12-10 00:00:00
[00:57] [ComfyUI] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table.
[00:58] [ComfyUI] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references.
[00:58] [ComfyUI] Change preview_id FK from assets.id to asset_references.id.
[00:58] [ComfyUI] Database upgraded from None to 0003_add_metadata_job_id
[00:58] [ComfyUI] Starting server
[00:58] [ComfyUI]
[00:58] [ComfyUI] To see the GUI go to: http://127.0.0.1:41883
[00:58] Server responding, waiting for nodes to load...
[01:18] Server is ready!
[01:18] Checking for import errors in server logs...
[01:18] No import errors detected
[01:18] Found 847 registered nodes
[01:18] [REGISTRATION] PASSED
[01:18]
[01:18] [4/5] INSTANTIATION
[01:18] ----------------------------------------
[01:18]
[DEBUG] server=<comfy_test.comfyui.server.ComfyUIServer object at 0x7f92b08ad550>, api=<comfy_test.comfyui.api.ComfyUIAPI object at 0x7f92b08ade80>
[01:18] Testing node constructors...
[01:20] All 125 node(s) instantiated successfully!
[01:20] [INSTANTIATION] PASSED
[01:20]
[01:20] [5/5] EXECUTION
[01:20] ----------------------------------------
[01:20]
[DEBUG] server=<comfy_test.comfyui.server.ComfyUIServer object at 0x7f92b08ad550>, api=<comfy_test.comfyui.api.ComfyUIAPI object at 0x7f92b08ade80>
[01:20] CPU runner - will execute 30 workflow(s)
[01:20] Running 33 workflow(s) (all with videos)...
[01:20] Installing screenshot dependencies (playwright, pillow)...
[01:20] Packages installed, downloading chromium browser...
[01:30] Screenshot dependencies installed successfully
[01:31] Starting headless browser...
[01:31] Installing Mesa llvmpipe (apt)...
[01:38] Mesa install failed: E: Unable to locate package libegl1-mesa
[01:38] No GPU, no Mesa -- using SwiftShader software rendering
[01:39] Capturing execution frames: alpha_wrap.json
[01:46] Frame 1 saved (frame_000.jpg, t=0.0s)
[01:46] Validating workflow...
[01:46] [ComfyUI] === /validate endpoint called ===
[01:46] [ComfyUI] Received JSON with keys: ['prompt']
[01:46] [ComfyUI] Prompt has 5 nodes
[01:46] [ComfyUI] Node 4: GeomPackLoadMesh
[01:46] [ComfyUI] Inputs: {"file_path": "3d/ArmoredWarrior_00005_.glb"}
[01:46] [ComfyUI] Node 5: GeomPackAlphaWrap
[01:46] Queuing workflow for execution...
[01:46] [ComfyUI] Inputs: {"alpha_percent": 1.1, "offset_percent": 0.01, "report_panel": "false", "input_mesh": ["4", 0]}
[01:46] [ComfyUI] Node 6: GeomPackPreviewMeshDual
[01:46] [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:46] [ComfyUI] Node 9: GeomPackPreviewMeshMulti
[01:46] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[1.6361067258611197,1.6476459280683735,1.6093683078862575],\\\"focalPoint\\\":[0.0000012814998626708984,-
[01:46] [ComfyUI] Node 11: GeomPackRemesh
[01:46] [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:46] [ComfyUI] Generated prompt_id: 35b72cd6-0601-4990-a5f1-842978be4d60
[01:46] [ComfyUI] Calling execution.validate_prompt()...
[01:46] [ComfyUI] Validation result: valid=True
[01:46] [ComfyUI] === Validation PASSED ===
[01:46] [ComfyUI] got prompt
[01:46] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/ArmoredWarrior_00005_.glb'
[01:46] [ComfyUI] [comfy-env] SubprocessWorker: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[01:46] [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-2032/ComfyUI'}
[01:46] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[01:46] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[01:46] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[01:46] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:46] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[01:46] [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_9owtxuh1/persistent_worker.py', 'abstract://comfy_worker_0decd472b980']...
[01:46] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_0decd472b980 (abstract, no filesystem path)
[01:47] [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:47] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:47] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:47] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[01:47] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:47] [ComfyUI] [SubprocessWorker] call_id=1 sending call_method
[01:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/ArmoredWarrior_00005_.glb
[01:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/ArmoredWarrior_00005_.glb
[01:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting Scene to single mesh (scene has 1 geometries)
[01:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 18061 vertices, 19827 faces
[01:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 18061 vertices, 19827 faces
[01:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 18061 vertices, 19827 faces
[01:48] [ComfyUI] [SubprocessWorker] got response: ok
[01:48] Frame 2 saved (frame_001.jpg, t=2.3s)
[01:48] [capture-periodic] freeze=3ms shot=108ms unfreeze=6ms saved=True
[01:49] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.92s): result: NodeOutput
[01:49] [ComfyUI] [comfy-env] Running GeomPackAlphaWrap: alpha_percent: 1.1, offset_percent: 0.01, input_mesh: Trimesh
[01:49] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction_cgal.alpha_wrap.AlphaWrapNode.EXECUTE_NORMALIZED
[01:49] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[01:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[01:49] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:49] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:49] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[01:49] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:49] [ComfyUI] [SubprocessWorker] call_id=2 sending call_method
[01:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 18,061 vertices, 19,827 faces (mesh)
[01:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Bounding box diagonal: 1.4618
[01:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Alpha: 0.016080 (1.1% of bbox)
[01:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Offset: 0.000146 (0.01% of bbox)
[01:49] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2
[01:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Built CGAL input data in 0.1s
[01:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Running CGAL Alpha Wrap...
[01:50] Frame 3 saved (frame_002.jpg, t=4.5s)
[01:50] [capture-periodic] freeze=2ms shot=89ms unfreeze=4ms saved=True
[01:51] [capture-loop] iter=50 t=5.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.8/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=36% browser_rss=0.86GB
[01:52] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Alpha Wrap finished in 0.0s, RSS 614 MB (+33 MB)
[01:52] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extracted result mesh in 0.2s
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 12,770 vertices, 25,536 faces
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Watertight: True
[01:52] [ComfyUI] [SubprocessWorker] got response: ok
[01:52] [ComfyUI] [comfy-env] GeomPackAlphaWrap done (3.33s): result: NodeOutput
[01:52] [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
[01:52] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[01:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[01:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[01:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:52] Node executed (1 total), capturing...
[01:52] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[01:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:52] [ComfyUI] [SubprocessWorker] call_id=3 sending call_method
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 18061 vertices, 19827 faces
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 12770 vertices, 25536 faces
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=texture, texture=True, vertex_colors=False
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_f2885303.stl
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_f2885303.stl
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[01:52] [ComfyUI] [SubprocessWorker] got response: ok
[01:52] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.12s): result: NodeOutput
[01:52] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[01:52] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[01:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[01:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[01:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[01:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:52] [ComfyUI] [SubprocessWorker] call_id=4 sending call_method
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[01:52] [ComfyUI] [SubprocessWorker] got response: ok
[01:52] [ComfyUI] [comfy-env] GeomPackRemesh done (0.02s): result: NodeOutput
[01:52] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[01:52] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[01:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[01:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[01:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[01:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:52] [ComfyUI] [SubprocessWorker] call_id=5 sending call_method
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 12770 vertices, 25536 faces
[01:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[01:53] Frame 4 saved (frame_003.jpg, t=6.6s)
[01:53] [capture-node] freeze=3ms shot=207ms unfreeze=445ms saved=True
[01:53] Node executed (2 total), capturing...
[01:53] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 1973 vertices, 3942 faces
[01:53] [ComfyUI] [SubprocessWorker] got response: ok
[01:53] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (1.35s): result: NodeOutput
[01:53] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh
[01:53] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[01:53] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:53] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[01:53] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[01:53] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:53] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:54] [ComfyUI] [SubprocessWorker] created 3 shm blocks
[01:54] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:54] [ComfyUI] [SubprocessWorker] call_id=6 sending call_method
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 18061 vertices, 19827 faces
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_28ccebb1.vtp
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (18061 vertices)
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 18061 vertices, 19827 faces
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_28ccebb1.vtp
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 12770 vertices, 25536 faces
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_28ccebb1.vtp
[01:54] Frame 5 saved (frame_004.jpg, t=8.0s)
[01:54] [capture-node] freeze=2ms shot=129ms unfreeze=4ms saved=True
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (12770 vertices)
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 12770 vertices, 25536 faces
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_28ccebb1.vtp
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 1973 vertices, 3942 faces
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_28ccebb1.vtp
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (1973 vertices)
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 1973 vertices, 3942 faces
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_28ccebb1.vtp
[01:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready
[01:54] [ComfyUI] [SubprocessWorker] got response: ok
[01:54] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.32s): result: NodeOutput
[01:54] [ComfyUI] Prompt executed in 8.07 seconds
[01:54] Node executed (4 total), capturing...
[01:54] Frame 6 saved (frame_005.jpg, t=8.5s)
[01:54] [capture-node] freeze=3ms shot=119ms unfreeze=4ms saved=True
[01:54] Execution complete (t=8.9s)
[01:55] Captured 6 unique frames over 9.25s
[01:55] [debug] iframes: 2
[01:55] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=False
[01:55] [debug] iframe[1]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=244x393, rafFrozen=False
[01:55] [timing] trigger_3d_previews: 0.0s
[01:57] Saved high-quality screenshot: alpha_wrap_executed.png
[01:57] [timing] final_screenshot: 0.3s
[01:58] Capturing execution frames: batch_remesh.json
[02:03] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:03] Validating workflow...
[02:03] [ComfyUI] === /validate endpoint called ===
[02:03] [ComfyUI] Received JSON with keys: ['prompt']
[02:03] [ComfyUI] Prompt has 4 nodes
[02:03] [ComfyUI] Node 1: GeomPackLoadMeshBatch
[02:03] [ComfyUI] Inputs: {"folder_path": "3d", "start_index": 0, "max_meshes": 4}
[02:03] Queuing workflow for execution...
[02:03] [ComfyUI] Node 4: GeomPackMeshInfo
[02:03] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]}
[02:03] [ComfyUI] Node 6: GeomPackPreviewMeshVTKBatch
[02:03] [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:03] [ComfyUI] Node 11: GeomPackRemesh
[02:03] [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:03] [ComfyUI] Generated prompt_id: 48f98ef9-62fc-4c45-b325-4972bb166567
[02:03] [ComfyUI] Calling execution.validate_prompt()...
[02:03] [ComfyUI] Validation result: valid=True
[02:03] [ComfyUI] === Validation PASSED ===
[02:03] [ComfyUI] got prompt
[02:03] [ComfyUI] [comfy-env] Running GeomPackLoadMeshBatch: folder_path: '3d', start_index: 0, max_meshes: 4
[02:03] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh_batch.LoadMeshBatch.EXECUTE_NORMALIZED
[02:03] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:03] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:03] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:03] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:03] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:03] [ComfyUI] [SubprocessWorker] call_id=7 sending call_method
[02:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found folder in input: 3d
[02:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 12 mesh files
[02:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading up to 4 meshes
[02:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/ArmoredWarrior_00005_.glb
[02:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting Scene to single mesh (scene has 1 geometries)
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 18061 vertices, 19827 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 18061 vertices, 19827 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [1/4] Loaded ArmoredWarrior_00005_.glb: 18061 vertices, 19827 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/Stanford_Bunny.stl
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [2/4] Loaded Stanford_Bunny.stl: 56203 vertices, 112402 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/camel_b.obj
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2032 vertices, 3576 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2032 vertices, 3576 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [3/4] Loaded camel_b.obj: 2032 vertices, 3576 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/camelhead.off
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [4/4] Loaded camelhead.off: 11381 vertices, 22704 faces
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded 4 meshes
[02:04] [ComfyUI] [SubprocessWorker] got response: ok
[02:04] [ComfyUI] [comfy-env] GeomPackLoadMeshBatch done (0.64s): result: NodeOutput
[02:04] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[02:04] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[02:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:04] [ComfyUI] [SubprocessWorker] call_id=8 sending call_method
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[02:04] [ComfyUI] [SubprocessWorker] got response: ok
[02:04] [ComfyUI] [comfy-env] GeomPackRemesh done (0.13s): result: NodeOutput
[02:04] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[02:04] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[02:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:04] [ComfyUI] [SubprocessWorker] call_id=9 sending call_method
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[02:04] [ComfyUI] [SubprocessWorker] got response: ok
[02:04] [ComfyUI] [comfy-env] GeomPackRemesh done (0.02s): result: NodeOutput
[02:04] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[02:04] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[02:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:04] [ComfyUI] [SubprocessWorker] call_id=10 sending call_method
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[02:04] [ComfyUI] [SubprocessWorker] got response: ok
[02:04] [ComfyUI] [comfy-env] GeomPackRemesh done (0.01s): result: NodeOutput
[02:04] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[02:04] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[02:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:04] [ComfyUI] [SubprocessWorker] call_id=11 sending call_method
[02:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[02:04] [ComfyUI] [SubprocessWorker] got response: ok
[02:04] [ComfyUI] [comfy-env] GeomPackRemesh done (0.01s): result: NodeOutput
[02:04] [ComfyUI] [comfy-env] Running GeomPackMeshInfo: trimesh: list[4]
[02:04] [ComfyUI] [SubprocessWorker] call_method: nodes.analysis.mesh_info.MeshInfoNode.EXECUTE_NORMALIZED
[02:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:04] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[02:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:04] [ComfyUI] [SubprocessWorker] call_id=12 sending call_method
[02:04] [ComfyUI] [SubprocessWorker] got response: ok
[02:04] [ComfyUI] [comfy-env] GeomPackMeshInfo done (0.27s): result: NodeOutput
[02:04] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[02:04] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[02:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:04] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:04] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:04] [ComfyUI] [SubprocessWorker] call_id=13 sending call_method
[02:04] Node executed (1 total), capturing...
[02:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[02:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 18061 vertices, 19827 faces
[02:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[02:05] Frame 2 saved (frame_001.jpg, t=1.4s)
[02:05] [capture-node] freeze=3ms shot=94ms unfreeze=3ms saved=True
[02:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 5249 vertices, 11066 faces
[02:06] [ComfyUI] [SubprocessWorker] got response: ok
[02:06] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (1.22s): result: NodeOutput
[02:06] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[02:06] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[02:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:06] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:06] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:06] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:06] [ComfyUI] [SubprocessWorker] call_id=14 sending call_method
[02:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[02:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces
[02:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[02:06] Node executed (2 total), capturing...
[02:06] Frame 3 saved (frame_002.jpg, t=2.7s)
[02:06] [capture-node] freeze=3ms shot=92ms unfreeze=4ms saved=True
[02:08] Frame 4 saved (frame_003.jpg, t=4.9s)
[02:08] [capture-periodic] freeze=2ms shot=106ms unfreeze=3ms saved=True
[02:09] [capture-loop] iter=50 t=6.1s state={'complete': False, 'error': None, 'executedCount': 2, 'wsState': 1} eval_ms=3 ram=3.2/15.6GB (20%) swap=0.0/3.0GB (0%) cpu=34% browser_rss=1.02GB
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 32288 vertices, 64572 faces
[02:12] [ComfyUI] [SubprocessWorker] got response: ok
[02:12] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (6.05s): result: NodeOutput
[02:12] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[02:12] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.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 1 shm blocks
[02:12] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:12] [ComfyUI] [SubprocessWorker] call_id=15 sending call_method
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2032 vertices, 3576 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[02:12] Node executed (3 total), capturing...
[02:12] Frame 5 saved (frame_004.jpg, t=8.7s)
[02:12] [capture-node] freeze=3ms shot=95ms unfreeze=4ms saved=True
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 9672 vertices, 19342 faces
[02:12] [ComfyUI] [SubprocessWorker] got response: ok
[02:12] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (0.55s): result: NodeOutput
[02:12] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[02:12] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.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 1 shm blocks
[02:12] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:12] [ComfyUI] [SubprocessWorker] call_id=16 sending call_method
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 11381 vertices, 22704 faces
[02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[02:12] Node executed (4 total), capturing...
[02:13] Frame 6 saved (frame_005.jpg, t=9.3s)
[02:13] [capture-node] freeze=2ms shot=88ms unfreeze=3ms saved=True
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 207 vertices, 396 faces
[02:13] [ComfyUI] [SubprocessWorker] got response: ok
[02:13] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (0.88s): result: NodeOutput
[02:13] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTKBatch: mode: list[1], index: list[1], trimesh: list[4]
[02:13] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk_batch.PreviewMeshVTKBatchNode.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=17 sending call_method
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Batch size: 4, showing index: 1/4
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 5249 vertices, 11066 faces
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP/STL export
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_batch_95fac03f.stl
[02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=False, volume=None, area=4.31976988243847, no fields
[02:13] [ComfyUI] [SubprocessWorker] got response: ok
[02:13] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTKBatch done (0.03s): result: NodeOutput
[02:13] Node executed (5 total), capturing...
[02:13] [ComfyUI] Prompt executed in 9.81 seconds
[02:13] Frame 7 saved (frame_006.jpg, t=10.1s)
[02:13] [capture-node] freeze=3ms shot=93ms unfreeze=4ms saved=True
[02:14] Node executed (6 total), capturing...
[02:14] Frame 8 saved (frame_007.jpg, t=10.5s)
[02:14] [capture-node] freeze=13ms shot=97ms unfreeze=0ms saved=True
[02:14] Execution complete (t=10.5s)
[02:14] Captured 8 unique frames over 10.65s
[02:14] [debug] iframes: 1
[02:14] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779136, canvas=622x373, rafFrozen=True
[02:14] [timing] trigger_3d_previews: 0.0s
[02:16] Saved high-quality screenshot: batch_remesh_executed.png
[02:16] [timing] final_screenshot: 0.2s
[02:17] Capturing execution frames: boolean_ops.json
[02:22] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:22] Validating workflow...
[02:23] [ComfyUI] === /validate endpoint called ===
[02:23] [ComfyUI] Received JSON with keys: ['prompt']
[02:23] [ComfyUI] Prompt has 5 nodes
[02:23] [ComfyUI] Node 1: GeomPackCreatePrimitive
[02:23] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1}
[02:23] [ComfyUI] Node 2: GeomPackCreatePrimitive
[02:23] [ComfyUI] Inputs: {"shape": "sphere", "size": 2.5, "subdivisions": 2}
[02:23] Queuing workflow for execution...
[02:23] [ComfyUI] Node 21: GeomPackPreviewMeshDual
[02:23] [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:23] [ComfyUI] Node 22: GeomPackPreviewMeshVTK
[02:23] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":true,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\"}", "trimesh": ["2
[02:23] [ComfyUI] Node 25: GeomPackBoolean
[02:23] [ComfyUI] Inputs: {"operation": "union", "backend": "libigl_cgal", "mesh_a": ["1", 0], "mesh_b": ["2", 0]}
[02:23] [ComfyUI] Generated prompt_id: 6aba596e-d67a-4308-9554-b5371226e82e
[02:23] [ComfyUI] Calling execution.validate_prompt()...
[02:23] [ComfyUI] Validation result: valid=True
[02:23] [ComfyUI] === Validation PASSED ===
[02:23] [ComfyUI] got prompt
[02:23] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 2.5, subdivisions: 2
[02:23] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[02:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:23] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:23] [ComfyUI] [SubprocessWorker] call_id=18 sending call_method
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 162 vertices, 320 faces
[02:23] [ComfyUI] [SubprocessWorker] got response: ok
[02:23] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[02:23] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1
[02:23] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[02:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:23] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:23] [ComfyUI] [SubprocessWorker] call_id=19 sending call_method
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[02:23] [ComfyUI] [SubprocessWorker] got response: ok
[02:23] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[02:23] [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'union', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh
[02:23] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.EXECUTE_NORMALIZED
[02:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:23] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:23] [ComfyUI] [SubprocessWorker] call_id=20 sending call_method
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: libigl_cgal -> GeomPackBoolean_LibiglCGAL
[02:23] [ComfyUI] [SubprocessWorker] got response: ok
[02:23] [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput
[02:23] [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:23] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[02:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:23] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:23] [ComfyUI] [SubprocessWorker] call_id=21 sending call_method
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 8 vertices, 12 faces
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 162 vertices, 320 faces
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_74768c36.stl
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_74768c36.stl
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[02:23] [ComfyUI] [SubprocessWorker] got response: ok
[02:23] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[02:23] [ComfyUI] [comfy-env] Running GeomPackBoolean_LibiglCGAL: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'union'
[02:23] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.backends.libigl_cgal.BooleanLibiglCGALNode.EXECUTE_NORMALIZED
[02:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:23] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:23] [ComfyUI] [SubprocessWorker] call_id=22 sending call_method
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_cgal
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 8 vertices, 12 faces
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 162 vertices, 320 faces
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: union
[02:23] Node executed (1 total), capturing...
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 302 vertices, 600 faces
[02:23] [ComfyUI] [SubprocessWorker] got response: ok
[02:23] [ComfyUI] [comfy-env] GeomPackBoolean_LibiglCGAL done (0.17s): result: NodeOutput
[02:23] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh
[02:23] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[02:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:23] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:23] [ComfyUI] [SubprocessWorker] call_id=23 sending call_method
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 302 vertices, 600 faces
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_1602f04a.vtp
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (302 vertices)
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 302 vertices, 600 faces
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_1602f04a.vtp
[02:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=True, volume=9.214489033870414, area=25.093742655540616, no fields
[02:23] [ComfyUI] [SubprocessWorker] got response: ok
[02:23] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.02s): result: NodeOutput
[02:23] [ComfyUI] Prompt executed in 0.24 seconds
[02:23] Frame 2 saved (frame_001.jpg, t=0.4s)
[02:23] [capture-node] freeze=28ms shot=284ms unfreeze=87ms saved=True
[02:23] Node executed (3 total), capturing...
[02:24] Frame 3 saved (frame_002.jpg, t=1.1s)
[02:24] [capture-node] freeze=3ms shot=112ms unfreeze=0ms saved=True
[02:24] Execution complete (t=1.1s)
[02:24] Captured 3 unique frames over 1.27s
[02:24] [debug] iframes: 2
[02:24] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[02:24] [debug] iframe[1]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779136, canvas=486x348, rafFrozen=True
[02:24] [timing] trigger_3d_previews: 0.0s
[02:26] Saved high-quality screenshot: boolean_ops_executed.png
[02:26] [timing] final_screenshot: 0.3s
[02:26] Capturing execution frames: boolean_ops_all.json
[02:32] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:32] Validating workflow...
[02:32] [ComfyUI] === /validate endpoint called ===
[02:32] [ComfyUI] Received JSON with keys: ['prompt']
[02:32] [ComfyUI] Prompt has 5 nodes
[02:32] [ComfyUI] Node 1: GeomPackCreatePrimitive
[02:32] [ComfyUI] Inputs: {"shape": "sphere", "size": 1, "subdivisions": 4}
[02:32] [ComfyUI] Node 2: GeomPackCreatePrimitive
[02:32] [ComfyUI] Inputs: {"shape": "cube", "size": 0.8, "subdivisions": 1}
[02:32] [ComfyUI] Node 3: GeomPackBoolean
[02:32] Queuing workflow for execution...
[02:32] [ComfyUI] Inputs: {"operation": "difference", "backend": "libigl_cgal", "mesh_a": ["1", 0], "mesh_b": ["2", 0]}
[02:32] [ComfyUI] Node 4: GeomPackBoolean
[02:32] [ComfyUI] Inputs: {"operation": "difference", "backend": "blender_exact", "mesh_a": ["1", 0], "mesh_b": ["2", 0]}
[02:32] [ComfyUI] Node 5: GeomPackPreviewMeshMulti
[02:32] [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:32] [ComfyUI] Generated prompt_id: 107040f6-2d78-4383-a39c-e98fa7df4350
[02:32] [ComfyUI] Calling execution.validate_prompt()...
[02:32] [ComfyUI] Validation result: valid=True
[02:32] [ComfyUI] === Validation PASSED ===
[02:32] [ComfyUI] got prompt
[02:32] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 0.8, subdivisions: 1
[02:32] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[02:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:32] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:32] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:32] [ComfyUI] [SubprocessWorker] call_id=24 sending call_method
[02:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[02:32] [ComfyUI] [SubprocessWorker] got response: ok
[02:32] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[02:32] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 1.0, subdivisions: 4
[02:32] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[02:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:32] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:32] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:32] [ComfyUI] [SubprocessWorker] call_id=25 sending call_method
[02:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 2562 vertices, 5120 faces
[02:32] [ComfyUI] [SubprocessWorker] got response: ok
[02:32] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[02:32] [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'difference', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh
[02:32] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.EXECUTE_NORMALIZED
[02:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:32] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:32] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:32] [ComfyUI] [SubprocessWorker] call_id=26 sending call_method
[02:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: libigl_cgal -> GeomPackBoolean_LibiglCGAL
[02:32] [ComfyUI] [SubprocessWorker] got response: ok
[02:32] [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput
[02:32] [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'difference', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh
[02:32] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.EXECUTE_NORMALIZED
[02:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:32] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:32] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:32] [ComfyUI] [SubprocessWorker] call_id=27 sending call_method
[02:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: blender_exact -> GeomPackBoolean_BlenderExact
[02:32] [ComfyUI] [SubprocessWorker] got response: ok
[02:32] [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput
[02:32] [ComfyUI] [comfy-env] Running GeomPackBoolean_LibiglCGAL: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'difference'
[02:32] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.backends.libigl_cgal.BooleanLibiglCGALNode.EXECUTE_NORMALIZED
[02:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:32] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:32] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:32] [ComfyUI] [SubprocessWorker] call_id=28 sending call_method
[02:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_cgal
[02:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 2562 vertices, 5120 faces
[02:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 8 vertices, 12 faces
[02:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: difference
[02:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 2202 vertices, 4380 faces
[02:33] [ComfyUI] [SubprocessWorker] got response: ok
[02:33] [ComfyUI] [comfy-env] GeomPackBoolean_LibiglCGAL done (0.57s): result: NodeOutput
[02:33] [ComfyUI] [comfy-env] Running GeomPackBoolean_BlenderExact: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'difference'
[02:33] [ComfyUI] [SubprocessWorker] call_method: nodes.blender_boolean.boolean.BooleanBlenderExactNode.EXECUTE_NORMALIZED
[02:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:33] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:33] [ComfyUI] [SubprocessWorker] call_id=29 sending call_method
[02:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: blender_exact
[02:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 2562 vertices, 5120 faces
[02:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 8 vertices, 12 faces
[02:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: difference
[02:33] Node executed (1 total), capturing...
[02:33] Frame 2 saved (frame_001.jpg, t=0.9s)
[02:33] [capture-node] freeze=3ms shot=107ms unfreeze=3ms saved=True
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 2202 vertices, 4380 faces
[02:34] [ComfyUI] [SubprocessWorker] got response: ok
[02:34] [ComfyUI] [comfy-env] GeomPackBoolean_BlenderExact done (0.99s): result: NodeOutput
[02:34] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh
[02:34] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[02:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:34] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:34] [ComfyUI] [SubprocessWorker] call_id=30 sending call_method
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2202 vertices, 4380 faces
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_12824b18.vtp
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2202 vertices)
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2202 vertices, 4380 faces
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_12824b18.vtp
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2202 vertices, 4380 faces
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_12824b18.vtp
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2202 vertices)
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2202 vertices, 4380 faces
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_12824b18.vtp
[02:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready
[02:34] [ComfyUI] [SubprocessWorker] got response: ok
[02:34] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.05s): result: NodeOutput
[02:34] [ComfyUI] Prompt executed in 1.65 seconds
[02:34] Node executed (3 total), capturing...
[02:34] Frame 3 saved (frame_002.jpg, t=2.0s)
[02:34] [capture-node] freeze=155ms shot=235ms unfreeze=0ms saved=True
[02:34] Execution complete (t=2.0s)
[02:34] Captured 3 unique frames over 2.42s
[02:34] [debug] iframes: 1
[02:34] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x393, rafFrozen=True
[02:34] [timing] trigger_3d_previews: 0.0s
[02:37] Saved high-quality screenshot: boolean_ops_all_executed.png
[02:37] [timing] final_screenshot: 0.3s
[02:37] Capturing execution frames: decimate.json
[02:43] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:43] Validating workflow...
[02:43] [ComfyUI] === /validate endpoint called ===
[02:43] [ComfyUI] Received JSON with keys: ['prompt']
[02:43] [ComfyUI] Prompt has 3 nodes
[02:43] [ComfyUI] Node 2: GeomPackLoadMesh
[02:43] [ComfyUI] Inputs: {"file_path": "3d/spot_the_cow.obj"}
[02:43] [ComfyUI] Node 3: GeomPackPreviewMeshDual
[02:43] [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:43] Queuing workflow for execution...
[02:43] [ComfyUI] Node 4: GeomPackDecimateMesh
[02:43] [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:43] [ComfyUI] Generated prompt_id: 9425edf9-1492-4adf-9f6d-9d4ad2a32fb5
[02:43] [ComfyUI] Calling execution.validate_prompt()...
[02:43] [ComfyUI] Validation result: valid=True
[02:43] [ComfyUI] === Validation PASSED ===
[02:43] [ComfyUI] got prompt
[02:43] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/spot_the_cow.obj'
[02:43] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[02:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:43] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:43] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:43] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:43] [ComfyUI] [SubprocessWorker] call_id=31 sending call_method
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/spot_the_cow.obj
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/spot_the_cow.obj
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 3225 vertices, 5856 faces
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 3225 vertices, 5856 faces
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 3225 vertices, 5856 faces
[02:43] [ComfyUI] [SubprocessWorker] got response: ok
[02:43] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.04s): result: NodeOutput
[02:43] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[02:43] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[02:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:43] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:43] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:43] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:43] [ComfyUI] [SubprocessWorker] call_id=32 sending call_method
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: quadric_edge_collapse -> GeomPackDecimate_QuadricEdgeCollapse
[02:43] [ComfyUI] [SubprocessWorker] got response: ok
[02:43] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.02s): result: NodeOutput
[02:43] [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:43] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.quadric_edge_collapse.DecimateQuadricEdgeCollapseNode.EXECUTE_NORMALIZED
[02:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:43] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:43] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:43] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:43] [ComfyUI] [SubprocessWorker] call_id=33 sending call_method
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: quadric_edge_collapse
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 3,225 vertices, 5,856 faces
[02:43] [ComfyUI] [SubprocessWorker] got response: ok
[02:43] [ComfyUI] [comfy-env] GeomPackDecimate_QuadricEdgeCollapse done (0.11s): result: NodeOutput
[02:43] [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:43] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[02:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:43] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:43] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[02:43] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:43] [ComfyUI] [SubprocessWorker] call_id=34 sending call_method
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 3225 vertices, 5856 faces
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 504 vertices, 1004 faces
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=texture, texture=True, vertex_colors=False
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_2ce14306.stl
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_2ce14306.stl
[02:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[02:43] Node executed (1 total), capturing...
[02:43] [ComfyUI] [SubprocessWorker] got response: ok
[02:43] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[02:43] [ComfyUI] Prompt executed in 0.19 seconds
[02:44] Frame 2 saved (frame_001.jpg, t=0.5s)
[02:44] [capture-node] freeze=129ms shot=251ms unfreeze=3ms saved=True
[02:44] Node executed (2 total), capturing...
[02:44] [capture-node] freeze=3ms shot=141ms unfreeze=0ms saved=False
[02:44] Execution complete (t=1.2s)
[02:44] Captured 2 unique frames over 1.31s
[02:44] [debug] iframes: 1
[02:44] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[02:44] [timing] trigger_3d_previews: 0.0s
[02:47] Saved high-quality screenshot: decimate_executed.png
[02:47] [timing] final_screenshot: 0.3s
[02:47] Capturing execution frames: decimate_all.json
[02:53] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:53] Validating workflow...
[02:53] [ComfyUI] === /validate endpoint called ===
[02:53] [ComfyUI] Received JSON with keys: ['prompt']
[02:53] [ComfyUI] Prompt has 7 nodes
[02:53] [ComfyUI] Node 1: GeomPackLoadMesh
[02:53] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[02:53] [ComfyUI] Node 2: GeomPackDecimateMesh
[02:53] [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
[02:53] [ComfyUI] Node 3: GeomPackDecimateMesh
[02:53] Queuing workflow for execution...
[02:53] [ComfyUI] Inputs: {"backend": "fast_simplification", "backend.target_reduction": 0.8, "backend.aggressiveness": 7, "trimesh": ["1", 0]}
[02:53] [ComfyUI] Node 4: GeomPackDecimateMesh
[02:53] [ComfyUI] Inputs: {"backend": "vertex_clustering", "backend.cluster_threshold": 3, "trimesh": ["1", 0]}
[02:53] [ComfyUI] Node 6: GeomPackDecimateMesh
[02:53] [ComfyUI] Inputs: {"backend": "decimate_pro", "backend.target_reduction": 0.8, "backend.feature_angle": 15, "backend.preserve_topology": "true", "trimesh": ["1", 0]}
[02:53] [ComfyUI] Node 7: GeomPackPreviewMeshMulti
[02:53] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[156.15573456772853,45.50443036606394,116.04835655422535],\\\"focalPoint\\\":[30.319300651550293,1.894807
[02:53] [ComfyUI] Node 8: GeomPackPreviewMeshMulti
[02:53] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[156.15573456772853,45.50443036606394,116.04835655422535],\\\"focalPoint\\\":[30.319300651550293,1.894807
[02:53] [ComfyUI] Generated prompt_id: b468a92c-5a02-48c6-af48-4ac7d6c9efeb
[02:53] [ComfyUI] Calling execution.validate_prompt()...
[02:53] [ComfyUI] Validation result: valid=True
[02:53] [ComfyUI] === Validation PASSED ===
[02:53] [ComfyUI] got prompt
[02:53] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[02:53] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[02:53] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:53] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:53] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[02:53] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[02:53] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[02:53] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[02:53] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[02:53] [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_9owtxuh1/persistent_worker.py', 'abstract://comfy_worker_85979eb4680c']...
[02:53] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_85979eb4680c (abstract, no filesystem path)
[02:54] [ComfyUI] [worker:ComfyUI-GeometryPack] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.
[02:54] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:54] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:54] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:54] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:54] [ComfyUI] [SubprocessWorker] call_id=35 sending call_method
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/Stanford_Bunny.stl
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[02:55] [ComfyUI] [SubprocessWorker] got response: ok
[02:55] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.07s): result: NodeOutput
[02:55] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[02:55] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[02:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:55] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:55] [ComfyUI] [SubprocessWorker] call_id=36 sending call_method
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: fast_simplification -> GeomPackDecimate_FastSimplification
[02:55] [ComfyUI] [SubprocessWorker] got response: ok
[02:55] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput
[02:55] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[02:55] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[02:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:55] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:55] [ComfyUI] [SubprocessWorker] call_id=37 sending call_method
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: quadric_edge_collapse -> GeomPackDecimate_QuadricEdgeCollapse
[02:55] [ComfyUI] [SubprocessWorker] got response: ok
[02:55] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput
[02:55] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[02:55] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[02:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:55] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:55] [ComfyUI] [SubprocessWorker] call_id=38 sending call_method
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: vertex_clustering -> GeomPackDecimate_VertexClustering
[02:55] [ComfyUI] [SubprocessWorker] got response: ok
[02:55] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput
[02:55] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh
[02:55] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED
[02:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:55] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:55] [ComfyUI] [SubprocessWorker] call_id=39 sending call_method
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: decimate_pro -> GeomPackDecimate_DecimatePro
[02:55] [ComfyUI] [SubprocessWorker] got response: ok
[02:55] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput
[02:55] [ComfyUI] [comfy-env] Running GeomPackDecimate_FastSimplification: trimesh: Trimesh, target_reduction: 0.8, aggressiveness: 7
[02:55] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.fast_simplification.DecimateFastSimplificationNode.EXECUTE_NORMALIZED
[02:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:55] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:55] [ComfyUI] [SubprocessWorker] call_id=40 sending call_method
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: fast_simplification
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[02:55] Frame 2 saved (frame_001.jpg, t=2.2s)
[02:55] [capture-periodic] freeze=14ms shot=106ms unfreeze=4ms saved=True
[02:55] [ComfyUI] [SubprocessWorker] got response: ok
[02:55] [ComfyUI] [comfy-env] GeomPackDecimate_FastSimplification done (0.14s): result: NodeOutput
[02:55] [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'
[02:55] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.quadric_edge_collapse.DecimateQuadricEdgeCollapseNode.EXECUTE_NORMALIZED
[02:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:55] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:55] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:55] [ComfyUI] [SubprocessWorker] call_id=41 sending call_method
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: quadric_edge_collapse
[02:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[02:55] Node executed (1 total), capturing...
[02:55] Frame 3 saved (frame_002.jpg, t=2.7s)
[02:55] [capture-node] freeze=3ms shot=99ms unfreeze=4ms saved=True
[02:57] [ComfyUI] [SubprocessWorker] got response: ok
[02:57] [ComfyUI] [comfy-env] GeomPackDecimate_QuadricEdgeCollapse done (1.97s): result: NodeOutput
[02:57] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh
[02:57] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[02:57] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:57] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:57] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:57] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:57] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:57] [ComfyUI] [SubprocessWorker] created 3 shm blocks
[02:57] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:57] [ComfyUI] [SubprocessWorker] call_id=42 sending call_method
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_efe8590c.vtp
[02:57] Node executed (2 total), capturing...
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[02:57] Frame 4 saved (frame_003.jpg, t=4.6s)
[02:57] [capture-node] freeze=3ms shot=93ms unfreeze=5ms saved=True
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_efe8590c.vtp
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2502 vertices, 5000 faces
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_efe8590c.vtp
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2502 vertices)
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2502 vertices, 5000 faces
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_efe8590c.vtp
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 11242 vertices, 22480 faces
[02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_efe8590c.vtp
[02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11242 vertices)
[02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11242 vertices, 22480 faces
[02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_efe8590c.vtp
[02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready
[02:58] [ComfyUI] [SubprocessWorker] got response: ok
[02:58] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.60s): result: NodeOutput
[02:58] [ComfyUI] [comfy-env] Running GeomPackDecimate_VertexClustering: trimesh: Trimesh, cluster_threshold: 3.0
[02:58] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.vertex_clustering.DecimateVertexClusteringNode.EXECUTE_NORMALIZED
[02:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:58] [ComfyUI] [SubprocessWorker] call_id=43 sending call_method
[02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: vertex_clustering
[02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[02:58] Node executed (3 total), capturing...
[02:58] [ComfyUI] [SubprocessWorker] got response: ok
[02:58] [ComfyUI] [comfy-env] GeomPackDecimate_VertexClustering done (0.08s): result: NodeOutput
[02:58] [ComfyUI] [comfy-env] Running GeomPackDecimate_DecimatePro: trimesh: Trimesh, target_reduction: 0.8, feature_angle: 15.0, preserve_topology: 'true'
[02:58] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.decimate_pro.DecimateProNode.EXECUTE_NORMALIZED
[02:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:58] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[02:58] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:58] [ComfyUI] [SubprocessWorker] call_id=44 sending call_method
[02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: decimate_pro
[02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[02:59] [ComfyUI] [SubprocessWorker] got response: ok
[02:59] [ComfyUI] [comfy-env] GeomPackDecimate_DecimatePro done (1.00s): result: NodeOutput
[02:59] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh
[02:59] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[02:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[02:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[02:59] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:59] [ComfyUI] [SubprocessWorker] created 3 shm blocks
[02:59] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:59] [ComfyUI] [SubprocessWorker] call_id=45 sending call_method
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_59111053.vtp
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_59111053.vtp
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11242 vertices, 22480 faces
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_59111053.vtp
[02:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11242 vertices)
[03:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11242 vertices, 22480 faces
[03:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_59111053.vtp
[03:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 1272 vertices, 2582 faces
[03:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_59111053.vtp
[03:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (1272 vertices)
[03:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 1272 vertices, 2582 faces
[03:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_59111053.vtp
[03:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready
[03:00] [ComfyUI] [SubprocessWorker] got response: ok
[03:00] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.89s): result: NodeOutput
[03:00] [ComfyUI] Prompt executed in 6.89 seconds
[03:00] Frame 5 saved (frame_004.jpg, t=5.3s)
[03:00] [capture-node] freeze=1259ms shot=859ms unfreeze=2ms saved=True
[03:01] Node executed (6 total), capturing...
[03:02] Frame 6 saved (frame_005.jpg, t=8.6s)
[03:02] [capture-node] freeze=242ms shot=186ms unfreeze=0ms saved=True
[03:02] Execution complete (t=8.6s)
[03:02] Captured 6 unique frames over 9.1s
[03:02] [debug] iframes: 2
[03:02] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=244x393, rafFrozen=True
[03:02] [debug] iframe[1]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=244x393, rafFrozen=True
[03:02] [timing] trigger_3d_previews: 0.0s
[03:04] Saved high-quality screenshot: decimate_all_executed.png
[03:04] [timing] final_screenshot: 0.4s
[03:04] Capturing execution frames: depth_map_to_mesh.json
[03:10] Frame 1 saved (frame_000.jpg, t=0.0s)
[03:10] Validating workflow...
[03:10] [ComfyUI] === /validate endpoint called ===
[03:10] [ComfyUI] Received JSON with keys: ['prompt']
[03:10] [ComfyUI] Prompt has 4 nodes
[03:10] [ComfyUI] Node 1: LoadImage
[03:10] [ComfyUI] Inputs: {"image": "example.png"}
[03:10] [ComfyUI] Node 4: GeomPackPreviewMeshVTK
[03:10] [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:10] Queuing workflow for execution...
[03:10] [ComfyUI] Node 6: ImageToMask
[03:10] [ComfyUI] Inputs: {"channel": "red", "image": ["1", 0]}
[03:10] [ComfyUI] Node 7: GeomPackTextureToGeometry
[03:10] [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:10] [ComfyUI] Generated prompt_id: df69a96f-b4cd-4180-a548-1661bf3bbf99
[03:10] [ComfyUI] Calling execution.validate_prompt()...
[03:10] [ComfyUI] Validation result: valid=True
[03:10] [ComfyUI] === Validation PASSED ===
[03:10] [ComfyUI] got prompt
[03:10] [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:10] [ComfyUI] [SubprocessWorker] call_method: nodes.texture_remeshing.texture_to_geometry.TextureToGeometryNode.EXECUTE_NORMALIZED
[03:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:10] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:10] [ComfyUI] [comfy-env] PRE-SERIALIZE 'mask' shape: torch.Size([1, 768, 768])
[03:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:10] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[03:10] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:10] [ComfyUI] [SubprocessWorker] call_id=46 sending call_method
[03:10] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[03:10] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 768, 768]
[03:10] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 768, 768])
[03:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting to geometry using backend: grid
[03:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using mask input
[03:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using native resolution: 768x768, range: [0.000, 1.000]
[03:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated 589824 points
[03:12] Frame 2 saved (frame_001.jpg, t=2.2s)
[03:12] [capture-periodic] freeze=2ms shot=91ms unfreeze=6ms saved=True
[03:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 589824 vertices, 1176578 faces
[03:14] Frame 3 saved (frame_002.jpg, t=4.4s)
[03:14] [capture-periodic] freeze=2ms shot=87ms unfreeze=4ms saved=True
[03:14] [ComfyUI] [SubprocessWorker] got response: ok
[03:14] [ComfyUI] [comfy-env] GeomPackTextureToGeometry done (4.35s): result: NodeOutput
[03:14] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh
[03:14] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[03:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:14] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:14] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:14] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:14] [ComfyUI] [SubprocessWorker] call_id=47 sending call_method
[03:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 589824 vertices, 1176578 faces
[03:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[03:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[03:14] Node executed (1 total), capturing...
[03:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export
[03:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_56fef370.vtp
[03:15] Frame 4 saved (frame_003.jpg, t=4.8s)
[03:15] [capture-node] freeze=3ms shot=109ms unfreeze=4ms saved=True
[03:16] [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.3/15.6GB (21%) swap=0.0/3.0GB (0%) cpu=29% browser_rss=1.06GB
[03:17] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (589824 vertices)
[03:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 589824 vertices, 1176578 faces
[03:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_56fef370.vtp
[03:19] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=False, volume=None, area=11.966723990015208, no fields
[03:19] [ComfyUI] [SubprocessWorker] got response: ok
[03:19] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (4.15s): result: NodeOutput
[03:19] [ComfyUI] Prompt executed in 8.52 seconds
[03:19] Node executed (2 total), capturing...
[03:19] Frame 5 saved (frame_004.jpg, t=8.9s)
[03:19] [capture-node] freeze=3ms shot=98ms unfreeze=4ms saved=True
[03:19] Execution complete (t=9.1s)
[03:19] Captured 5 unique frames over 9.16s
[03:19] [debug] iframes: 1
[03:19] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779136, canvas=486x384, rafFrozen=False
[03:19] [timing] trigger_3d_previews: 0.0s
[03:22] Saved high-quality screenshot: depth_map_to_mesh_executed.png
[03:22] [timing] final_screenshot: 1.2s
[03:23] [8/33] SKIPPED (not in cpu list) fill_holes_all.json
[03:23] Capturing execution frames: fix_normals_all.json
[03:29] Frame 1 saved (frame_000.jpg, t=0.0s)
[03:29] Validating workflow...
[03:29] [ComfyUI] === /validate endpoint called ===
[03:29] [ComfyUI] Received JSON with keys: ['prompt']
[03:29] [ComfyUI] Prompt has 8 nodes
[03:29] [ComfyUI] Node 1: GeomPackLoadMesh
[03:29] [ComfyUI] Inputs: {"file_path": "3d/truck.obj"}
[03:29] [ComfyUI] Node 2: GeomPackFixNormals
[03:29] [ComfyUI] Inputs: {"backend": "trimesh", "report_panel": "false", "trimesh": ["1", 0]}
[03:29] [ComfyUI] Node 3: GeomPackFixNormals
[03:29] Queuing workflow for execution...
[03:29] [ComfyUI] Inputs: {"backend": "igl_bfs", "report_panel": "false", "trimesh": ["1", 0]}
[03:29] [ComfyUI] Node 4: GeomPackFixNormals
[03:29] [ComfyUI] Inputs: {"backend": "igl_winding", "report_panel": "false", "trimesh": ["1", 0]}
[03:29] [ComfyUI] Node 5: GeomPackFixNormals
[03:29] [ComfyUI] Inputs: {"backend": "igl_raycast", "report_panel": "false", "trimesh": ["1", 0]}
[03:29] [ComfyUI] Node 6: GeomPackFixNormals
[03:29] [ComfyUI] Inputs: {"backend": "igl_signed_dist", "report_panel": "false", "trimesh": ["1", 0]}
[03:29] [ComfyUI] Node 8: GeomPackPreviewMeshMulti
[03:29] [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:29] [ComfyUI] Node 9: GeomPackPreviewMeshMulti
[03:29] [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:29] [ComfyUI] Generated prompt_id: 2da9775b-b684-4622-8356-72e92e3e6562
[03:29] [ComfyUI] Calling execution.validate_prompt()...
[03:29] [ComfyUI] Validation result: valid=True
[03:29] [ComfyUI] === Validation PASSED ===
[03:29] [ComfyUI] got prompt
[03:29] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/truck.obj'
[03:29] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[03:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:29] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[03:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:29] [ComfyUI] [SubprocessWorker] call_id=48 sending call_method
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/truck.obj
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/truck.obj
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2956 vertices, 4770 faces
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2956 vertices, 4770 faces
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2956 vertices, 4770 faces
[03:29] [ComfyUI] [SubprocessWorker] got response: ok
[03:29] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.02s): result: NodeOutput
[03:29] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:29] [ComfyUI] [SubprocessWorker] call_id=49 sending call_method
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_bfs -> GeomPackFixNormals_IglBfs
[03:29] [ComfyUI] [SubprocessWorker] got response: ok
[03:29] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput
[03:29] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:29] [ComfyUI] [SubprocessWorker] call_id=50 sending call_method
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: trimesh -> GeomPackFixNormals_Trimesh
[03:29] [ComfyUI] [SubprocessWorker] got response: ok
[03:29] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.02s): result: NodeOutput
[03:29] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:29] [ComfyUI] [SubprocessWorker] call_id=51 sending call_method
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_raycast -> GeomPackFixNormals_IglRaycast
[03:29] [ComfyUI] [SubprocessWorker] got response: ok
[03:29] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput
[03:29] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:29] [ComfyUI] [SubprocessWorker] call_id=52 sending call_method
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_winding -> GeomPackFixNormals_IglWinding
[03:29] [ComfyUI] [SubprocessWorker] got response: ok
[03:29] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput
[03:29] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh
[03:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED
[03:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:29] [ComfyUI] [SubprocessWorker] call_id=53 sending call_method
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_signed_dist -> GeomPackFixNormals_IglSignedDist
[03:29] [ComfyUI] [SubprocessWorker] got response: ok
[03:29] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput
[03:29] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglBfs: trimesh: Trimesh
[03:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_bfs.FixNormalsIglBfsNode.EXECUTE_NORMALIZED
[03:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:29] [ComfyUI] [SubprocessWorker] call_id=54 sending call_method
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl.bfs_orient: 66 orientation components
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> True
[03:29] [ComfyUI] [SubprocessWorker] got response: ok
[03:29] [ComfyUI] [comfy-env] GeomPackFixNormals_IglBfs done (0.03s): result: NodeOutput
[03:29] [ComfyUI] [comfy-env] Running GeomPackFixNormals_Trimesh: trimesh: Trimesh
[03:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.trimesh_fix.FixNormalsTrimeshNode.EXECUTE_NORMALIZED
[03:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:29] [ComfyUI] [SubprocessWorker] call_id=55 sending call_method
[03:29] Node executed (1 total), capturing...
[03:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> True
[03:29] [ComfyUI] [SubprocessWorker] got response: ok
[03:29] [ComfyUI] [comfy-env] GeomPackFixNormals_Trimesh done (0.27s): result: NodeOutput
[03:29] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglRaycast: trimesh: Trimesh
[03:29] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_raycast.FixNormalsIglRaycastNode.EXECUTE_NORMALIZED
[03:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:29] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:29] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:29] [ComfyUI] [SubprocessWorker] call_id=56 sending call_method
[03:29] Frame 2 saved (frame_001.jpg, t=0.5s)
[03:29] [capture-node] freeze=3ms shot=114ms unfreeze=3ms saved=True
[03:30] Node executed (2 total), capturing...
[03:30] Frame 3 saved (frame_002.jpg, t=0.9s)
[03:30] [capture-node] freeze=3ms shot=103ms unfreeze=3ms saved=True
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl_raycast: flipped 3339/4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> False
[03:31] [ComfyUI] [SubprocessWorker] got response: ok
[03:31] [ComfyUI] [comfy-env] GeomPackFixNormals_IglRaycast done (1.20s): result: NodeOutput
[03:31] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglWinding: trimesh: Trimesh
[03:31] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_winding.FixNormalsIglWindingNode.EXECUTE_NORMALIZED
[03:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:31] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:31] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:31] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:31] [ComfyUI] [SubprocessWorker] call_id=57 sending call_method
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl_winding: flipped 4022/4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> False
[03:31] [ComfyUI] [SubprocessWorker] got response: ok
[03:31] [ComfyUI] [comfy-env] GeomPackFixNormals_IglWinding done (0.04s): result: NodeOutput
[03:31] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[03:31] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[03:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:31] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:31] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[03:31] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:31] [ComfyUI] [SubprocessWorker] call_id=58 sending call_method
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_b2c8baf6.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_b2c8baf6.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_b2c8baf6.vtp
[03:31] Node executed (4 total), capturing...
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_b2c8baf6.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_b2c8baf6.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_b2c8baf6.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_b2c8baf6.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_b2c8baf6.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[03:31] [ComfyUI] [SubprocessWorker] got response: ok
[03:31] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.10s): result: NodeOutput
[03:31] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglSignedDist: trimesh: Trimesh
[03:31] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_signed_dist.FixNormalsIglSignedDistNode.EXECUTE_NORMALIZED
[03:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:31] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:31] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:31] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:31] [ComfyUI] [SubprocessWorker] call_id=59 sending call_method
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl_signed_dist: flipped 4757/4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> False
[03:31] [ComfyUI] [SubprocessWorker] got response: ok
[03:31] [ComfyUI] [comfy-env] GeomPackFixNormals_IglSignedDist done (0.08s): result: NodeOutput
[03:31] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh
[03:31] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[03:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:31] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:31] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[03:31] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:31] [ComfyUI] [SubprocessWorker] call_id=60 sending call_method
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_2f764699.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_2f764699.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_2f764699.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices)
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_2f764699.vtp
[03:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready
[03:31] [ComfyUI] [SubprocessWorker] got response: ok
[03:31] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.06s): result: NodeOutput
[03:31] [ComfyUI] Prompt executed in 1.88 seconds
[03:32] Frame 4 saved (frame_003.jpg, t=2.0s)
[03:32] [capture-node] freeze=23ms shot=1025ms unfreeze=6ms saved=True
[03:32] Node executed (7 total), capturing...
[03:33] Frame 5 saved (frame_004.jpg, t=3.6s)
[03:33] [capture-node] freeze=2ms shot=134ms unfreeze=0ms saved=True
[03:33] Execution complete (t=3.6s)
[03:33] Captured 5 unique frames over 3.78s
[03:33] [debug] iframes: 2
[03:33] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x393, rafFrozen=True
[03:33] [debug] iframe[1]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[03:33] [timing] trigger_3d_previews: 0.0s
[03:35] Saved high-quality screenshot: fix_normals_all_executed.png
[03:35] [timing] final_screenshot: 0.3s
[03:35] Capturing execution frames: fix_self_intersection.json
[03:41] Frame 1 saved (frame_000.jpg, t=0.0s)
[03:41] Validating workflow...
[03:41] [ComfyUI] === /validate endpoint called ===
[03:41] [ComfyUI] Received JSON with keys: ['prompt']
[03:41] [ComfyUI] Prompt has 5 nodes
[03:41] [ComfyUI] Node 1: GeomPackLoadMesh
[03:41] [ComfyUI] Inputs: {"file_path": "3d/camelhead.off"}
[03:41] [ComfyUI] Node 14: GeomPackDetectSelfIntersections
[03:41] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]}
[03:41] [ComfyUI] Node 17: GeomPackFixSelfIntersectionsByPerturbation
[03:41] Queuing workflow for execution...
[03:41] [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:41] [ComfyUI] Node 21: GeomPackPreviewMeshDual
[03:41] [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:41] [ComfyUI] Node 22: GeomPackDetectSelfIntersections
[03:41] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["17", 0]}
[03:41] [ComfyUI] Generated prompt_id: 2d0987c2-6052-438f-9a9b-e020f955da40
[03:41] [ComfyUI] Calling execution.validate_prompt()...
[03:41] [ComfyUI] Validation result: valid=True
[03:41] [ComfyUI] === Validation PASSED ===
[03:41] [ComfyUI] got prompt
[03:41] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/camelhead.off'
[03:41] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[03:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:41] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:41] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[03:41] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:41] [ComfyUI] [SubprocessWorker] call_id=61 sending call_method
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/camelhead.off
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/camelhead.off
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 11381 vertices, 22704 faces
[03:41] [ComfyUI] [SubprocessWorker] got response: ok
[03:41] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.07s): result: NodeOutput
[03:41] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh
[03:41] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED
[03:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:41] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:41] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:41] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:41] [ComfyUI] [SubprocessWorker] call_id=62 sending call_method
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11381 vertices, 22704 faces
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 6 intersecting faces (5 intersection pairs)
[03:41] [ComfyUI] [SubprocessWorker] got response: ok
[03:41] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.10s): result: NodeOutput
[03:41] [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:41] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.fix_intersections_perturbation.FixSelfIntersectionsByPerturbationNode.EXECUTE_NORMALIZED
[03:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:41] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:41] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:41] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:41] [ComfyUI] [SubprocessWorker] call_id=63 sending call_method
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Processing mesh: 11381 vertices, 22704 faces
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Params: epsilon=0.0001, max_iter=12, direction=adaptive, re_detect=True
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 8 vertices to perturb
[03:41] Node executed (1 total), capturing...
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 1: avg displacement = 0.000004
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 2: avg displacement = 0.000008
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 3: avg displacement = 0.000011
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 4: avg displacement = 0.000015
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 5: avg displacement = 0.000019
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 6: avg displacement = 0.000023
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 7: avg displacement = 0.000026
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 8: avg displacement = 0.000030
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 9: avg displacement = 0.000034
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 10: avg displacement = 0.000038
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 11: avg displacement = 0.000041
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 12: avg displacement = 0.000045
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Re-detecting self-intersections...
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: No self-intersections remaining!
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Complete: perturbed 8 vertices over 12 iterations
[03:41] [ComfyUI] [SubprocessWorker] got response: ok
[03:41] [ComfyUI] [comfy-env] GeomPackFixSelfIntersectionsByPerturbation done (0.23s): result: NodeOutput
[03:41] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh
[03:41] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED
[03:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:41] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:41] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:41] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:41] [ComfyUI] [SubprocessWorker] call_id=64 sending call_method
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11381 vertices, 22704 faces
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: No self-intersections detected
[03:41] [ComfyUI] [SubprocessWorker] got response: ok
[03:41] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.10s): result: NodeOutput
[03:41] [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:41] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[03:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:41] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:41] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[03:41] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:41] [ComfyUI] [SubprocessWorker] call_id=65 sending call_method
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 11381 vertices, 22704 faces
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11381 vertices, 22704 faces
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: ['intersection_flag', 'face.self_intersecting', 'intersection_count']
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_130babf4.vtp
[03:41] Frame 2 saved (frame_001.jpg, t=0.5s)
[03:41] [capture-node] freeze=3ms shot=131ms unfreeze=3ms saved=True
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11381 vertices)
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1)
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1)
[03:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11381 vertices, 22704 faces
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_130babf4.vtp
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_130babf4.vtp
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11381 vertices)
[03:42] Node executed (3 total), capturing...
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1)
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1)
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11381 vertices, 22704 faces
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_130babf4.vtp
[03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[03:42] [ComfyUI] [SubprocessWorker] got response: ok
[03:42] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.19s): result: NodeOutput
[03:42] [ComfyUI] Prompt executed in 0.70 seconds
[03:42] Frame 3 saved (frame_002.jpg, t=0.9s)
[03:42] [capture-node] freeze=17ms shot=584ms unfreeze=3ms saved=True
[03:43] Node executed (4 total), capturing...
[03:43] [capture-node] freeze=10ms shot=199ms unfreeze=0ms saved=False
[03:43] Execution complete (t=1.9s)
[03:43] Captured 3 unique frames over 2.15s
[03:43] [debug] iframes: 1
[03:43] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[03:43] [timing] trigger_3d_previews: 0.0s
[03:45] Saved high-quality screenshot: fix_self_intersection_executed.png
[03:45] [timing] final_screenshot: 0.4s
[03:46] Capturing execution frames: mesh_info.json
[03:51] Frame 1 saved (frame_000.jpg, t=0.0s)
[03:51] Validating workflow...
[03:51] [ComfyUI] === /validate endpoint called ===
[03:51] [ComfyUI] Received JSON with keys: ['prompt']
[03:51] [ComfyUI] Prompt has 3 nodes
[03:51] [ComfyUI] Node 1: GeomPackCreatePrimitive
[03:51] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1}
[03:51] [ComfyUI] Node 7: GeomPackMeshInfo
[03:51] [ComfyUI] Inputs: {"report_panel": "true", "trimesh": ["1", 0]}
[03:51] Queuing workflow for execution...
[03:51] [ComfyUI] Node 12: GeomPackMeshQuality
[03:51] [ComfyUI] Inputs: {"include_face_quality": true, "include_edge_stats": true, "report_panel": "true", "trimesh": ["1", 0]}
[03:51] [ComfyUI] Generated prompt_id: e60ab6a7-1966-42fb-bccc-2c03bb467ae5
[03:51] [ComfyUI] Calling execution.validate_prompt()...
[03:51] [ComfyUI] Validation result: valid=True
[03:51] [ComfyUI] === Validation PASSED ===
[03:51] [ComfyUI] got prompt
[03:51] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1
[03:51] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[03:51] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:51] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:51] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:51] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[03:51] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:51] [ComfyUI] [SubprocessWorker] call_id=66 sending call_method
[03:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[03:51] [ComfyUI] [SubprocessWorker] got response: ok
[03:51] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[03:51] [ComfyUI] [comfy-env] Running GeomPackMeshQuality: include_face_quality: True, include_edge_stats: True, trimesh: Trimesh
[03:51] [ComfyUI] [SubprocessWorker] call_method: nodes.analysis.mesh_quality.MeshQualityNode.EXECUTE_NORMALIZED
[03:51] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:51] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:51] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:51] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:51] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:51] [ComfyUI] [SubprocessWorker] call_id=67 sending call_method
[03:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 8 vertices, 12 faces
[03:51] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analysis complete
[03:51] [ComfyUI] [SubprocessWorker] got response: ok
[03:51] [ComfyUI] [comfy-env] GeomPackMeshQuality done (0.02s): result: NodeOutput
[03:51] [ComfyUI] [comfy-env] Running GeomPackMeshInfo: trimesh: list[1]
[03:51] [ComfyUI] [SubprocessWorker] call_method: nodes.analysis.mesh_info.MeshInfoNode.EXECUTE_NORMALIZED
[03:51] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[03:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[03:51] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[03:51] [ComfyUI] [SubprocessWorker] worker started/confirmed
[03:51] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[03:51] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[03:51] [ComfyUI] [SubprocessWorker] sending request via socket...
[03:51] [ComfyUI] [SubprocessWorker] call_id=68 sending call_method
[03:51] [ComfyUI] [SubprocessWorker] got response: ok
[03:51] [ComfyUI] [comfy-env] GeomPackMeshInfo done (0.01s): result: NodeOutput
[03:51] [ComfyUI] Prompt executed in 0.04 seconds
[03:51] Node executed (1 total), capturing...
[03:52] Frame 2 saved (frame_001.jpg, t=0.4s)
[03:52] [capture-node] freeze=3ms shot=82ms unfreeze=3ms saved=True
[03:52] Node executed (2 total), capturing...
[03:52] [capture-node] freeze=2ms shot=89ms unfreeze=0ms saved=False
[03:52] Execution complete (t=0.7s)
[03:52] Captured 2 unique frames over 0.83s
[03:52] [debug] iframes: 0
[03:52] [timing] trigger_3d_previews: 0.0s
[03:54] Saved high-quality screenshot: mesh_info_executed.png
[03:54] [timing] final_screenshot: 0.2s
[03:55] Capturing execution frames: mesh_mesh_distance.json
[04:00] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:00] Validating workflow...
[04:00] [ComfyUI] === /validate endpoint called ===
[04:00] [ComfyUI] Received JSON with keys: ['prompt']
[04:00] [ComfyUI] Prompt has 5 nodes
[04:00] [ComfyUI] Node 3: GeomPackMeshToMeshDistance
[04:00] [ComfyUI] Inputs: {"metric": "hausdorff", "sample_count": 10000, "symmetric": "true", "report_panel": "true", "mesh_a": ["8", 0], "mesh_b": ["15", 0]}
[04:00] [ComfyUI] Node 8: GeomPackLoadMesh
[04:00] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[04:00] Queuing workflow for execution...
[04:00] [ComfyUI] Node 10: GeomPackMeshToMeshDistance
[04:00] [ComfyUI] Inputs: {"metric": "hausdorff", "sample_count": 10000, "symmetric": "true", "report_panel": "false", "mesh_a": ["8", 0], "mesh_b": ["16", 0]}
[04:00] [ComfyUI] Node 15: GeomPackRemesh
[04:00] [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:00] [ComfyUI] Node 16: GeomPackRemesh
[04:00] [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:00] [ComfyUI] Generated prompt_id: 13fb7423-79f1-4fd1-8dbc-15f2b643ad0e
[04:00] [ComfyUI] Calling execution.validate_prompt()...
[04:00] [ComfyUI] Validation result: valid=True
[04:00] [ComfyUI] === Validation PASSED ===
[04:00] [ComfyUI] got prompt
[04:00] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[04:00] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[04:00] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[04:00] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[04:00] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:00] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:00] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[04:00] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[04:00] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[04: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_9owtxuh1/persistent_worker.py', 'abstract://comfy_worker_1b92563709e9']...
[04:00] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_1b92563709e9 (abstract, no filesystem path)
[04: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.
[04:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:02] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:02] [ComfyUI] [SubprocessWorker] call_id=69 sending call_method
[04:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[04:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/Stanford_Bunny.stl
[04:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[04:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[04:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[04:02] [ComfyUI] [SubprocessWorker] got response: ok
[04:02] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.13s): result: NodeOutput
[04:02] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[04:02] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[04:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:02] [ComfyUI] [SubprocessWorker] call_id=70 sending call_method
[04:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab
[04:03] [ComfyUI] [SubprocessWorker] got response: ok
[04:03] [ComfyUI] [comfy-env] GeomPackRemesh done (0.03s): result: NodeOutput
[04:03] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[04:03] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[04:03] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:03] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:03] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:03] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:03] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:03] [ComfyUI] [SubprocessWorker] call_id=71 sending call_method
[04:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: cgal_isotropic -> GeomPackRemesh_CGAL
[04:03] [ComfyUI] [SubprocessWorker] got response: ok
[04:03] [ComfyUI] [comfy-env] GeomPackRemesh done (0.03s): result: NodeOutput
[04:03] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false'
[04:03] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED
[04:03] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:03] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:03] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:03] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:03] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:03] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:03] [ComfyUI] [SubprocessWorker] call_id=72 sending call_method
[04:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic
[04:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces
[04:03] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false
[04:03] Frame 2 saved (frame_001.jpg, t=2.2s)
[04:03] [capture-periodic] freeze=2ms shot=100ms unfreeze=2ms saved=True
[04:05] Frame 3 saved (frame_002.jpg, t=4.5s)
[04:05] [capture-periodic] freeze=2ms shot=101ms unfreeze=4ms saved=True
[04:06] [capture-loop] iter=50 t=5.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.6/15.6GB (17%) swap=0.0/3.0GB (0%) cpu=28% browser_rss=1.03GB
[04:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 32288 vertices, 64572 faces
[04:09] [ComfyUI] [SubprocessWorker] got response: ok
[04:09] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (5.97s): result: NodeOutput
[04:09] [ComfyUI] [comfy-env] Running GeomPackMeshToMeshDistance: metric: 'hausdorff', sample_count: 10000, symmetric: 'true', mesh_a: Trimesh, mesh_b: Trimesh
[04:09] [ComfyUI] [SubprocessWorker] call_method: nodes.distance.mesh_to_mesh_distance.MeshDistanceNode.EXECUTE_NORMALIZED
[04:09] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:09] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:09] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:09] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[04:09] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:09] [ComfyUI] [SubprocessWorker] call_id=73 sending call_method
[04:09] Node executed (1 total), capturing...
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Metric: hausdorff, Samples: 10000
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 56203 vertices, 112402 faces
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 32288 vertices, 64572 faces
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 2.896636
[04:09] [ComfyUI] [SubprocessWorker] got response: ok
[04:09] [ComfyUI] [comfy-env] GeomPackMeshToMeshDistance done (0.13s): result: NodeOutput
[04:09] [ComfyUI] [comfy-env] Running GeomPackRemesh_CGAL: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, protect_boundaries: 'true'
[04:09] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing_cgal.remesh.RemeshCGALNode.EXECUTE_NORMALIZED
[04:09] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:09] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:09] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:09] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:09] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:09] [ComfyUI] [SubprocessWorker] call_id=74 sending call_method
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: cgal_isotropic
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, protect_boundaries=true
[04:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Running CGAL isotropic remesh (target_edge_length=1.0)...
[04:09] Frame 4 saved (frame_003.jpg, t=8.5s)
[04:09] [capture-node] freeze=3ms shot=109ms unfreeze=4ms saved=True
[04:09] Node executed (2 total), capturing...
[04:09] [capture-node] freeze=3ms shot=103ms unfreeze=3ms saved=False
[04:12] [capture-loop] iter=100 t=11.7s state={'complete': False, 'error': None, 'executedCount': 2, 'wsState': 1} eval_ms=2 ram=2.7/15.6GB (17%) swap=0.0/3.0GB (0%) cpu=34% 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 (5.50s): 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=75 sending call_method
[04:14] Node executed (3 total), capturing...
[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] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 3.027923
[04:14] [ComfyUI] [SubprocessWorker] got response: ok
[04:14] [ComfyUI] [comfy-env] GeomPackMeshToMeshDistance done (0.11s): result: NodeOutput
[04:14] [ComfyUI] Prompt executed in 13.90 seconds
[04:14] Frame 5 saved (frame_004.jpg, t=14.1s)
[04:14] [capture-node] freeze=3ms shot=99ms unfreeze=4ms saved=True
[04:15] Node executed (4 total), capturing...
[04:15] Frame 6 saved (frame_005.jpg, t=14.5s)
[04:15] [capture-node] freeze=2ms shot=95ms unfreeze=3ms saved=True
[04:15] Execution complete (t=14.7s)
[04:15] Captured 6 unique frames over 14.73s
[04:15] [debug] iframes: 0
[04:15] [timing] trigger_3d_previews: 0.0s
[04:17] Saved high-quality screenshot: mesh_mesh_distance_executed.png
[04:17] [timing] final_screenshot: 0.2s
[04:18] Capturing execution frames: normals.json
[04:23] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:23] Validating workflow...
[04:23] [ComfyUI] === /validate endpoint called ===
[04:23] [ComfyUI] Received JSON with keys: ['prompt']
[04:23] [ComfyUI] Prompt has 4 nodes
[04:23] [ComfyUI] Node 1: GeomPackLoadMesh
[04:23] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[04:23] [ComfyUI] Node 2: GeomPackCheckNormals
[04:23] Queuing workflow for execution...
[04:23] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]}
[04:23] [ComfyUI] Node 3: GeomPackComputeNormals
[04:23] [ComfyUI] Inputs: {"smooth_vertex_normals": "true", "trimesh": ["1", 0]}
[04:23] [ComfyUI] Node 7: GeomPackPreviewMeshVTK
[04:23] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\"}", "trimesh": ["
[04:23] [ComfyUI] Generated prompt_id: 603d0b02-e10a-4d6d-90f8-d79e10218037
[04:23] [ComfyUI] Calling execution.validate_prompt()...
[04:23] [ComfyUI] Validation result: valid=True
[04:23] [ComfyUI] === Validation PASSED ===
[04:23] [ComfyUI] got prompt
[04:23] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[04:23] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[04:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:23] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:23] [ComfyUI] [SubprocessWorker] call_id=76 sending call_method
[04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/Stanford_Bunny.stl
[04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[04:23] [ComfyUI] [SubprocessWorker] got response: ok
[04:23] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.22s): result: NodeOutput
[04:23] [ComfyUI] [comfy-env] Running GeomPackCheckNormals: trimesh: Trimesh
[04:23] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.check_normals.CheckNormalsNode.EXECUTE_NORMALIZED
[04:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:23] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:23] [ComfyUI] [SubprocessWorker] call_id=77 sending call_method
[04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh with 56203 vertices, 112402 faces
[04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Winding: True, Watertight: True, Degenerate: 1
[04:23] [ComfyUI] [SubprocessWorker] got response: ok
[04:23] [ComfyUI] [comfy-env] GeomPackCheckNormals done (0.10s): result: NodeOutput
[04:23] [ComfyUI] [comfy-env] Running GeomPackComputeNormals: smooth_vertex_normals: 'true', trimesh: Trimesh
[04:23] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.compute_normals.ComputeNormalsNode.EXECUTE_NORMALIZED
[04:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:23] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:23] [ComfyUI] [SubprocessWorker] call_id=78 sending call_method
[04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Processing mesh with 56203 vertices, 112402 faces
[04:23] Node executed (1 total), capturing...
[04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computed smooth vertex normals
[04:24] [ComfyUI] [SubprocessWorker] got response: ok
[04:24] [ComfyUI] [comfy-env] GeomPackComputeNormals done (0.09s): result: NodeOutput
[04:24] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh
[04:24] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[04:24] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:24] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:24] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:24] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:24] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:24] [ComfyUI] [SubprocessWorker] call_id=79 sending call_method
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 56203 vertices, 112402 faces
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_794035b5.vtp
[04:24] Frame 2 saved (frame_001.jpg, t=0.7s)
[04:24] [capture-node] freeze=2ms shot=81ms unfreeze=3ms saved=True
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_x (components: 1)
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_y (components: 1)
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_z (components: 1)
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_magnitude (components: 1)
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_794035b5.vtp
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Vertex attributes: ['normal_x', 'normal_y', 'normal_z', 'normal_magnitude']
[04:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Face attributes: ['stl']
[04:24] [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:24] [ComfyUI] [SubprocessWorker] got response: ok
[04:24] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.69s): result: NodeOutput
[04:24] [ComfyUI] Prompt executed in 1.11 seconds
[04:24] Node executed (2 total), capturing...
[04:25] Frame 3 saved (frame_002.jpg, t=1.5s)
[04:25] [capture-node] freeze=641ms shot=93ms unfreeze=0ms saved=True
[04:25] Execution complete (t=1.5s)
[04:25] Captured 3 unique frames over 2.23s
[04:25] [debug] iframes: 1
[04:25] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779136, canvas=486x348, rafFrozen=True
[04:25] [timing] trigger_3d_previews: 0.0s
[04:27] Saved high-quality screenshot: normals_executed.png
[04:27] [timing] final_screenshot: 0.2s
[04:28] Capturing execution frames: point_mesh_distance.json
[04:33] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:33] Validating workflow...
[04:33] [ComfyUI] === /validate endpoint called ===
[04:33] [ComfyUI] Received JSON with keys: ['prompt']
[04:33] [ComfyUI] Prompt has 6 nodes
[04:33] [ComfyUI] Node 1: GeomPackCreatePrimitive
[04:33] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1}
[04:33] [ComfyUI] Node 2: GeomPackCreatePrimitive
[04:33] [ComfyUI] Inputs: {"shape": "sphere", "size": 2.5, "subdivisions": 2}
[04:33] Queuing workflow for execution...
[04:33] [ComfyUI] Node 4: GeomPackMeshToPointCloud
[04:33] [ComfyUI] Inputs: {"mode": "surface_sampling", "sample_count": 10000, "sampling_method": "uniform", "include_normals": "true", "trimesh": ["1", 0]}
[04:33] [ComfyUI] Node 5: GeomPackPointToMeshDistance
[04:33] [ComfyUI] Inputs: {"distance_type": "unsigned", "sign_method": "default", "report_panel": "false", "target_mesh": ["2", 0], "pointcloud": ["4", 0]}
[04:33] [ComfyUI] Node 7: GeomPackCombineMeshes
[04:33] [ComfyUI] Inputs: {"report_panel": "false", "mesh_a": ["1", 0], "mesh_b": ["2", 0]}
[04:33] [ComfyUI] Node 8: GeomPackPreviewMeshDual
[04:33] [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:33] [ComfyUI] Generated prompt_id: 7d9f121b-cdc4-4a4e-a80f-49e577366b33
[04:33] [ComfyUI] Calling execution.validate_prompt()...
[04:33] [ComfyUI] Validation result: valid=True
[04:33] [ComfyUI] === Validation PASSED ===
[04:33] [ComfyUI] got prompt
[04:33] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1
[04:33] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[04:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:33] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:33] [ComfyUI] [SubprocessWorker] call_id=80 sending call_method
[04:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[04:33] [ComfyUI] [SubprocessWorker] got response: ok
[04:33] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[04:33] [ComfyUI] [comfy-env] Running GeomPackMeshToPointCloud: mode: 'surface_sampling', sample_count: 10000, sampling_method: 'uniform', include_normals: 'true', trimesh: Trimesh
[04:33] [ComfyUI] [SubprocessWorker] call_method: nodes.conversion.mesh_to_pointcloud.MeshToPointCloudNode.EXECUTE_NORMALIZED
[04:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:33] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:33] [ComfyUI] [SubprocessWorker] call_id=81 sending call_method
[04:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sampling 10,000 points using uniform method
[04:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated point cloud with 10,000 points
[04:33] [ComfyUI] [SubprocessWorker] got response: ok
[04:33] [ComfyUI] [comfy-env] GeomPackMeshToPointCloud done (0.02s): result: NodeOutput
[04:33] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 2.5, subdivisions: 2
[04:33] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[04:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:33] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:33] [ComfyUI] [SubprocessWorker] call_id=82 sending call_method
[04:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 162 vertices, 320 faces
[04:33] [ComfyUI] [SubprocessWorker] got response: ok
[04:33] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[04:33] [ComfyUI] [comfy-env] Running GeomPackPointToMeshDistance: distance_type: 'unsigned', sign_method: 'default', target_mesh: Trimesh, pointcloud: Trimesh
[04:33] [ComfyUI] [SubprocessWorker] call_method: nodes.distance.point_to_mesh_distance.PointToMeshDistanceNode.EXECUTE_NORMALIZED
[04:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:33] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[04:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:33] [ComfyUI] [SubprocessWorker] call_id=83 sending call_method
[04:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computing unsigned distances for 10,000 points
[04:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: Point Cloud
[04:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Target Mesh: 162 vertices, 320 faces
[04:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using trimesh.proximity.closest_point (unsigned)
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: 0.000005, Max: 0.501870, Mean: 0.140200
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Distance field added to vertex_attributes['distance']
[04:34] [ComfyUI] [SubprocessWorker] got response: ok
[04:34] [ComfyUI] [comfy-env] GeomPackPointToMeshDistance done (0.37s): result: NodeOutput
[04:34] [ComfyUI] [comfy-env] Running GeomPackCombineMeshes: mesh_a: Trimesh, mesh_b: Trimesh
[04:34] [ComfyUI] [SubprocessWorker] call_method: nodes.combine.combine_meshes.CombineMeshesNode.EXECUTE_NORMALIZED
[04:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:34] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[04:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:34] [ComfyUI] [SubprocessWorker] call_id=84 sending call_method
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Combining 2 meshes
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: 8 vertices, 12 faces
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: 162 vertices, 320 faces
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 170 vertices, 332 faces
[04:34] [ComfyUI] [SubprocessWorker] got response: ok
[04:34] [ComfyUI] [comfy-env] GeomPackCombineMeshes done (0.01s): result: NodeOutput
[04: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
[04:34] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[04:34] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:34] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:34] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:34] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:34] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[04:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:34] [ComfyUI] [SubprocessWorker] call_id=85 sending call_method
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 170 vertices, 332 faces
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Point Cloud - 10000 vertices, 0 faces
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[04:34] Node executed (2 total), capturing...
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: ['distance']
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_367af9aa.stl
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting point cloud to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_367af9aa.vtp
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: distance (components: 1)
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 10000 points
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_367af9aa.vtp
[04:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[04:34] [ComfyUI] [SubprocessWorker] got response: ok
[04:34] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.06s): result: NodeOutput
[04:34] [ComfyUI] Prompt executed in 0.49 seconds
[04:34] Frame 2 saved (frame_001.jpg, t=0.7s)
[04:34] [capture-node] freeze=11ms shot=226ms unfreeze=8ms saved=True
[04:34] Node executed (3 total), capturing...
[04:35] Frame 3 saved (frame_002.jpg, t=1.3s)
[04:35] [capture-node] freeze=3ms shot=112ms unfreeze=0ms saved=True
[04:35] Execution complete (t=1.3s)
[04:35] Captured 3 unique frames over 1.43s
[04:35] [debug] iframes: 1
[04:35] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[04:35] [timing] trigger_3d_previews: 0.0s
[04:37] Saved high-quality screenshot: point_mesh_distance_executed.png
[04:37] [timing] final_screenshot: 0.3s
[04:37] Capturing execution frames: preview_mesh_threejs.json
[04:43] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:43] Validating workflow...
[04:43] [ComfyUI] === /validate endpoint called ===
[04:43] [ComfyUI] Received JSON with keys: ['prompt']
[04:43] [ComfyUI] Prompt has 2 nodes
[04:43] [ComfyUI] Node 1: GeomPackLoadMesh
[04:43] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[04:43] [ComfyUI] Node 3: GeomPackPreviewMesh
[04:43] Queuing workflow for execution...
[04:43] [ComfyUI] Inputs: {"preview": "", "trimesh": ["1", 0]}
[04:43] [ComfyUI] Generated prompt_id: 779ebe30-fb97-400e-a3cf-37940c7e7920
[04:43] [ComfyUI] Calling execution.validate_prompt()...
[04:43] [ComfyUI] Validation result: valid=True
[04:43] [ComfyUI] === Validation PASSED ===
[04:43] [ComfyUI] got prompt
[04:43] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[04:43] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[04:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:43] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:43] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:43] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:43] [ComfyUI] [SubprocessWorker] call_id=86 sending call_method
[04:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[04:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/Stanford_Bunny.stl
[04:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[04:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[04:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[04:43] [ComfyUI] [SubprocessWorker] got response: ok
[04:43] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.25s): result: NodeOutput
[04:43] [ComfyUI] [comfy-env] Running GeomPackPreviewMesh: trimesh: Trimesh
[04:43] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh.PreviewMeshNode.EXECUTE_NORMALIZED
[04:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:43] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:43] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:43] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:43] [ComfyUI] [SubprocessWorker] call_id=87 sending call_method
[04:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 56203 vertices, 112402 faces
[04:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_14837ae4.glb
[04:43] [ComfyUI] [SubprocessWorker] got response: ok
[04:43] [ComfyUI] [comfy-env] GeomPackPreviewMesh done (0.04s): result: NodeOutput
[04:43] [ComfyUI] Prompt executed in 0.29 seconds
[04:43] Node executed (1 total), capturing...
[04:44] Frame 2 saved (frame_001.jpg, t=0.7s)
[04:44] [capture-node] freeze=7ms shot=131ms unfreeze=0ms saved=True
[04:44] Execution complete (t=0.7s)
[04:44] Captured 2 unique frames over 0.84s
[04:44] [debug] iframes: 1
[04:44] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer.html?v=17791366233, canvas=486x486, rafFrozen=True
[04:44] [timing] trigger_3d_previews: 0.0s
[04:46] Saved high-quality screenshot: preview_mesh_threejs_executed.png
[04:46] [timing] final_screenshot: 0.2s
[04:46] Capturing execution frames: reconstruct_all.json
[04:52] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:52] Validating workflow...
[04:52] [ComfyUI] === /validate endpoint called ===
[04:52] [ComfyUI] Received JSON with keys: ['prompt']
[04:52] [ComfyUI] Prompt has 8 nodes
[04:52] [ComfyUI] Node 1: GeomPackLoadMesh
[04:52] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[04:52] [ComfyUI] Node 2: GeomPackMeshToPointCloud
[04:52] [ComfyUI] Inputs: {"mode": "surface_sampling", "sample_count": 10000, "sampling_method": "uniform", "include_normals": "true", "trimesh": ["1", 0]}
[04:52] [ComfyUI] Node 3: GeomPackReconstructSurface
[04:52] Queuing workflow for execution...
[04:52] [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:52] [ComfyUI] Node 4: GeomPackReconstructSurface
[04:52] [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:52] [ComfyUI] Node 5: GeomPackReconstructSurface
[04:52] [ComfyUI] Inputs: {"backend": "alpha_shape", "backend.alpha": 8, "report_panel": "false", "points": ["2", 0]}
[04:52] [ComfyUI] Node 6: GeomPackReconstructSurface
[04:52] [ComfyUI] Inputs: {"backend": "convex_hull", "report_panel": "false", "points": ["2", 0]}
[04:52] [ComfyUI] Node 10: GeomPackPreviewMeshMulti
[04:52] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[30.06530722689757,-256.0460141720188,95.11427347765263],\\\"focalPoint\\\":[30.322647094726562,1.8909549
[04:52] [ComfyUI] Node 14: GeomPackPreviewMeshVTK
[04:52] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"{\\\"position\\\":[30.06530722689757,-256.0460141720188,95.11427347765263],\\\"focalPoint\\\":[30.322647094726562,1.89095497
[04:52] [ComfyUI] Generated prompt_id: 00cfa393-3b73-4f5e-a433-fed59457980e
[04:52] [ComfyUI] Calling execution.validate_prompt()...
[04:52] [ComfyUI] Validation result: valid=True
[04:52] [ComfyUI] === Validation PASSED ===
[04:52] [ComfyUI] got prompt
[04:52] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[04:52] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[04:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:52] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:52] [ComfyUI] [SubprocessWorker] call_id=88 sending call_method
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/Stanford_Bunny.stl
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[04:52] [ComfyUI] [SubprocessWorker] got response: ok
[04:52] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.24s): result: NodeOutput
[04:52] [ComfyUI] [comfy-env] Running GeomPackMeshToPointCloud: mode: 'surface_sampling', sample_count: 10000, sampling_method: 'uniform', include_normals: 'true', trimesh: Trimesh
[04:52] [ComfyUI] [SubprocessWorker] call_method: nodes.conversion.mesh_to_pointcloud.MeshToPointCloudNode.EXECUTE_NORMALIZED
[04:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:52] [ComfyUI] [SubprocessWorker] call_id=89 sending call_method
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sampling 10,000 points using uniform method
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated point cloud with 10,000 points
[04:52] [ComfyUI] [SubprocessWorker] got response: ok
[04:52] [ComfyUI] [comfy-env] GeomPackMeshToPointCloud done (0.06s): result: NodeOutput
[04:52] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[04:52] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[04:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:52] [ComfyUI] [SubprocessWorker] call_id=90 sending call_method
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: poisson -> GeomPackReconstruct_Poisson
[04:52] [ComfyUI] [SubprocessWorker] got response: ok
[04:52] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[04:52] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[04:52] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[04:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:52] [ComfyUI] [SubprocessWorker] call_id=91 sending call_method
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: alpha_shape -> GeomPackReconstruct_AlphaShape
[04:52] [ComfyUI] [SubprocessWorker] got response: ok
[04:52] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[04:52] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[04:52] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[04:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:52] [ComfyUI] [SubprocessWorker] call_id=92 sending call_method
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: convex_hull -> GeomPackReconstruct_ConvexHull
[04:52] [ComfyUI] [SubprocessWorker] got response: ok
[04:52] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[04:52] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[04:52] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[04:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:52] [ComfyUI] [SubprocessWorker] call_id=93 sending call_method
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: ball_pivoting -> GeomPackReconstruct_BallPivoting
[04:52] [ComfyUI] [SubprocessWorker] got response: ok
[04:52] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[04:52] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh
[04:52] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[04:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:52] [ComfyUI] [SubprocessWorker] call_id=94 sending call_method
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Point Cloud - 10000 vertices, 0 faces
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting point cloud to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_fa014992.vtp
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 10000 points
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_fa014992.vtp
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=False, volume=None, area=None, no fields
[04:52] [ComfyUI] [SubprocessWorker] got response: ok
[04:52] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.05s): result: NodeOutput
[04:52] [ComfyUI] [comfy-env] Running GeomPackReconstruct_Poisson: points: Trimesh, poisson_depth: 8, poisson_scale: 1.1, estimate_normals: 'true', normal_radius: 0.1
[04:52] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.poisson.ReconstructPoissonNode.EXECUTE_NORMALIZED
[04:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:52] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:52] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:52] [ComfyUI] [SubprocessWorker] call_id=95 sending call_method
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: poisson
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using normals from input
[04:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using PyMeshLab Poisson reconstruction...
[04:52] Node executed (1 total), capturing...
[04:53] Frame 2 saved (frame_001.jpg, t=0.7s)
[04:53] [capture-node] freeze=181ms shot=161ms unfreeze=2ms saved=True
[04:57] [ComfyUI] [SubprocessWorker] got response: ok
[04:57] [ComfyUI] [comfy-env] GeomPackReconstruct_Poisson done (4.55s): result: NodeOutput
[04:57] [ComfyUI] [comfy-env] Running GeomPackReconstruct_AlphaShape: points: Trimesh, alpha: 8.0
[04:57] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.alpha_shape.ReconstructAlphaShapeNode.EXECUTE_NORMALIZED
[04:57] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:57] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:57] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:57] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:57] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:57] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:57] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:57] [ComfyUI] [SubprocessWorker] call_id=96 sending call_method
[04:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: alpha_shape
[04:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computing alpha shape...
[04:57] Node executed (2 total), capturing...
[04:57] Frame 3 saved (frame_002.jpg, t=5.3s)
[04:57] [capture-node] freeze=3ms shot=117ms unfreeze=4ms saved=True
[04:58] [capture-loop] iter=50 t=6.4s state={'complete': False, 'error': None, 'executedCount': 2, 'wsState': 1} eval_ms=3 ram=2.6/15.6GB (17%) swap=0.0/3.0GB (0%) cpu=28% browser_rss=0.96GB
[04:59] [ComfyUI] [SubprocessWorker] got response: ok
[04:59] [ComfyUI] [comfy-env] GeomPackReconstruct_AlphaShape done (1.72s): result: NodeOutput
[04:59] [ComfyUI] [comfy-env] Running GeomPackReconstruct_ConvexHull: points: Trimesh
[04:59] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.convex_hull.ReconstructConvexHullNode.EXECUTE_NORMALIZED
[04:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:59] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:59] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:59] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:59] [ComfyUI] [SubprocessWorker] call_id=97 sending call_method
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: convex_hull
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computing convex hull...
[04:59] [ComfyUI] [SubprocessWorker] got response: ok
[04:59] [ComfyUI] [comfy-env] GeomPackReconstruct_ConvexHull done (0.02s): result: NodeOutput
[04:59] [ComfyUI] [comfy-env] Running GeomPackReconstruct_BallPivoting: points: Trimesh, ball_radius: 3.0, estimate_normals: 'true', normal_radius: 0.5
[04:59] Node executed (3 total), capturing...
[04:59] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.ball_pivoting.ReconstructBallPivotingNode.EXECUTE_NORMALIZED
[04:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:59] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:59] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[04:59] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:59] [ComfyUI] [SubprocessWorker] call_id=98 sending call_method
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: ball_pivoting
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using PyMeshLab Ball Pivoting...
[04:59] [ComfyUI] [SubprocessWorker] got response: ok
[04:59] [ComfyUI] [comfy-env] GeomPackReconstruct_BallPivoting done (0.15s): result: NodeOutput
[04:59] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[04:59] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[04:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[04:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[04:59] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:59] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[04:59] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:59] [ComfyUI] [SubprocessWorker] call_id=99 sending call_method
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 43714 vertices, 87489 faces
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_f757e7e1.vtp
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (43714 vertices)
[04:59] Frame 4 saved (frame_003.jpg, t=7.0s)
[04:59] [capture-node] freeze=10ms shot=141ms unfreeze=8ms saved=True
[04:59] Node executed (5 total), capturing...
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 43714 vertices, 87489 faces
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_f757e7e1.vtp
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 10000 vertices, 16562 faces
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_f757e7e1.vtp
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (10000 vertices)
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 10000 vertices, 16562 faces
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_f757e7e1.vtp
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 5747 vertices, 12154 faces
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_f757e7e1.vtp
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (5747 vertices)
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 5747 vertices, 12154 faces
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_f757e7e1.vtp
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 700 vertices, 1396 faces
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_f757e7e1.vtp
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (700 vertices)
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 700 vertices, 1396 faces
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_f757e7e1.vtp
[04:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[04:59] [ComfyUI] [SubprocessWorker] got response: ok
[04:59] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.48s): result: NodeOutput
[04:59] [ComfyUI] Prompt executed in 7.33 seconds
[04:59] [capture-node] freeze=2ms shot=116ms unfreeze=3ms saved=False
[05:00] Node executed (6 total), capturing...
[05:01] Frame 5 saved (frame_004.jpg, t=8.1s)
[05:01] [capture-node] freeze=21ms shot=1134ms unfreeze=0ms saved=True
[05:01] Execution complete (t=8.1s)
[05:01] Captured 5 unique frames over 9.31s
[05:01] [debug] iframes: 2
[05:01] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1779136, canvas=486x384, rafFrozen=True
[05:01] [debug] iframe[1]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[05:01] [timing] trigger_3d_previews: 0.0s
[05:03] Saved high-quality screenshot: reconstruct_all_executed.png
[05:03] [timing] final_screenshot: 0.3s
[05:04] Capturing execution frames: refine_mesh.json
[05:09] Frame 1 saved (frame_000.jpg, t=0.0s)
[05:09] Validating workflow...
[05:09] [ComfyUI] === /validate endpoint called ===
[05:09] [ComfyUI] Received JSON with keys: ['prompt']
[05:09] [ComfyUI] Prompt has 3 nodes
[05:09] [ComfyUI] Node 1: GeomPackLoadMesh
[05:09] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[05:09] [ComfyUI] Node 3: GeomPackPreviewMeshDual
[05:09] Queuing workflow for execution...
[05:09] [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:09] [ComfyUI] Node 4: RefineMesh
[05:09] [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:09] [ComfyUI] Generated prompt_id: 401a0afc-9a78-461c-aa31-4333a9030509
[05:09] [ComfyUI] Calling execution.validate_prompt()...
[05:09] [ComfyUI] Validation result: valid=True
[05:09] [ComfyUI] === Validation PASSED ===
[05:09] [ComfyUI] got prompt
[05:09] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[05:09] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[05:09] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[05:09] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[05:09] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[05:09] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[05:09] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[05:09] [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_9owtxuh1/persistent_worker.py', 'abstract://comfy_worker_70ab0021fbdc']...
[05:09] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_70ab0021fbdc (abstract, no filesystem path)
[05:11] [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:11] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:11] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:11] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[05:11] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:11] [ComfyUI] [SubprocessWorker] call_id=100 sending call_method
[05:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[05:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/Stanford_Bunny.stl
[05:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[05:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[05:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[05:11] [ComfyUI] [SubprocessWorker] got response: ok
[05:11] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.08s): result: NodeOutput
[05:11] [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:11] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.refine.RefineMeshNode.EXECUTE_NORMALIZED
[05:11] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:11] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:11] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:11] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:11] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:11] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:11] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:11] [ComfyUI] [SubprocessWorker] call_id=101 sending call_method
[05:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces
[05:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: decimation
[05:12] Frame 2 saved (frame_001.jpg, t=2.2s)
[05:12] [capture-periodic] freeze=5ms shot=93ms unfreeze=4ms saved=True
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2502 vertices (-53701), 5000 faces (-107402)
[05:12] [ComfyUI] [SubprocessWorker] got response: ok
[05:12] [ComfyUI] [comfy-env] RefineMesh done (0.16s): result: NodeOutput
[05:12] [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:12] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[05:12] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:12] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:12] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:12] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:12] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:12] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[05:12] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:12] [ComfyUI] [SubprocessWorker] call_id=102 sending call_method
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2502 vertices, 5000 faces
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['face.stl']
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_9a5e80ca.vtp
[05:12] Node executed (1 total), capturing...
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[05:12] Frame 3 saved (frame_002.jpg, t=2.6s)
[05:12] [capture-node] freeze=2ms shot=81ms unfreeze=4ms saved=True
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_9a5e80ca.vtp
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_9a5e80ca.stl
[05:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[05:12] [ComfyUI] [SubprocessWorker] got response: ok
[05:12] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.50s): result: NodeOutput
[05:12] [ComfyUI] Prompt executed in 2.74 seconds
[05:12] Node executed (2 total), capturing...
[05:13] Frame 4 saved (frame_003.jpg, t=3.1s)
[05:13] [capture-node] freeze=210ms shot=650ms unfreeze=0ms saved=True
[05:13] Execution complete (t=3.1s)
[05:13] Captured 4 unique frames over 4.0s
[05:13] [debug] iframes: 1
[05:13] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=387x485, rafFrozen=True
[05:13] [timing] trigger_3d_previews: 0.0s
[05:15] Saved high-quality screenshot: refine_mesh_executed.png
[05:15] [timing] final_screenshot: 0.2s
[05:16] Capturing execution frames: remesh_intersections.json
[05:21] Frame 1 saved (frame_000.jpg, t=0.0s)
[05:21] Validating workflow...
[05:21] [ComfyUI] === /validate endpoint called ===
[05:21] [ComfyUI] Received JSON with keys: ['prompt']
[05:21] [ComfyUI] Prompt has 5 nodes
[05:21] [ComfyUI] Node 1: GeomPackLoadMesh
[05:21] [ComfyUI] Inputs: {"file_path": "3d/camelhead.off"}
[05:21] [ComfyUI] Node 5: GeomPackDetectSelfIntersections
[05:21] Queuing workflow for execution...
[05:21] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]}
[05:21] [ComfyUI] Node 8: GeomPackDetectSelfIntersections
[05:21] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["12", 0]}
[05:21] [ComfyUI] Node 12: GeomPackRemeshSelfIntersections
[05:21] [ComfyUI] Inputs: {"detect_only": false, "remove_unreferenced": true, "extract_outer_hull": false, "stitch_all": true, "report_panel": "false", "mesh": ["1", 0]}
[05:21] [ComfyUI] Node 13: GeomPackPreviewMeshDual
[05:21] [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:21] [ComfyUI] Generated prompt_id: 4360db6f-7a9f-49a6-af9f-6f35988765e1
[05:21] [ComfyUI] Calling execution.validate_prompt()...
[05:21] [ComfyUI] Validation result: valid=True
[05:21] [ComfyUI] === Validation PASSED ===
[05:21] [ComfyUI] got prompt
[05:21] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/camelhead.off'
[05:21] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[05:21] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:21] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:21] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:21] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[05:21] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:21] [ComfyUI] [SubprocessWorker] call_id=103 sending call_method
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/camelhead.off
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/camelhead.off
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 11381 vertices, 22704 faces
[05:21] [ComfyUI] [SubprocessWorker] got response: ok
[05:21] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.08s): result: NodeOutput
[05:21] [ComfyUI] [comfy-env] Running GeomPackRemeshSelfIntersections: detect_only: False, remove_unreferenced: True, extract_outer_hull: False, stitch_all: True, mesh: Trimesh
[05:21] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.remesh_intersections.RemeshSelfIntersectionsNode.EXECUTE_NORMALIZED
[05:21] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:21] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:21] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:21] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:21] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:21] [ComfyUI] [SubprocessWorker] call_id=104 sending call_method
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Processing mesh: 11381 vertices, 22704 faces
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Options: detect_only=False, remove_unreferenced=True, extract_outer_hull=False, stitch_all=True
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remeshing complete: 11385 vertices, 22720 faces
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Removing unreferenced vertices...
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: After cleanup: 11385 vertices, 22720 faces
[05:21] [ComfyUI] [SubprocessWorker] got response: ok
[05:21] [ComfyUI] [comfy-env] GeomPackRemeshSelfIntersections done (0.20s): result: NodeOutput
[05:21] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh
[05:21] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED
[05:21] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:21] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:21] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:21] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:21] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:21] [ComfyUI] [SubprocessWorker] call_id=105 sending call_method
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11385 vertices, 22720 faces
[05:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[05:21] Node executed (1 total), capturing...
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: No self-intersections detected
[05:22] [ComfyUI] [SubprocessWorker] got response: ok
[05:22] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.09s): result: NodeOutput
[05:22] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh
[05:22] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED
[05:22] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:22] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:22] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:22] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:22] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:22] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:22] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:22] [ComfyUI] [SubprocessWorker] call_id=106 sending call_method
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11381 vertices, 22704 faces
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 6 intersecting faces (5 intersection pairs)
[05:22] [ComfyUI] [SubprocessWorker] got response: ok
[05:22] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.10s): result: NodeOutput
[05:22] [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:22] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[05:22] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:22] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:22] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:22] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:22] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:22] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[05:22] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:22] [ComfyUI] [SubprocessWorker] call_id=107 sending call_method
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 11381 vertices, 22704 faces
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11385 vertices, 22720 faces
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting']
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_302bf32e.vtp
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11381 vertices)
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1)
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1)
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11381 vertices, 22704 faces
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_302bf32e.vtp
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_302bf32e.vtp
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11385 vertices)
[05:22] Frame 2 saved (frame_001.jpg, t=0.6s)
[05:22] [capture-node] freeze=3ms shot=108ms unfreeze=4ms saved=True
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1)
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1)
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11385 vertices, 22720 faces
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_302bf32e.vtp
[05:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[05:22] [ComfyUI] [SubprocessWorker] got response: ok
[05:22] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.18s): result: NodeOutput
[05:22] [ComfyUI] Prompt executed in 0.66 seconds
[05:22] Node executed (4 total), capturing...
[05:23] Frame 3 saved (frame_002.jpg, t=1.0s)
[05:23] [capture-node] freeze=293ms shot=315ms unfreeze=0ms saved=True
[05:23] Execution complete (t=1.0s)
[05:23] Captured 3 unique frames over 1.62s
[05:23] [debug] iframes: 1
[05:23] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[05:23] [timing] trigger_3d_previews: 0.0s
[05:25] Saved high-quality screenshot: remesh_intersections_executed.png
[05:25] [timing] final_screenshot: 0.2s
[05:25] Capturing execution frames: remeshing.json
[05:31] Frame 1 saved (frame_000.jpg, t=0.0s)
[05:31] Validating workflow...
[05:31] [ComfyUI] === /validate endpoint called ===
[05:31] [ComfyUI] Received JSON with keys: ['prompt']
[05:31] [ComfyUI] Prompt has 3 nodes
[05:31] [ComfyUI] Node 1: GeomPackLoadMesh
[05:31] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[05:31] [ComfyUI] Node 25: GeomPackPreviewMeshDual
[05:31] [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:31] [ComfyUI] Node 27: GeomPackRemesh
[05:31] Queuing workflow for execution...
[05:31] [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:31] [ComfyUI] Generated prompt_id: cec1a4f3-7388-42cf-ba19-63ac74862c24
[05:31] [ComfyUI] Calling execution.validate_prompt()...
[05:31] [ComfyUI] Validation result: valid=True
[05:31] [ComfyUI] === Validation PASSED ===
[05:31] [ComfyUI] got prompt
[05:31] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[05:31] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[05:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:31] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:31] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[05:31] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:31] [ComfyUI] [SubprocessWorker] call_id=108 sending call_method
[05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/Stanford_Bunny.stl
[05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[05:31] [ComfyUI] [SubprocessWorker] got response: ok
[05:31] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.24s): result: NodeOutput
[05:31] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh
[05:31] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED
[05:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:31] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:31] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:31] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:31] [ComfyUI] [SubprocessWorker] call_id=109 sending call_method
[05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: quadwild -> GeomPackRemesh_QuadWild
[05:31] [ComfyUI] [SubprocessWorker] got response: ok
[05:31] [ComfyUI] [comfy-env] GeomPackRemesh done (0.03s): result: NodeOutput
[05:31] [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:31] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.quadwild.RemeshQuadWildNode.EXECUTE_NORMALIZED
[05:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:31] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:31] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[05:31] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:31] [ComfyUI] [SubprocessWorker] call_id=110 sending call_method
[05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: quadwild
[05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces
[05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: sharp_angle=35.0, alpha=0.02, scale=1.0, remesh=true, smooth=true
[05:33] Frame 2 saved (frame_001.jpg, t=2.2s)
[05:33] [capture-periodic] freeze=2ms shot=80ms unfreeze=4ms saved=True
[05:35] Frame 3 saved (frame_002.jpg, t=4.4s)
[05:35] [capture-periodic] freeze=3ms shot=99ms unfreeze=5ms saved=True
[05:36] [capture-loop] iter=50 t=5.6s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.8/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=27% browser_rss=1.07GB
[05:42] [capture-loop] iter=100 t=11.2s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.6/15.6GB (17%) swap=0.0/3.0GB (0%) cpu=34% browser_rss=0.93GB
[05:47] [capture-loop] iter=150 t=16.6s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.6/15.6GB (17%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.93GB
[05:53] [capture-loop] iter=200 t=22.1s 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.93GB
[05:53] [ComfyUI] Initital dimension: 33361 x 33361, number of constraints: 0, number of integer variables: 20091, use reordering: yes
[05:53] [ComfyUI] make_constraints_independent took 0.00022700000000000002 s.
[05:53] [ComfyUI] Constraint integration took 3.6999999999999998e-05 s.
[05:53] [ComfyUI] Constraint elimination took 0.0031790000000000004 s.
[05:53] [ComfyUI] Reindexing took 0.000379 s.
[05:53] [ComfyUI] eliminate_constraints took 0.0036800000000000001 s.
[05:53] [ComfyUI] Eliminated dimension: 33361 x 33361
[05:53] [ComfyUI] #nonzeros: 152419
[05:53] [ComfyUI] integer variables #: 20091
[05:53] [ComfyUI] continuous variables #: 13270
[05:53] [ComfyUI] initial full solution
[05:53] [ComfyUI] calc_system_eigen took 0.018361000000000002 s.
[05:54] [ComfyUI] final full solution
[05:54] [ComfyUI] update_system_eigen took 0.00645 s.
[05:54] [ComfyUI] *** Statistics of MiSo Solver ***
[05:54] [ComfyUI] Number of LOCAL iterations = 3042
[05:54] [ComfyUI] Number of CG iterations = 0
[05:54] [ComfyUI] Number of FULL iterations = 2
[05:54] [ComfyUI] Number of ROUNDING = 20091
[05:54] [ComfyUI] solve_multiple_rounding took 0.53381099999999992 s.
[05:54] [ComfyUI] solve took 0.53389599999999993 s.
[05:54] [ComfyUI] restore_eliminated_vars took 0.000101 s.
[05:54] [ComfyUI] solve took 0.53822599999999998 s.
[05:56] [ComfyUI] performed 180 adjustments for even rhs
[05:56] [ComfyUI] performed 170 adjustments for even rhs
[05:58] [capture-loop] iter=250 t=27.6s 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=33% browser_rss=0.93GB
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6118 vertices, 12228 faces
[05:59] [ComfyUI] [SubprocessWorker] got response: ok
[05:59] [ComfyUI] [comfy-env] GeomPackRemesh_QuadWild done (27.29s): result: NodeOutput
[05:59] [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:59] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[05:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[05:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[05:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[05:59] [ComfyUI] [SubprocessWorker] worker started/confirmed
[05:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[05:59] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[05:59] [ComfyUI] [SubprocessWorker] sending request via socket...
[05:59] [ComfyUI] [SubprocessWorker] call_id=111 sending call_method
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6118 vertices, 12228 faces
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['face.stl']
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_f289c7af.vtp
[05:59] Node executed (1 total), capturing...
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[05:59] Frame 4 saved (frame_003.jpg, t=27.9s)
[05:59] [capture-node] freeze=2ms shot=101ms unfreeze=3ms saved=True
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_f289c7af.vtp
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_f289c7af.stl
[05:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[05:59] [ComfyUI] [SubprocessWorker] got response: ok
[05:59] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.53s): result: NodeOutput
[05:59] [ComfyUI] Prompt executed in 28.09 seconds
[05:59] Node executed (2 total), capturing...
[05:59] Frame 5 saved (frame_004.jpg, t=28.4s)
[05:59] [capture-node] freeze=2ms shot=93ms unfreeze=3ms saved=True
[06:00] Execution complete (t=28.7s)
[06:00] Captured 5 unique frames over 28.71s
[06:00] [debug] iframes: 1
[06:00] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=False
[06:00] [timing] trigger_3d_previews: 0.3s
[06:02] Saved high-quality screenshot: remeshing_executed.png
[06:02] [timing] final_screenshot: 0.3s
[06:03] [20/33] SKIPPED (not in cpu list) remeshing_all.json
[06:03] Capturing execution frames: sMOOth.json
[06:08] Frame 1 saved (frame_000.jpg, t=0.0s)
[06:08] Validating workflow...
[06:08] [ComfyUI] === /validate endpoint called ===
[06:08] [ComfyUI] Received JSON with keys: ['prompt']
[06:08] [ComfyUI] Prompt has 3 nodes
[06:08] [ComfyUI] Node 1: GeomPackPreviewMeshDual
[06:08] [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:08] [ComfyUI] Node 3: GeomPackLoadMesh
[06:08] [ComfyUI] Inputs: {"file_path": "3d/cow.off"}
[06:08] [ComfyUI] Node 5: GeomPackSmoothMesh
[06:08] Queuing workflow for execution...
[06:08] [ComfyUI] Inputs: {"backend": "taubin", "backend.iterations": 5, "backend.lambda_": 1, "backend.mu": -0.8, "trimesh": ["3", 0]}
[06:08] [ComfyUI] Generated prompt_id: 53e0296c-4ee4-41af-b5d2-f96dac82ebe1
[06:08] [ComfyUI] Calling execution.validate_prompt()...
[06:08] [ComfyUI] Validation result: valid=True
[06:08] [ComfyUI] === Validation PASSED ===
[06:08] [ComfyUI] got prompt
[06:08] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/cow.off'
[06:08] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[06:08] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:08] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:08] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:08] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[06:08] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:08] [ComfyUI] [SubprocessWorker] call_id=112 sending call_method
[06:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/cow.off
[06:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/cow.off
[06:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2761 vertices, 5520 faces
[06:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2761 vertices, 5520 faces
[06:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2761 vertices, 5520 faces
[06:08] [ComfyUI] [SubprocessWorker] got response: ok
[06:08] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.02s): result: NodeOutput
[06:08] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[06:08] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED
[06:08] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:08] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:08] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:08] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:08] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:08] [ComfyUI] [SubprocessWorker] call_id=113 sending call_method
[06:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: taubin -> GeomPackSmooth_Taubin
[06:08] [ComfyUI] [SubprocessWorker] got response: ok
[06:08] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[06:08] [ComfyUI] [comfy-env] Running GeomPackSmooth_Taubin: trimesh: Trimesh, iterations: 5, lambda_: 1.0, mu: -0.8
[06:08] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.taubin.SmoothTaubinNode.EXECUTE_NORMALIZED
[06:08] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:08] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:08] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:08] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:08] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:08] [ComfyUI] [SubprocessWorker] call_id=114 sending call_method
[06:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: taubin
[06:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[06:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=5, lambda=1.000, mu=-0.800
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.007834, max: 0.047218
[06:09] [ComfyUI] [SubprocessWorker] got response: ok
[06:09] [ComfyUI] [comfy-env] GeomPackSmooth_Taubin done (0.15s): result: NodeOutput
[06:09] [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:09] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[06:09] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:09] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:09] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:09] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[06:09] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:09] [ComfyUI] [SubprocessWorker] call_id=115 sending call_method
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_ee8c48bb.stl
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_ee8c48bb.stl
[06:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[06:09] [ComfyUI] [SubprocessWorker] got response: ok
[06:09] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[06:09] [ComfyUI] Prompt executed in 0.21 seconds
[06:09] Node executed (2 total), capturing...
[06:09] Frame 2 saved (frame_001.jpg, t=0.6s)
[06:09] [capture-node] freeze=60ms shot=255ms unfreeze=0ms saved=True
[06:09] Execution complete (t=0.6s)
[06:09] Captured 2 unique frames over 0.92s
[06:09] [debug] iframes: 1
[06:09] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[06:09] [timing] trigger_3d_previews: 0.0s
[06:11] Saved high-quality screenshot: sMOOth_executed.png
[06:11] [timing] final_screenshot: 0.3s
[06:12] Capturing execution frames: sharpen.json
[06:18] Frame 1 saved (frame_000.jpg, t=0.0s)
[06:18] Validating workflow...
[06:18] [ComfyUI] === /validate endpoint called ===
[06:18] [ComfyUI] Received JSON with keys: ['prompt']
[06:18] [ComfyUI] Prompt has 4 nodes
[06:18] [ComfyUI] Node 4: GeomPackLoadMesh
[06:18] [ComfyUI] Inputs: {"file_path": "3d/noisy/Fandisk0.3/Noisy.obj"}
[06:18] [ComfyUI] Node 6: GeomPackLoadMesh
[06:18] [ComfyUI] Inputs: {"file_path": "3d/noisy/Fandisk0.3/Original.obj"}
[06:18] Queuing workflow for execution...
[06:18] [ComfyUI] Node 7: GeomPackSharpenMesh
[06:18] [ComfyUI] Inputs: {"backend": "two_step", "backend.smooth_steps": 2, "backend.normal_threshold": 60, "trimesh": ["4", 0]}
[06:18] [ComfyUI] Node 8: GeomPackPreviewMeshMulti
[06:18] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[11.988365833801835,17.82450062324679,9.744545997398912],\\\"focalPoint\\\":[2.4225937947630882,15.191427
[06:18] [ComfyUI] Generated prompt_id: 91c9a8a5-6ca3-4fd6-8f84-a23cfe53f766
[06:18] [ComfyUI] Calling execution.validate_prompt()...
[06:18] [ComfyUI] Validation result: valid=True
[06:18] [ComfyUI] === Validation PASSED ===
[06:18] [ComfyUI] got prompt
[06:18] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/noisy/Fandisk0.3/Noisy.obj'
[06:18] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[06:18] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[06:18] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[06:18] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[06:18] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[06:18] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[06:18] [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_9owtxuh1/persistent_worker.py', 'abstract://comfy_worker_6e7561ab730a']...
[06:18] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_6e7561ab730a (abstract, no filesystem path)
[06:18] [ComfyUI]
[06:18] [ComfyUI] Closed: Mon May 18 20:38:41 2026
[06:18] [ComfyUI]
[06:19] [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:19] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:19] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:19] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[06:19] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:19] [ComfyUI] [SubprocessWorker] call_id=116 sending call_method
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/noisy/Fandisk0.3/Noisy.obj
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/noisy/Fandisk0.3/Noisy.obj
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [SubprocessWorker] got response: ok
[06:20] [ComfyUI] [comfy-env] GeomPackLoadMesh done (1.93s): result: NodeOutput
[06:20] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:20] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:20] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:20] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:20] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:20] [ComfyUI] [SubprocessWorker] call_id=117 sending call_method
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: two_step -> GeomPackSharpen_TwoStep
[06:20] [ComfyUI] [SubprocessWorker] got response: ok
[06:20] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:20] [ComfyUI] [comfy-env] Running GeomPackSharpen_TwoStep: trimesh: Trimesh, smooth_steps: 2, normal_threshold: 60.0
[06:20] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.two_step.SharpenTwoStepNode.EXECUTE_NORMALIZED
[06:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:20] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:20] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:20] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:20] [ComfyUI] [SubprocessWorker] call_id=118 sending call_method
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: two_step
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: smooth_steps=2, normal_threshold=60.0
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.050268, max: 0.269867
[06:20] [ComfyUI] [SubprocessWorker] got response: ok
[06:20] [ComfyUI] [comfy-env] GeomPackSharpen_TwoStep done (0.21s): result: NodeOutput
[06:20] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/noisy/Fandisk0.3/Original.obj'
[06:20] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[06:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:20] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:20] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[06:20] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:20] [ComfyUI] [SubprocessWorker] call_id=119 sending call_method
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/noisy/Fandisk0.3/Original.obj
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/noisy/Fandisk0.3/Original.obj
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [SubprocessWorker] got response: ok
[06:20] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.05s): result: NodeOutput
[06:20] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh
[06:20] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[06:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:20] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:20] [ComfyUI] [SubprocessWorker] created 3 shm blocks
[06:20] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:20] [ComfyUI] [SubprocessWorker] call_id=120 sending call_method
[06:20] Frame 2 saved (frame_001.jpg, t=2.2s)
[06:20] [capture-periodic] freeze=2ms shot=93ms unfreeze=2ms saved=True
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_03412fca.vtp
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_03412fca.vtp
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_03412fca.vtp
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_03412fca.vtp
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_03412fca.vtp
[06:20] Node executed (1 total), capturing...
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_03412fca.vtp
[06:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready
[06:20] [ComfyUI] [SubprocessWorker] got response: ok
[06:20] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.16s): result: NodeOutput
[06:20] [ComfyUI] Prompt executed in 2.36 seconds
[06:21] Frame 3 saved (frame_002.jpg, t=2.6s)
[06:21] [capture-node] freeze=499ms shot=299ms unfreeze=2ms saved=True
[06:21] Node executed (2 total), capturing...
[06:21] [capture-node] freeze=3ms shot=104ms unfreeze=0ms saved=False
[06:21] Execution complete (t=3.7s)
[06:21] Captured 3 unique frames over 3.79s
[06:21] [debug] iframes: 1
[06:21] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=244x393, rafFrozen=True
[06:21] [timing] trigger_3d_previews: 0.0s
[06:23] Saved high-quality screenshot: sharpen_executed.png
[06:24] [timing] final_screenshot: 0.2s
[06:24] Capturing execution frames: sharpen_all.json
[06:30] Frame 1 saved (frame_000.jpg, t=0.0s)
[06:30] Validating workflow...
[06:30] [ComfyUI] === /validate endpoint called ===
[06:30] [ComfyUI] Received JSON with keys: ['prompt']
[06:30] [ComfyUI] Prompt has 10 nodes
[06:30] [ComfyUI] Node 1: GeomPackLoadMesh
[06:30] [ComfyUI] Inputs: {"file_path": "3d/noisy/Fandisk0.3/Noisy.obj"}
[06:30] [ComfyUI] Node 2: GeomPackSharpenMesh
[06:30] [ComfyUI] Inputs: {"backend": "two_step", "backend.smooth_steps": 3, "backend.normal_threshold": 60, "trimesh": ["1", 0]}
[06:30] [ComfyUI] Node 4: GeomPackSharpenMesh
[06:30] Queuing workflow for execution...
[06:30] [ComfyUI] Inputs: {"backend": "libigl_unsharp", "backend.weight": 0.5, "backend.iterations": 3, "trimesh": ["1", 0]}
[06:30] [ComfyUI] Node 5: GeomPackSharpenMesh
[06:30] [ComfyUI] Inputs: {"backend": "l0_minimize", "backend.alpha": 0.001, "backend.beta": 2, "backend.iterations": 10, "trimesh": ["1", 0]}
[06:30] [ComfyUI] Node 6: GeomPackSharpenMesh
[06:30] [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:30] [ComfyUI] Node 8: GeomPackSharpenMesh
[06:30] [ComfyUI] Inputs: {"backend": "fast_effective", "backend.threshold_T": 0.2, "backend.normal_iterations": 10, "backend.vertex_iterations": 20, "trimesh": ["1", 0]}
[06:30] [ComfyUI] Node 9: GeomPackSharpenMesh
[06:30] [ComfyUI] Inputs: {"backend": "non_iterative", "backend.sigma_f": 1, "backend.sigma_g": 1, "trimesh": ["1", 0]}
[06:30] [ComfyUI] Node 10: GeomPackPreviewMeshMulti
[06:30] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-5.961122528109332,15.888697444123462,3.5443586005740766],\\\"focalPoint\\\":[2.429478704929352,15.20779
[06:30] [ComfyUI] Node 11: GeomPackPreviewMeshMulti
[06:30] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-5.961122528109332,15.888697444123462,3.5443586005740766],\\\"focalPoint\\\":[2.429478704929352,15.20779
[06:30] [ComfyUI] Node 15: GeomPackSharpenMesh
[06:30] [ComfyUI] Inputs: {"backend": "unsharp_mask", "backend.weight": 0.3, "backend.iterations": 5, "trimesh": ["1", 0]}
[06:30] [ComfyUI] Generated prompt_id: 9a474ba3-fe8c-48ad-a816-ad8eacca626d
[06:30] [ComfyUI] Calling execution.validate_prompt()...
[06:30] [ComfyUI] Validation result: valid=True
[06:30] [ComfyUI] === Validation PASSED ===
[06:30] [ComfyUI] got prompt
[06:30] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/noisy/Fandisk0.3/Noisy.obj'
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=121 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/noisy/Fandisk0.3/Noisy.obj
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/noisy/Fandisk0.3/Noisy.obj
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 6475 vertices, 12946 faces
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 6475 vertices, 12946 faces
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 6475 vertices, 12946 faces
[06:30] [ComfyUI] [SubprocessWorker] got response: ok
[06:30] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.04s): result: NodeOutput
[06:30] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=122 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: two_step -> GeomPackSharpen_TwoStep
[06:30] [ComfyUI] [SubprocessWorker] got response: ok
[06:30] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:30] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=123 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: l0_minimize -> GeomPackSharpen_L0Minimize
[06:30] [ComfyUI] [SubprocessWorker] got response: ok
[06:30] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:30] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=124 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: unsharp_mask -> GeomPackSharpen_UnsharpMask
[06:30] [ComfyUI] [SubprocessWorker] got response: ok
[06:30] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:30] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=125 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: libigl_unsharp -> GeomPackSharpen_LibiglUnsharp
[06:30] [ComfyUI] [SubprocessWorker] got response: ok
[06:30] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:30] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=126 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: non_iterative -> GeomPackSharpen_NonIterative
[06:30] [ComfyUI] [SubprocessWorker] got response: ok
[06:30] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:30] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=127 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: fast_effective -> GeomPackSharpen_FastEffective
[06:30] [ComfyUI] [SubprocessWorker] got response: ok
[06:30] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:30] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=128 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: guided_normal -> GeomPackSharpen_GuidedNormal
[06:30] [ComfyUI] [SubprocessWorker] got response: ok
[06:30] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput
[06:30] [ComfyUI] [comfy-env] Running GeomPackSharpen_TwoStep: trimesh: Trimesh, smooth_steps: 3, normal_threshold: 60.0
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.two_step.SharpenTwoStepNode.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=129 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: two_step
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: smooth_steps=3, normal_threshold=60.0
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.059156, max: 0.318610
[06:30] [ComfyUI] [SubprocessWorker] got response: ok
[06:30] [ComfyUI] [comfy-env] GeomPackSharpen_TwoStep done (0.13s): result: NodeOutput
[06:30] [ComfyUI] [comfy-env] Running GeomPackSharpen_L0Minimize: trimesh: Trimesh, alpha: 0.001, beta: 2.0, iterations: 10
[06:30] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.l0_minimize.SharpenL0MinimizeNode.EXECUTE_NORMALIZED
[06:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:30] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:30] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:30] [ComfyUI] [SubprocessWorker] call_id=130 sending call_method
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: l0_minimize
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: alpha=0.0010, beta=2.0, iterations=10
[06:30] Node executed (1 total), capturing...
[06:30] Frame 2 saved (frame_001.jpg, t=0.6s)
[06:30] [capture-node] freeze=3ms shot=105ms unfreeze=7ms saved=True
[06:33] Frame 3 saved (frame_002.jpg, t=2.8s)
[06:33] [capture-periodic] freeze=3ms shot=115ms unfreeze=34ms saved=True
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.009479, max: 0.060807
[06:33] [ComfyUI] [SubprocessWorker] got response: ok
[06:33] [ComfyUI] [comfy-env] GeomPackSharpen_L0Minimize done (2.88s): result: NodeOutput
[06:33] [ComfyUI] [comfy-env] Running GeomPackSharpen_UnsharpMask: trimesh: Trimesh, weight: 0.3, iterations: 5
[06:33] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.unsharp_mask.SharpenUnsharpMaskNode.EXECUTE_NORMALIZED
[06:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:33] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:33] [ComfyUI] [SubprocessWorker] call_id=131 sending call_method
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: unsharp_mask
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: weight=0.300, iterations=5
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.013687, max: 0.066009
[06:33] [ComfyUI] [SubprocessWorker] got response: ok
[06:33] [ComfyUI] [comfy-env] GeomPackSharpen_UnsharpMask done (0.02s): result: NodeOutput
[06:33] [ComfyUI] [comfy-env] Running GeomPackSharpen_LibiglUnsharp: trimesh: Trimesh, weight: 0.5, iterations: 3
[06:33] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.libigl_unsharp.SharpenLibiglUnsharpNode.EXECUTE_NORMALIZED
[06:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:33] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:33] [ComfyUI] [SubprocessWorker] call_id=132 sending call_method
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_unsharp
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: weight=0.500, iterations=3
[06:33] Node executed (3 total), capturing...
[06:33] Frame 4 saved (frame_003.jpg, t=3.5s)
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[06:33] [capture-node] freeze=3ms shot=105ms unfreeze=2ms saved=True
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.541299, max: 1.039092
[06:33] [ComfyUI] [SubprocessWorker] got response: ok
[06:33] [ComfyUI] [comfy-env] GeomPackSharpen_LibiglUnsharp done (0.32s): result: NodeOutput
[06:33] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[06:33] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[06:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:33] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[06:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:33] [ComfyUI] [SubprocessWorker] call_id=133 sending call_method
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_21d7dee1.vtp
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_21d7dee1.vtp
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_21d7dee1.vtp
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:33] Node executed (4 total), capturing...
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_21d7dee1.vtp
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_21d7dee1.vtp
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_21d7dee1.vtp
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_21d7dee1.vtp
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_21d7dee1.vtp
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[06:33] [ComfyUI] [SubprocessWorker] got response: ok
[06:33] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.21s): result: NodeOutput
[06:33] [ComfyUI] [comfy-env] Running GeomPackSharpen_NonIterative: trimesh: Trimesh, sigma_f: 1.0, sigma_g: 1.0
[06:33] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.non_iterative.SharpenNonIterativeNode.EXECUTE_NORMALIZED
[06:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:33] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:33] [ComfyUI] [SubprocessWorker] call_id=134 sending call_method
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: non_iterative
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: sigma_f=1.000, sigma_g=1.000
[06:35] Frame 5 saved (frame_004.jpg, t=3.9s)
[06:35] [capture-node] freeze=47ms shot=976ms unfreeze=5ms saved=True
[06:35] Node executed (5 total), capturing...
[06:35] Frame 6 saved (frame_005.jpg, t=5.4s)
[06:35] [capture-node] freeze=3ms shot=131ms unfreeze=3ms saved=True
[06:38] [capture-loop] iter=50 t=8.1s state={'complete': False, 'error': None, 'executedCount': 5, 'wsState': 1} eval_ms=2 ram=2.6/15.6GB (17%) swap=0.0/3.0GB (0%) cpu=29% browser_rss=1.15GB
[06:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[06:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.021192, max: 0.087476
[06:40] [ComfyUI] [SubprocessWorker] got response: ok
[06:40] [ComfyUI] [comfy-env] GeomPackSharpen_NonIterative done (6.74s): result: NodeOutput
[06:40] [ComfyUI] [comfy-env] Running GeomPackSharpen_FastEffective: trimesh: Trimesh, threshold_T: 0.2, normal_iterations: 10, vertex_iterations: 20
[06:40] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.fast_effective.SharpenFastEffectiveNode.EXECUTE_NORMALIZED
[06:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:40] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:40] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:40] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:40] [ComfyUI] [SubprocessWorker] call_id=135 sending call_method
[06:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: fast_effective
[06:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: threshold_T=0.200, normal_iter=10, vertex_iter=20
[06:40] Node executed (6 total), capturing...
[06:41] Frame 7 saved (frame_006.jpg, t=10.7s)
[06:41] [capture-node] freeze=3ms shot=131ms unfreeze=6ms saved=True
[06:43] Frame 8 saved (frame_007.jpg, t=12.9s)
[06:43] [capture-periodic] freeze=9ms shot=211ms unfreeze=3ms saved=True
[06:44] [capture-loop] iter=100 t=14.2s state={'complete': False, 'error': None, 'executedCount': 6, 'wsState': 1} eval_ms=2 ram=2.5/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=36% browser_rss=1.02GB
[06:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[06:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.026954, max: 0.126612
[06:48] [ComfyUI] [SubprocessWorker] got response: ok
[06:48] [ComfyUI] [comfy-env] GeomPackSharpen_FastEffective done (7.43s): result: NodeOutput
[06:48] [ComfyUI] [comfy-env] Running GeomPackSharpen_GuidedNormal: trimesh: Trimesh, normal_iterations: 5, vertex_iterations: 10, sigma_s: 1.0, sigma_r: 0.35
[06:48] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.guided_normal.SharpenGuidedNormalNode.EXECUTE_NORMALIZED
[06:48] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[06:48] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[06:48] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[06:48] [ComfyUI] [SubprocessWorker] worker started/confirmed
[06:48] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[06:48] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[06:48] [ComfyUI] [SubprocessWorker] sending request via socket...
[06:48] [ComfyUI] [SubprocessWorker] call_id=136 sending call_method
[06:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: guided_normal
[06:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces
[06:48] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: normal_iter=5, vertex_iter=10, sigma_s=1.00, sigma_r=0.350
[06:48] Node executed (7 total), capturing...
[06:48] Frame 9 saved (frame_008.jpg, t=18.2s)
[06:48] [capture-node] freeze=3ms shot=136ms unfreeze=4ms saved=True
[06:50] [capture-loop] iter=150 t=20.0s state={'complete': False, 'error': None, 'executedCount': 7, 'wsState': 1} eval_ms=3 ram=2.5/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=33% browser_rss=1.03GB
[06:50] Frame 10 saved (frame_009.jpg, t=20.5s)
[06:50] [capture-periodic] freeze=3ms shot=140ms unfreeze=4ms saved=True
[06:55] [capture-loop] iter=200 t=25.8s state={'complete': False, 'error': None, 'executedCount': 7, 'wsState': 1} eval_ms=2 ram=2.5/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=33% browser_rss=1.03GB
[07:01] [capture-loop] iter=250 t=31.4s state={'complete': False, 'error': None, 'executedCount': 7, 'wsState': 1} eval_ms=3 ram=2.5/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=33% browser_rss=1.03GB
[07:07] [capture-loop] iter=300 t=37.0s state={'complete': False, 'error': None, 'executedCount': 7, 'wsState': 1} eval_ms=3 ram=2.5/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=33% browser_rss=1.02GB
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.025300, max: 0.123510
[07:10] [ComfyUI] [SubprocessWorker] got response: ok
[07:10] [ComfyUI] [comfy-env] GeomPackSharpen_GuidedNormal done (22.59s): result: NodeOutput
[07:10] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[07:10] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[07:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:10] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:10] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[07:10] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:10] [ComfyUI] [SubprocessWorker] call_id=137 sending call_method
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 6475 vertices, 12946 faces
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_3bd9fabd.vtp
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_3bd9fabd.vtp
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6475 vertices, 12946 faces
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_3bd9fabd.vtp
[07:10] Node executed (8 total), capturing...
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_3bd9fabd.vtp
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 6475 vertices, 12946 faces
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_3bd9fabd.vtp
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_3bd9fabd.vtp
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 6475 vertices, 12946 faces
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_3bd9fabd.vtp
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices)
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_3bd9fabd.vtp
[07:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[07:10] [ComfyUI] [SubprocessWorker] got response: ok
[07:10] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.22s): result: NodeOutput
[07:10] [ComfyUI] Prompt executed in 40.67 seconds
[07:11] Frame 11 saved (frame_010.jpg, t=40.8s)
[07:11] [capture-node] freeze=3ms shot=131ms unfreeze=4ms saved=True
[07:11] Node executed (9 total), capturing...
[07:12] Frame 12 saved (frame_011.jpg, t=41.4s)
[07:12] [capture-node] freeze=564ms shot=361ms unfreeze=0ms saved=True
[07:12] Execution complete (t=41.4s)
[07:12] Captured 12 unique frames over 42.4s
[07:12] [debug] iframes: 2
[07:12] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[07:12] [debug] iframe[1]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[07:12] [timing] trigger_3d_previews: 0.0s
[07:14] Saved high-quality screenshot: sharpen_all_executed.png
[07:14] [timing] final_screenshot: 0.3s
[07:15] Capturing execution frames: side_by_side_viewer.json
[07:20] Frame 1 saved (frame_000.jpg, t=0.0s)
[07:20] Validating workflow...
[07:20] [ComfyUI] === /validate endpoint called ===
[07:20] [ComfyUI] Received JSON with keys: ['prompt']
[07:20] [ComfyUI] Prompt has 3 nodes
[07:20] [ComfyUI] Node 1: GeomPackCreatePrimitive
[07:20] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1}
[07:20] [ComfyUI] Node 2: GeomPackCreatePrimitive
[07:20] [ComfyUI] Inputs: {"shape": "sphere", "size": 2.5, "subdivisions": 2}
[07:20] Queuing workflow for execution...
[07:20] [ComfyUI] Node 7: GeomPackPreviewMeshDual
[07:20] [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:20] [ComfyUI] Generated prompt_id: 25226bff-8cee-4fe3-a574-dee57be08003
[07:20] [ComfyUI] Calling execution.validate_prompt()...
[07:20] [ComfyUI] Validation result: valid=True
[07:20] [ComfyUI] === Validation PASSED ===
[07:20] [ComfyUI] got prompt
[07:20] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 2.5, subdivisions: 2
[07:20] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.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: failed
[07:20] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[07:20] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[07:20] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[07:20] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[07:20] [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_9owtxuh1/persistent_worker.py', 'abstract://comfy_worker_cf70ccc092ba']...
[07:20] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_cf70ccc092ba (abstract, no filesystem path)
[07:22] [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:22] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:22] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:22] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:22] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:22] [ComfyUI] [SubprocessWorker] call_id=138 sending call_method
[07:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 162 vertices, 320 faces
[07:22] [ComfyUI] [SubprocessWorker] got response: ok
[07:22] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (2.08s): result: NodeOutput
[07:22] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1
[07:22] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED
[07:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:23] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:23] [ComfyUI] [SubprocessWorker] call_id=139 sending call_method
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[07:23] [ComfyUI] [SubprocessWorker] got response: ok
[07:23] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[07:23] [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:23] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[07:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:23] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:23] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[07:23] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:23] [ComfyUI] [SubprocessWorker] call_id=140 sending call_method
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 8 vertices, 12 faces
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 162 vertices, 320 faces
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_b516d438.stl
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_b516d438.stl
[07:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[07:23] [ComfyUI] [SubprocessWorker] got response: ok
[07:23] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[07:23] [ComfyUI] Prompt executed in 2.10 seconds
[07:23] Frame 2 saved (frame_001.jpg, t=2.2s)
[07:23] [capture-periodic] freeze=2ms shot=163ms unfreeze=4ms saved=True
[07:23] Node executed (1 total), capturing...
[07:23] Frame 3 saved (frame_002.jpg, t=2.7s)
[07:23] [capture-node] freeze=2ms shot=97ms unfreeze=0ms saved=True
[07:23] Execution complete (t=2.7s)
[07:23] Captured 3 unique frames over 2.81s
[07:23] [debug] iframes: 1
[07:23] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[07:23] [timing] trigger_3d_previews: 0.0s
[07:25] Saved high-quality screenshot: side_by_side_viewer_executed.png
[07:25] [timing] final_screenshot: 0.2s
[07:26] Capturing execution frames: skeleton_all.json
[07:32] Frame 1 saved (frame_000.jpg, t=0.0s)
[07:32] Validating workflow...
[07:32] [ComfyUI] === /validate endpoint called ===
[07:32] [ComfyUI] Received JSON with keys: ['prompt']
[07:32] [ComfyUI] Prompt has 11 nodes
[07:32] [ComfyUI] Node 1: GeomPackLoadMesh
[07:32] [ComfyUI] Inputs: {"file_path": "3d/cow.off"}
[07:32] [ComfyUI] Node 2: GeomPackExtractSkeleton
[07:32] [ComfyUI] Inputs: {"fix_mesh": "wavefront", "normalize": false, "backend": "wavefront", "backend.waves": 1, "backend.step_size": 1, "trimesh": ["1", 0]}
[07:32] [ComfyUI] Node 3: GeomPackExtractSkeleton
[07:32] Queuing workflow for execution...
[07:32] [ComfyUI] Inputs: {"fix_mesh": "vertex_clusters", "normalize": false, "backend": "vertex_clusters", "backend.sampling_dist": 1, "backend.cluster_pos": "median", "trimesh": ["1", 0]}
[07:32] [ComfyUI] Node 4: GeomPackExtractSkeleton
[07:32] [ComfyUI] Inputs: {"fix_mesh": "edge_collapse", "normalize": false, "backend": "edge_collapse", "backend.shape_weight": 1, "backend.sample_weight": 0.1, "trimesh": ["1", 0]}
[07:32] [ComfyUI] Node 5: GeomPackExtractSkeleton
[07:32] [ComfyUI] Inputs: {"fix_mesh": "teasar", "normalize": false, "backend": "teasar", "backend.inv_dist": 10, "backend.min_length": 0, "trimesh": ["1", 0]}
[07:32] [ComfyUI] Node 6: GeomPackMeshFromSkeleton
[07:32] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["2", 0]}
[07:32] [ComfyUI] Node 7: GeomPackMeshFromSkeleton
[07:32] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["3", 0]}
[07:32] [ComfyUI] Node 8: GeomPackMeshFromSkeleton
[07:32] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["4", 0]}
[07:32] [ComfyUI] Node 9: GeomPackMeshFromSkeleton
[07:32] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["5", 0]}
[07:32] [ComfyUI] Node 12: GeomPackPreviewMeshMulti
[07:32] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.10839671976880196,-0.004104770901572197,-1.5722856770085691],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\
[07:32] [ComfyUI] Node 13: GeomPackPreviewMeshMulti
[07:32] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.10839671976880196,-0.004104770901572197,-1.5722856770085691],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\
[07:32] [ComfyUI] Generated prompt_id: 9fe83a58-3d4f-4676-a77a-ca6b7cb3a92a
[07:32] [ComfyUI] Calling execution.validate_prompt()...
[07:32] [ComfyUI] Validation result: valid=True
[07:32] [ComfyUI] === Validation PASSED ===
[07:32] [ComfyUI] got prompt
[07:32] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/cow.off'
[07:32] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.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=141 sending call_method
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/cow.off
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/cow.off
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2761 vertices, 5520 faces
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2761 vertices, 5520 faces
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2761 vertices, 5520 faces
[07:32] [ComfyUI] [SubprocessWorker] got response: ok
[07:32] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.03s): result: NodeOutput
[07:32] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:32] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.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 1 shm blocks
[07:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:32] [ComfyUI] [SubprocessWorker] call_id=142 sending call_method
[07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: edge_collapse -> GeomPackSkeleton_EdgeCollapse
[07:32] [ComfyUI] [SubprocessWorker] got response: ok
[07:32] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:32] [ComfyUI] [comfy-env] Running GeomPackSkeleton_EdgeCollapse: trimesh: Trimesh, fix_mesh: True, normalize: False, shape_weight: 1.0, sample_weight: 0.1
[07:32] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.edge_collapse.SkeletonEdgeCollapseNode.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 1 shm blocks
[07:32] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:32] [ComfyUI] [SubprocessWorker] call_id=143 sending call_method
[07:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: edge_collapse
[07:34] [ComfyUI]
[07:34] [ComfyUI] Collapsing edges: 0%| | 0/5520 [00:00<?, ?it/s]
[07:34] Frame 2 saved (frame_001.jpg, t=2.3s)
[07:34] [capture-periodic] freeze=2ms shot=104ms unfreeze=8ms saved=True
[07:34] [ComfyUI] Collapsing edges: 7%|▋ | 406/5520 [00:00<00:01, 4051.24it/s]
[07:34] [ComfyUI] Collapsing edges: 16%|█▌ | 858/5520 [00:00<00:01, 4317.41it/s]
[07:34] [ComfyUI] Collapsing edges: 23%|██▎ | 1290/5520 [00:00<00:01, 4182.46it/s]
[07:35] [ComfyUI] Collapsing edges: 32%|███▏ | 1786/5520 [00:00<00:00, 4482.00it/s]
[07:35] [ComfyUI] Collapsing edges: 42%|████▏ | 2298/5520 [00:00<00:00, 4708.46it/s]
[07:35] [ComfyUI] Collapsing edges: 51%|█████ | 2814/5520 [00:00<00:00, 4859.86it/s]
[07:35] [ComfyUI] Collapsing edges: 60%|█████▉ | 3302/5520 [00:00<00:00, 4813.23it/s]
[07:35] [ComfyUI] Collapsing edges: 69%|██████▉ | 3822/5520 [00:00<00:00, 4931.67it/s]
[07:35] [ComfyUI] Collapsing edges: 79%|███████▉ | 4354/5520 [00:00<00:00, 5051.29it/s]
[07:35] [ComfyUI] Collapsing edges: 89%|████████▉ | 4906/5520 [00:01<00:00, 5194.06it/s]
[07:35] [ComfyUI] Collapsing edges: 99%|█████████▊| 5450/5520 [00:01<00:00, 5267.34it/s]
[07:35] [ComfyUI] Collapsing edges: 100%|█████████▉| 5518/5520 [00:01<00:00, 4865.20it/s]
[07:35] [ComfyUI] [SubprocessWorker] got response: ok
[07:35] [ComfyUI] [comfy-env] GeomPackSkeleton_EdgeCollapse done (3.23s): result: NodeOutput
[07:35] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:35] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:35] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:35] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:35] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:35] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:35] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:35] [ComfyUI] [SubprocessWorker] call_id=144 sending call_method
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[55, 3]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([55, 3])
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[54, 2]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([54, 2])
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 55 joints, 54 bones
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.505, normalized=False
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.507, -0.308, -0.140]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.503, 0.319, 0.138]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.010, 0.627, 0.277]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.002, 0.005, -0.001]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 6362 vertices, 12288 faces
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.527, -0.328, -0.160]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.522, 0.338, 0.158]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.049, 0.666, 0.317]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.002, 0.005, -0.001]
[07:35] [ComfyUI] [SubprocessWorker] got response: ok
[07:35] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.08s): result: NodeOutput
[07:35] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:35] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED
[07:35] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:35] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:35] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:35] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:35] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:35] [ComfyUI] [SubprocessWorker] call_id=145 sending call_method
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: vertex_clusters -> GeomPackSkeleton_VertexClusters
[07:35] [ComfyUI] [SubprocessWorker] got response: ok
[07:35] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:35] [ComfyUI] [comfy-env] Running GeomPackSkeleton_VertexClusters: trimesh: Trimesh, fix_mesh: True, normalize: False, sampling_dist: 1.0, cluster_pos: 'median'
[07:35] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.vertex_clusters.SkeletonVertexClustersNode.EXECUTE_NORMALIZED
[07:35] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:35] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:35] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:35] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:35] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:35] [ComfyUI] [SubprocessWorker] call_id=146 sending call_method
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: vertex_clusters
[07:35] [ComfyUI]
[07:35] [ComfyUI] Clustering: 0%| | 0/2761 [00:00<?, ?it/s]
[07:35] [ComfyUI] Clustering: 100%|██████████| 2761/2761 [00:00<00:00, 646881.54it/s]
[07:35] [ComfyUI] [SubprocessWorker] got response: ok
[07:35] [ComfyUI] [comfy-env] GeomPackSkeleton_VertexClusters done (0.07s): result: NodeOutput
[07:35] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:35] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:35] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:35] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:35] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:35] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:35] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:35] [ComfyUI] [SubprocessWorker] call_id=147 sending call_method
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[25, 3]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([25, 3])
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[24, 2]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([24, 2])
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 25 joints, 24 bones
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.453, normalized=False
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.481, -0.320, -0.111]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.425, 0.308, 0.123]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [0.906, 0.628, 0.234]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.028, -0.006, 0.006]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 2882 vertices, 5568 faces
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.500, -0.339, -0.131]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.445, 0.328, 0.143]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [0.945, 0.667, 0.274]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.028, -0.006, 0.006]
[07:35] [ComfyUI] [SubprocessWorker] got response: ok
[07:35] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.04s): result: NodeOutput
[07:35] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:35] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED
[07:35] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:35] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:35] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:35] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:35] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:35] [ComfyUI] [SubprocessWorker] call_id=148 sending call_method
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: wavefront -> GeomPackSkeleton_Wavefront
[07:35] [ComfyUI] [SubprocessWorker] got response: ok
[07:35] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:35] [ComfyUI] [comfy-env] Running GeomPackSkeleton_Wavefront: trimesh: Trimesh, fix_mesh: True, normalize: False, waves: 1, step_size: 1.0
[07:35] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.wavefront.SkeletonWavefrontNode.EXECUTE_NORMALIZED
[07:35] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:35] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:35] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:35] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:35] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:35] [ComfyUI] [SubprocessWorker] call_id=149 sending call_method
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: wavefront
[07:35] [ComfyUI]
[07:35] [ComfyUI] Skeletonizing: 0%| | 0/2761 [00:00<?, ?it/s]
[07:35] [ComfyUI] Skeletonizing: 100%|██████████| 2761/2761 [00:00<00:00, 397831.37it/s]
[07:35] [ComfyUI] [SubprocessWorker] got response: ok
[07:35] [ComfyUI] [comfy-env] GeomPackSkeleton_Wavefront done (0.06s): result: NodeOutput
[07:35] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:35] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:35] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:35] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:35] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:35] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:35] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:35] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:35] [ComfyUI] [SubprocessWorker] call_id=150 sending call_method
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[96, 3]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([96, 3])
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[95, 2]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([95, 2])
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 96 joints, 95 bones
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.515, normalized=False
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.512, -0.315, -0.154]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.519, 0.320, 0.138]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.031, 0.635, 0.292]
[07:35] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [0.003, 0.002, -0.008]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 11118 vertices, 21472 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.531, -0.334, -0.174]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.538, 0.339, 0.158]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.070, 0.674, 0.332]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [0.003, 0.002, -0.008]
[07:36] [ComfyUI] [SubprocessWorker] got response: ok
[07:36] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.12s): result: NodeOutput
[07:36] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[07:36] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[07:36] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:36] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:36] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:36] [ComfyUI] [SubprocessWorker] created 4 shm blocks
[07:36] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:36] [ComfyUI] [SubprocessWorker] call_id=151 sending call_method
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_32c90049.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_32c90049.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11118 vertices, 21472 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_32c90049.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11118 vertices)
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11118 vertices, 21472 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_32c90049.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 2882 vertices, 5568 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_32c90049.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2882 vertices)
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2882 vertices, 5568 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_32c90049.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 6362 vertices, 12288 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_32c90049.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6362 vertices)
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6362 vertices, 12288 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_32c90049.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[07:36] [ComfyUI] [SubprocessWorker] got response: ok
[07:36] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.20s): result: NodeOutput
[07:36] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:36] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED
[07:36] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:36] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:36] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:36] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:36] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:36] [ComfyUI] [SubprocessWorker] call_id=152 sending call_method
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: teasar -> GeomPackSkeleton_Teasar
[07:36] [ComfyUI] [SubprocessWorker] got response: ok
[07:36] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:36] [ComfyUI] [comfy-env] Running GeomPackSkeleton_Teasar: trimesh: Trimesh, fix_mesh: True, normalize: False, inv_dist: 10.0, min_length: 0.0
[07:36] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.teasar.SkeletonTeasarNode.EXECUTE_NORMALIZED
[07:36] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:36] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:36] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:36] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:36] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:36] [ComfyUI] [SubprocessWorker] call_id=153 sending call_method
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: teasar
[07:36] [ComfyUI]
[07:36] Node executed (1 total), capturing...
[07:36] [ComfyUI] Invalidating: 0%| | 0/2761 [00:00<?, ?it/s]
[07:36] [ComfyUI] Invalidating: 100%|██████████| 2761/2761 [00:00<00:00, 15205.55it/s]
[07:36] [ComfyUI]
[07:36] [ComfyUI] [SubprocessWorker] got response: ok
[07:36] [ComfyUI] [comfy-env] GeomPackSkeleton_Teasar done (0.23s): result: NodeOutput
[07:36] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:36] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:36] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:36] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:36] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:36] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:36] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:36] [ComfyUI] [SubprocessWorker] call_id=154 sending call_method
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[37, 3]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([37, 3])
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[36, 2]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([36, 2])
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 37 joints, 36 bones
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.325, normalized=False
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.498, -0.152, -0.129]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.152, 0.231, 0.017]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [0.650, 0.383, 0.146]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.173, 0.040, -0.056]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 4274 vertices, 8256 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.518, -0.171, -0.149]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.171, 0.251, 0.037]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [0.689, 0.422, 0.186]
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [-0.173, 0.040, -0.056]
[07:36] [ComfyUI] [SubprocessWorker] got response: ok
[07:36] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.07s): result: NodeOutput
[07:36] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh
[07:36] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED
[07:36] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:36] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:36] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:36] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[07:36] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:36] [ComfyUI] [SubprocessWorker] call_id=155 sending call_method
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 4274 vertices, 8256 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_72edacd8.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (4274 vertices)
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 4274 vertices, 8256 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_72edacd8.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6362 vertices, 12288 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_72edacd8.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6362 vertices)
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6362 vertices, 12288 faces
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_72edacd8.vtp
[07:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready
[07:36] [ComfyUI] [SubprocessWorker] got response: ok
[07:36] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.14s): result: NodeOutput
[07:36] [ComfyUI] Prompt executed in 4.32 seconds
[07:37] Frame 3 saved (frame_002.jpg, t=4.3s)
[07:37] [capture-node] freeze=473ms shot=578ms unfreeze=4ms saved=True
[07:37] Node executed (2 total), capturing...
[07:38] Frame 4 saved (frame_003.jpg, t=5.7s)
[07:38] [capture-node] freeze=2ms shot=116ms unfreeze=0ms saved=True
[07:38] Execution complete (t=5.7s)
[07:38] Captured 4 unique frames over 5.87s
[07:38] [debug] iframes: 2
[07:38] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x393, rafFrozen=True
[07:38] [debug] iframe[1]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[07:38] [timing] trigger_3d_previews: 0.0s
[07:40] Saved high-quality screenshot: skeleton_all_executed.png
[07:40] [timing] final_screenshot: 0.3s
[07:40] Capturing execution frames: skeleton_extraction.json
[07:46] Frame 1 saved (frame_000.jpg, t=0.0s)
[07:46] Validating workflow...
[07:46] [ComfyUI] === /validate endpoint called ===
[07:46] [ComfyUI] Received JSON with keys: ['prompt']
[07:46] [ComfyUI] Prompt has 4 nodes
[07:46] [ComfyUI] Node 1: GeomPackLoadMesh
[07:46] [ComfyUI] Inputs: {"file_path": "3d/cow.off"}
[07:46] [ComfyUI] Node 3: GeomPackMeshFromSkeleton
[07:46] Queuing workflow for execution...
[07:46] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["6", 0]}
[07:46] [ComfyUI] Node 5: GeomPackPreviewMeshDual
[07:46] [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:46] [ComfyUI] Node 6: GeomPackExtractSkeleton
[07:46] [ComfyUI] Inputs: {"fix_mesh": "wavefront", "normalize": false, "backend": "wavefront", "backend.waves": 1, "backend.step_size": 1, "trimesh": ["1", 0]}
[07:46] [ComfyUI] Generated prompt_id: 175df66c-9b92-4e85-9bcf-7c47281bd910
[07:46] [ComfyUI] Calling execution.validate_prompt()...
[07:46] [ComfyUI] Validation result: valid=True
[07:46] [ComfyUI] === Validation PASSED ===
[07:46] [ComfyUI] got prompt
[07:46] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/cow.off'
[07:46] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[07:46] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:46] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:46] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:46] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:46] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:46] [ComfyUI] [SubprocessWorker] call_id=156 sending call_method
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/cow.off
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/cow.off
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2761 vertices, 5520 faces
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2761 vertices, 5520 faces
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2761 vertices, 5520 faces
[07:46] [ComfyUI] [SubprocessWorker] got response: ok
[07:46] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.02s): result: NodeOutput
[07:46] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh
[07:46] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED
[07:46] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:46] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:46] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:46] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:46] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:46] [ComfyUI] [SubprocessWorker] call_id=157 sending call_method
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: wavefront -> GeomPackSkeleton_Wavefront
[07:46] [ComfyUI] [SubprocessWorker] got response: ok
[07:46] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput
[07:46] [ComfyUI] [comfy-env] Running GeomPackSkeleton_Wavefront: trimesh: Trimesh, fix_mesh: True, normalize: False, waves: 1, step_size: 1.0
[07:46] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.wavefront.SkeletonWavefrontNode.EXECUTE_NORMALIZED
[07:46] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:46] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:46] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:46] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[07:46] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:46] [ComfyUI] [SubprocessWorker] call_id=158 sending call_method
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: wavefront
[07:46] [ComfyUI]
[07:46] [ComfyUI] Skeletonizing: 0%| | 0/2761 [00:00<?, ?it/s]
[07:46] [ComfyUI] Skeletonizing: 100%|██████████| 2761/2761 [00:00<00:00, 328300.54it/s]
[07:46] [ComfyUI] [SubprocessWorker] got response: ok
[07:46] [ComfyUI] [comfy-env] GeomPackSkeleton_Wavefront done (0.06s): result: NodeOutput
[07:46] [ComfyUI] [comfy-env] Running GeomPackMeshFromSkeleton: joint_radius: 0.02, bone_radius: 0.01, skeleton: dict
[07:46] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.mesh_from_skeleton.SkeletonToMesh.EXECUTE_NORMALIZED
[07:46] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:46] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:46] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:46] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[07:46] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:46] [ComfyUI] [SubprocessWorker] call_id=159 sending call_method
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[96, 3]
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([96, 3])
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size']
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[95, 2]
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([95, 2])
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Creating solid mesh: 96 joints, 95 bones
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Skeleton metadata: scale=0.515, normalized=False
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input skeleton bounding box:
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.512, -0.315, -0.154]
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.519, 0.320, 0.138]
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.031, 0.635, 0.292]
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [0.003, 0.002, -0.008]
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 11118 vertices, 21472 faces
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output mesh bounding box:
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: [-0.531, -0.334, -0.174]
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Max: [0.538, 0.339, 0.158]
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Size: [1.070, 0.674, 0.332]
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Center: [0.003, 0.002, -0.008]
[07:46] [ComfyUI] [SubprocessWorker] got response: ok
[07:46] [ComfyUI] [comfy-env] GeomPackMeshFromSkeleton done (0.13s): result: NodeOutput
[07:46] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'overlay', mode: 'fields', opacity_1: 0.5, opacity_2: 0.5, mesh_1: Trimesh, mesh_2: Trimesh
[07:46] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[07:46] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[07:46] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[07:46] [ComfyUI] [SubprocessWorker] worker started/confirmed
[07:46] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[07:46] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[07:46] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:46] [ComfyUI] [SubprocessWorker] call_id=160 sending call_method
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: overlay, Mode: fields
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 11118 vertices, 21472 faces
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Added mesh_id field and red/blue colors for overlay
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_overlay_cbf70836.vtp
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (13879 vertices)
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: mesh_id (components: 1)
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 13879 vertices, 26992 faces
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported combined VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_overlay_cbf70836.vtp
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Combined Mesh: 13879 vertices, 26992 faces
[07:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[07:46] [ComfyUI] [SubprocessWorker] got response: ok
[07:46] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.12s): result: NodeOutput
[07:46] [ComfyUI] Prompt executed in 0.35 seconds
[07:46] Node executed (1 total), capturing...
[07:47] Frame 2 saved (frame_001.jpg, t=0.7s)
[07:47] [capture-node] freeze=102ms shot=137ms unfreeze=0ms saved=True
[07:47] Execution complete (t=0.7s)
[07:47] Captured 2 unique frames over 1.0s
[07:47] [debug] iframes: 1
[07:47] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=742x485, rafFrozen=True
[07:47] [timing] trigger_3d_previews: 0.0s
[07:49] Saved high-quality screenshot: skeleton_extraction_executed.png
[07:49] [timing] final_screenshot: 0.2s
[07:49] Capturing execution frames: smooth_all.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 8 nodes
[07:55] [ComfyUI] Node 1: GeomPackLoadMesh
[07:55] [ComfyUI] Inputs: {"file_path": "3d/cow.off"}
[07:55] [ComfyUI] Node 2: GeomPackSmoothMesh
[07:55] [ComfyUI] Inputs: {"backend": "taubin", "backend.iterations": 5, "backend.lambda_": 0.5, "backend.mu": -0.53, "trimesh": ["1", 0]}
[07:55] [ComfyUI] Node 3: GeomPackSmoothMesh
[07:55] Queuing workflow for execution...
[07:55] [ComfyUI] Inputs: {"backend": "laplacian", "backend.iterations": 5, "backend.cotangent_weight": "true", "trimesh": ["1", 0]}
[07:55] [ComfyUI] Node 4: GeomPackSmoothMesh
[07:55] [ComfyUI] Inputs: {"backend": "hc_laplacian", "trimesh": ["1", 0]}
[07:55] [ComfyUI] Node 5: GeomPackSmoothMesh
[07:55] [ComfyUI] Inputs: {"backend": "trimesh_laplacian", "backend.iterations": 7, "backend.lambda_": 0.5, "trimesh": ["1", 0]}
[07:55] [ComfyUI] Node 6: GeomPackSmoothMesh
[07:55] [ComfyUI] Inputs: {"backend": "trimesh_taubin", "backend.iterations": 10, "backend.lambda_": 0.6, "backend.mu": -0.53, "trimesh": ["1", 0]}
[07:55] [ComfyUI] Node 8: GeomPackPreviewMeshMulti
[07:55] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.8124876310583045,0.33787129680966865,-2.241461606161383],\\\"focalPoint\\\":[0,-0.0000846534967422485
[07:55] [ComfyUI] Node 9: GeomPackPreviewMeshMulti
[07:55] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.8124876310583045,0.33787129680966865,-2.241461606161383],\\\"focalPoint\\\":[0,-0.0000846534967422485
[07:55] [ComfyUI] Generated prompt_id: 6918479c-6af6-48ef-9382-441bf07ac373
[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=161 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-2032/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.02s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.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=162 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: laplacian -> GeomPackSmooth_Laplacian
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.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=163 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: taubin -> GeomPackSmooth_Taubin
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.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=164 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: trimesh_laplacian -> GeomPackSmooth_TrimeshLaplacian
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.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=165 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: hc_laplacian -> GeomPackSmooth_HCLaplacian
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.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=166 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: trimesh_taubin -> GeomPackSmooth_TrimeshTaubin
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmooth_Laplacian: trimesh: Trimesh, iterations: 5, cotangent_weight: 'true'
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.laplacian.SmoothLaplacianNode.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=167 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: laplacian
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=5, cotangent_weight=True
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.005665, max: 0.030324
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmooth_Laplacian done (0.15s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmooth_Taubin: trimesh: Trimesh, iterations: 5, lambda_: 0.5, mu: -0.53
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.taubin.SmoothTaubinNode.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] Node executed (1 total), capturing...
[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=168 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: taubin
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=5, lambda=0.500, mu=-0.530
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.003815, max: 0.025956
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmooth_Taubin done (0.02s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmooth_TrimeshLaplacian: trimesh: Trimesh, iterations: 7, lambda_: 0.5
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.trimesh_laplacian.SmoothTrimeshLaplacianNode.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=169 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: trimesh_laplacian
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=7, lambda=0.500
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.013786, max: 0.047123
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmooth_TrimeshLaplacian done (0.04s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmooth_HCLaplacian: trimesh: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.hc_laplacian.SmoothHCLaplacianNode.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=170 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: hc_laplacian
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.003891, max: 0.020931
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmooth_HCLaplacian done (0.02s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.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 4 shm blocks
[07:55] [ComfyUI] [SubprocessWorker] sending request via socket...
[07:55] [ComfyUI] [SubprocessWorker] call_id=171 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_12d902e5.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_12d902e5.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_12d902e5.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_12d902e5.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_12d902e5.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_3_12d902e5.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_12d902e5.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_4_12d902e5.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.12s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackSmooth_TrimeshTaubin: trimesh: Trimesh, iterations: 10, lambda_: 0.6, mu: -0.53
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.trimesh_taubin.SmoothTrimeshTaubinNode.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=172 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: trimesh_taubin
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=10, lambda=0.600, mu=-0.530
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.013246, max: 0.069047
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:55] [ComfyUI] [comfy-env] GeomPackSmooth_TrimeshTaubin done (0.02s): result: NodeOutput
[07:55] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh
[07:55] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.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=173 sending call_method
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_fc8a2458.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_1_fc8a2458.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_fc8a2458.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices)
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_multi_2_fc8a2458.vtp
[07:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready
[07:55] [ComfyUI] [SubprocessWorker] got response: ok
[07:56] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.07s): result: NodeOutput
[07:56] [ComfyUI] Prompt executed in 0.51 seconds
[07:56] Frame 2 saved (frame_001.jpg, t=0.5s)
[07:56] [capture-node] freeze=2ms shot=165ms unfreeze=40ms saved=True
[07:56] Node executed (7 total), capturing...
[07:57] Frame 3 saved (frame_002.jpg, t=1.3s)
[07:57] [capture-node] freeze=177ms shot=236ms unfreeze=0ms saved=True
[07:57] Execution complete (t=1.3s)
[07:57] Captured 3 unique frames over 1.77s
[07:57] [debug] iframes: 2
[07:57] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x393, rafFrozen=True
[07:57] [debug] iframe[1]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17791, canvas=368x195, rafFrozen=True
[07:57] [timing] trigger_3d_previews: 0.0s
[07:59] Saved high-quality screenshot: smooth_all_executed.png
[07:59] [timing] final_screenshot: 0.3s
[07:59] Capturing execution frames: surface_reconstruction.json
[08:05] Frame 1 saved (frame_000.jpg, t=0.0s)
[08:05] Validating workflow...
[08:05] [ComfyUI] === /validate endpoint called ===
[08:05] [ComfyUI] Received JSON with keys: ['prompt']
[08:05] [ComfyUI] Prompt has 4 nodes
[08:05] [ComfyUI] Node 20: GeomPackLoadMesh
[08:05] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"}
[08:05] [ComfyUI] Node 21: GeomPackMeshToPointCloud
[08:05] [ComfyUI] Inputs: {"mode": "surface_sampling", "sample_count": 10000, "sampling_method": "uniform", "include_normals": "true", "trimesh": ["20", 0]}
[08:05] [ComfyUI] Node 22: GeomPackReconstructSurface
[08:05] Queuing workflow for execution...
[08:05] [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:05] [ComfyUI] Node 28: GeomPackPreviewMeshDual
[08:05] [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:05] [ComfyUI] Generated prompt_id: 92ee8fd0-4887-42e1-9c03-d9ce9c1396ec
[08:05] [ComfyUI] Calling execution.validate_prompt()...
[08:05] [ComfyUI] Validation result: valid=True
[08:05] [ComfyUI] === Validation PASSED ===
[08:05] [ComfyUI] got prompt
[08:05] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl'
[08:05] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[08:05] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:05] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:05] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:05] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[08:05] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:05] [ComfyUI] [SubprocessWorker] call_id=174 sending call_method
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/Stanford_Bunny.stl
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces
[08:05] [ComfyUI] [SubprocessWorker] got response: ok
[08:05] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.26s): result: NodeOutput
[08:05] [ComfyUI] [comfy-env] Running GeomPackMeshToPointCloud: mode: 'surface_sampling', sample_count: 10000, sampling_method: 'uniform', include_normals: 'true', trimesh: Trimesh
[08:05] [ComfyUI] [SubprocessWorker] call_method: nodes.conversion.mesh_to_pointcloud.MeshToPointCloudNode.EXECUTE_NORMALIZED
[08:05] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:05] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:05] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:05] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:05] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:05] [ComfyUI] [SubprocessWorker] call_id=175 sending call_method
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sampling 10,000 points using uniform method
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated point cloud with 10,000 points
[08:05] [ComfyUI] [SubprocessWorker] got response: ok
[08:05] [ComfyUI] [comfy-env] GeomPackMeshToPointCloud done (0.07s): result: NodeOutput
[08:05] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh
[08:05] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED
[08:05] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:05] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:05] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:05] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:05] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:05] [ComfyUI] [SubprocessWorker] call_id=176 sending call_method
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: poisson -> GeomPackReconstruct_Poisson
[08:05] [ComfyUI] [SubprocessWorker] got response: ok
[08:05] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput
[08:05] [ComfyUI] [comfy-env] Running GeomPackReconstruct_Poisson: points: Trimesh, poisson_depth: 8, poisson_scale: 1.1, estimate_normals: 'true', normal_radius: 0.1
[08:05] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.poisson.ReconstructPoissonNode.EXECUTE_NORMALIZED
[08:05] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:05] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:05] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:05] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:05] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:05] [ComfyUI] [SubprocessWorker] call_id=177 sending call_method
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: poisson
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using normals from input
[08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using PyMeshLab Poisson reconstruction...
[08:07] Frame 2 saved (frame_001.jpg, t=2.2s)
[08:07] [capture-periodic] freeze=3ms shot=119ms unfreeze=4ms saved=True
[08:09] Frame 3 saved (frame_002.jpg, t=4.4s)
[08:09] [capture-periodic] freeze=2ms shot=104ms unfreeze=3ms saved=True
[08:10] [ComfyUI] [SubprocessWorker] got response: ok
[08:10] [ComfyUI] [comfy-env] GeomPackReconstruct_Poisson done (4.52s): result: NodeOutput
[08:10] [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:10] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[08:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:10] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:10] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[08:10] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:10] [ComfyUI] [SubprocessWorker] call_id=178 sending call_method
[08:10] Node executed (1 total), capturing...
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 43733 vertices, 87486 faces
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['face.stl']
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_fde40b99.vtp
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices)
[08:10] Frame 4 saved (frame_003.jpg, t=5.2s)
[08:10] [capture-node] freeze=3ms shot=96ms unfreeze=4ms saved=True
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_fde40b99.vtp
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_fde40b99.stl
[08:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[08:10] [ComfyUI] [SubprocessWorker] got response: ok
[08:10] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.57s): result: NodeOutput
[08:10] [ComfyUI] Prompt executed in 5.44 seconds
[08:11] Node executed (2 total), capturing...
[08:12] Frame 5 saved (frame_004.jpg, t=6.1s)
[08:12] [capture-node] freeze=247ms shot=977ms unfreeze=0ms saved=True
[08:12] Execution complete (t=6.1s)
[08:12] Captured 5 unique frames over 7.38s
[08:12] [debug] iframes: 1
[08:12] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[08:12] [timing] trigger_3d_previews: 0.0s
[08:14] Saved high-quality screenshot: surface_reconstruction_executed.png
[08:15] [timing] final_screenshot: 0.2s
[08:15] Capturing execution frames: test_loading.json
[08:21] Frame 1 saved (frame_000.jpg, t=0.0s)
[08:21] Validating workflow...
[08:21] [ComfyUI] === /validate endpoint called ===
[08:21] [ComfyUI] Received JSON with keys: ['prompt']
[08:21] [ComfyUI] Prompt has 3 nodes
[08:21] [ComfyUI] Node 1: GeomPackLoadMeshBlend
[08:21] [ComfyUI] Inputs: {"file_path": "3d/coca_cola.blend", "report_panel": "false"}
[08:21] [ComfyUI] Node 2: GeomPackLoadMeshFBX
[08:21] [ComfyUI] Inputs: {"file_path": "3d/rigged_human.fbx", "report_panel": "false"}
[08:21] Queuing workflow for execution...
[08:21] [ComfyUI] Node 3: GeomPackPreviewMeshDual
[08:21] [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:21] [ComfyUI] Generated prompt_id: 8729fe31-b78e-4cf1-b400-18ed00d6fd3e
[08:21] [ComfyUI] Calling execution.validate_prompt()...
[08:21] [ComfyUI] Validation result: valid=True
[08:21] [ComfyUI] === Validation PASSED ===
[08:21] [ComfyUI] got prompt
[08:21] [ComfyUI] [comfy-env] Running GeomPackLoadMeshFBX: file_path: '3d/rigged_human.fbx'
[08:21] [ComfyUI] [SubprocessWorker] call_method: nodes.blender_io.load_mesh_fbx.LoadMeshFBX.EXECUTE_NORMALIZED
[08:21] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed
[08:21] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker...
[08:21] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[08:21] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/custom_nodes/ComfyUI-GeometryPack']
[08:21] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/.ce/.pixi/envs/geometrypack-nodes/bin/python
[08:21] [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_9owtxuh1/persistent_worker.py', 'abstract://comfy_worker_c45c78efad99']...
[08:21] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_c45c78efad99 (abstract, no filesystem path)
[08:22] [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:22] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:22] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:22] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[08:22] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:22] [ComfyUI] [SubprocessWorker] call_id=179 sending call_method
[08:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found FBX in input folder: 3d/rigged_human.fbx
[08:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading via bpy: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/rigged_human.fbx
[08:23] Frame 2 saved (frame_001.jpg, t=2.2s)
[08:23] [capture-periodic] freeze=2ms shot=85ms unfreeze=4ms saved=True
[08:23] [ComfyUI] [worker:ComfyUI-GeometryPack] FBX version: 7400
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 32327 vertices, 50000 faces
[08:24] [ComfyUI] [SubprocessWorker] got response: ok
[08:24] [ComfyUI] [comfy-env] GeomPackLoadMeshFBX done (2.96s): result: NodeOutput
[08:24] [ComfyUI] [comfy-env] Running GeomPackLoadMeshBlend: file_path: '3d/coca_cola.blend'
[08:24] [ComfyUI] [SubprocessWorker] call_method: nodes.blender_io.load_mesh_blend.LoadMeshBlend.EXECUTE_NORMALIZED
[08:24] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:24] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:24] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:24] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[08:24] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:24] [ComfyUI] [SubprocessWorker] call_id=180 sending call_method
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found .blend in input folder: 3d/coca_cola.blend
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading via bpy: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/coca_cola.blend
[08:24] Node executed (1 total), capturing...
[08:24] Frame 3 saved (frame_002.jpg, t=3.3s)
[08:24] [capture-node] freeze=3ms shot=89ms unfreeze=3ms saved=True
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 36696 vertices, 73216 faces
[08:24] [ComfyUI] [SubprocessWorker] got response: ok
[08:24] [ComfyUI] [comfy-env] GeomPackLoadMeshBlend done (0.33s): result: NodeOutput
[08:24] [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:24] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED
[08:24] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:24] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:24] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:24] [ComfyUI] [SubprocessWorker] created 2 shm blocks
[08:24] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:24] [ComfyUI] [SubprocessWorker] call_id=181 sending call_method
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 36696 vertices, 73216 faces
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 32327 vertices, 50000 faces
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: []
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: []
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: []
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_1_90fd686d.stl
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_2_90fd686d.stl
[08:24] Node executed (2 total), capturing...
[08:24] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[08:24] [ComfyUI] [SubprocessWorker] got response: ok
[08:24] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.10s): result: NodeOutput
[08:24] [ComfyUI] Prompt executed in 3.40 seconds
[08:25] Frame 4 saved (frame_003.jpg, t=3.6s)
[08:25] [capture-node] freeze=46ms shot=305ms unfreeze=3ms saved=True
[08:25] Node executed (3 total), capturing...
[08:25] Frame 5 saved (frame_004.jpg, t=4.3s)
[08:25] [capture-node] freeze=3ms shot=99ms unfreeze=0ms saved=True
[08:25] Execution complete (t=4.3s)
[08:25] Captured 5 unique frames over 4.47s
[08:25] [debug] iframes: 1
[08:25] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=370x485, rafFrozen=True
[08:25] [timing] trigger_3d_previews: 0.0s
[08:27] Saved high-quality screenshot: test_loading_executed.png
[08:27] [timing] final_screenshot: 0.2s
[08:28] Capturing execution frames: transform.json
[08:34] Frame 1 saved (frame_000.jpg, t=0.0s)
[08:34] Validating workflow...
[08:34] [ComfyUI] === /validate endpoint called ===
[08:34] [ComfyUI] Received JSON with keys: ['prompt']
[08:34] [ComfyUI] Prompt has 3 nodes
[08:34] [ComfyUI] Node 2: GeomPackTransformMesh
[08:34] [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:34] [ComfyUI] Node 5: GeomPackCreatePrimitive
[08:34] Queuing workflow for execution...
[08:34] [ComfyUI] Inputs: {"shape": "cube", "size": 1, "subdivisions": 2}
[08:34] [ComfyUI] Node 6: GeomPackPreviewMeshDual
[08:34] [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:34] [ComfyUI] Generated prompt_id: cdaa75f6-1edc-46f0-827f-e7882401cd72
[08:34] [ComfyUI] Calling execution.validate_prompt()...
[08:34] [ComfyUI] Validation result: valid=True
[08:34] [ComfyUI] === Validation PASSED ===
[08:34] [ComfyUI] got prompt
[08:34] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 1.0, subdivisions: 2
[08:34] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.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 0 shm blocks
[08:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:34] [ComfyUI] [SubprocessWorker] call_id=182 sending call_method
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces
[08:34] [ComfyUI] [SubprocessWorker] got response: ok
[08:34] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput
[08:34] [ComfyUI] [comfy-env] Running GeomPackTransformMesh: operation: dict, trimesh: Trimesh
[08:34] [ComfyUI] [SubprocessWorker] call_method: nodes.transforms.transform.TransformMeshNode.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 1 shm blocks
[08:34] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:34] [ComfyUI] [SubprocessWorker] call_id=183 sending call_method
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 8 vertices, 12 faces
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: translate
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Complete
[08:34] [ComfyUI] [SubprocessWorker] got response: ok
[08:34] [ComfyUI] [comfy-env] GeomPackTransformMesh done (0.01s): result: NodeOutput
[08:34] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'overlay', 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=184 sending call_method
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: overlay, Mode: fields
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 8 vertices, 12 faces
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 8 vertices, 12 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: Added mesh_id field and red/blue colors for overlay
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_overlay_0e272040.vtp
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (16 vertices)
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: mesh_id (components: 1)
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 16 vertices, 24 faces
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported combined VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_dual_overlay_0e272040.vtp
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Combined Mesh: 16 vertices, 24 faces
[08:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready
[08:34] [ComfyUI] [SubprocessWorker] got response: ok
[08:34] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput
[08:34] [ComfyUI] Prompt executed in 0.04 seconds
[08:34] Node executed (2 total), capturing...
[08:34] Frame 2 saved (frame_001.jpg, t=0.5s)
[08:34] [capture-node] freeze=2ms shot=98ms unfreeze=0ms saved=True
[08:34] Execution complete (t=0.5s)
[08:34] Captured 2 unique frames over 0.6s
[08:34] [debug] iframes: 1
[08:34] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177913, canvas=742x485, rafFrozen=True
[08:34] [timing] trigger_3d_previews: 0.0s
[08:36] Saved high-quality screenshot: transform_executed.png
[08:36] [timing] final_screenshot: 0.2s
[08:37] Capturing execution frames: uv_unwrap.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 4: GeomPackLoadMesh
[08:43] [ComfyUI] Inputs: {"file_path": "3d/camelhead.off"}
[08:43] [ComfyUI] Node 8: GeomPackUVUnwrap
[08:43] [ComfyUI] Inputs: {"backend": "xatlas", "report_panel": "false", "trimesh": ["4", 0]}
[08:43] [ComfyUI] Node 9: GeomPackPreviewMeshUV
[08:43] [ComfyUI] Inputs: {"show_checker": false, "show_wireframe": false, "uv_preview": "", "trimesh": ["8", 0]}
[08:43] Queuing workflow for execution...
[08:43] [ComfyUI] Generated prompt_id: bebdfcaf-88a6-47b1-911c-1c29a49674e3
[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 GeomPackLoadMesh: file_path: '3d/camelhead.off'
[08:43] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.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=185 sending call_method
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/camelhead.off
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/camelhead.off
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 11381 vertices, 22704 faces
[08:43] [ComfyUI] [SubprocessWorker] got response: ok
[08:43] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.07s): result: NodeOutput
[08:43] [ComfyUI] [comfy-env] Running GeomPackUVUnwrap: backend: dict, trimesh: Trimesh
[08:43] [ComfyUI] [SubprocessWorker] call_method: nodes.uv.uv_unwrap.UVUnwrapNode.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=186 sending call_method
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: UV Unwrap dispatch: xatlas -> GeomPackUV_Xatlas
[08:43] [ComfyUI] [SubprocessWorker] got response: ok
[08:43] [ComfyUI] [comfy-env] GeomPackUVUnwrap done (0.01s): result: NodeOutput
[08:43] [ComfyUI] [comfy-env] Running GeomPackUV_Xatlas: trimesh: Trimesh
[08:43] [ComfyUI] [SubprocessWorker] call_method: nodes.uv.backends.xatlas.UVXatlasNode.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=187 sending call_method
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: xatlas
[08:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 11381 vertices, 22704 faces
[08:45] Frame 2 saved (frame_001.jpg, t=2.3s)
[08:45] [capture-periodic] freeze=3ms shot=132ms unfreeze=3ms saved=True
[08:47] Frame 3 saved (frame_002.jpg, t=4.5s)
[08:47] [capture-periodic] freeze=10ms shot=131ms unfreeze=3ms saved=True
[08:49] [capture-loop] iter=50 t=6.1s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=8 ram=2.5/15.6GB (16%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.97GB
[08:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 14113 vertices, 22704 faces
[08:49] [ComfyUI] [SubprocessWorker] got response: ok
[08:49] [ComfyUI] [comfy-env] GeomPackUV_Xatlas done (6.71s): result: NodeOutput
[08:49] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshUV: show_checker: False, show_wireframe: False, trimesh: Trimesh
[08:49] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_uv.PreviewMeshUVNode.EXECUTE_NORMALIZED
[08:49] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[08:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[08:49] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[08:49] [ComfyUI] [SubprocessWorker] worker started/confirmed
[08:49] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[08:49] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[08:49] [ComfyUI] [SubprocessWorker] sending request via socket...
[08:49] [ComfyUI] [SubprocessWorker] call_id=188 sending call_method
[08:49] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 14113 vertices, 22704 faces
[08:50] Node executed (1 total), capturing...
[08:50] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found UV data: 14113 UV coordinates
[08:50] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: UV stats: range=[0.99957985 0.99956971], in_unit_square=True, coverage=0.5727
[08:50] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported mesh to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_uv_737cc290.glb
[08:50] Frame 4 saved (frame_003.jpg, t=7.2s)
[08:50] [capture-node] freeze=4ms shot=116ms unfreeze=5ms saved=True
[08:50] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported UV data to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_uv_9a26048b_uvdata.json
[08:50] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready: has_uvs=True, checker=False, wireframe=False
[08:50] [ComfyUI] [SubprocessWorker] got response: ok
[08:50] [ComfyUI] [comfy-env] GeomPackPreviewMeshUV done (0.47s): result: NodeOutput
[08:50] [ComfyUI] Prompt executed in 7.27 seconds
[08:50] Node executed (2 total), capturing...
[08:51] Frame 5 saved (frame_004.jpg, t=8.1s)
[08:51] [capture-node] freeze=101ms shot=221ms unfreeze=0ms saved=True
[08:51] Execution complete (t=8.0s)
[08:51] Captured 5 unique frames over 8.41s
[08:51] [debug] iframes: 1
[08:51] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_uv.html?v=17791368, canvas=287x287, rafFrozen=True
[08:51] [timing] trigger_3d_previews: 0.0s
[08:53] Saved high-quality screenshot: uv_unwrap_executed.png
[08:53] [timing] final_screenshot: 0.2s
[08:54] [32/33] SKIPPED (not in cpu list) uv_unwrap_all.json
[08:54] Capturing execution frames: view_texture.json
[09:00] Frame 1 saved (frame_000.jpg, t=0.0s)
[09:00] Validating workflow...
[09:00] [ComfyUI] === /validate endpoint called ===
[09:00] [ComfyUI] Received JSON with keys: ['prompt']
[09:00] [ComfyUI] Prompt has 2 nodes
[09:00] [ComfyUI] Node 3: GeomPackLoadMesh
[09:00] [ComfyUI] Inputs: {"file_path": "3d/mount_textured.glb"}
[09:00] [ComfyUI] Node 12: GeomPackPreviewMeshVTK
[09:00] [ComfyUI] Inputs: {"mode": "texture", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\"}", "trimesh": [
[09:00] [ComfyUI] Generated prompt_id: 8a079683-0b37-41ab-a8e9-c0316b08917d
[09:00] Queuing workflow for execution...
[09:00] [ComfyUI] Calling execution.validate_prompt()...
[09:00] [ComfyUI] Validation result: valid=True
[09:00] [ComfyUI] === Validation PASSED ===
[09:00] [ComfyUI] got prompt
[09:00] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/mount_textured.glb'
[09:00] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED
[09:00] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[09:00] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[09:00] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[09:00] [ComfyUI] [SubprocessWorker] worker started/confirmed
[09:00] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[09:00] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[09:00] [ComfyUI] [SubprocessWorker] sending request via socket...
[09:00] [ComfyUI] [SubprocessWorker] call_id=189 sending call_method
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/mount_textured.glb
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/input/3d/mount_textured.glb
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting Scene to single mesh (scene has 2 geometries)
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 3604 vertices, 6964 faces
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 3604 vertices, 6964 faces
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 3604 vertices, 6964 faces
[09:00] [ComfyUI] [SubprocessWorker] got response: ok
[09:00] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.14s): result: NodeOutput
[09:00] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'texture', trimesh: Trimesh
[09:00] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED
[09:00] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[09:00] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)...
[09:00] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok
[09:00] [ComfyUI] [SubprocessWorker] worker started/confirmed
[09:00] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[09:00] [ComfyUI] [SubprocessWorker] created 1 shm blocks
[09:00] [ComfyUI] [SubprocessWorker] sending request via socket...
[09:00] [ComfyUI] [SubprocessWorker] call_id=190 sending call_method
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 3604 vertices, 6964 faces
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: texture
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: texture, texture: True, vertex_colors: False
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using texture mode - GLB export
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Set alphaMode to OPAQUE for texture mode
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported GLB to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2032/ComfyUI/output/preview_vtk_edf200d4.glb
[09:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Texture mode info: watertight=False, volume=None, area=720.728733148043, texture=True, vertex_colors=False
[09:00] [ComfyUI] [SubprocessWorker] got response: ok
[09:00] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.21s): result: NodeOutput
[09:00] [ComfyUI] Prompt executed in 0.35 seconds
[09:00] Node executed (1 total), capturing...
[09:00] Frame 2 saved (frame_001.jpg, t=0.7s)
[09:00] [capture-node] freeze=5ms shot=250ms unfreeze=0ms saved=True
[09:00] Execution complete (t=0.7s)
[09:00] Captured 2 unique frames over 0.96s
[09:00] [debug] iframes: 1
[09:00] [debug] iframe[0]: src=http://127.0.0.1:41883/extensions/ComfyUI-GeometryPack/viewer_vtk_textured.html?, canvas=221x249, rafFrozen=True
[09:00] [timing] trigger_3d_previews: 0.0s
[09:03] Saved high-quality screenshot: view_texture_executed.png
[09:03] [timing] final_screenshot: 0.2s
[09:03] Results saved to /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GeometryPack-2032/dev/linux-cpu/results.json
[09:03] Saved: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GeometryPack-2032/dev/linux-cpu/index.html
[09:03] [EXECUTION] PASSED
[09:03]
linux: PASSED
[09:03] Stopping ComfyUI server...