[00:00] Crash dump logging enabled: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GeometryPack-2039/dev/linux-cpu/crash_dump.log [00:00] [00:00] [1/5] SYNTAX [00:00] ---------------------------------------- [00:00] [DEBUG] server=None, server_url=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, server_url=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-2039/.venv --python 3.11 [00:00] Cloning ComfyUI (latest)... [00:00] Running: git clone --depth 1 https://github.com/comfyanonymous/ComfyUI.git /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI [00:01] Installing ComfyUI requirements... [00:01] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/.venv/bin/python -r /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/requirements.txt [00:20] Installing custom node... [00:20] Copying ComfyUI-GeometryPack to custom_nodes/... [00:20] Installing node requirements... [00:20] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/.venv/bin/python -r /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack/requirements.txt [00:21] Running install.py... [00:21] Running: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/.venv/bin/python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack/install.py [00:22] [comfy-env] _discover: scanning /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes [00:22] [comfy-env] _discover: ComfyUI-GeometryPack -> geometrypack-nodes (custom_nodes/ComfyUI-GeometryPack/nodes/comfy-env.toml) [00:22] [comfy-env] Workspace: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce [00:22] [comfy-env] ComfyUI: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI [00:22] [comfy-env] Found 1 node config(s): [00:22] - geometrypack-nodes <- custom_nodes/ComfyUI-GeometryPack/nodes/comfy-env.toml (python=host) [00:22] [comfy-env] Bootstrap interpreter has python 3.11 + torch 2.11.0 (cpu). Looking for cuda-only wheels matching cpu/torch2.11/cp311. [00:25] [comfy-env] GPU: No GPU detected [00:25] [comfy-env] No CUDA detected -- pinning comfyui torch to CPU index [00:26] [comfy-env] Comfyui feature pin: torch ==2.11.0, torchvision ==0.26.*, torchaudio ==2.11.* [00:26] [comfy-env] Host glibc 2.39 -> system-requirements [00:26] [comfy-env] comfyui env: python 3.11, torch from https://download.pytorch.org/whl/cpu [00:26] Generated /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/pixi.toml [00:26] [comfy-env] Installing 1 environment(s): [00:26] - geometrypack-nodes (python=host, 14 pypi deps, 1 cuda wheels) [00:26] [comfy-env] Running `pixi install --all`... [00:53] WARN Skipped running the post-link scripts because `run-post-link-scripts` = `false` [00:53] - bin/.librsvg-pre-unlink.sh [00:53] To enable them, run: [00:53] pixi config set --local run-post-link-scripts insecure [00:53] More info: [00:53] https://pixi.sh/latest/reference/pixi_configuration/#run-post-link-scripts [00:54] ✔ The following environments have been installed: default, comfyui, geometrypack-nodes. [00:55] [comfy-env] Note: env `default` is on disk but no node declares it in this run. Leaving as-is. Remove via `pixi clean --environment default` if intended. [00:55] [comfy-env] Install log: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/install.log [00:55] [00:55] Installation complete! [00:57] Installing validation endpoint... [00:57] Cloning PozzettiAndrea/ComfyUI-validate-endpoint... [00:57] Running: git clone --depth 1 https://github.com/PozzettiAndrea/ComfyUI-validate-endpoint.git /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-validate-endpoint [00:57] CUDA packages absent (will mock): cumesh [00:57] [INSTALL] PASSED [00:57] [00:57] [3/5] REGISTRATION [00:57] ---------------------------------------- [00:57] [DEBUG] server=None, server_url=None, api=None [00:57] Starting ComfyUI server... [00:57] Starting ComfyUI server on port 41899... [00:57] CUDA mock packages: cumesh [00:57] Starting ComfyUI server on port 41899... [00:57] Waiting for server to be ready (timeout: 600s)... [00:59] [ComfyUI] setup plugin alembic.autogenerate.schemas [00:59] [ComfyUI] setup plugin alembic.autogenerate.tables [00:59] [ComfyUI] setup plugin alembic.autogenerate.types [00:59] [ComfyUI] setup plugin alembic.autogenerate.constraints [00:59] [ComfyUI] setup plugin alembic.autogenerate.defaults [00:59] [ComfyUI] setup plugin alembic.autogenerate.comments [00:59] [ComfyUI] [comfy-env] ComfyUI-GeometryPack: 1 isolation env(s): [00:59] [ComfyUI] [comfy-env] nodes -> /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack/nodes [00:59] [ComfyUI] [comfy-env] prestartup complete [00:59] [ComfyUI] [00:59] [ComfyUI] Prestartup times for custom nodes: [00:59] [ComfyUI] 0.2 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack [00:59] [ComfyUI] [01:04] [ComfyUI] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': 'Neither CUDA nor XPU available on this system', 'capabilities': []} [01:04] [ComfyUI] Found comfy_kitchen backend cuda: {'available': False, 'disabled': False, 'unavailable_reason': 'CUDA not available on this system', 'capabilities': []} [01:04] [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']} [01:04] [ComfyUI] Checkpoint files will always be loaded safely. [01:04] [ComfyUI] Total VRAM 15989 MB, total RAM 15989 MB [01:04] [ComfyUI] pytorch version: 2.11.0+cu130 [01:04] [ComfyUI] Set vram state to: DISABLED [01:04] [ComfyUI] Device: cpu [01:04] [ComfyUI] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention [01:10] [ComfyUI] Python version: 3.11.15 (main, Mar 3 2026, 16:10:12) [GCC 13.3.0] [01:10] [ComfyUI] ComfyUI version: 0.20.1 [01:10] [ComfyUI] comfy-aimdo version: 0.3.0 [01:10] [ComfyUI] comfy-kitchen version: 0.2.8 [01:10] [ComfyUI] ****** User settings have been changed to be stored on the server instead of browser storage. ****** [01:10] [ComfyUI] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ****** [01:10] [ComfyUI] ComfyUI frontend version: 1.43.18 [01:10] [ComfyUI] [Prompt Server] web root: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/.venv/lib/python3.11/site-packages/comfyui_frontend_package/static [01:10] [ComfyUI] Asset seeder disabled [01:13] [ComfyUI] loading... [01:13] [ComfyUI] calling register_nodes [01:13] [ComfyUI] [comfy-env] Version: 0.3.80 [01:13] [ComfyUI] [comfy-env] register_nodes: ComfyUI-GeometryPack [01:13] [ComfyUI] [comfy-env] ComfyUI source dir: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI [01:13] [ComfyUI] [comfy-env] Found 1 isolation env(s) [01:13] [ComfyUI] [comfy-env] Scanning nodes metadata (isolation root)... [01:13] [ComfyUI] [comfy-env] Metadata scan: /home/runner/.pixi/bin/pixi run --as-is --manifest-path /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/pixi.toml -e geometrypack-nodes python /tmp/comfy_meta_hxote7oq.py /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack nodes [01:13] [ComfyUI] [comfy-env] Scan env PATH for nodes: [01:13] [ComfyUI] [comfy-env] [0] /opt/hostedtoolcache/Python/3.11.15/x64/bin [01:13] [ComfyUI] [comfy-env] [1] /opt/hostedtoolcache/Python/3.11.15/x64 [01:13] [ComfyUI] [comfy-env] [2] /snap/bin [01:13] [ComfyUI] [comfy-env] [3] /home/runner/.local/bin [01:13] [ComfyUI] [comfy-env] [4] /opt/pipx_bin [01:13] [ComfyUI] [comfy-env] [5] /home/runner/.cargo/bin [01:13] [ComfyUI] [comfy-env] [6] /home/runner/.config/composer/vendor/bin [01:13] [ComfyUI] [comfy-env] [7] /usr/local/.ghcup/bin [01:13] [ComfyUI] [comfy-env] [8] /home/runner/.dotnet/tools [01:13] [ComfyUI] [comfy-env] [9] /usr/local/sbin [01:13] [ComfyUI] [comfy-env] [10] /usr/local/bin [01:13] [ComfyUI] [comfy-env] [11] /usr/sbin [01:13] [ComfyUI] [comfy-env] [12] /usr/bin [01:13] [ComfyUI] [comfy-env] [13] /sbin [01:13] [ComfyUI] [comfy-env] [14] /bin [01:13] [ComfyUI] [comfy-env] [15] /usr/games [01:13] [ComfyUI] [comfy-env] [16] /usr/local/games [01:13] [ComfyUI] [comfy-env] [17] /snap/bin [01:18] [ComfyUI] [comfy-env] Metadata scan stderr for nodes: [01:18] [ComfyUI] [comfy-env] [meta-scan] importing nodes from /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack [01:18] [ComfyUI] [comfy-env] ERROR:root:Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available. [01:18] [ComfyUI] [comfy-env] [meta-scan] import OK [01:18] [ComfyUI] [comfy-env] Scanned nodes: 125 nodes (5.6s) [01:18] [ComfyUI] [comfy-env] Scanned nodes root: 125 nodes (5.7s) [01:18] [ComfyUI] [comfy-env] Imported nodes root: 125 nodes (isolation) [01:18] [ComfyUI] [comfy-env] Registered 125 total nodes [01:18] [ComfyUI] [01:18] [ComfyUI] Import times for custom nodes: [01:18] [ComfyUI] 0.0 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-validate-endpoint [01:18] [ComfyUI] 0.0 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/websocket_image_save.py [01:18] [ComfyUI] 5.8 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack [01:18] [ComfyUI] [01:18] [ComfyUI] Context impl SQLiteImpl. [01:18] [ComfyUI] Will assume non-transactional DDL. [01:18] [ComfyUI] Context impl SQLiteImpl. [01:18] [ComfyUI] Will assume non-transactional DDL. [01:18] [ComfyUI] Running upgrade -> 0001_assets, Initial assets schema [01:18] [ComfyUI] Revision ID: 0001_assets [01:18] [ComfyUI] Revises: None [01:18] [ComfyUI] Create Date: 2025-12-10 00:00:00 [01:18] [ComfyUI] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table. [01:18] [ComfyUI] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references. [01:18] [ComfyUI] Change preview_id FK from assets.id to asset_references.id. [01:19] [ComfyUI] Database upgraded from None to 0003_add_metadata_job_id [01:19] [ComfyUI] Starting server [01:19] [ComfyUI] [01:19] [ComfyUI] To see the GUI go to: http://127.0.0.1:41899 [01:19] Server responding, waiting for nodes to load... [01:39] Server is ready! [01:39] Checking for import errors in server logs... [01:39] No import errors detected [01:39] Found 830 registered nodes [01:39] [REGISTRATION] PASSED [01:39] [01:39] [4/5] INSTANTIATION [01:39] ---------------------------------------- [01:39] [DEBUG] server=, server_url=None, api= [01:39] Testing node constructors... [01:41] All 125 node(s) instantiated successfully! [01:41] [INSTANTIATION] PASSED [01:41] [01:41] [5/5] EXECUTION [01:41] ---------------------------------------- [01:41] [DEBUG] server=, server_url=None, api= [01:41] CPU runner - will execute 30 workflow(s) [01:41] Running 33 workflow(s) (all with videos)... [01:41] Installing screenshot dependencies (playwright, pillow)... [01:42] Packages installed, downloading chromium browser... [01:51] Screenshot dependencies installed successfully [01:51] Starting headless browser... [01:52] Installing Mesa llvmpipe (apt)... [02:02] Mesa install failed: E: Unable to locate package libegl1-mesa [02:02] No GPU, no Mesa -- using SwiftShader software rendering [02:03] Capturing execution frames: alpha_wrap.json [02:10] Frame 1 saved (frame_000.jpg, t=0.0s) [02:10] Validating workflow... [02:10] [ComfyUI] === /validate endpoint called === [02:10] [ComfyUI] Received JSON with keys: ['prompt'] [02:10] [ComfyUI] Prompt has 5 nodes [02:10] [ComfyUI] Node 4: GeomPackLoadMesh [02:10] [ComfyUI] Inputs: {"file_path": "3d/ArmoredWarrior_00005_.glb"} [02:10] [ComfyUI] Node 5: GeomPackAlphaWrap [02:10] [ComfyUI] Inputs: {"alpha_percent": 1.1, "offset_percent": 0.01, "report_panel": "false", "input_mesh": ["4", 0]} [02:10] [ComfyUI] Node 6: GeomPackPreviewMeshDual [02:10] [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 [02:10] [ComfyUI] Node 9: GeomPackPreviewMeshMulti [02:10] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[1.6361067258611197,1.6476459280683735,1.6093683078862575],\\\"focalPoint\\\":[0.0000012814998626708984,- [02:10] [ComfyUI] Node 11: GeomPackRemesh [02:10] Queuing workflow for execution... [02:10] [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]} [02:10] [ComfyUI] Generated prompt_id: 15e4ea83-a325-4cdb-88d6-3b27a418f512 [02:10] [ComfyUI] Calling execution.validate_prompt()... [02:10] [ComfyUI] Validation result: valid=True [02:10] [ComfyUI] === Validation PASSED === [02:10] [ComfyUI] got prompt [02:10] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/ArmoredWarrior_00005_.glb' [02:10] [ComfyUI] [comfy-env] SubprocessWorker: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [02:10] [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-2039/ComfyUI'} [02:10] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [02:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:10] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [02:10] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack'] [02:10] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [02:10] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py', 'abstract://comfy_worker_9e5bdee1bdfa']... [02:10] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_9e5bdee1bdfa (abstract, no filesystem path) [02: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. [02:11] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:11] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:11] [ComfyUI] [SubprocessWorker] created 0 shm blocks [02:11] [ComfyUI] [SubprocessWorker] sending request via socket... [02:11] [ComfyUI] [SubprocessWorker] call_id=1 sending call_method [02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/ArmoredWarrior_00005_.glb [02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/ArmoredWarrior_00005_.glb [02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting Scene to single mesh (scene has 1 geometries) [02:12] Frame 2 saved (frame_001.jpg, t=2.3s) [02:12] [capture-periodic] freeze=3ms shot=94ms unfreeze=9ms saved=True [02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 18061 vertices, 19827 faces [02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 18061 vertices, 19827 faces [02:12] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 18061 vertices, 19827 faces [02:12] [ComfyUI] [SubprocessWorker] got response: ok [02:13] [ComfyUI] [comfy-env] GeomPackLoadMesh done (3.38s): result: NodeOutput [02:13] [ComfyUI] [comfy-env] Running GeomPackAlphaWrap: alpha_percent: 1.1, offset_percent: 0.01, input_mesh: Trimesh [02:13] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction_cgal.alpha_wrap.AlphaWrapNode.EXECUTE_NORMALIZED [02:13] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:13] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:13] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:13] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:13] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:13] [ComfyUI] [SubprocessWorker] sending request via socket... [02:13] [ComfyUI] [SubprocessWorker] call_id=2 sending call_method [02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 18,061 vertices, 19,827 faces (mesh) [02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Bounding box diagonal: 1.4618 [02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Alpha: 0.016080 (1.1% of bbox) [02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Offset: 0.000146 (0.01% of bbox) [02:13] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2 [02:13] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2 [02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Built CGAL input data in 0.2s [02:13] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Running CGAL Alpha Wrap... [02:14] Frame 3 saved (frame_002.jpg, t=4.4s) [02:14] [capture-periodic] freeze=2ms shot=95ms unfreeze=6ms saved=True [02:15] [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=34% browser_rss=0.85GB [02:16] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2 [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Alpha Wrap finished in 0.0s, RSS 879 MB (+33 MB) [02:16] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2 [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extracted result mesh in 0.2s [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 12,770 vertices, 25,536 faces [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Watertight: True [02:16] [ComfyUI] [SubprocessWorker] got response: ok [02:16] [ComfyUI] [comfy-env] GeomPackAlphaWrap done (3.08s): result: NodeOutput [02:16] [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:16] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [02:16] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:16] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:16] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:16] [ComfyUI] [SubprocessWorker] created 2 shm blocks [02:16] [ComfyUI] [SubprocessWorker] sending request via socket... [02:16] [ComfyUI] [SubprocessWorker] call_id=3 sending call_method [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 18061 vertices, 19827 faces [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 12770 vertices, 25536 faces [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: [] [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=texture, texture=True, vertex_colors=False [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_a30888f4.stl [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_a30888f4.stl [02:16] Frame 4 saved (frame_003.jpg, t=6.6s) [02:16] [capture-periodic] freeze=2ms shot=143ms unfreeze=7ms saved=True [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [02:16] [ComfyUI] [SubprocessWorker] got response: ok [02:16] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.16s): result: NodeOutput [02:16] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh [02:16] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED [02:16] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:16] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:16] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:16] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:16] [ComfyUI] [SubprocessWorker] sending request via socket... [02:16] [ComfyUI] [SubprocessWorker] call_id=4 sending call_method [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab [02:16] [ComfyUI] [SubprocessWorker] got response: ok [02:16] [ComfyUI] [comfy-env] GeomPackRemesh done (0.02s): result: NodeOutput [02:16] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false' [02:16] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED [02:16] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:16] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:16] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:16] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:16] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:16] [ComfyUI] [SubprocessWorker] sending request via socket... [02:16] [ComfyUI] [SubprocessWorker] call_id=5 sending call_method [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 12770 vertices, 25536 faces [02:16] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false [02:17] Node executed (2 total), capturing... [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 1973 vertices, 3942 faces [02:18] [ComfyUI] [SubprocessWorker] got response: ok [02:18] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (1.31s): result: NodeOutput [02:18] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh [02:18] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [02:18] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:18] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:18] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:18] [ComfyUI] [SubprocessWorker] created 3 shm blocks [02:18] [ComfyUI] [SubprocessWorker] sending request via socket... [02:18] [ComfyUI] [SubprocessWorker] call_id=6 sending call_method [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3 [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 18061 vertices, 19827 faces [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_137f5c9f.vtp [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (18061 vertices) [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 18061 vertices, 19827 faces [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_137f5c9f.vtp [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 12770 vertices, 25536 faces [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_137f5c9f.vtp [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (12770 vertices) [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 12770 vertices, 25536 faces [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_137f5c9f.vtp [02:18] Frame 5 saved (frame_004.jpg, t=7.1s) [02:18] [capture-node] freeze=570ms shot=881ms unfreeze=3ms saved=True [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 1973 vertices, 3942 faces [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_137f5c9f.vtp [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (1973 vertices) [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 1973 vertices, 3942 faces [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_137f5c9f.vtp [02:18] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready [02:18] [ComfyUI] [SubprocessWorker] got response: ok [02:18] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.45s): result: NodeOutput [02:18] [ComfyUI] Prompt executed in 8.41 seconds [02:18] Node executed (3 total), capturing... [02:19] [capture-node] freeze=3ms shot=111ms unfreeze=6ms saved=False [02:19] Node executed (4 total), capturing... [02:20] Frame 6 saved (frame_005.jpg, t=9.2s) [02:20] [capture-node] freeze=581ms shot=452ms unfreeze=0ms saved=True [02:20] Execution complete (t=9.2s) [02:20] Captured 6 unique frames over 10.28s [02:20] [debug] iframes: 2 [02:20] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [02:20] [debug] iframe[1]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=244x393, rafFrozen=True [02:20] [timing] trigger_3d_previews: 0.0s [02:22] Saved high-quality screenshot: alpha_wrap_executed.png [02:22] [timing] final_screenshot: 0.3s [02:23] Capturing execution frames: batch_remesh.json [02:28] Frame 1 saved (frame_000.jpg, t=0.0s) [02:28] Validating workflow... [02:28] [ComfyUI] === /validate endpoint called === [02:28] [ComfyUI] Received JSON with keys: ['prompt'] [02:28] [ComfyUI] Prompt has 4 nodes [02:28] [ComfyUI] Node 1: GeomPackLoadMeshBatch [02:28] [ComfyUI] Inputs: {"folder_path": "3d", "start_index": 0, "max_meshes": 4} [02:28] [ComfyUI] Node 4: GeomPackMeshInfo [02:28] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]} [02:28] [ComfyUI] Node 6: GeomPackPreviewMeshVTKBatch [02:28] [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:28] [ComfyUI] Node 11: GeomPackRemesh [02:28] [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:28] [ComfyUI] Generated prompt_id: 47b2dd2a-254d-4cdb-b4f2-c612544e59cb [02:28] Queuing workflow for execution... [02:28] [ComfyUI] Calling execution.validate_prompt()... [02:28] [ComfyUI] Validation result: valid=True [02:28] [ComfyUI] === Validation PASSED === [02:28] [ComfyUI] got prompt [02:28] [ComfyUI] [comfy-env] Running GeomPackLoadMeshBatch: folder_path: '3d', start_index: 0, max_meshes: 4 [02:28] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh_batch.LoadMeshBatch.EXECUTE_NORMALIZED [02:28] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:28] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:28] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:28] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:28] [ComfyUI] [SubprocessWorker] created 0 shm blocks [02:28] [ComfyUI] [SubprocessWorker] sending request via socket... [02:28] [ComfyUI] [SubprocessWorker] call_id=7 sending call_method [02:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found folder in input: 3d [02:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 12 mesh files [02:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading up to 4 meshes [02:28] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/ArmoredWarrior_00005_.glb [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting Scene to single mesh (scene has 1 geometries) [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 18061 vertices, 19827 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 18061 vertices, 19827 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [1/4] Loaded ArmoredWarrior_00005_.glb: 18061 vertices, 19827 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/Stanford_Bunny.stl [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [2/4] Loaded Stanford_Bunny.stl: 56203 vertices, 112402 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/camel_b.obj [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2032 vertices, 3576 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2032 vertices, 3576 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [3/4] Loaded camel_b.obj: 2032 vertices, 3576 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/camelhead.off [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: [4/4] Loaded camelhead.off: 11381 vertices, 22704 faces [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded 4 meshes [02:29] [ComfyUI] [SubprocessWorker] got response: ok [02:29] [ComfyUI] [comfy-env] GeomPackLoadMeshBatch done (0.74s): result: NodeOutput [02:29] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh [02:29] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED [02:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:29] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:29] [ComfyUI] [SubprocessWorker] sending request via socket... [02:29] [ComfyUI] [SubprocessWorker] call_id=8 sending call_method [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab [02:29] [ComfyUI] [SubprocessWorker] got response: ok [02:29] [ComfyUI] [comfy-env] GeomPackRemesh done (0.23s): result: NodeOutput [02:29] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh [02:29] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED [02:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:29] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:29] [ComfyUI] [SubprocessWorker] sending request via socket... [02:29] [ComfyUI] [SubprocessWorker] call_id=9 sending call_method [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab [02:29] [ComfyUI] [SubprocessWorker] got response: ok [02:29] [ComfyUI] [comfy-env] GeomPackRemesh done (0.03s): result: NodeOutput [02:29] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh [02:29] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED [02:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:29] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:29] [ComfyUI] [SubprocessWorker] sending request via socket... [02:29] [ComfyUI] [SubprocessWorker] call_id=10 sending call_method [02:29] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab [02:29] [ComfyUI] [SubprocessWorker] got response: ok [02:29] [ComfyUI] [comfy-env] GeomPackRemesh done (0.01s): result: NodeOutput [02:29] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh [02:29] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED [02:29] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:29] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:29] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:29] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:29] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:29] [ComfyUI] [SubprocessWorker] sending request via socket... [02:29] [ComfyUI] [SubprocessWorker] call_id=11 sending call_method [02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab [02:30] [ComfyUI] [SubprocessWorker] got response: ok [02:30] [ComfyUI] [comfy-env] GeomPackRemesh done (0.01s): result: NodeOutput [02:30] [ComfyUI] [comfy-env] Running GeomPackMeshInfo: trimesh: list[4] [02:30] [ComfyUI] [SubprocessWorker] call_method: nodes.analysis.mesh_info.MeshInfoNode.EXECUTE_NORMALIZED [02:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:30] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:30] [ComfyUI] [SubprocessWorker] created 4 shm blocks [02:30] [ComfyUI] [SubprocessWorker] sending request via socket... [02:30] [ComfyUI] [SubprocessWorker] call_id=12 sending call_method [02:30] [ComfyUI] [SubprocessWorker] got response: ok [02:30] [ComfyUI] [comfy-env] GeomPackMeshInfo done (0.37s): result: NodeOutput [02:30] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false' [02:30] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED [02:30] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:30] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:30] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:30] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:30] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:30] [ComfyUI] [SubprocessWorker] sending request via socket... [02:30] [ComfyUI] [SubprocessWorker] call_id=13 sending call_method [02:30] Node executed (1 total), capturing... [02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic [02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 18061 vertices, 19827 faces [02:30] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false [02:30] Frame 2 saved (frame_001.jpg, t=1.8s) [02:30] [capture-node] freeze=3ms shot=111ms unfreeze=3ms saved=True [02:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 5249 vertices, 11066 faces [02:31] [ComfyUI] [SubprocessWorker] got response: ok [02:31] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (1.11s): result: NodeOutput [02:31] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false' [02:31] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED [02:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:31] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:31] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:31] [ComfyUI] [SubprocessWorker] sending request via socket... [02:31] [ComfyUI] [SubprocessWorker] call_id=14 sending call_method [02:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic [02:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces [02:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false [02:31] Node executed (2 total), capturing... [02:31] Frame 3 saved (frame_002.jpg, t=2.8s) [02:31] [capture-node] freeze=3ms shot=87ms unfreeze=8ms saved=True [02:34] Frame 4 saved (frame_003.jpg, t=5.0s) [02:34] [capture-periodic] freeze=3ms shot=175ms unfreeze=5ms saved=True [02:35] [capture-loop] iter=50 t=6.2s 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=37% browser_rss=0.85GB [02:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 32288 vertices, 64572 faces [02:36] [ComfyUI] [SubprocessWorker] got response: ok [02:36] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (5.19s): result: NodeOutput [02:36] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false' [02:36] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED [02:36] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:36] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:36] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:36] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:36] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:36] [ComfyUI] [SubprocessWorker] sending request via socket... [02:36] [ComfyUI] [SubprocessWorker] call_id=15 sending call_method [02:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic [02:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2032 vertices, 3576 faces [02:36] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false [02:36] Node executed (3 total), capturing... [02:36] Frame 5 saved (frame_004.jpg, t=8.0s) [02:36] [capture-node] freeze=4ms shot=88ms unfreeze=8ms saved=True [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 9672 vertices, 19342 faces [02:37] [ComfyUI] [SubprocessWorker] got response: ok [02:37] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (0.50s): result: NodeOutput [02:37] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false' [02:37] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED [02:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:37] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:37] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:37] [ComfyUI] [SubprocessWorker] sending request via socket... [02:37] [ComfyUI] [SubprocessWorker] call_id=16 sending call_method [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 11381 vertices, 22704 faces [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false [02:37] Node executed (4 total), capturing... [02:37] Frame 6 saved (frame_005.jpg, t=8.5s) [02:37] [capture-node] freeze=4ms shot=100ms unfreeze=3ms saved=True [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 207 vertices, 396 faces [02:37] [ComfyUI] [SubprocessWorker] got response: ok [02:37] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (0.79s): result: NodeOutput [02:37] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTKBatch: mode: list[1], index: list[1], trimesh: list[4] [02:37] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk_batch.PreviewMeshVTKBatchNode.EXECUTE_NORMALIZED [02:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:37] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:37] [ComfyUI] [SubprocessWorker] created 4 shm blocks [02:37] [ComfyUI] [SubprocessWorker] sending request via socket... [02:37] [ComfyUI] [SubprocessWorker] call_id=17 sending call_method [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Batch size: 4, showing index: 1/4 [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 5249 vertices, 11066 faces [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP/STL export [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_batch_e9911719.stl [02:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=False, volume=None, area=4.31976988243847, no fields [02:38] [ComfyUI] [SubprocessWorker] got response: ok [02:38] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTKBatch done (0.03s): result: NodeOutput [02:38] [ComfyUI] Prompt executed in 9.02 seconds [02:38] Node executed (6 total), capturing... [02:38] Frame 7 saved (frame_006.jpg, t=9.3s) [02:38] [capture-node] freeze=4ms shot=120ms unfreeze=7ms saved=True [02:38] Execution complete (t=9.7s) [02:38] Captured 7 unique frames over 9.75s [02:38] [debug] iframes: 1 [02:38] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1778445, canvas=622x373, rafFrozen=False [02:38] [timing] trigger_3d_previews: 0.0s [02:40] Saved high-quality screenshot: batch_remesh_executed.png [02:40] [timing] final_screenshot: 0.2s [02:41] Capturing execution frames: boolean_ops.json [02:47] Frame 1 saved (frame_000.jpg, t=0.0s) [02:47] Validating workflow... [02:47] [ComfyUI] === /validate endpoint called === [02:47] [ComfyUI] Received JSON with keys: ['prompt'] [02:47] [ComfyUI] Prompt has 5 nodes [02:47] [ComfyUI] Node 1: GeomPackCreatePrimitive [02:47] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1} [02:47] [ComfyUI] Node 2: GeomPackCreatePrimitive [02:47] [ComfyUI] Inputs: {"shape": "sphere", "size": 2.5, "subdivisions": 2} [02:47] [ComfyUI] Node 21: GeomPackPreviewMeshDual [02:47] [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:47] [ComfyUI] Node 22: GeomPackPreviewMeshVTK [02:47] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":true,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\"}", "trimesh": ["2 [02:47] Queuing workflow for execution... [02:47] [ComfyUI] Node 25: GeomPackBoolean [02:47] [ComfyUI] Inputs: {"operation": "union", "backend": "libigl_cgal", "mesh_a": ["1", 0], "mesh_b": ["2", 0]} [02:47] [ComfyUI] Generated prompt_id: b0828e51-cc1e-4c19-9674-60683e6ac0c3 [02:47] [ComfyUI] Calling execution.validate_prompt()... [02:47] [ComfyUI] Validation result: valid=True [02:47] [ComfyUI] === Validation PASSED === [02:47] [ComfyUI] got prompt [02:47] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 2.5, subdivisions: 2 [02:47] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [02:47] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:47] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:47] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:47] [ComfyUI] [SubprocessWorker] created 0 shm blocks [02:47] [ComfyUI] [SubprocessWorker] sending request via socket... [02:47] [ComfyUI] [SubprocessWorker] call_id=18 sending call_method [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 162 vertices, 320 faces [02:47] [ComfyUI] [SubprocessWorker] got response: ok [02:47] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [02:47] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1 [02:47] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [02:47] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:47] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:47] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:47] [ComfyUI] [SubprocessWorker] created 0 shm blocks [02:47] [ComfyUI] [SubprocessWorker] sending request via socket... [02:47] [ComfyUI] [SubprocessWorker] call_id=19 sending call_method [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces [02:47] [ComfyUI] [SubprocessWorker] got response: ok [02:47] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [02:47] [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:47] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [02:47] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:47] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:47] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:47] [ComfyUI] [SubprocessWorker] created 2 shm blocks [02:47] [ComfyUI] [SubprocessWorker] sending request via socket... [02:47] [ComfyUI] [SubprocessWorker] call_id=20 sending call_method [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 8 vertices, 12 faces [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 162 vertices, 320 faces [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: [] [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_5bd2b04b.stl [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_5bd2b04b.stl [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [02:47] [ComfyUI] [SubprocessWorker] got response: ok [02:47] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.01s): result: NodeOutput [02:47] [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'union', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh [02:47] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.EXECUTE_NORMALIZED [02:47] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:47] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:47] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:47] [ComfyUI] [SubprocessWorker] created 2 shm blocks [02:47] [ComfyUI] [SubprocessWorker] sending request via socket... [02:47] [ComfyUI] [SubprocessWorker] call_id=21 sending call_method [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: libigl_cgal -> GeomPackBoolean_LibiglCGAL [02:47] [ComfyUI] [SubprocessWorker] got response: ok [02:47] [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput [02:47] [ComfyUI] [comfy-env] Running GeomPackBoolean_LibiglCGAL: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'union' [02:47] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.backends.libigl_cgal.BooleanLibiglCGALNode.EXECUTE_NORMALIZED [02:47] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:47] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:47] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:47] [ComfyUI] [SubprocessWorker] created 2 shm blocks [02:47] [ComfyUI] [SubprocessWorker] sending request via socket... [02:47] [ComfyUI] [SubprocessWorker] call_id=22 sending call_method [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_cgal [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 8 vertices, 12 faces [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 162 vertices, 320 faces [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: union [02:47] Node executed (1 total), capturing... [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 302 vertices, 600 faces [02:47] [ComfyUI] [SubprocessWorker] got response: ok [02:47] [ComfyUI] [comfy-env] GeomPackBoolean_LibiglCGAL done (0.21s): result: NodeOutput [02:47] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh [02:47] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED [02:47] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [02:47] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [02:47] [ComfyUI] [SubprocessWorker] worker started/confirmed [02:47] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [02:47] [ComfyUI] [SubprocessWorker] created 1 shm blocks [02:47] [ComfyUI] [SubprocessWorker] sending request via socket... [02:47] [ComfyUI] [SubprocessWorker] call_id=23 sending call_method [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 302 vertices, 600 faces [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_b2067c83.vtp [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (302 vertices) [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 302 vertices, 600 faces [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_b2067c83.vtp [02:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=True, volume=9.214489033870414, area=25.093742655540616, no fields [02:47] [ComfyUI] [SubprocessWorker] got response: ok [02:47] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.02s): result: NodeOutput [02:47] [ComfyUI] Prompt executed in 0.27 seconds [02:48] Frame 2 saved (frame_001.jpg, t=0.4s) [02:48] [capture-node] freeze=59ms shot=360ms unfreeze=3ms saved=True [02:48] Node executed (3 total), capturing... [02:48] Frame 3 saved (frame_002.jpg, t=1.1s) [02:48] [capture-node] freeze=3ms shot=106ms unfreeze=0ms saved=True [02:48] Execution complete (t=1.1s) [02:48] Captured 3 unique frames over 1.3s [02:48] [debug] iframes: 2 [02:48] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [02:48] [debug] iframe[1]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1778445, canvas=486x348, rafFrozen=True [02:48] [timing] trigger_3d_previews: 0.0s [02:51] Saved high-quality screenshot: boolean_ops_executed.png [02:51] [timing] final_screenshot: 0.2s [02:51] Capturing execution frames: boolean_ops_all.json [02:57] Frame 1 saved (frame_000.jpg, t=0.0s) [02:57] Validating workflow... [02:57] [ComfyUI] === /validate endpoint called === [02:57] [ComfyUI] Received JSON with keys: ['prompt'] [02:57] [ComfyUI] Prompt has 5 nodes [02:57] [ComfyUI] Node 1: GeomPackCreatePrimitive [02:57] [ComfyUI] Inputs: {"shape": "sphere", "size": 1, "subdivisions": 4} [02:57] [ComfyUI] Node 2: GeomPackCreatePrimitive [02:57] [ComfyUI] Inputs: {"shape": "cube", "size": 0.8, "subdivisions": 1} [02:57] [ComfyUI] Node 3: GeomPackBoolean [02:57] [ComfyUI] Inputs: {"operation": "difference", "backend": "libigl_cgal", "mesh_a": ["1", 0], "mesh_b": ["2", 0]} [02:57] [ComfyUI] Node 4: GeomPackBoolean [02:57] [ComfyUI] Inputs: {"operation": "difference", "backend": "blender_exact", "mesh_a": ["1", 0], "mesh_b": ["2", 0]} [02:57] Queuing workflow for execution... [02:57] [ComfyUI] Node 5: GeomPackPreviewMeshMulti [02:57] [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:57] [ComfyUI] Generated prompt_id: 47073710-1f18-44db-803f-093399b7c6a1 [02:57] [ComfyUI] Calling execution.validate_prompt()... [02:57] [ComfyUI] Validation result: valid=True [02:57] [ComfyUI] === Validation PASSED === [02:57] [ComfyUI] got prompt [02:57] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 0.8, subdivisions: 1 [02:57] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.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 0 shm blocks [02:57] [ComfyUI] [SubprocessWorker] sending request via socket... [02:57] [ComfyUI] [SubprocessWorker] call_id=24 sending call_method [02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces [02:57] [ComfyUI] [SubprocessWorker] got response: ok [02:57] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [02:57] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 1.0, subdivisions: 4 [02:57] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.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 0 shm blocks [02:57] [ComfyUI] [SubprocessWorker] sending request via socket... [02:57] [ComfyUI] [SubprocessWorker] call_id=25 sending call_method [02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 2562 vertices, 5120 faces [02:57] [ComfyUI] [SubprocessWorker] got response: ok [02:57] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [02:57] [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'difference', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh [02:57] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.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 2 shm blocks [02:57] [ComfyUI] [SubprocessWorker] sending request via socket... [02:57] [ComfyUI] [SubprocessWorker] call_id=26 sending call_method [02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: libigl_cgal -> GeomPackBoolean_LibiglCGAL [02:57] [ComfyUI] [SubprocessWorker] got response: ok [02:57] [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput [02:57] [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'difference', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh [02:57] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.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 2 shm blocks [02:57] [ComfyUI] [SubprocessWorker] sending request via socket... [02:57] [ComfyUI] [SubprocessWorker] call_id=27 sending call_method [02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: blender_exact -> GeomPackBoolean_BlenderExact [02:57] [ComfyUI] [SubprocessWorker] got response: ok [02:57] [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput [02:57] [ComfyUI] [comfy-env] Running GeomPackBoolean_LibiglCGAL: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'difference' [02:57] [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.backends.libigl_cgal.BooleanLibiglCGALNode.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 2 shm blocks [02:57] [ComfyUI] [SubprocessWorker] sending request via socket... [02:57] [ComfyUI] [SubprocessWorker] call_id=28 sending call_method [02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_cgal [02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 2562 vertices, 5120 faces [02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 8 vertices, 12 faces [02:57] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: difference [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 2202 vertices, 4380 faces [02:58] [ComfyUI] [SubprocessWorker] got response: ok [02:58] [ComfyUI] [comfy-env] GeomPackBoolean_LibiglCGAL done (0.64s): result: NodeOutput [02:58] [ComfyUI] [comfy-env] Running GeomPackBoolean_BlenderExact: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'difference' [02:58] [ComfyUI] [SubprocessWorker] call_method: nodes.blender_boolean.boolean.BooleanBlenderExactNode.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 2 shm blocks [02:58] [ComfyUI] [SubprocessWorker] sending request via socket... [02:58] [ComfyUI] [SubprocessWorker] call_id=29 sending call_method [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: blender_exact [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 2562 vertices, 5120 faces [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 8 vertices, 12 faces [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: difference [02:58] Node executed (1 total), capturing... [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 2202 vertices, 4380 faces [02:58] [ComfyUI] [SubprocessWorker] got response: ok [02:58] [ComfyUI] [comfy-env] GeomPackBoolean_BlenderExact done (0.20s): result: NodeOutput [02:58] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh [02:58] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.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 2 shm blocks [02:58] [ComfyUI] [SubprocessWorker] sending request via socket... [02:58] [ComfyUI] [SubprocessWorker] call_id=30 sending call_method [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2 [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2202 vertices, 4380 faces [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_1f84d557.vtp [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2202 vertices) [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2202 vertices, 4380 faces [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_1f84d557.vtp [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2202 vertices, 4380 faces [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_1f84d557.vtp [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2202 vertices) [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2202 vertices, 4380 faces [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_1f84d557.vtp [02:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready [02:58] [ComfyUI] [SubprocessWorker] got response: ok [02:58] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.06s): result: NodeOutput [02:58] [ComfyUI] Prompt executed in 0.95 seconds [02:58] Frame 2 saved (frame_001.jpg, t=1.0s) [02:58] [capture-node] freeze=4ms shot=131ms unfreeze=9ms saved=True [02:59] Node executed (3 total), capturing... [02:59] Frame 3 saved (frame_002.jpg, t=1.7s) [02:59] [capture-node] freeze=3ms shot=136ms unfreeze=0ms saved=True [02:59] Execution complete (t=1.7s) [02:59] Captured 3 unique frames over 1.86s [02:59] [debug] iframes: 1 [02:59] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=368x393, rafFrozen=True [02:59] [timing] trigger_3d_previews: 0.0s [03:01] Saved high-quality screenshot: boolean_ops_all_executed.png [03:01] [timing] final_screenshot: 0.3s [03:02] Capturing execution frames: decimate.json [03:08] Frame 1 saved (frame_000.jpg, t=0.0s) [03:08] Validating workflow... [03:08] [ComfyUI] === /validate endpoint called === [03:08] [ComfyUI] Received JSON with keys: ['prompt'] [03:08] [ComfyUI] Prompt has 3 nodes [03:08] [ComfyUI] Node 2: GeomPackLoadMesh [03:08] [ComfyUI] Inputs: {"file_path": "3d/spot_the_cow.obj"} [03:08] [ComfyUI] Node 3: GeomPackPreviewMeshDual [03:08] [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 [03:08] Queuing workflow for execution... [03:08] [ComfyUI] Node 4: GeomPackDecimateMesh [03:08] [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 [03:08] [ComfyUI] Generated prompt_id: cfda6583-1f4d-4252-bc2d-94d310e5c9a7 [03:08] [ComfyUI] Calling execution.validate_prompt()... [03:08] [ComfyUI] Validation result: valid=True [03:08] [ComfyUI] === Validation PASSED === [03:08] [ComfyUI] got prompt [03:08] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/spot_the_cow.obj' [03:08] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [03:08] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:08] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:08] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:08] [ComfyUI] [SubprocessWorker] created 0 shm blocks [03:08] [ComfyUI] [SubprocessWorker] sending request via socket... [03:08] [ComfyUI] [SubprocessWorker] call_id=31 sending call_method [03:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/spot_the_cow.obj [03:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/spot_the_cow.obj [03:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 3225 vertices, 5856 faces [03:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 3225 vertices, 5856 faces [03:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 3225 vertices, 5856 faces [03:08] [ComfyUI] [SubprocessWorker] got response: ok [03:08] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.05s): result: NodeOutput [03:08] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh [03:08] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED [03:08] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:08] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:08] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:08] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:08] [ComfyUI] [SubprocessWorker] sending request via socket... [03:08] [ComfyUI] [SubprocessWorker] call_id=32 sending call_method [03:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: quadric_edge_collapse -> GeomPackDecimate_QuadricEdgeCollapse [03:08] [ComfyUI] [SubprocessWorker] got response: ok [03:08] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.02s): result: NodeOutput [03:08] [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' [03:08] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.quadric_edge_collapse.DecimateQuadricEdgeCollapseNode.EXECUTE_NORMALIZED [03:08] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:08] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:08] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:08] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:08] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:08] [ComfyUI] [SubprocessWorker] sending request via socket... [03:08] [ComfyUI] [SubprocessWorker] call_id=33 sending call_method [03:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: quadric_edge_collapse [03:08] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 3,225 vertices, 5,856 faces [03:09] [ComfyUI] [SubprocessWorker] got response: ok [03:09] [ComfyUI] [comfy-env] GeomPackDecimate_QuadricEdgeCollapse done (0.09s): result: NodeOutput [03: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 [03:09] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [03:09] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:09] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:09] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:09] [ComfyUI] [SubprocessWorker] created 2 shm blocks [03:09] [ComfyUI] [SubprocessWorker] sending request via socket... [03:09] [ComfyUI] [SubprocessWorker] call_id=34 sending call_method [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 3225 vertices, 5856 faces [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 504 vertices, 1004 faces [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: [] [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=texture, texture=True, vertex_colors=False [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_519ff15b.stl [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_519ff15b.stl [03:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [03:09] [ComfyUI] [SubprocessWorker] got response: ok [03:09] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput [03:09] [ComfyUI] Prompt executed in 0.18 seconds [03:09] Node executed (2 total), capturing... [03:09] Frame 2 saved (frame_001.jpg, t=0.5s) [03:09] [capture-node] freeze=22ms shot=242ms unfreeze=0ms saved=True [03:09] Execution complete (t=0.5s) [03:09] Captured 2 unique frames over 0.85s [03:09] [debug] iframes: 1 [03:09] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [03:09] [timing] trigger_3d_previews: 0.0s [03:11] Saved high-quality screenshot: decimate_executed.png [03:11] [timing] final_screenshot: 0.3s [03:12] Capturing execution frames: decimate_all.json [03:18] Frame 1 saved (frame_000.jpg, t=0.0s) [03:18] Validating workflow... [03:18] [ComfyUI] === /validate endpoint called === [03:18] [ComfyUI] Received JSON with keys: ['prompt'] [03:18] [ComfyUI] Prompt has 7 nodes [03:18] [ComfyUI] Node 1: GeomPackLoadMesh [03:18] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"} [03:18] [ComfyUI] Node 2: GeomPackDecimateMesh [03:18] [ComfyUI] Inputs: {"backend": "quadric_edge_collapse", "backend.target_face_count": 5000, "backend.quality_threshold": 0.3, "backend.preserve_boundary": "true", "backend.preserve_normal": "true", "backend.preserve_topo [03:18] [ComfyUI] Node 3: GeomPackDecimateMesh [03:18] [ComfyUI] Inputs: {"backend": "fast_simplification", "backend.target_reduction": 0.8, "backend.aggressiveness": 7, "trimesh": ["1", 0]} [03:18] [ComfyUI] Node 4: GeomPackDecimateMesh [03:18] [ComfyUI] Inputs: {"backend": "vertex_clustering", "backend.cluster_threshold": 3, "trimesh": ["1", 0]} [03:18] [ComfyUI] Node 6: GeomPackDecimateMesh [03:18] [ComfyUI] Inputs: {"backend": "decimate_pro", "backend.target_reduction": 0.8, "backend.feature_angle": 15, "backend.preserve_topology": "true", "trimesh": ["1", 0]} [03:18] [ComfyUI] Node 7: GeomPackPreviewMeshMulti [03:18] Queuing workflow for execution... [03:18] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[156.15573456772853,45.50443036606394,116.04835655422535],\\\"focalPoint\\\":[30.319300651550293,1.894807 [03:18] [ComfyUI] Node 8: GeomPackPreviewMeshMulti [03:18] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[156.15573456772853,45.50443036606394,116.04835655422535],\\\"focalPoint\\\":[30.319300651550293,1.894807 [03:18] [ComfyUI] Generated prompt_id: 67b55da7-4278-4fc8-947a-4a683ec4f731 [03:18] [ComfyUI] Calling execution.validate_prompt()... [03:18] [ComfyUI] Validation result: valid=True [03:18] [ComfyUI] === Validation PASSED === [03:18] [ComfyUI] got prompt [03:18] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl' [03:18] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [03:18] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:18] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [03:18] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed [03:18] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack'] [03:18] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [03:18] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker... [03:18] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py', 'abstract://comfy_worker_8359e704e008']... [03:18] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_8359e704e008 (abstract, no filesystem path) [03: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. [03:19] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:19] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:19] [ComfyUI] [SubprocessWorker] created 0 shm blocks [03:19] [ComfyUI] [SubprocessWorker] sending request via socket... [03:19] [ComfyUI] [SubprocessWorker] call_id=35 sending call_method [03:20] Frame 2 saved (frame_001.jpg, t=2.3s) [03:20] [capture-periodic] freeze=3ms shot=100ms unfreeze=9ms saved=True [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/Stanford_Bunny.stl [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces [03:20] [ComfyUI] [SubprocessWorker] got response: ok [03:20] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.54s): result: NodeOutput [03:20] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh [03:20] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED [03:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:20] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:20] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:20] [ComfyUI] [SubprocessWorker] sending request via socket... [03:20] [ComfyUI] [SubprocessWorker] call_id=36 sending call_method [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: fast_simplification -> GeomPackDecimate_FastSimplification [03:20] [ComfyUI] [SubprocessWorker] got response: ok [03:20] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput [03:20] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh [03:20] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED [03:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:20] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:20] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:20] [ComfyUI] [SubprocessWorker] sending request via socket... [03:20] [ComfyUI] [SubprocessWorker] call_id=37 sending call_method [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: quadric_edge_collapse -> GeomPackDecimate_QuadricEdgeCollapse [03:20] [ComfyUI] [SubprocessWorker] got response: ok [03:20] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.04s): result: NodeOutput [03:20] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh [03:20] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED [03:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:20] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:20] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:20] [ComfyUI] [SubprocessWorker] sending request via socket... [03:20] [ComfyUI] [SubprocessWorker] call_id=38 sending call_method [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: vertex_clustering -> GeomPackDecimate_VertexClustering [03:20] [ComfyUI] [SubprocessWorker] got response: ok [03:20] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.03s): result: NodeOutput [03:20] [ComfyUI] [comfy-env] Running GeomPackDecimateMesh: backend: dict, trimesh: Trimesh [03:20] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.decimate.DecimateMeshNode.EXECUTE_NORMALIZED [03:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:20] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:20] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:20] [ComfyUI] [SubprocessWorker] sending request via socket... [03:20] [ComfyUI] [SubprocessWorker] call_id=39 sending call_method [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Decimate dispatch: decimate_pro -> GeomPackDecimate_DecimatePro [03:20] [ComfyUI] [SubprocessWorker] got response: ok [03:20] [ComfyUI] [comfy-env] GeomPackDecimateMesh done (0.04s): result: NodeOutput [03:20] [ComfyUI] [comfy-env] Running GeomPackDecimate_FastSimplification: trimesh: Trimesh, target_reduction: 0.8, aggressiveness: 7 [03:20] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.fast_simplification.DecimateFastSimplificationNode.EXECUTE_NORMALIZED [03:20] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:20] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:20] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:20] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:20] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:20] [ComfyUI] [SubprocessWorker] sending request via socket... [03:20] [ComfyUI] [SubprocessWorker] call_id=40 sending call_method [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: fast_simplification [03:20] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces [03:21] [ComfyUI] [SubprocessWorker] got response: ok [03:21] [ComfyUI] [comfy-env] GeomPackDecimate_FastSimplification done (0.16s): result: NodeOutput [03:21] [ComfyUI] [comfy-env] Running GeomPackDecimate_QuadricEdgeCollapse: trimesh: Trimesh, target_face_count: 5000, quality_threshold: 0.3, preserve_boundary: 'true', preserve_normal: 'true', preserve_topology: 'true', planar_quadric: 'false' [03:21] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.quadric_edge_collapse.DecimateQuadricEdgeCollapseNode.EXECUTE_NORMALIZED [03:21] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:21] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:21] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:21] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:21] [ComfyUI] [SubprocessWorker] sending request via socket... [03:21] [ComfyUI] [SubprocessWorker] call_id=41 sending call_method [03:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: quadric_edge_collapse [03:21] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces [03:21] Node executed (1 total), capturing... [03:21] Frame 3 saved (frame_002.jpg, t=3.1s) [03:21] [capture-node] freeze=3ms shot=87ms unfreeze=2ms saved=True [03:23] [ComfyUI] [SubprocessWorker] got response: ok [03:23] [ComfyUI] [comfy-env] GeomPackDecimate_QuadricEdgeCollapse done (1.99s): result: NodeOutput [03:23] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh [03:23] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [03:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:23] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:23] [ComfyUI] [SubprocessWorker] created 3 shm blocks [03:23] [ComfyUI] [SubprocessWorker] sending request via socket... [03:23] [ComfyUI] [SubprocessWorker] call_id=42 sending call_method [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3 [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_e9d05773.vtp [03:23] Node executed (2 total), capturing... [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices) [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl [03:23] Frame 4 saved (frame_003.jpg, t=5.2s) [03:23] [capture-node] freeze=3ms shot=100ms unfreeze=8ms saved=True [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_e9d05773.vtp [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2502 vertices, 5000 faces [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_e9d05773.vtp [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2502 vertices) [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2502 vertices, 5000 faces [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_e9d05773.vtp [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 11242 vertices, 22480 faces [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_e9d05773.vtp [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11242 vertices) [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11242 vertices, 22480 faces [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_e9d05773.vtp [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready [03:23] [ComfyUI] [SubprocessWorker] got response: ok [03:23] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.66s): result: NodeOutput [03:23] [ComfyUI] [comfy-env] Running GeomPackDecimate_VertexClustering: trimesh: Trimesh, cluster_threshold: 3.0 [03:23] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.vertex_clustering.DecimateVertexClusteringNode.EXECUTE_NORMALIZED [03:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:23] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:23] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:23] [ComfyUI] [SubprocessWorker] sending request via socket... [03:23] [ComfyUI] [SubprocessWorker] call_id=43 sending call_method [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: vertex_clustering [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces [03:23] Node executed (3 total), capturing... [03:23] [ComfyUI] [SubprocessWorker] got response: ok [03:23] [ComfyUI] [comfy-env] GeomPackDecimate_VertexClustering done (0.09s): result: NodeOutput [03:23] [ComfyUI] [comfy-env] Running GeomPackDecimate_DecimatePro: trimesh: Trimesh, target_reduction: 0.8, feature_angle: 15.0, preserve_topology: 'true' [03:23] [ComfyUI] [SubprocessWorker] call_method: nodes.decimation.backends.decimate_pro.DecimateProNode.EXECUTE_NORMALIZED [03:23] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:23] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:23] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:23] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:23] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:23] [ComfyUI] [SubprocessWorker] sending request via socket... [03:23] [ComfyUI] [SubprocessWorker] call_id=44 sending call_method [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: decimate_pro [03:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces [03:25] [ComfyUI] [SubprocessWorker] got response: ok [03:25] [ComfyUI] [comfy-env] GeomPackDecimate_DecimatePro done (1.38s): result: NodeOutput [03:25] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh [03:25] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [03:25] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:25] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:25] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:25] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:25] [ComfyUI] [SubprocessWorker] created 3 shm blocks [03:25] [ComfyUI] [SubprocessWorker] sending request via socket... [03:25] [ComfyUI] [SubprocessWorker] call_id=45 sending call_method [03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3 [03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces [03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_bfe900ea.vtp [03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices) [03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl [03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces [03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_bfe900ea.vtp [03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11242 vertices, 22480 faces [03:25] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_bfe900ea.vtp [03:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11242 vertices) [03:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11242 vertices, 22480 faces [03:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_bfe900ea.vtp [03:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 1272 vertices, 2582 faces [03:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_bfe900ea.vtp [03:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (1272 vertices) [03:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 1272 vertices, 2582 faces [03:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_bfe900ea.vtp [03:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready [03:26] [ComfyUI] [SubprocessWorker] got response: ok [03:26] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.97s): result: NodeOutput [03:26] [ComfyUI] Prompt executed in 7.94 seconds [03:26] Frame 5 saved (frame_004.jpg, t=5.9s) [03:26] [capture-node] freeze=1687ms shot=993ms unfreeze=7ms saved=True [03:26] Node executed (6 total), capturing... [03:28] Frame 6 saved (frame_005.jpg, t=8.9s) [03:28] [capture-node] freeze=1074ms shot=698ms unfreeze=0ms saved=True [03:28] Execution complete (t=8.9s) [03:28] Captured 6 unique frames over 10.72s [03:28] [debug] iframes: 2 [03:28] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=244x393, rafFrozen=True [03:28] [debug] iframe[1]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=244x393, rafFrozen=True [03:28] [timing] trigger_3d_previews: 0.0s [03:31] Saved high-quality screenshot: decimate_all_executed.png [03:31] [timing] final_screenshot: 0.3s [03:31] Capturing execution frames: depth_map_to_mesh.json [03:37] Frame 1 saved (frame_000.jpg, t=0.0s) [03:37] Validating workflow... [03:37] [ComfyUI] === /validate endpoint called === [03:37] [ComfyUI] Received JSON with keys: ['prompt'] [03:37] [ComfyUI] Prompt has 4 nodes [03:37] [ComfyUI] Node 1: LoadImage [03:37] [ComfyUI] Inputs: {"image": "example.png"} [03:37] [ComfyUI] Node 4: GeomPackPreviewMeshVTK [03:37] [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:37] [ComfyUI] Node 6: ImageToMask [03:37] [ComfyUI] Inputs: {"channel": "red", "image": ["1", 0]} [03:37] [ComfyUI] Node 7: GeomPackTextureToGeometry [03:37] Queuing workflow for execution... [03:37] [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:37] [ComfyUI] Generated prompt_id: 4bc0adca-53f7-44a6-a300-e5a7c068f0a1 [03:37] [ComfyUI] Calling execution.validate_prompt()... [03:37] [ComfyUI] Validation result: valid=True [03:37] [ComfyUI] === Validation PASSED === [03:37] [ComfyUI] got prompt [03:37] [ComfyUI] [comfy-env] Running 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:37] [ComfyUI] [SubprocessWorker] call_method: nodes.texture_remeshing.texture_to_geometry.TextureToGeometryNode.EXECUTE_NORMALIZED [03:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:37] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:37] [ComfyUI] [comfy-env] PRE-SERIALIZE 'mask' shape: torch.Size([1, 768, 768]) [03:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:37] [ComfyUI] [SubprocessWorker] created 0 shm blocks [03:37] [ComfyUI] [SubprocessWorker] sending request via socket... [03:37] [ComfyUI] [SubprocessWorker] call_id=46 sending call_method [03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'parent_pid', 'fd', 'storage_size'] [03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 768, 768] [03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 768, 768]) [03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting to geometry using backend: grid [03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using mask input [03:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using native resolution: 768x768, range: [0.000, 1.000] [03:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated 589824 points [03:39] Frame 2 saved (frame_001.jpg, t=2.2s) [03:39] [capture-periodic] freeze=2ms shot=96ms unfreeze=7ms saved=True [03:42] Frame 3 saved (frame_002.jpg, t=4.5s) [03:42] [capture-periodic] freeze=4ms shot=133ms unfreeze=7ms saved=True [03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created mesh: 589824 vertices, 1176578 faces [03:42] [ComfyUI] [SubprocessWorker] got response: ok [03:42] [ComfyUI] [comfy-env] GeomPackTextureToGeometry done (4.88s): result: NodeOutput [03:42] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh [03:42] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED [03:42] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:42] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:42] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:42] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:42] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:42] Node executed (1 total), capturing... [03:42] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:42] [ComfyUI] [SubprocessWorker] sending request via socket... [03:42] [ComfyUI] [SubprocessWorker] call_id=47 sending call_method [03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 589824 vertices, 1176578 faces [03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields [03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False [03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export [03:42] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_16005ec0.vtp [03:42] Frame 4 saved (frame_003.jpg, t=5.2s) [03:42] [capture-node] freeze=12ms shot=152ms unfreeze=10ms saved=True [03:43] [capture-loop] iter=50 t=6.1s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.2/15.6GB (20%) swap=0.0/3.0GB (0%) cpu=31% browser_rss=0.86GB [03:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (589824 vertices) [03:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 589824 vertices, 1176578 faces [03:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_16005ec0.vtp [03:47] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=False, volume=None, area=11.966723990015208, no fields [03:47] [ComfyUI] [SubprocessWorker] got response: ok [03:47] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (5.04s): result: NodeOutput [03:47] [ComfyUI] Prompt executed in 9.95 seconds [03:47] Node executed (2 total), capturing... [03:47] Frame 5 saved (frame_004.jpg, t=10.3s) [03:47] [capture-node] freeze=3ms shot=110ms unfreeze=6ms saved=True [03:48] Execution complete (t=10.5s) [03:48] Captured 5 unique frames over 10.56s [03:48] [debug] iframes: 1 [03:48] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1778445, canvas=486x384, rafFrozen=False [03:48] [timing] trigger_3d_previews: 0.0s [03:51] Saved high-quality screenshot: depth_map_to_mesh_executed.png [03:51] [timing] final_screenshot: 1.7s [03:52] [8/33] SKIPPED (not in cpu list) fill_holes_all.json [03:52] Capturing execution frames: fix_normals_all.json [03:58] Frame 1 saved (frame_000.jpg, t=0.0s) [03:58] Validating workflow... [03:58] [ComfyUI] === /validate endpoint called === [03:58] [ComfyUI] Received JSON with keys: ['prompt'] [03:58] [ComfyUI] Prompt has 8 nodes [03:58] [ComfyUI] Node 1: GeomPackLoadMesh [03:58] [ComfyUI] Inputs: {"file_path": "3d/truck.obj"} [03:58] [ComfyUI] Node 2: GeomPackFixNormals [03:58] [ComfyUI] Inputs: {"backend": "trimesh", "report_panel": "false", "trimesh": ["1", 0]} [03:58] [ComfyUI] Node 3: GeomPackFixNormals [03:58] [ComfyUI] Inputs: {"backend": "igl_bfs", "report_panel": "false", "trimesh": ["1", 0]} [03:58] [ComfyUI] Node 4: GeomPackFixNormals [03:58] [ComfyUI] Inputs: {"backend": "igl_winding", "report_panel": "false", "trimesh": ["1", 0]} [03:58] [ComfyUI] Node 5: GeomPackFixNormals [03:58] [ComfyUI] Inputs: {"backend": "igl_raycast", "report_panel": "false", "trimesh": ["1", 0]} [03:58] Queuing workflow for execution... [03:58] [ComfyUI] Node 6: GeomPackFixNormals [03:58] [ComfyUI] Inputs: {"backend": "igl_signed_dist", "report_panel": "false", "trimesh": ["1", 0]} [03:58] [ComfyUI] Node 8: GeomPackPreviewMeshMulti [03:58] [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:58] [ComfyUI] Node 9: GeomPackPreviewMeshMulti [03:58] [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:58] [ComfyUI] Generated prompt_id: 9d688980-b229-401e-9f0f-a525f9512eb0 [03:58] [ComfyUI] Calling execution.validate_prompt()... [03:58] [ComfyUI] Validation result: valid=True [03:58] [ComfyUI] === Validation PASSED === [03:58] [ComfyUI] got prompt [03:58] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/truck.obj' [03:58] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [03:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:58] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:58] [ComfyUI] [SubprocessWorker] created 0 shm blocks [03:58] [ComfyUI] [SubprocessWorker] sending request via socket... [03:58] [ComfyUI] [SubprocessWorker] call_id=48 sending call_method [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/truck.obj [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/truck.obj [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2956 vertices, 4770 faces [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2956 vertices, 4770 faces [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2956 vertices, 4770 faces [03:58] [ComfyUI] [SubprocessWorker] got response: ok [03:58] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.03s): result: NodeOutput [03:58] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh [03:58] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED [03:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:58] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:58] [ComfyUI] [SubprocessWorker] sending request via socket... [03:58] [ComfyUI] [SubprocessWorker] call_id=49 sending call_method [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_winding -> GeomPackFixNormals_IglWinding [03:58] [ComfyUI] [SubprocessWorker] got response: ok [03:58] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput [03:58] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh [03:58] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED [03:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:58] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:58] [ComfyUI] [SubprocessWorker] sending request via socket... [03:58] [ComfyUI] [SubprocessWorker] call_id=50 sending call_method [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_bfs -> GeomPackFixNormals_IglBfs [03:58] [ComfyUI] [SubprocessWorker] got response: ok [03:58] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput [03:58] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh [03:58] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED [03:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:58] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:58] [ComfyUI] [SubprocessWorker] sending request via socket... [03:58] [ComfyUI] [SubprocessWorker] call_id=51 sending call_method [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: trimesh -> GeomPackFixNormals_Trimesh [03:58] [ComfyUI] [SubprocessWorker] got response: ok [03:58] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput [03:58] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh [03:58] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED [03:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:58] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:58] [ComfyUI] [SubprocessWorker] sending request via socket... [03:58] [ComfyUI] [SubprocessWorker] call_id=52 sending call_method [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_signed_dist -> GeomPackFixNormals_IglSignedDist [03:58] [ComfyUI] [SubprocessWorker] got response: ok [03:58] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput [03:58] [ComfyUI] [comfy-env] Running GeomPackFixNormals: backend: dict, trimesh: Trimesh [03:58] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals.FixNormalsNode.EXECUTE_NORMALIZED [03:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:58] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:58] [ComfyUI] [SubprocessWorker] sending request via socket... [03:58] [ComfyUI] [SubprocessWorker] call_id=53 sending call_method [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fix Normals dispatch: igl_raycast -> GeomPackFixNormals_IglRaycast [03:58] [ComfyUI] [SubprocessWorker] got response: ok [03:58] [ComfyUI] [comfy-env] GeomPackFixNormals done (0.01s): result: NodeOutput [03:58] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglWinding: trimesh: Trimesh [03:58] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_winding.FixNormalsIglWindingNode.EXECUTE_NORMALIZED [03:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:58] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:58] [ComfyUI] [SubprocessWorker] sending request via socket... [03:58] [ComfyUI] [SubprocessWorker] call_id=54 sending call_method [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl_winding: flipped 4022/4770 faces [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> False [03:58] [ComfyUI] [SubprocessWorker] got response: ok [03:58] [ComfyUI] [comfy-env] GeomPackFixNormals_IglWinding done (0.07s): result: NodeOutput [03:58] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglBfs: trimesh: Trimesh [03:58] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_bfs.FixNormalsIglBfsNode.EXECUTE_NORMALIZED [03:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:58] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:58] [ComfyUI] [SubprocessWorker] sending request via socket... [03:58] [ComfyUI] [SubprocessWorker] call_id=55 sending call_method [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl.bfs_orient: 66 orientation components [03:58] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> True [03:58] [ComfyUI] [SubprocessWorker] got response: ok [03:58] [ComfyUI] [comfy-env] GeomPackFixNormals_IglBfs done (0.02s): result: NodeOutput [03:58] [ComfyUI] [comfy-env] Running GeomPackFixNormals_Trimesh: trimesh: Trimesh [03:58] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.trimesh_fix.FixNormalsTrimeshNode.EXECUTE_NORMALIZED [03:58] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:58] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:58] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:58] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:58] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:58] [ComfyUI] [SubprocessWorker] sending request via socket... [03:58] [ComfyUI] [SubprocessWorker] call_id=56 sending call_method [03:58] Node executed (2 total), capturing... [03:59] Frame 2 saved (frame_001.jpg, t=0.5s) [03:59] [capture-node] freeze=3ms shot=101ms unfreeze=7ms saved=True [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> True [03:59] [ComfyUI] [SubprocessWorker] got response: ok [03:59] [ComfyUI] [comfy-env] GeomPackFixNormals_Trimesh done (0.39s): result: NodeOutput [03:59] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh [03:59] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [03:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:59] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:59] [ComfyUI] [SubprocessWorker] created 4 shm blocks [03:59] [ComfyUI] [SubprocessWorker] sending request via socket... [03:59] [ComfyUI] [SubprocessWorker] call_id=57 sending call_method [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4 [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2956 vertices, 4770 faces [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_2926fdbb.vtp [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices) [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_2926fdbb.vtp [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2956 vertices, 4770 faces [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_2926fdbb.vtp [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices) [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_2926fdbb.vtp [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 2956 vertices, 4770 faces [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_2926fdbb.vtp [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices) [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_2926fdbb.vtp [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 2956 vertices, 4770 faces [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_2926fdbb.vtp [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices) [03:59] Node executed (3 total), capturing... [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_2926fdbb.vtp [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready [03:59] [ComfyUI] [SubprocessWorker] got response: ok [03:59] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.12s): result: NodeOutput [03:59] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglSignedDist: trimesh: Trimesh [03:59] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_signed_dist.FixNormalsIglSignedDistNode.EXECUTE_NORMALIZED [03:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:59] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:59] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:59] [ComfyUI] [SubprocessWorker] sending request via socket... [03:59] [ComfyUI] [SubprocessWorker] call_id=58 sending call_method [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl_signed_dist: flipped 4757/4770 faces [03:59] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> False [03:59] [ComfyUI] [SubprocessWorker] got response: ok [03:59] [ComfyUI] [comfy-env] GeomPackFixNormals_IglSignedDist done (0.10s): result: NodeOutput [03:59] [ComfyUI] [comfy-env] Running GeomPackFixNormals_IglRaycast: trimesh: Trimesh [03:59] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.fix_normals_backends.igl_raycast.FixNormalsIglRaycastNode.EXECUTE_NORMALIZED [03:59] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [03:59] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [03:59] [ComfyUI] [SubprocessWorker] worker started/confirmed [03:59] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [03:59] [ComfyUI] [SubprocessWorker] created 1 shm blocks [03:59] [ComfyUI] [SubprocessWorker] sending request via socket... [03:59] [ComfyUI] [SubprocessWorker] call_id=59 sending call_method [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: igl_raycast: flipped 3339/4770 faces [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Normal orientation: False -> False [04:00] [ComfyUI] [SubprocessWorker] got response: ok [04:00] [ComfyUI] [comfy-env] GeomPackFixNormals_IglRaycast done (1.39s): result: NodeOutput [04:00] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh [04:00] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [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: ok [04:00] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:00] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:00] [ComfyUI] [SubprocessWorker] created 2 shm blocks [04:00] [ComfyUI] [SubprocessWorker] sending request via socket... [04:00] [ComfyUI] [SubprocessWorker] call_id=60 sending call_method [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2 [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2956 vertices, 4770 faces [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_b1d46691.vtp [04:00] Frame 3 saved (frame_002.jpg, t=0.9s) [04:00] [capture-node] freeze=719ms shot=591ms unfreeze=6ms saved=True [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices) [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_b1d46691.vtp [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2956 vertices, 4770 faces [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_b1d46691.vtp [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2956 vertices) [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2956 vertices, 4770 faces [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_b1d46691.vtp [04:00] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready [04:00] [ComfyUI] [SubprocessWorker] got response: ok [04:00] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.06s): result: NodeOutput [04:00] [ComfyUI] Prompt executed in 2.22 seconds [04:01] Node executed (7 total), capturing... [04:01] Frame 4 saved (frame_003.jpg, t=2.6s) [04:01] [capture-node] freeze=233ms shot=365ms unfreeze=0ms saved=True [04:01] Execution complete (t=2.6s) [04:01] Captured 4 unique frames over 3.22s [04:01] [debug] iframes: 2 [04:01] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=368x393, rafFrozen=True [04:01] [debug] iframe[1]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=368x195, rafFrozen=True [04:01] [timing] trigger_3d_previews: 0.0s [04:04] Saved high-quality screenshot: fix_normals_all_executed.png [04:04] [timing] final_screenshot: 0.3s [04:04] Capturing execution frames: fix_self_intersection.json [04:10] Frame 1 saved (frame_000.jpg, t=0.0s) [04:10] Validating workflow... [04:10] [ComfyUI] === /validate endpoint called === [04:10] [ComfyUI] Received JSON with keys: ['prompt'] [04:10] [ComfyUI] Prompt has 5 nodes [04:10] [ComfyUI] Node 1: GeomPackLoadMesh [04:10] [ComfyUI] Inputs: {"file_path": "3d/camelhead.off"} [04:10] [ComfyUI] Node 14: GeomPackDetectSelfIntersections [04:10] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]} [04:10] [ComfyUI] Node 17: GeomPackFixSelfIntersectionsByPerturbation [04:10] [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]} [04:10] [ComfyUI] Node 21: GeomPackPreviewMeshDual [04:10] [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 [04:10] [ComfyUI] Node 22: GeomPackDetectSelfIntersections [04:10] Queuing workflow for execution... [04:10] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["17", 0]} [04:10] [ComfyUI] Generated prompt_id: f9a100de-2576-409e-a873-d1c74c66ae3d [04:10] [ComfyUI] Calling execution.validate_prompt()... [04:10] [ComfyUI] Validation result: valid=True [04:10] [ComfyUI] === Validation PASSED === [04:10] [ComfyUI] got prompt [04:10] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/camelhead.off' [04:10] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [04:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:10] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:10] [ComfyUI] [SubprocessWorker] created 0 shm blocks [04:10] [ComfyUI] [SubprocessWorker] sending request via socket... [04:10] [ComfyUI] [SubprocessWorker] call_id=61 sending call_method [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/camelhead.off [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/camelhead.off [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 11381 vertices, 22704 faces [04:10] [ComfyUI] [SubprocessWorker] got response: ok [04:10] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.10s): result: NodeOutput [04:10] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh [04:10] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED [04:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:10] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:10] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:10] [ComfyUI] [SubprocessWorker] sending request via socket... [04:10] [ComfyUI] [SubprocessWorker] call_id=62 sending call_method [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11381 vertices, 22704 faces [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 6 intersecting faces (5 intersection pairs) [04:10] [ComfyUI] [SubprocessWorker] got response: ok [04:10] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.10s): result: NodeOutput [04:10] [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 [04:10] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.fix_intersections_perturbation.FixSelfIntersectionsByPerturbationNode.EXECUTE_NORMALIZED [04:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:10] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:10] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:10] [ComfyUI] [SubprocessWorker] sending request via socket... [04:10] [ComfyUI] [SubprocessWorker] call_id=63 sending call_method [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Processing mesh: 11381 vertices, 22704 faces [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Params: epsilon=0.0001, max_iter=12, direction=adaptive, re_detect=True [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 8 vertices to perturb [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 1: avg displacement = 0.000004 [04:10] Node executed (1 total), capturing... [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 2: avg displacement = 0.000008 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 3: avg displacement = 0.000011 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 4: avg displacement = 0.000015 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 5: avg displacement = 0.000019 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 6: avg displacement = 0.000023 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 7: avg displacement = 0.000026 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 8: avg displacement = 0.000030 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 9: avg displacement = 0.000034 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 10: avg displacement = 0.000038 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 11: avg displacement = 0.000041 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Iteration 12: avg displacement = 0.000045 [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Re-detecting self-intersections... [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: No self-intersections remaining! [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Complete: perturbed 8 vertices over 12 iterations [04:10] [ComfyUI] [SubprocessWorker] got response: ok [04:10] [ComfyUI] [comfy-env] GeomPackFixSelfIntersectionsByPerturbation done (0.24s): result: NodeOutput [04:10] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh [04:10] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED [04:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:10] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:10] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:10] [ComfyUI] [SubprocessWorker] sending request via socket... [04:10] [ComfyUI] [SubprocessWorker] call_id=64 sending call_method [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11381 vertices, 22704 faces [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: No self-intersections detected [04:10] [ComfyUI] [SubprocessWorker] got response: ok [04:10] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.10s): result: NodeOutput [04: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 [04:10] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [04:10] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:10] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:10] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:10] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:10] [ComfyUI] [SubprocessWorker] created 2 shm blocks [04:10] [ComfyUI] [SubprocessWorker] sending request via socket... [04:10] [ComfyUI] [SubprocessWorker] call_id=65 sending call_method [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 11381 vertices, 22704 faces [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11381 vertices, 22704 faces [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting'] [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting'] [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting'] [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_9b40174b.vtp [04:10] Frame 2 saved (frame_001.jpg, t=0.6s) [04:10] [capture-node] freeze=4ms shot=136ms unfreeze=6ms saved=True [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11381 vertices) [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1) [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1) [04:10] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11381 vertices, 22704 faces [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_9b40174b.vtp [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_9b40174b.vtp [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11381 vertices) [04:11] Node executed (3 total), capturing... [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1) [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1) [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11381 vertices, 22704 faces [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_9b40174b.vtp [04:11] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [04:11] [ComfyUI] [SubprocessWorker] got response: ok [04:11] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.20s): result: NodeOutput [04:11] [ComfyUI] Prompt executed in 0.75 seconds [04:11] Frame 3 saved (frame_002.jpg, t=1.0s) [04:11] [capture-node] freeze=25ms shot=586ms unfreeze=7ms saved=True [04:12] Node executed (4 total), capturing... [04:12] [capture-node] freeze=2ms shot=180ms unfreeze=0ms saved=False [04:12] Execution complete (t=2.0s) [04:12] Captured 3 unique frames over 2.21s [04:12] [debug] iframes: 1 [04:12] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [04:12] [timing] trigger_3d_previews: 0.0s [04:14] Saved high-quality screenshot: fix_self_intersection_executed.png [04:14] [timing] final_screenshot: 0.4s [04:15] Capturing execution frames: mesh_info.json [04:21] Frame 1 saved (frame_000.jpg, t=0.0s) [04:21] Validating workflow... [04:21] [ComfyUI] === /validate endpoint called === [04:21] [ComfyUI] Received JSON with keys: ['prompt'] [04:21] [ComfyUI] Prompt has 3 nodes [04:21] [ComfyUI] Node 1: GeomPackCreatePrimitive [04:21] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1} [04:21] [ComfyUI] Node 7: GeomPackMeshInfo [04:21] [ComfyUI] Inputs: {"report_panel": "true", "trimesh": ["1", 0]} [04:21] [ComfyUI] Node 12: GeomPackMeshQuality [04:21] [ComfyUI] Inputs: {"include_face_quality": true, "include_edge_stats": true, "report_panel": "true", "trimesh": ["1", 0]} [04:21] [ComfyUI] Generated prompt_id: d7892933-050c-4887-9811-34958c3bde7f [04:21] [ComfyUI] Calling execution.validate_prompt()... [04:21] [ComfyUI] Validation result: valid=True [04:21] Queuing workflow for execution... [04:21] [ComfyUI] === Validation PASSED === [04:21] [ComfyUI] got prompt [04:21] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1 [04:21] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [04:21] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:21] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [04:21] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed [04:21] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker... [04:21] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack'] [04:21] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [04:21] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py', 'abstract://comfy_worker_bb92d82f5146']... [04:21] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_bb92d82f5146 (abstract, no filesystem path) [04: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. [04:22] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:22] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:22] [ComfyUI] [SubprocessWorker] created 0 shm blocks [04:22] [ComfyUI] [SubprocessWorker] sending request via socket... [04:22] [ComfyUI] [SubprocessWorker] call_id=66 sending call_method [04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces [04:23] [ComfyUI] [SubprocessWorker] got response: ok [04:23] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (2.17s): result: NodeOutput [04:23] [ComfyUI] [comfy-env] Running GeomPackMeshInfo: trimesh: list[1] [04:23] [ComfyUI] [SubprocessWorker] call_method: nodes.analysis.mesh_info.MeshInfoNode.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=67 sending call_method [04:23] [ComfyUI] [SubprocessWorker] got response: ok [04:23] [ComfyUI] [comfy-env] GeomPackMeshInfo done (0.01s): result: NodeOutput [04:23] [ComfyUI] [comfy-env] Running GeomPackMeshQuality: include_face_quality: True, include_edge_stats: True, trimesh: Trimesh [04:23] [ComfyUI] [SubprocessWorker] call_method: nodes.analysis.mesh_quality.MeshQualityNode.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=68 sending call_method [04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 8 vertices, 12 faces [04:23] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analysis complete [04:23] [ComfyUI] [SubprocessWorker] got response: ok [04:23] [ComfyUI] [comfy-env] GeomPackMeshQuality done (0.01s): result: NodeOutput [04:23] [ComfyUI] Prompt executed in 2.20 seconds [04:23] Frame 2 saved (frame_001.jpg, t=2.2s) [04:23] [capture-periodic] freeze=3ms shot=82ms unfreeze=3ms saved=True [04:23] Node executed (2 total), capturing... [04:23] Frame 3 saved (frame_002.jpg, t=2.6s) [04:23] [capture-node] freeze=3ms shot=88ms unfreeze=0ms saved=True [04:23] Execution complete (t=2.6s) [04:23] Captured 3 unique frames over 2.73s [04:23] [debug] iframes: 0 [04:23] [timing] trigger_3d_previews: 0.0s [04:25] Saved high-quality screenshot: mesh_info_executed.png [04:25] [timing] final_screenshot: 0.2s [04:26] Capturing execution frames: mesh_mesh_distance.json [04:32] Frame 1 saved (frame_000.jpg, t=0.0s) [04:32] Validating workflow... [04:32] [ComfyUI] === /validate endpoint called === [04:32] [ComfyUI] Received JSON with keys: ['prompt'] [04:32] [ComfyUI] Prompt has 5 nodes [04:32] [ComfyUI] Node 3: GeomPackMeshToMeshDistance [04:32] [ComfyUI] Inputs: {"metric": "hausdorff", "sample_count": 10000, "symmetric": "true", "report_panel": "true", "mesh_a": ["8", 0], "mesh_b": ["15", 0]} [04:32] [ComfyUI] Node 8: GeomPackLoadMesh [04:32] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"} [04:32] [ComfyUI] Node 10: GeomPackMeshToMeshDistance [04:32] Queuing workflow for execution... [04:32] [ComfyUI] Inputs: {"metric": "hausdorff", "sample_count": 10000, "symmetric": "true", "report_panel": "false", "mesh_a": ["8", 0], "mesh_b": ["16", 0]} [04:32] [ComfyUI] Node 15: GeomPackRemesh [04:32] [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:32] [ComfyUI] Node 16: GeomPackRemesh [04:32] [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:32] [ComfyUI] Generated prompt_id: ed7da685-6e00-461b-826d-fe357456db26 [04:32] [ComfyUI] Calling execution.validate_prompt()... [04:32] [ComfyUI] Validation result: valid=True [04:32] [ComfyUI] === Validation PASSED === [04:32] [ComfyUI] got prompt [04:32] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl' [04:32] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [04:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:32] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:32] [ComfyUI] [SubprocessWorker] created 0 shm blocks [04:32] [ComfyUI] [SubprocessWorker] sending request via socket... [04:32] [ComfyUI] [SubprocessWorker] call_id=69 sending call_method [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/Stanford_Bunny.stl [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces [04:32] [ComfyUI] [SubprocessWorker] got response: ok [04:32] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.27s): result: NodeOutput [04:32] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh [04:32] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED [04:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:32] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:32] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:32] [ComfyUI] [SubprocessWorker] sending request via socket... [04:32] [ComfyUI] [SubprocessWorker] call_id=70 sending call_method [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: pymeshlab_isotropic -> GeomPackRemesh_PyMeshLab [04:32] [ComfyUI] [SubprocessWorker] got response: ok [04:32] [ComfyUI] [comfy-env] GeomPackRemesh done (0.03s): result: NodeOutput [04:32] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh [04:32] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED [04:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:32] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:32] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:32] [ComfyUI] [SubprocessWorker] sending request via socket... [04:32] [ComfyUI] [SubprocessWorker] call_id=71 sending call_method [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: cgal_isotropic -> GeomPackRemesh_CGAL [04:32] [ComfyUI] [SubprocessWorker] got response: ok [04:32] [ComfyUI] [comfy-env] GeomPackRemesh done (0.04s): result: NodeOutput [04:32] [ComfyUI] [comfy-env] Running GeomPackRemesh_PyMeshLab: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, feature_angle: 30.0, adaptive: 'false' [04:32] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.pymeshlab_isotropic.RemeshPyMeshLabNode.EXECUTE_NORMALIZED [04:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:32] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:32] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:32] [ComfyUI] [SubprocessWorker] sending request via socket... [04:32] [ComfyUI] [SubprocessWorker] call_id=72 sending call_method [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: pymeshlab_isotropic [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces [04:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, feature_angle=30.0, adaptive=false [04:34] Frame 2 saved (frame_001.jpg, t=2.2s) [04:34] [capture-periodic] freeze=3ms shot=98ms unfreeze=9ms saved=True [04:36] Frame 3 saved (frame_002.jpg, t=4.4s) [04:36] [capture-periodic] freeze=3ms shot=102ms unfreeze=6ms saved=True [04:37] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 32288 vertices, 64572 faces [04:37] [ComfyUI] [SubprocessWorker] got response: ok [04:37] [ComfyUI] [comfy-env] GeomPackRemesh_PyMeshLab done (5.22s): result: NodeOutput [04:37] [ComfyUI] [comfy-env] Running GeomPackMeshToMeshDistance: metric: 'hausdorff', sample_count: 10000, symmetric: 'true', mesh_a: Trimesh, mesh_b: Trimesh [04:37] [ComfyUI] [SubprocessWorker] call_method: nodes.distance.mesh_to_mesh_distance.MeshDistanceNode.EXECUTE_NORMALIZED [04:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:37] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:37] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:37] [ComfyUI] [SubprocessWorker] created 2 shm blocks [04:37] [ComfyUI] [SubprocessWorker] sending request via socket... [04:37] [ComfyUI] [SubprocessWorker] call_id=73 sending call_method [04:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Metric: hausdorff, Samples: 10000 [04:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 56203 vertices, 112402 faces [04:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 32288 vertices, 64572 faces [04:38] [capture-loop] iter=50 t=5.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=15 ram=2.7/15.6GB (17%) swap=0.0/3.0GB (0%) cpu=31% browser_rss=0.90GB [04:38] Node executed (1 total), capturing... [04:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 2.937530 [04:38] [ComfyUI] [SubprocessWorker] got response: ok [04:38] [ComfyUI] [comfy-env] GeomPackMeshToMeshDistance done (0.15s): result: NodeOutput [04:38] [ComfyUI] [comfy-env] Running GeomPackRemesh_CGAL: trimesh: Trimesh, target_edge_length: 1.0, iterations: 3, protect_boundaries: 'true' [04:38] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing_cgal.remesh.RemeshCGALNode.EXECUTE_NORMALIZED [04:38] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:38] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:38] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:38] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:38] [ComfyUI] [SubprocessWorker] sending request via socket... [04:38] [ComfyUI] [SubprocessWorker] call_id=74 sending call_method [04:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: cgal_isotropic [04:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56,203 vertices, 112,402 faces [04:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: target_edge_length=1.0, iterations=3, protect_boundaries=true [04:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Running CGAL isotropic remesh (target_edge_length=1.0)... [04:38] Frame 4 saved (frame_003.jpg, t=5.9s) [04:38] [capture-node] freeze=3ms shot=110ms unfreeze=5ms saved=True [04:38] Node executed (2 total), capturing... [04:38] [capture-node] freeze=3ms shot=105ms unfreeze=5ms saved=False [04:44] [capture-loop] iter=100 t=11.8s state={'complete': False, 'error': None, 'executedCount': 2, 'wsState': 1} eval_ms=3 ram=2.8/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=34% browser_rss=0.90GB [04:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 41466 vertices (-14737), 82928 faces (-29474) [04:44] [ComfyUI] [SubprocessWorker] got response: ok [04:44] [ComfyUI] [comfy-env] GeomPackRemesh_CGAL done (6.50s): result: NodeOutput [04:44] [ComfyUI] [comfy-env] Running GeomPackMeshToMeshDistance: metric: 'hausdorff', sample_count: 10000, symmetric: 'true', mesh_a: Trimesh, mesh_b: Trimesh [04:44] [ComfyUI] [SubprocessWorker] call_method: nodes.distance.mesh_to_mesh_distance.MeshDistanceNode.EXECUTE_NORMALIZED [04:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:44] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:44] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:44] Node executed (3 total), capturing... [04:44] [ComfyUI] [SubprocessWorker] created 2 shm blocks [04:44] [ComfyUI] [SubprocessWorker] sending request via socket... [04:44] [ComfyUI] [SubprocessWorker] call_id=75 sending call_method [04:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Metric: hausdorff, Samples: 10000 [04:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 56203 vertices, 112402 faces [04:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 41466 vertices, 82928 faces [04:44] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 3.165776 [04:44] [ComfyUI] [SubprocessWorker] got response: ok [04:44] [ComfyUI] [comfy-env] GeomPackMeshToMeshDistance done (0.12s): result: NodeOutput [04:44] [ComfyUI] Prompt executed in 12.33 seconds [04:44] Frame 5 saved (frame_004.jpg, t=12.5s) [04:44] [capture-node] freeze=8ms shot=104ms unfreeze=6ms saved=True [04:45] Node executed (4 total), capturing... [04:45] Frame 6 saved (frame_005.jpg, t=12.9s) [04:45] [capture-node] freeze=3ms shot=92ms unfreeze=5ms saved=True [04:45] Execution complete (t=13.2s) [04:45] Captured 6 unique frames over 13.17s [04:45] [debug] iframes: 0 [04:45] [timing] trigger_3d_previews: 0.0s [04:47] Saved high-quality screenshot: mesh_mesh_distance_executed.png [04:47] [timing] final_screenshot: 0.2s [04:48] Capturing execution frames: normals.json [04:53] Frame 1 saved (frame_000.jpg, t=0.0s) [04:53] Validating workflow... [04:53] [ComfyUI] === /validate endpoint called === [04:53] [ComfyUI] Received JSON with keys: ['prompt'] [04:53] [ComfyUI] Prompt has 4 nodes [04:53] [ComfyUI] Node 1: GeomPackLoadMesh [04:53] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"} [04:53] [ComfyUI] Node 2: GeomPackCheckNormals [04:53] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]} [04:53] [ComfyUI] Node 3: GeomPackComputeNormals [04:53] [ComfyUI] Inputs: {"smooth_vertex_normals": "true", "trimesh": ["1", 0]} [04:53] [ComfyUI] Node 7: GeomPackPreviewMeshVTK [04:53] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\"}", "trimesh": [" [04:53] [ComfyUI] Generated prompt_id: 5b5697ec-c5f9-4e2b-a931-c4b8339e80a5 [04:53] [ComfyUI] Calling execution.validate_prompt()... [04:53] Queuing workflow for execution... [04:53] [ComfyUI] Validation result: valid=True [04:53] [ComfyUI] === Validation PASSED === [04:53] [ComfyUI] got prompt [04:53] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl' [04:53] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [04:53] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:53] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:53] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:53] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:53] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:53] [ComfyUI] [SubprocessWorker] created 0 shm blocks [04:53] [ComfyUI] [SubprocessWorker] sending request via socket... [04:53] [ComfyUI] [SubprocessWorker] call_id=76 sending call_method [04:53] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl [04:53] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/Stanford_Bunny.stl [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces [04:54] [ComfyUI] [SubprocessWorker] got response: ok [04:54] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.24s): result: NodeOutput [04:54] [ComfyUI] [comfy-env] Running GeomPackCheckNormals: trimesh: Trimesh [04:54] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.check_normals.CheckNormalsNode.EXECUTE_NORMALIZED [04:54] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:54] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:54] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:54] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:54] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:54] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:54] [ComfyUI] [SubprocessWorker] sending request via socket... [04:54] [ComfyUI] [SubprocessWorker] call_id=77 sending call_method [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh with 56203 vertices, 112402 faces [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Winding: True, Watertight: True, Degenerate: 1 [04:54] [ComfyUI] [SubprocessWorker] got response: ok [04:54] [ComfyUI] [comfy-env] GeomPackCheckNormals done (0.12s): result: NodeOutput [04:54] [ComfyUI] [comfy-env] Running GeomPackComputeNormals: smooth_vertex_normals: 'true', trimesh: Trimesh [04:54] [ComfyUI] [SubprocessWorker] call_method: nodes.repair.compute_normals.ComputeNormalsNode.EXECUTE_NORMALIZED [04:54] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:54] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:54] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:54] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:54] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:54] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:54] [ComfyUI] [SubprocessWorker] sending request via socket... [04:54] [ComfyUI] [SubprocessWorker] call_id=78 sending call_method [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Processing mesh with 56203 vertices, 112402 faces [04:54] Node executed (1 total), capturing... [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computed smooth vertex normals [04:54] [ComfyUI] [SubprocessWorker] got response: ok [04:54] [ComfyUI] [comfy-env] GeomPackComputeNormals done (0.12s): result: NodeOutput [04:54] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh [04:54] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED [04:54] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [04:54] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [04:54] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [04:54] [ComfyUI] [SubprocessWorker] worker started/confirmed [04:54] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [04:54] [ComfyUI] [SubprocessWorker] created 1 shm blocks [04:54] [ComfyUI] [SubprocessWorker] sending request via socket... [04:54] [ComfyUI] [SubprocessWorker] call_id=79 sending call_method [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 56203 vertices, 112402 faces [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_d103e282.vtp [04:54] Frame 2 saved (frame_001.jpg, t=0.7s) [04:54] [capture-node] freeze=3ms shot=85ms unfreeze=3ms saved=True [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices) [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_x (components: 1) [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_y (components: 1) [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_z (components: 1) [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: normal_magnitude (components: 1) [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces [04:54] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_d103e282.vtp [04:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Vertex attributes: ['normal_x', 'normal_y', 'normal_z', 'normal_magnitude'] [04:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Face attributes: ['stl'] [04:55] [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:55] [ComfyUI] [SubprocessWorker] got response: ok [04:55] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.79s): result: NodeOutput [04:55] [ComfyUI] Prompt executed in 1.27 seconds [04:55] Node executed (2 total), capturing... [04:56] Frame 3 saved (frame_002.jpg, t=1.6s) [04:56] [capture-node] freeze=739ms shot=107ms unfreeze=0ms saved=True [04:56] Execution complete (t=1.6s) [04:56] Captured 3 unique frames over 2.53s [04:56] [debug] iframes: 1 [04:56] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1778445, canvas=486x348, rafFrozen=True [04:56] [timing] trigger_3d_previews: 0.0s [04:58] Saved high-quality screenshot: normals_executed.png [04:58] [timing] final_screenshot: 0.2s [04:58] Capturing execution frames: point_mesh_distance.json [05:04] Frame 1 saved (frame_000.jpg, t=0.0s) [05:04] Validating workflow... [05:04] [ComfyUI] === /validate endpoint called === [05:04] [ComfyUI] Received JSON with keys: ['prompt'] [05:04] [ComfyUI] Prompt has 6 nodes [05:04] [ComfyUI] Node 1: GeomPackCreatePrimitive [05:04] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1} [05:04] [ComfyUI] Node 2: GeomPackCreatePrimitive [05:04] [ComfyUI] Inputs: {"shape": "sphere", "size": 2.5, "subdivisions": 2} [05:04] [ComfyUI] Node 4: GeomPackMeshToPointCloud [05:04] [ComfyUI] Inputs: {"mode": "surface_sampling", "sample_count": 10000, "sampling_method": "uniform", "include_normals": "true", "trimesh": ["1", 0]} [05:04] [ComfyUI] Node 5: GeomPackPointToMeshDistance [05:04] [ComfyUI] Inputs: {"distance_type": "unsigned", "sign_method": "default", "report_panel": "false", "target_mesh": ["2", 0], "pointcloud": ["4", 0]} [05:04] [ComfyUI] Node 7: GeomPackCombineMeshes [05:04] [ComfyUI] Inputs: {"report_panel": "false", "mesh_a": ["1", 0], "mesh_b": ["2", 0]} [05:04] [ComfyUI] Node 8: GeomPackPreviewMeshDual [05:04] [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 [05:04] Queuing workflow for execution... [05:04] [ComfyUI] Generated prompt_id: 009d80a9-aded-455f-a696-1a9cf3b79f87 [05:04] [ComfyUI] Calling execution.validate_prompt()... [05:04] [ComfyUI] Validation result: valid=True [05:04] [ComfyUI] === Validation PASSED === [05:04] [ComfyUI] got prompt [05:04] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 2.5, subdivisions: 2 [05:04] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [05:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:04] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:04] [ComfyUI] [SubprocessWorker] created 0 shm blocks [05:04] [ComfyUI] [SubprocessWorker] sending request via socket... [05:04] [ComfyUI] [SubprocessWorker] call_id=80 sending call_method [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 162 vertices, 320 faces [05:04] [ComfyUI] [SubprocessWorker] got response: ok [05:04] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.02s): result: NodeOutput [05:04] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1 [05:04] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [05:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:04] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:04] [ComfyUI] [SubprocessWorker] created 0 shm blocks [05:04] [ComfyUI] [SubprocessWorker] sending request via socket... [05:04] [ComfyUI] [SubprocessWorker] call_id=81 sending call_method [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces [05:04] [ComfyUI] [SubprocessWorker] got response: ok [05:04] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [05:04] [ComfyUI] [comfy-env] Running GeomPackCombineMeshes: mesh_a: Trimesh, mesh_b: Trimesh [05:04] [ComfyUI] [SubprocessWorker] call_method: nodes.combine.combine_meshes.CombineMeshesNode.EXECUTE_NORMALIZED [05:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:04] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:04] [ComfyUI] [SubprocessWorker] created 2 shm blocks [05:04] [ComfyUI] [SubprocessWorker] sending request via socket... [05:04] [ComfyUI] [SubprocessWorker] call_id=82 sending call_method [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Combining 2 meshes [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: 8 vertices, 12 faces [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: 162 vertices, 320 faces [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Result: 170 vertices, 332 faces [05:04] [ComfyUI] [SubprocessWorker] got response: ok [05:04] [ComfyUI] [comfy-env] GeomPackCombineMeshes done (0.01s): result: NodeOutput [05:04] [ComfyUI] [comfy-env] Running GeomPackMeshToPointCloud: mode: 'surface_sampling', sample_count: 10000, sampling_method: 'uniform', include_normals: 'true', trimesh: Trimesh [05:04] [ComfyUI] [SubprocessWorker] call_method: nodes.conversion.mesh_to_pointcloud.MeshToPointCloudNode.EXECUTE_NORMALIZED [05:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:04] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:04] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:04] [ComfyUI] [SubprocessWorker] sending request via socket... [05:04] [ComfyUI] [SubprocessWorker] call_id=83 sending call_method [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sampling 10,000 points using uniform method [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated point cloud with 10,000 points [05:04] [ComfyUI] [SubprocessWorker] got response: ok [05:04] [ComfyUI] [comfy-env] GeomPackMeshToPointCloud done (0.02s): result: NodeOutput [05:04] [ComfyUI] [comfy-env] Running GeomPackPointToMeshDistance: distance_type: 'unsigned', sign_method: 'default', target_mesh: Trimesh, pointcloud: Trimesh [05:04] [ComfyUI] [SubprocessWorker] call_method: nodes.distance.point_to_mesh_distance.PointToMeshDistanceNode.EXECUTE_NORMALIZED [05:04] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:04] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:04] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:04] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:04] [ComfyUI] [SubprocessWorker] created 2 shm blocks [05:04] [ComfyUI] [SubprocessWorker] sending request via socket... [05:04] [ComfyUI] [SubprocessWorker] call_id=84 sending call_method [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computing unsigned distances for 10,000 points [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: Point Cloud [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Target Mesh: 162 vertices, 320 faces [05:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using trimesh.proximity.closest_point (unsigned) [05:05] Node executed (1 total), capturing... [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Min: 0.000012, Max: 0.494777, Mean: 0.137836 [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Distance field added to vertex_attributes['distance'] [05:05] [ComfyUI] [SubprocessWorker] got response: ok [05:05] [ComfyUI] [comfy-env] GeomPackPointToMeshDistance done (0.30s): result: NodeOutput [05:05] [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:05] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [05:05] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:05] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:05] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:05] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:05] [ComfyUI] [SubprocessWorker] created 2 shm blocks [05:05] [ComfyUI] [SubprocessWorker] sending request via socket... [05:05] [ComfyUI] [SubprocessWorker] call_id=85 sending call_method [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 170 vertices, 332 faces [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Point Cloud - 10000 vertices, 0 faces [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: [] [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: ['distance'] [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_4e62bb41.stl [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting point cloud to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_4e62bb41.vtp [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: distance (components: 1) [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 10000 points [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_4e62bb41.vtp [05:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [05:05] [ComfyUI] [SubprocessWorker] got response: ok [05:05] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.06s): result: NodeOutput [05:05] [ComfyUI] Prompt executed in 0.42 seconds [05:05] Frame 2 saved (frame_001.jpg, t=0.5s) [05:05] [capture-node] freeze=29ms shot=187ms unfreeze=11ms saved=True [05:05] Node executed (3 total), capturing... [05:05] Frame 3 saved (frame_002.jpg, t=1.1s) [05:05] [capture-node] freeze=3ms shot=97ms unfreeze=0ms saved=True [05:05] Execution complete (t=1.1s) [05:05] Captured 3 unique frames over 1.22s [05:05] [debug] iframes: 1 [05:05] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [05:05] [timing] trigger_3d_previews: 0.0s [05:08] Saved high-quality screenshot: point_mesh_distance_executed.png [05:08] [timing] final_screenshot: 0.2s [05:08] Capturing execution frames: preview_mesh_threejs.json [05:14] Frame 1 saved (frame_000.jpg, t=0.0s) [05:14] Validating workflow... [05:14] [ComfyUI] === /validate endpoint called === [05:14] [ComfyUI] Received JSON with keys: ['prompt'] [05:14] [ComfyUI] Prompt has 2 nodes [05:14] [ComfyUI] Node 1: GeomPackLoadMesh [05:14] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"} [05:14] [ComfyUI] Node 3: GeomPackPreviewMesh [05:14] [ComfyUI] Inputs: {"preview": "", "trimesh": ["1", 0]} [05:14] [ComfyUI] Generated prompt_id: 2411b48c-6f98-4672-9bc7-2ad7cbe0399c [05:14] [ComfyUI] Calling execution.validate_prompt()... [05:14] [ComfyUI] Validation result: valid=True [05:14] [ComfyUI] === Validation PASSED === [05:14] Queuing workflow for execution... [05:14] [ComfyUI] got prompt [05:14] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl' [05:14] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [05:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:14] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:14] [ComfyUI] [SubprocessWorker] created 0 shm blocks [05:14] [ComfyUI] [SubprocessWorker] sending request via socket... [05:14] [ComfyUI] [SubprocessWorker] call_id=86 sending call_method [05:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl [05:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/Stanford_Bunny.stl [05:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces [05:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces [05:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces [05:14] [ComfyUI] [SubprocessWorker] got response: ok [05:14] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.28s): result: NodeOutput [05:14] [ComfyUI] [comfy-env] Running GeomPackPreviewMesh: trimesh: Trimesh [05:14] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh.PreviewMeshNode.EXECUTE_NORMALIZED [05:14] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:14] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:14] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:14] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:14] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:14] [ComfyUI] [SubprocessWorker] sending request via socket... [05:14] [ComfyUI] [SubprocessWorker] call_id=87 sending call_method [05:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 56203 vertices, 112402 faces [05:14] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_71729ab1.glb [05:15] [ComfyUI] [SubprocessWorker] got response: ok [05:15] [ComfyUI] [comfy-env] GeomPackPreviewMesh done (0.05s): result: NodeOutput [05:15] [ComfyUI] Prompt executed in 0.33 seconds [05:15] Node executed (1 total), capturing... [05:15] Frame 2 saved (frame_001.jpg, t=0.8s) [05:15] [capture-node] freeze=28ms shot=145ms unfreeze=0ms saved=True [05:15] Execution complete (t=0.7s) [05:15] Captured 2 unique frames over 0.96s [05:15] [debug] iframes: 1 [05:15] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer.html?v=17784458654, canvas=486x486, rafFrozen=True [05:15] [timing] trigger_3d_previews: 0.0s [05:17] Saved high-quality screenshot: preview_mesh_threejs_executed.png [05:17] [timing] final_screenshot: 0.2s [05:18] Capturing execution frames: reconstruct_all.json [05:23] Frame 1 saved (frame_000.jpg, t=0.0s) [05:23] Validating workflow... [05:23] [ComfyUI] === /validate endpoint called === [05:24] [ComfyUI] Received JSON with keys: ['prompt'] [05:24] [ComfyUI] Prompt has 8 nodes [05:24] [ComfyUI] Node 1: GeomPackLoadMesh [05:24] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"} [05:24] [ComfyUI] Node 2: GeomPackMeshToPointCloud [05:24] [ComfyUI] Inputs: {"mode": "surface_sampling", "sample_count": 10000, "sampling_method": "uniform", "include_normals": "true", "trimesh": ["1", 0]} [05:24] Queuing workflow for execution... [05:24] [ComfyUI] Node 3: GeomPackReconstructSurface [05:24] [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]} [05:24] [ComfyUI] Node 4: GeomPackReconstructSurface [05:24] [ComfyUI] Inputs: {"backend": "ball_pivoting", "backend.ball_radius": 3, "backend.estimate_normals": "true", "backend.normal_radius": 0.5, "report_panel": "false", "points": ["2", 0]} [05:24] [ComfyUI] Node 5: GeomPackReconstructSurface [05:24] [ComfyUI] Inputs: {"backend": "alpha_shape", "backend.alpha": 8, "report_panel": "false", "points": ["2", 0]} [05:24] [ComfyUI] Node 6: GeomPackReconstructSurface [05:24] [ComfyUI] Inputs: {"backend": "convex_hull", "report_panel": "false", "points": ["2", 0]} [05:24] [ComfyUI] Node 10: GeomPackPreviewMeshMulti [05:24] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[30.06530722689757,-256.0460141720188,95.11427347765263],\\\"focalPoint\\\":[30.322647094726562,1.8909549 [05:24] [ComfyUI] Node 14: GeomPackPreviewMeshVTK [05:24] [ComfyUI] Inputs: {"mode": "fields", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"{\\\"position\\\":[30.06530722689757,-256.0460141720188,95.11427347765263],\\\"focalPoint\\\":[30.322647094726562,1.89095497 [05:24] [ComfyUI] Generated prompt_id: c1a71404-ef84-4161-bb7e-b83c91dc20f8 [05:24] [ComfyUI] Calling execution.validate_prompt()... [05:24] [ComfyUI] Validation result: valid=True [05:24] [ComfyUI] === Validation PASSED === [05:24] [ComfyUI] got prompt [05:24] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl' [05:24] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [05:24] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:24] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed [05:24] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker... [05:24] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [05:24] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack'] [05:24] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [05:24] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py', 'abstract://comfy_worker_566e4c9ce56e']... [05:24] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_566e4c9ce56e (abstract, no filesystem path) [05:25] [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:25] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:25] [ComfyUI] [SubprocessWorker] created 0 shm blocks [05:25] [ComfyUI] [SubprocessWorker] sending request via socket... [05:25] [ComfyUI] [SubprocessWorker] call_id=88 sending call_method [05:26] Frame 2 saved (frame_001.jpg, t=2.3s) [05:26] [capture-periodic] freeze=3ms shot=99ms unfreeze=2ms saved=True [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/Stanford_Bunny.stl [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces [05:26] [ComfyUI] [SubprocessWorker] got response: ok [05:26] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.64s): result: NodeOutput [05:26] [ComfyUI] [comfy-env] Running GeomPackMeshToPointCloud: mode: 'surface_sampling', sample_count: 10000, sampling_method: 'uniform', include_normals: 'true', trimesh: Trimesh [05:26] [ComfyUI] [SubprocessWorker] call_method: nodes.conversion.mesh_to_pointcloud.MeshToPointCloudNode.EXECUTE_NORMALIZED [05:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:26] [ComfyUI] [SubprocessWorker] sending request via socket... [05:26] [ComfyUI] [SubprocessWorker] call_id=89 sending call_method [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sampling 10,000 points using uniform method [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated point cloud with 10,000 points [05:26] [ComfyUI] [SubprocessWorker] got response: ok [05:26] [ComfyUI] [comfy-env] GeomPackMeshToPointCloud done (0.07s): result: NodeOutput [05:26] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh [05:26] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED [05:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:26] [ComfyUI] [SubprocessWorker] sending request via socket... [05:26] [ComfyUI] [SubprocessWorker] call_id=90 sending call_method [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: convex_hull -> GeomPackReconstruct_ConvexHull [05:26] [ComfyUI] [SubprocessWorker] got response: ok [05:26] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput [05:26] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'fields', trimesh: Trimesh [05:26] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED [05:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:26] [ComfyUI] [SubprocessWorker] sending request via socket... [05:26] [ComfyUI] [SubprocessWorker] call_id=91 sending call_method [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Point Cloud - 10000 vertices, 0 faces [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: None, texture: False, vertex_colors: False [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using fields mode - VTP export [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting point cloud to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_45541132.vtp [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 10000 points [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_45541132.vtp [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Fields mode info: watertight=False, volume=None, area=None, no fields [05:26] [ComfyUI] [SubprocessWorker] got response: ok [05:26] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.05s): result: NodeOutput [05:26] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh [05:26] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED [05:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:26] [ComfyUI] [SubprocessWorker] sending request via socket... [05:26] [ComfyUI] [SubprocessWorker] call_id=92 sending call_method [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: poisson -> GeomPackReconstruct_Poisson [05:26] [ComfyUI] [SubprocessWorker] got response: ok [05:26] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput [05:26] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh [05:26] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED [05:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:26] [ComfyUI] [SubprocessWorker] sending request via socket... [05:26] [ComfyUI] [SubprocessWorker] call_id=93 sending call_method [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: alpha_shape -> GeomPackReconstruct_AlphaShape [05:26] [ComfyUI] [SubprocessWorker] got response: ok [05:26] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput [05:26] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh [05:26] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED [05:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:26] [ComfyUI] [SubprocessWorker] sending request via socket... [05:26] [ComfyUI] [SubprocessWorker] call_id=94 sending call_method [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: ball_pivoting -> GeomPackReconstruct_BallPivoting [05:26] [ComfyUI] [SubprocessWorker] got response: ok [05:26] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.02s): result: NodeOutput [05:26] [ComfyUI] [comfy-env] Running GeomPackReconstruct_ConvexHull: points: Trimesh [05:26] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.convex_hull.ReconstructConvexHullNode.EXECUTE_NORMALIZED [05:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:26] [ComfyUI] [SubprocessWorker] sending request via socket... [05:26] [ComfyUI] [SubprocessWorker] call_id=95 sending call_method [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: convex_hull [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computing convex hull... [05:26] [ComfyUI] [SubprocessWorker] got response: ok [05:26] [ComfyUI] [comfy-env] GeomPackReconstruct_ConvexHull done (0.04s): result: NodeOutput [05:26] [ComfyUI] [comfy-env] Running GeomPackReconstruct_Poisson: points: Trimesh, poisson_depth: 8, poisson_scale: 1.1, estimate_normals: 'true', normal_radius: 0.1 [05:26] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.poisson.ReconstructPoissonNode.EXECUTE_NORMALIZED [05:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:26] [ComfyUI] [SubprocessWorker] sending request via socket... [05:26] [ComfyUI] [SubprocessWorker] call_id=96 sending call_method [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: poisson [05:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using normals from input [05:26] Node executed (2 total), capturing... [05:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using PyMeshLab Poisson reconstruction... [05:27] Frame 3 saved (frame_002.jpg, t=3.2s) [05:27] [capture-node] freeze=56ms shot=134ms unfreeze=14ms saved=True [05:29] Frame 4 saved (frame_003.jpg, t=5.5s) [05:29] [capture-periodic] freeze=3ms shot=143ms unfreeze=3ms saved=True [05:30] [capture-loop] iter=50 t=6.3s state={'complete': False, 'error': None, 'executedCount': 2, 'wsState': 1} eval_ms=4 ram=2.8/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=29% browser_rss=1.10GB [05:31] [ComfyUI] [SubprocessWorker] got response: ok [05:31] [ComfyUI] [comfy-env] GeomPackReconstruct_Poisson done (4.99s): result: NodeOutput [05:31] [ComfyUI] [comfy-env] Running GeomPackReconstruct_AlphaShape: points: Trimesh, alpha: 8.0 [05:31] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.alpha_shape.ReconstructAlphaShapeNode.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=97 sending call_method [05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: alpha_shape [05:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Computing alpha shape... [05:31] Node executed (3 total), capturing... [05:32] Frame 5 saved (frame_004.jpg, t=8.2s) [05:32] [capture-node] freeze=3ms shot=104ms unfreeze=7ms saved=True [05:33] [ComfyUI] [SubprocessWorker] got response: ok [05:33] [ComfyUI] [comfy-env] GeomPackReconstruct_AlphaShape done (1.70s): result: NodeOutput [05:33] [ComfyUI] [comfy-env] Running GeomPackReconstruct_BallPivoting: points: Trimesh, ball_radius: 3.0, estimate_normals: 'true', normal_radius: 0.5 [05:33] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.ball_pivoting.ReconstructBallPivotingNode.EXECUTE_NORMALIZED [05:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:33] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:33] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:33] [ComfyUI] [SubprocessWorker] sending request via socket... [05:33] [ComfyUI] [SubprocessWorker] call_id=98 sending call_method [05:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: ball_pivoting [05:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using PyMeshLab Ball Pivoting... [05:33] Node executed (4 total), capturing... [05:33] [ComfyUI] [SubprocessWorker] got response: ok [05:33] [ComfyUI] [comfy-env] GeomPackReconstruct_BallPivoting done (0.13s): result: NodeOutput [05:33] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh [05:33] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [05:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:33] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:33] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:33] [ComfyUI] [SubprocessWorker] created 4 shm blocks [05:33] [ComfyUI] [SubprocessWorker] sending request via socket... [05:33] [ComfyUI] [SubprocessWorker] call_id=99 sending call_method [05:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4 [05:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 44857 vertices, 89776 faces [05:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_ff2aa199.vtp [05:33] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (44857 vertices) [05:33] Frame 6 saved (frame_005.jpg, t=9.9s) [05:33] [capture-node] freeze=4ms shot=129ms unfreeze=7ms saved=True [05:34] Node executed (5 total), capturing... [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 44857 vertices, 89776 faces [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_ff2aa199.vtp [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 10000 vertices, 16738 faces [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_ff2aa199.vtp [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (10000 vertices) [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 10000 vertices, 16738 faces [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_ff2aa199.vtp [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 5741 vertices, 12094 faces [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_ff2aa199.vtp [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (5741 vertices) [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 5741 vertices, 12094 faces [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_ff2aa199.vtp [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 747 vertices, 1490 faces [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_ff2aa199.vtp [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (747 vertices) [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 747 vertices, 1490 faces [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_ff2aa199.vtp [05:34] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready [05:34] [ComfyUI] [SubprocessWorker] got response: ok [05:34] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.56s): result: NodeOutput [05:34] [ComfyUI] Prompt executed in 10.24 seconds [05:34] [capture-node] freeze=3ms shot=110ms unfreeze=2ms saved=False [05:34] Node executed (6 total), capturing... [05:36] Frame 7 saved (frame_006.jpg, t=11.1s) [05:36] [capture-node] freeze=60ms shot=1365ms unfreeze=0ms saved=True [05:36] Execution complete (t=11.1s) [05:36] Captured 7 unique frames over 12.52s [05:36] [debug] iframes: 2 [05:36] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_vtk.html?v=1778445, canvas=486x384, rafFrozen=True [05:36] [debug] iframe[1]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=368x195, rafFrozen=True [05:36] [timing] trigger_3d_previews: 0.0s [05:38] Saved high-quality screenshot: reconstruct_all_executed.png [05:38] [timing] final_screenshot: 0.3s [05:39] Capturing execution frames: refine_mesh.json [05:45] Frame 1 saved (frame_000.jpg, t=0.0s) [05:45] Validating workflow... [05:45] [ComfyUI] === /validate endpoint called === [05:45] [ComfyUI] Received JSON with keys: ['prompt'] [05:45] [ComfyUI] Prompt has 3 nodes [05:45] [ComfyUI] Node 1: GeomPackLoadMesh [05:45] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"} [05:45] [ComfyUI] Node 3: GeomPackPreviewMeshDual [05:45] [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:45] [ComfyUI] Node 4: RefineMesh [05:45] [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:45] [ComfyUI] Generated prompt_id: edfd6835-7266-4f99-97de-e7fc8839aa17 [05:45] [ComfyUI] Calling execution.validate_prompt()... [05:45] Queuing workflow for execution... [05:45] [ComfyUI] Validation result: valid=True [05:45] [ComfyUI] === Validation PASSED === [05:45] [ComfyUI] got prompt [05:45] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl' [05:45] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [05:45] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:45] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:45] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:45] [ComfyUI] [SubprocessWorker] created 0 shm blocks [05:45] [ComfyUI] [SubprocessWorker] sending request via socket... [05:45] [ComfyUI] [SubprocessWorker] call_id=100 sending call_method [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/Stanford_Bunny.stl [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces [05:45] [ComfyUI] [SubprocessWorker] got response: ok [05:45] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.27s): result: NodeOutput [05:45] [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:45] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.refine.RefineMeshNode.EXECUTE_NORMALIZED [05:45] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:45] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:45] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:45] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:45] [ComfyUI] [SubprocessWorker] sending request via socket... [05:45] [ComfyUI] [SubprocessWorker] call_id=101 sending call_method [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: decimation [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2502 vertices (-53701), 5000 faces (-107402) [05:45] [ComfyUI] [SubprocessWorker] got response: ok [05:45] [ComfyUI] [comfy-env] RefineMesh done (0.17s): result: NodeOutput [05:45] [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:45] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [05:45] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:45] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:45] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:45] [ComfyUI] [SubprocessWorker] created 2 shm blocks [05:45] [ComfyUI] [SubprocessWorker] sending request via socket... [05:45] [ComfyUI] [SubprocessWorker] call_id=102 sending call_method [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2502 vertices, 5000 faces [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['face.stl'] [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [05:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_7e6e6eb7.vtp [05:45] Node executed (1 total), capturing... [05:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices) [05:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl [05:46] Frame 2 saved (frame_001.jpg, t=0.8s) [05:46] [capture-node] freeze=3ms shot=97ms unfreeze=4ms saved=True [05:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces [05:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_7e6e6eb7.vtp [05:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_7e6e6eb7.stl [05:46] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [05:46] [ComfyUI] [SubprocessWorker] got response: ok [05:46] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.55s): result: NodeOutput [05:46] [ComfyUI] Prompt executed in 1.00 seconds [05:46] Node executed (2 total), capturing... [05:47] Frame 3 saved (frame_002.jpg, t=1.3s) [05:47] [capture-node] freeze=252ms shot=829ms unfreeze=0ms saved=True [05:47] Execution complete (t=1.3s) [05:47] Captured 3 unique frames over 2.44s [05:47] [debug] iframes: 1 [05:47] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=387x485, rafFrozen=True [05:47] [timing] trigger_3d_previews: 0.0s [05:49] Saved high-quality screenshot: refine_mesh_executed.png [05:49] [timing] final_screenshot: 0.3s [05:50] Capturing execution frames: remesh_intersections.json [05:56] Frame 1 saved (frame_000.jpg, t=0.0s) [05:56] Validating workflow... [05:56] [ComfyUI] === /validate endpoint called === [05:56] [ComfyUI] Received JSON with keys: ['prompt'] [05:56] [ComfyUI] Prompt has 5 nodes [05:56] [ComfyUI] Node 1: GeomPackLoadMesh [05:56] [ComfyUI] Inputs: {"file_path": "3d/camelhead.off"} [05:56] [ComfyUI] Node 5: GeomPackDetectSelfIntersections [05:56] Queuing workflow for execution... [05:56] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["1", 0]} [05:56] [ComfyUI] Node 8: GeomPackDetectSelfIntersections [05:56] [ComfyUI] Inputs: {"report_panel": "false", "trimesh": ["12", 0]} [05:56] [ComfyUI] Node 12: GeomPackRemeshSelfIntersections [05:56] [ComfyUI] Inputs: {"detect_only": false, "remove_unreferenced": true, "extract_outer_hull": false, "stitch_all": true, "report_panel": "false", "mesh": ["1", 0]} [05:56] [ComfyUI] Node 13: GeomPackPreviewMeshDual [05:56] [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:56] [ComfyUI] Generated prompt_id: c04e7997-45e6-466a-a357-c81750fc1efc [05:56] [ComfyUI] Calling execution.validate_prompt()... [05:56] [ComfyUI] Validation result: valid=True [05:56] [ComfyUI] === Validation PASSED === [05:56] [ComfyUI] got prompt [05:56] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/camelhead.off' [05:56] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [05:56] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:56] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:56] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:56] [ComfyUI] [SubprocessWorker] created 0 shm blocks [05:56] [ComfyUI] [SubprocessWorker] sending request via socket... [05:56] [ComfyUI] [SubprocessWorker] call_id=103 sending call_method [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/camelhead.off [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/camelhead.off [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 11381 vertices, 22704 faces [05:56] [ComfyUI] [SubprocessWorker] got response: ok [05:56] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.20s): result: NodeOutput [05:56] [ComfyUI] [comfy-env] Running GeomPackRemeshSelfIntersections: detect_only: False, remove_unreferenced: True, extract_outer_hull: False, stitch_all: True, mesh: Trimesh [05:56] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.remesh_intersections.RemeshSelfIntersectionsNode.EXECUTE_NORMALIZED [05:56] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:56] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:56] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:56] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:56] [ComfyUI] [SubprocessWorker] sending request via socket... [05:56] [ComfyUI] [SubprocessWorker] call_id=104 sending call_method [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Processing mesh: 11381 vertices, 22704 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Options: detect_only=False, remove_unreferenced=True, extract_outer_hull=False, stitch_all=True [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remeshing complete: 11385 vertices, 22720 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Removing unreferenced vertices... [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: After cleanup: 11385 vertices, 22720 faces [05:56] [ComfyUI] [SubprocessWorker] got response: ok [05:56] [ComfyUI] [comfy-env] GeomPackRemeshSelfIntersections done (0.21s): result: NodeOutput [05:56] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh [05:56] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED [05:56] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:56] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:56] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:56] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:56] [ComfyUI] [SubprocessWorker] sending request via socket... [05:56] [ComfyUI] [SubprocessWorker] call_id=105 sending call_method [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11385 vertices, 22720 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method [05:56] Node executed (1 total), capturing... [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: No self-intersections detected [05:56] [ComfyUI] [SubprocessWorker] got response: ok [05:56] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.11s): result: NodeOutput [05:56] [ComfyUI] [comfy-env] Running GeomPackDetectSelfIntersections: trimesh: Trimesh [05:56] [ComfyUI] [SubprocessWorker] call_method: nodes.repair_cgal.detect_intersections.DetectSelfIntersectionsNode.EXECUTE_NORMALIZED [05:56] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:56] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:56] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:56] [ComfyUI] [SubprocessWorker] created 1 shm blocks [05:56] [ComfyUI] [SubprocessWorker] sending request via socket... [05:56] [ComfyUI] [SubprocessWorker] call_id=106 sending call_method [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Analyzing mesh: 11381 vertices, 22704 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using libigl CGAL method [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found 6 intersecting faces (5 intersection pairs) [05:56] [ComfyUI] [SubprocessWorker] got response: ok [05:56] [ComfyUI] [comfy-env] GeomPackDetectSelfIntersections done (0.10s): result: NodeOutput [05:56] [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:56] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [05:56] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [05:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [05:56] [ComfyUI] [SubprocessWorker] worker started/confirmed [05:56] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [05:56] [ComfyUI] [SubprocessWorker] created 2 shm blocks [05:56] [ComfyUI] [SubprocessWorker] sending request via socket... [05:56] [ComfyUI] [SubprocessWorker] call_id=107 sending call_method [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 11381 vertices, 22704 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 11385 vertices, 22720 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting'] [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting'] [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: ['intersection_flag', 'intersection_count', 'face.self_intersecting'] [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_4cb0bb96.vtp [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11381 vertices) [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1) [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1) [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11381 vertices, 22704 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_4cb0bb96.vtp [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_4cb0bb96.vtp [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (11385 vertices) [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_flag (components: 1) [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: intersection_count (components: 1) [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: self_intersecting [05:56] Frame 2 saved (frame_001.jpg, t=0.8s) [05:56] [capture-node] freeze=15ms shot=89ms unfreeze=2ms saved=True [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 11385 vertices, 22720 faces [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_4cb0bb96.vtp [05:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [05:56] [ComfyUI] [SubprocessWorker] got response: ok [05:56] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.22s): result: NodeOutput [05:56] [ComfyUI] Prompt executed in 0.85 seconds [05:57] Node executed (4 total), capturing... [05:57] Frame 3 saved (frame_002.jpg, t=1.2s) [05:57] [capture-node] freeze=272ms shot=301ms unfreeze=0ms saved=True [05:57] Execution complete (t=1.2s) [05:57] Captured 3 unique frames over 1.83s [05:57] [debug] iframes: 1 [05:57] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [05:57] [timing] trigger_3d_previews: 0.0s [06:00] Saved high-quality screenshot: remesh_intersections_executed.png [06:00] [timing] final_screenshot: 0.2s [06:00] Capturing execution frames: remeshing.json [06:06] Frame 1 saved (frame_000.jpg, t=0.0s) [06:06] Validating workflow... [06:06] [ComfyUI] === /validate endpoint called === [06:06] [ComfyUI] Received JSON with keys: ['prompt'] [06:06] [ComfyUI] Prompt has 3 nodes [06:06] [ComfyUI] Node 1: GeomPackLoadMesh [06:06] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"} [06:06] [ComfyUI] Node 25: GeomPackPreviewMeshDual [06:06] Queuing workflow for execution... [06:06] [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 [06:06] [ComfyUI] Node 27: GeomPackRemesh [06:06] [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 [06:06] [ComfyUI] Generated prompt_id: 771c0021-289e-46d6-883d-f4924b4af2ec [06:06] [ComfyUI] Calling execution.validate_prompt()... [06:06] [ComfyUI] Validation result: valid=True [06:06] [ComfyUI] === Validation PASSED === [06:06] [ComfyUI] got prompt [06:06] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl' [06:06] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [06:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:06] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:06] [ComfyUI] [SubprocessWorker] created 0 shm blocks [06:06] [ComfyUI] [SubprocessWorker] sending request via socket... [06:06] [ComfyUI] [SubprocessWorker] call_id=108 sending call_method [06:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl [06:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/Stanford_Bunny.stl [06:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces [06:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces [06:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces [06:06] [ComfyUI] [SubprocessWorker] got response: ok [06:06] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.24s): result: NodeOutput [06:06] [ComfyUI] [comfy-env] Running GeomPackRemesh: backend: dict, trimesh: Trimesh [06:06] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.remesh.RemeshNode.EXECUTE_NORMALIZED [06:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:06] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:06] [ComfyUI] [SubprocessWorker] created 1 shm blocks [06:06] [ComfyUI] [SubprocessWorker] sending request via socket... [06:06] [ComfyUI] [SubprocessWorker] call_id=109 sending call_method [06:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Remesh dispatch: quadwild -> GeomPackRemesh_QuadWild [06:06] [ComfyUI] [SubprocessWorker] got response: ok [06:06] [ComfyUI] [comfy-env] GeomPackRemesh done (0.04s): result: NodeOutput [06:06] [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' [06:06] [ComfyUI] [SubprocessWorker] call_method: nodes.remeshing.backends.quadwild.RemeshQuadWildNode.EXECUTE_NORMALIZED [06:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:06] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:06] [ComfyUI] [SubprocessWorker] created 1 shm blocks [06:06] [ComfyUI] [SubprocessWorker] sending request via socket... [06:06] [ComfyUI] [SubprocessWorker] call_id=110 sending call_method [06:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: quadwild [06:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 56203 vertices, 112402 faces [06:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: sharp_angle=35.0, alpha=0.02, scale=1.0, remesh=true, smooth=true [06:08] Frame 2 saved (frame_001.jpg, t=2.2s) [06:08] [capture-periodic] freeze=2ms shot=90ms unfreeze=6ms saved=True [06:10] Frame 3 saved (frame_002.jpg, t=4.4s) [06:10] [capture-periodic] freeze=2ms shot=91ms unfreeze=2ms saved=True [06:11] [capture-loop] iter=50 t=5.6s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=3.0/15.6GB (20%) swap=0.0/3.0GB (0%) cpu=30% browser_rss=1.05GB [06:17] [capture-loop] iter=100 t=11.3s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.9/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=34% browser_rss=0.90GB [06:22] [capture-loop] iter=150 t=16.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=32% browser_rss=0.89GB [06:27] [ComfyUI] Initital dimension: 33361 x 33361, number of constraints: 0, number of integer variables: 20091, use reordering: yes [06:27] [ComfyUI] make_constraints_independent took 0.00052300000000000003 s. [06:27] [ComfyUI] Constraint integration took 3.6000000000000001e-05 s. [06:27] [ComfyUI] Constraint elimination took 0.0035969999999999999 s. [06:27] [ComfyUI] Reindexing took 0.00028100000000000005 s. [06:27] [ComfyUI] eliminate_constraints took 0.0039870000000000001 s. [06:27] [ComfyUI] Eliminated dimension: 33361 x 33361 [06:27] [ComfyUI] #nonzeros: 152419 [06:27] [ComfyUI] integer variables #: 20091 [06:27] [ComfyUI] continuous variables #: 13270 [06:27] [ComfyUI] initial full solution [06:27] [ComfyUI] calc_system_eigen took 0.018224000000000001 s. [06:27] [ComfyUI] final full solution [06:27] [ComfyUI] update_system_eigen took 0.0059410000000000001 s. [06:27] [ComfyUI] *** Statistics of MiSo Solver *** [06:27] [ComfyUI] Number of LOCAL iterations = 3042 [06:27] [ComfyUI] Number of CG iterations = 0 [06:27] [ComfyUI] Number of FULL iterations = 2 [06:27] [ComfyUI] Number of ROUNDING = 20091 [06:27] [ComfyUI] solve_multiple_rounding took 0.45254200000000006 s. [06:27] [ComfyUI] solve took 0.45259899999999997 s. [06:27] [ComfyUI] restore_eliminated_vars took 0.000136 s. [06:27] [ComfyUI] solve took 0.45745400000000003 s. [06:28] [capture-loop] iter=200 t=22.3s 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=33% browser_rss=0.89GB [06:29] [ComfyUI] performed 180 adjustments for even rhs [06:30] [ComfyUI] performed 170 adjustments for even rhs [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] [06:32] [ComfyUI] === WATCHDOG TICK 1 === [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6118 vertices, 12228 faces [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] Thread 0x00007f48fe5396c0 (most recent call first): [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/socket.py", line 294 in accept [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/multiprocessing/connection.py", line 626 in accept [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/multiprocessing/connection.py", line 480 in accept [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/multiprocessing/resource_sharer.py", line 138 in _serve [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 982 in run [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 1045 in _bootstrap_inner [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 1002 in _bootstrap [06:32] [ComfyUI] [06:32] [ComfyUI] Current thread 0x00007f496bf806c0 (most recent call first): [06:32] [ComfyUI] File "/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py", line 52 in _watchdog [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 982 in run [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 1045 in _bootstrap_inner [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 1002 in _bootstrap [06:32] [ComfyUI] [06:32] [ComfyUI] Thread 0x00007f496caa5740 (most recent call first): [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages/trimesh/base.py", line 374 in faces [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages/trimesh/base.py", line 192 in __init__ [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack/nodes/remeshing/backends/quadwild.py", line 61 in execute [06:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/comfy_api/latest/_io.py", line 1833 in EXECUTE_NORMALIZED [06:32] [ComfyUI] File "/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py", line 1762 in main [06:32] [ComfyUI] File "/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py", line 1807 in [06:32] [ComfyUI] [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] === END === [06:32] [ComfyUI] [06:32] [ComfyUI] [SubprocessWorker] got response: ok [06:32] [ComfyUI] [comfy-env] GeomPackRemesh_QuadWild done (25.81s): result: NodeOutput [06:32] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'side_by_side', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh [06:32] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [06:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:32] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:32] [ComfyUI] [SubprocessWorker] created 2 shm blocks [06:32] [ComfyUI] [SubprocessWorker] sending request via socket... [06:32] [ComfyUI] [SubprocessWorker] call_id=111 sending call_method [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6118 vertices, 12228 faces [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['face.stl'] [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_d01386bc.vtp [06:32] Node executed (1 total), capturing... [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices) [06:32] Frame 4 saved (frame_003.jpg, t=26.4s) [06:32] [capture-node] freeze=4ms shot=102ms unfreeze=7ms saved=True [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_d01386bc.vtp [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_d01386bc.stl [06:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [06:32] [ComfyUI] [SubprocessWorker] got response: ok [06:32] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.55s): result: NodeOutput [06:32] [ComfyUI] Prompt executed in 26.64 seconds [06:33] Node executed (2 total), capturing... [06:34] Frame 5 saved (frame_004.jpg, t=27.4s) [06:34] [capture-node] freeze=278ms shot=857ms unfreeze=0ms saved=True [06:34] Execution complete (t=27.4s) [06:34] Captured 5 unique frames over 28.56s [06:34] [debug] iframes: 1 [06:34] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [06:34] [timing] trigger_3d_previews: 0.0s [06:36] Saved high-quality screenshot: remeshing_executed.png [06:36] [timing] final_screenshot: 0.3s [06:37] [20/33] SKIPPED (not in cpu list) remeshing_all.json [06:37] Capturing execution frames: sMOOth.json [06:43] Frame 1 saved (frame_000.jpg, t=0.0s) [06:43] Validating workflow... [06:43] [ComfyUI] === /validate endpoint called === [06:43] [ComfyUI] Received JSON with keys: ['prompt'] [06:43] [ComfyUI] Prompt has 3 nodes [06:43] [ComfyUI] Node 1: GeomPackPreviewMeshDual [06:43] [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:43] [ComfyUI] Node 3: GeomPackLoadMesh [06:43] [ComfyUI] Inputs: {"file_path": "3d/cow.off"} [06:43] [ComfyUI] Node 5: GeomPackSmoothMesh [06:43] [ComfyUI] Inputs: {"backend": "taubin", "backend.iterations": 5, "backend.lambda_": 1, "backend.mu": -0.8, "trimesh": ["3", 0]} [06:43] [ComfyUI] Generated prompt_id: 68b14c10-110b-4f60-9992-4a16e9371f09 [06:43] [ComfyUI] Calling execution.validate_prompt()... [06:43] Queuing workflow for execution... [06:43] [ComfyUI] Validation result: valid=True [06:43] [ComfyUI] === Validation PASSED === [06:43] [ComfyUI] got prompt [06:43] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/cow.off' [06:43] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [06:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:43] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:43] [ComfyUI] [SubprocessWorker] created 0 shm blocks [06:43] [ComfyUI] [SubprocessWorker] sending request via socket... [06:43] [ComfyUI] [SubprocessWorker] call_id=112 sending call_method [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/cow.off [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/cow.off [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2761 vertices, 5520 faces [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2761 vertices, 5520 faces [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2761 vertices, 5520 faces [06:43] [ComfyUI] [SubprocessWorker] got response: ok [06:43] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.03s): result: NodeOutput [06:43] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh [06:43] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED [06:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:43] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:43] [ComfyUI] [SubprocessWorker] created 1 shm blocks [06:43] [ComfyUI] [SubprocessWorker] sending request via socket... [06:43] [ComfyUI] [SubprocessWorker] call_id=113 sending call_method [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: taubin -> GeomPackSmooth_Taubin [06:43] [ComfyUI] [SubprocessWorker] got response: ok [06:43] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput [06:43] [ComfyUI] [comfy-env] Running GeomPackSmooth_Taubin: trimesh: Trimesh, iterations: 5, lambda_: 1.0, mu: -0.8 [06:43] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.taubin.SmoothTaubinNode.EXECUTE_NORMALIZED [06:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:43] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:43] [ComfyUI] [SubprocessWorker] created 1 shm blocks [06:43] [ComfyUI] [SubprocessWorker] sending request via socket... [06:43] [ComfyUI] [SubprocessWorker] call_id=114 sending call_method [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: taubin [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=5, lambda=1.000, mu=-0.800 [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.007834, max: 0.047218 [06:43] [ComfyUI] [SubprocessWorker] got response: ok [06:43] [ComfyUI] [comfy-env] GeomPackSmooth_Taubin done (0.02s): result: NodeOutput [06: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 [06:43] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [06:43] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:43] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:43] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:43] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:43] [ComfyUI] [SubprocessWorker] created 2 shm blocks [06:43] [ComfyUI] [SubprocessWorker] sending request via socket... [06:43] [ComfyUI] [SubprocessWorker] call_id=115 sending call_method [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: [] [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_80862743.stl [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_80862743.stl [06:43] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [06:43] [ComfyUI] [SubprocessWorker] got response: ok [06:43] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput [06:43] [ComfyUI] Prompt executed in 0.08 seconds [06:43] Node executed (2 total), capturing... [06:44] Frame 2 saved (frame_001.jpg, t=0.5s) [06:44] [capture-node] freeze=114ms shot=307ms unfreeze=0ms saved=True [06:44] Execution complete (t=0.5s) [06:44] Captured 2 unique frames over 0.94s [06:44] [debug] iframes: 1 [06:44] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [06:44] [timing] trigger_3d_previews: 0.0s [06:46] Saved high-quality screenshot: sMOOth_executed.png [06:46] [timing] final_screenshot: 0.2s [06:46] Capturing execution frames: sharpen.json [06:52] Frame 1 saved (frame_000.jpg, t=0.0s) [06:52] Validating workflow... [06:52] [ComfyUI] === /validate endpoint called === [06:52] [ComfyUI] Received JSON with keys: ['prompt'] [06:52] [ComfyUI] Prompt has 4 nodes [06:52] [ComfyUI] Node 4: GeomPackLoadMesh [06:52] [ComfyUI] Inputs: {"file_path": "3d/noisy/Fandisk0.3/Noisy.obj"} [06:52] [ComfyUI] Node 6: GeomPackLoadMesh [06:52] [ComfyUI] Inputs: {"file_path": "3d/noisy/Fandisk0.3/Original.obj"} [06:52] [ComfyUI] Node 7: GeomPackSharpenMesh [06:52] [ComfyUI] Inputs: {"backend": "two_step", "backend.smooth_steps": 2, "backend.normal_threshold": 60, "trimesh": ["4", 0]} [06:52] [ComfyUI] Node 8: GeomPackPreviewMeshMulti [06:52] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[11.988365833801835,17.82450062324679,9.744545997398912],\\\"focalPoint\\\":[2.4225937947630882,15.191427 [06:52] Queuing workflow for execution... [06:52] [ComfyUI] Generated prompt_id: e9dd8c12-3622-48bf-9829-e592080b6ebc [06:52] [ComfyUI] Calling execution.validate_prompt()... [06:52] [ComfyUI] Validation result: valid=True [06:52] [ComfyUI] === Validation PASSED === [06:52] [ComfyUI] got prompt [06:52] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/noisy/Fandisk0.3/Noisy.obj' [06:52] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [06:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:52] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:52] [ComfyUI] [SubprocessWorker] created 0 shm blocks [06:52] [ComfyUI] [SubprocessWorker] sending request via socket... [06:52] [ComfyUI] [SubprocessWorker] call_id=116 sending call_method [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/noisy/Fandisk0.3/Noisy.obj [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/noisy/Fandisk0.3/Noisy.obj [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 6475 vertices, 12946 faces [06:52] [ComfyUI] [SubprocessWorker] got response: ok [06:52] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.05s): result: NodeOutput [06:52] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh [06:52] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED [06:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:52] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks [06:52] [ComfyUI] [SubprocessWorker] sending request via socket... [06:52] [ComfyUI] [SubprocessWorker] call_id=117 sending call_method [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: two_step -> GeomPackSharpen_TwoStep [06:52] [ComfyUI] [SubprocessWorker] got response: ok [06:52] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput [06:52] [ComfyUI] [comfy-env] Running GeomPackSharpen_TwoStep: trimesh: Trimesh, smooth_steps: 2, normal_threshold: 60.0 [06:52] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.two_step.SharpenTwoStepNode.EXECUTE_NORMALIZED [06:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:52] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:52] [ComfyUI] [SubprocessWorker] created 1 shm blocks [06:52] [ComfyUI] [SubprocessWorker] sending request via socket... [06:52] [ComfyUI] [SubprocessWorker] call_id=118 sending call_method [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: two_step [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: smooth_steps=2, normal_threshold=60.0 [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.050268, max: 0.269867 [06:52] [ComfyUI] [SubprocessWorker] got response: ok [06:52] [ComfyUI] [comfy-env] GeomPackSharpen_TwoStep done (0.09s): result: NodeOutput [06:52] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/noisy/Fandisk0.3/Original.obj' [06:52] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [06:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:52] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:52] [ComfyUI] [SubprocessWorker] created 0 shm blocks [06:52] [ComfyUI] [SubprocessWorker] sending request via socket... [06:52] [ComfyUI] [SubprocessWorker] call_id=119 sending call_method [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/noisy/Fandisk0.3/Original.obj [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/noisy/Fandisk0.3/Original.obj [06:52] Node executed (1 total), capturing... [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 6475 vertices, 12946 faces [06:52] [ComfyUI] [SubprocessWorker] got response: ok [06:52] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.07s): result: NodeOutput [06:52] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh [06:52] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [06:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [06:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [06:52] [ComfyUI] [SubprocessWorker] worker started/confirmed [06:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [06:52] [ComfyUI] [SubprocessWorker] created 3 shm blocks [06:52] [ComfyUI] [SubprocessWorker] sending request via socket... [06:52] [ComfyUI] [SubprocessWorker] call_id=120 sending call_method [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 3 [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_29b0bd8f.vtp [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_29b0bd8f.vtp [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_29b0bd8f.vtp [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_29b0bd8f.vtp [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_29b0bd8f.vtp [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_29b0bd8f.vtp [06:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 3x1, Preview ready [06:52] [ComfyUI] [SubprocessWorker] got response: ok [06:52] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.17s): result: NodeOutput [06:52] [ComfyUI] Prompt executed in 0.40 seconds [06:53] Frame 2 saved (frame_001.jpg, t=0.5s) [06:53] [capture-node] freeze=4ms shot=121ms unfreeze=14ms saved=True [06:53] Node executed (2 total), capturing... [06:54] Frame 3 saved (frame_002.jpg, t=1.4s) [06:54] [capture-node] freeze=83ms shot=101ms unfreeze=0ms saved=True [06:54] Execution complete (t=1.4s) [06:54] Captured 3 unique frames over 1.62s [06:54] [debug] iframes: 1 [06:54] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=244x393, rafFrozen=True [06:54] [timing] trigger_3d_previews: 0.0s [06:56] Saved high-quality screenshot: sharpen_executed.png [06:56] [timing] final_screenshot: 0.2s [06:56] Capturing execution frames: sharpen_all.json [07:02] Frame 1 saved (frame_000.jpg, t=0.0s) [07:02] Validating workflow... [07:02] [ComfyUI] === /validate endpoint called === [07:02] [ComfyUI] Received JSON with keys: ['prompt'] [07:02] [ComfyUI] Prompt has 10 nodes [07:02] [ComfyUI] Node 1: GeomPackLoadMesh [07:02] [ComfyUI] Inputs: {"file_path": "3d/noisy/Fandisk0.3/Noisy.obj"} [07:02] [ComfyUI] Node 2: GeomPackSharpenMesh [07:02] [ComfyUI] Inputs: {"backend": "two_step", "backend.smooth_steps": 3, "backend.normal_threshold": 60, "trimesh": ["1", 0]} [07:02] [ComfyUI] Node 4: GeomPackSharpenMesh [07:02] [ComfyUI] Inputs: {"backend": "libigl_unsharp", "backend.weight": 0.5, "backend.iterations": 3, "trimesh": ["1", 0]} [07:02] [ComfyUI] Node 5: GeomPackSharpenMesh [07:02] Queuing workflow for execution... [07:02] [ComfyUI] Inputs: {"backend": "l0_minimize", "backend.alpha": 0.001, "backend.beta": 2, "backend.iterations": 10, "trimesh": ["1", 0]} [07:02] [ComfyUI] Node 6: GeomPackSharpenMesh [07:02] [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]} [07:02] [ComfyUI] Node 8: GeomPackSharpenMesh [07:02] [ComfyUI] Inputs: {"backend": "fast_effective", "backend.threshold_T": 0.2, "backend.normal_iterations": 10, "backend.vertex_iterations": 20, "trimesh": ["1", 0]} [07:02] [ComfyUI] Node 9: GeomPackSharpenMesh [07:02] [ComfyUI] Inputs: {"backend": "non_iterative", "backend.sigma_f": 1, "backend.sigma_g": 1, "trimesh": ["1", 0]} [07:02] [ComfyUI] Node 10: GeomPackPreviewMeshMulti [07:02] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-5.961122528109332,15.888697444123462,3.5443586005740766],\\\"focalPoint\\\":[2.429478704929352,15.20779 [07:02] [ComfyUI] Node 11: GeomPackPreviewMeshMulti [07:02] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-5.961122528109332,15.888697444123462,3.5443586005740766],\\\"focalPoint\\\":[2.429478704929352,15.20779 [07:02] [ComfyUI] Node 15: GeomPackSharpenMesh [07:02] [ComfyUI] Inputs: {"backend": "unsharp_mask", "backend.weight": 0.3, "backend.iterations": 5, "trimesh": ["1", 0]} [07:02] [ComfyUI] Generated prompt_id: dfa6202a-b32f-415c-99de-8e83ad55bba4 [07:02] [ComfyUI] Calling execution.validate_prompt()... [07:02] [ComfyUI] Validation result: valid=True [07:02] [ComfyUI] === Validation PASSED === [07:02] [ComfyUI] got prompt [07:02] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/noisy/Fandisk0.3/Noisy.obj' [07:02] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [07:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:02] [ComfyUI] [SubprocessWorker] created 0 shm blocks [07:02] [ComfyUI] [SubprocessWorker] sending request via socket... [07:02] [ComfyUI] [SubprocessWorker] call_id=121 sending call_method [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/noisy/Fandisk0.3/Noisy.obj [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/noisy/Fandisk0.3/Noisy.obj [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 6475 vertices, 12946 faces [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 6475 vertices, 12946 faces [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 6475 vertices, 12946 faces [07:02] [ComfyUI] [SubprocessWorker] got response: ok [07:02] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.04s): result: NodeOutput [07:02] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh [07:02] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED [07:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:02] [ComfyUI] [SubprocessWorker] sending request via socket... [07:02] [ComfyUI] [SubprocessWorker] call_id=122 sending call_method [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: fast_effective -> GeomPackSharpen_FastEffective [07:02] [ComfyUI] [SubprocessWorker] got response: ok [07:02] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput [07:02] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh [07:02] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED [07:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:02] [ComfyUI] [SubprocessWorker] sending request via socket... [07:02] [ComfyUI] [SubprocessWorker] call_id=123 sending call_method [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: guided_normal -> GeomPackSharpen_GuidedNormal [07:02] [ComfyUI] [SubprocessWorker] got response: ok [07:02] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput [07:02] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh [07:02] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED [07:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:02] [ComfyUI] [SubprocessWorker] sending request via socket... [07:02] [ComfyUI] [SubprocessWorker] call_id=124 sending call_method [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: libigl_unsharp -> GeomPackSharpen_LibiglUnsharp [07:02] [ComfyUI] [SubprocessWorker] got response: ok [07:02] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput [07:02] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh [07:02] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED [07:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:02] [ComfyUI] [SubprocessWorker] sending request via socket... [07:02] [ComfyUI] [SubprocessWorker] call_id=125 sending call_method [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: non_iterative -> GeomPackSharpen_NonIterative [07:02] [ComfyUI] [SubprocessWorker] got response: ok [07:02] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput [07:02] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh [07:02] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED [07:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:02] [ComfyUI] [SubprocessWorker] sending request via socket... [07:02] [ComfyUI] [SubprocessWorker] call_id=126 sending call_method [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: l0_minimize -> GeomPackSharpen_L0Minimize [07:02] [ComfyUI] [SubprocessWorker] got response: ok [07:02] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput [07:02] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh [07:02] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED [07:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:02] [ComfyUI] [SubprocessWorker] sending request via socket... [07:02] [ComfyUI] [SubprocessWorker] call_id=127 sending call_method [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: unsharp_mask -> GeomPackSharpen_UnsharpMask [07:02] [ComfyUI] [SubprocessWorker] got response: ok [07:02] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput [07:02] [ComfyUI] [comfy-env] Running GeomPackSharpenMesh: backend: dict, trimesh: Trimesh [07:02] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen.SharpenMeshNode.EXECUTE_NORMALIZED [07:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:02] [ComfyUI] [SubprocessWorker] sending request via socket... [07:02] [ComfyUI] [SubprocessWorker] call_id=128 sending call_method [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sharpen dispatch: two_step -> GeomPackSharpen_TwoStep [07:02] [ComfyUI] [SubprocessWorker] got response: ok [07:02] [ComfyUI] [comfy-env] GeomPackSharpenMesh done (0.01s): result: NodeOutput [07:02] [ComfyUI] [comfy-env] Running GeomPackSharpen_FastEffective: trimesh: Trimesh, threshold_T: 0.2, normal_iterations: 10, vertex_iterations: 20 [07:02] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.fast_effective.SharpenFastEffectiveNode.EXECUTE_NORMALIZED [07:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:02] [ComfyUI] [SubprocessWorker] sending request via socket... [07:02] [ComfyUI] [SubprocessWorker] call_id=129 sending call_method [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: fast_effective [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces [07:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: threshold_T=0.200, normal_iter=10, vertex_iter=20 [07:05] Frame 2 saved (frame_001.jpg, t=2.4s) [07:05] [capture-periodic] freeze=3ms shot=106ms unfreeze=3ms saved=True [07:07] Frame 3 saved (frame_002.jpg, t=4.6s) [07:07] [capture-periodic] freeze=2ms shot=98ms unfreeze=8ms saved=True [07:08] [capture-loop] iter=50 t=5.8s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=3.0/15.6GB (19%) swap=0.0/3.0GB (0%) cpu=28% browser_rss=1.08GB [07:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces [07:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.026954, max: 0.126612 [07:09] [ComfyUI] [SubprocessWorker] got response: ok [07:09] [ComfyUI] [comfy-env] GeomPackSharpen_FastEffective done (6.93s): result: NodeOutput [07:09] [ComfyUI] [comfy-env] Running GeomPackSharpen_GuidedNormal: trimesh: Trimesh, normal_iterations: 5, vertex_iterations: 10, sigma_s: 1.0, sigma_r: 0.35 [07:09] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.guided_normal.SharpenGuidedNormalNode.EXECUTE_NORMALIZED [07:09] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:09] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:09] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:09] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:09] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:09] [ComfyUI] [SubprocessWorker] sending request via socket... [07:09] [ComfyUI] [SubprocessWorker] call_id=130 sending call_method [07:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: guided_normal [07:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces [07:09] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: normal_iter=5, vertex_iter=10, sigma_s=1.00, sigma_r=0.350 [07:09] Node executed (1 total), capturing... [07:10] Frame 4 saved (frame_003.jpg, t=7.5s) [07:10] [capture-node] freeze=4ms shot=104ms unfreeze=9ms saved=True [07:12] Frame 5 saved (frame_004.jpg, t=9.7s) [07:12] [capture-periodic] freeze=2ms shot=98ms unfreeze=6ms saved=True [07:14] [capture-loop] iter=100 t=11.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=17 ram=3.0/15.6GB (19%) swap=0.0/3.0GB (0%) cpu=34% browser_rss=1.09GB [07:19] [capture-loop] iter=150 t=17.3s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.8/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=34% browser_rss=0.93GB [07:25] [capture-loop] iter=200 t=22.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.8/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=34% browser_rss=0.91GB [07:30] [capture-loop] iter=250 t=28.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=4 ram=2.8/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=32% browser_rss=0.91GB [07:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces [07:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.025300, max: 0.123510 [07:31] [ComfyUI] [SubprocessWorker] got response: ok [07:31] [ComfyUI] [comfy-env] GeomPackSharpen_GuidedNormal done (22.02s): result: NodeOutput [07:31] [ComfyUI] [comfy-env] Running GeomPackSharpen_LibiglUnsharp: trimesh: Trimesh, weight: 0.5, iterations: 3 [07:31] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.libigl_unsharp.SharpenLibiglUnsharpNode.EXECUTE_NORMALIZED [07:31] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:31] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:31] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:31] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:31] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:31] [ComfyUI] [SubprocessWorker] sending request via socket... [07:31] [ComfyUI] [SubprocessWorker] call_id=131 sending call_method [07:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_unsharp [07:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces [07:31] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: weight=0.500, iterations=3 [07:31] Node executed (2 total), capturing... [07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces [07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.541299, max: 1.039092 [07:32] [ComfyUI] [SubprocessWorker] got response: ok [07:32] [ComfyUI] [comfy-env] GeomPackSharpen_LibiglUnsharp done (0.33s): result: NodeOutput [07:32] [ComfyUI] [comfy-env] Running GeomPackSharpen_NonIterative: trimesh: Trimesh, sigma_f: 1.0, sigma_g: 1.0 [07:32] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.non_iterative.SharpenNonIterativeNode.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=132 sending call_method [07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: non_iterative [07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces [07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: sigma_f=1.000, sigma_g=1.000 [07:32] Frame 6 saved (frame_005.jpg, t=29.5s) [07:32] [capture-node] freeze=3ms shot=119ms unfreeze=7ms saved=True [07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] [07:32] [ComfyUI] === WATCHDOG TICK 2 === [07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] Thread 0x00007f48fe5396c0 (most recent call first): [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/socket.py", line 294 in accept [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/multiprocessing/connection.py", line 626 in accept [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/multiprocessing/connection.py", line 480 in accept [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/multiprocessing/resource_sharer.py", line 138 in _serve [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 982 in run [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 1045 in _bootstrap_inner [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 1002 in _bootstrap [07:32] [ComfyUI] [07:32] [ComfyUI] Current thread 0x00007f496bf806c0 (most recent call first): [07:32] [ComfyUI] File "/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py", line 52 in _watchdog [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 982 in run [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 1045 in _bootstrap_inner [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/threading.py", line 1002 in _bootstrap [07:32] [ComfyUI] [07:32] [ComfyUI] Thread 0x00007f496caa5740 (most recent call first): [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages/numpy/linalg/_linalg.py", line 2767 in norm [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack/nodes/smoothing/sharpen_backends/non_iterative.py", line 81 in _bfs_faces_in_radius [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack/nodes/smoothing/sharpen_backends/non_iterative.py", line 95 in _non_iterative_sharpen [07:32] Node executed (3 total), capturing... [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack/nodes/smoothing/sharpen_backends/non_iterative.py", line 199 in execute [07:32] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/comfy_api/latest/_io.py", line 1833 in EXECUTE_NORMALIZED [07:32] [ComfyUI] File "/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py", line 1762 in main [07:32] [ComfyUI] File "/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py", line 1807 in [07:32] [ComfyUI] [07:32] [ComfyUI] [worker:ComfyUI-GeometryPack] === END === [07:32] [ComfyUI] [07:32] Frame 7 saved (frame_006.jpg, t=30.0s) [07:32] [capture-node] freeze=3ms shot=98ms unfreeze=9ms saved=True [07:37] [capture-loop] iter=300 t=34.7s state={'complete': False, 'error': None, 'executedCount': 3, 'wsState': 1} eval_ms=3 ram=2.8/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=35% browser_rss=0.92GB [07:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces [07:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.021192, max: 0.087476 [07:38] [ComfyUI] [SubprocessWorker] got response: ok [07:38] [ComfyUI] [comfy-env] GeomPackSharpen_NonIterative done (6.16s): result: NodeOutput [07:38] [ComfyUI] [comfy-env] Running GeomPackSharpen_L0Minimize: trimesh: Trimesh, alpha: 0.001, beta: 2.0, iterations: 10 [07:38] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.l0_minimize.SharpenL0MinimizeNode.EXECUTE_NORMALIZED [07:38] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:38] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:38] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:38] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:38] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:38] [ComfyUI] [SubprocessWorker] sending request via socket... [07:38] [ComfyUI] [SubprocessWorker] call_id=133 sending call_method [07:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: l0_minimize [07:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces [07:38] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: alpha=0.0010, beta=2.0, iterations=10 [07:38] Node executed (4 total), capturing... [07:38] Frame 8 saved (frame_007.jpg, t=35.9s) [07:38] [capture-node] freeze=3ms shot=97ms unfreeze=8ms saved=True [07:40] Frame 9 saved (frame_008.jpg, t=38.0s) [07:40] [capture-periodic] freeze=2ms shot=110ms unfreeze=6ms saved=True [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.009479, max: 0.060807 [07:41] [ComfyUI] [SubprocessWorker] got response: ok [07:41] [ComfyUI] [comfy-env] GeomPackSharpen_L0Minimize done (2.80s): result: NodeOutput [07:41] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh [07:41] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [07:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:41] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:41] Node executed (5 total), capturing... [07:41] [ComfyUI] [SubprocessWorker] created 4 shm blocks [07:41] [ComfyUI] [SubprocessWorker] sending request via socket... [07:41] [ComfyUI] [SubprocessWorker] call_id=134 sending call_method [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4 [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_3947dd9c.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_3947dd9c.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_3947dd9c.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_3947dd9c.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_3947dd9c.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_3947dd9c.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_3947dd9c.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_3947dd9c.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready [07:41] [ComfyUI] [SubprocessWorker] got response: ok [07:41] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.26s): result: NodeOutput [07:41] [ComfyUI] [comfy-env] Running GeomPackSharpen_UnsharpMask: trimesh: Trimesh, weight: 0.3, iterations: 5 [07:41] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.unsharp_mask.SharpenUnsharpMaskNode.EXECUTE_NORMALIZED [07:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:41] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:41] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:41] [ComfyUI] [SubprocessWorker] sending request via socket... [07:41] [ComfyUI] [SubprocessWorker] call_id=135 sending call_method [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: unsharp_mask [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: weight=0.300, iterations=5 [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.013687, max: 0.066009 [07:41] [ComfyUI] [SubprocessWorker] got response: ok [07:41] [ComfyUI] [comfy-env] GeomPackSharpen_UnsharpMask done (0.03s): result: NodeOutput [07:41] [ComfyUI] [comfy-env] Running GeomPackSharpen_TwoStep: trimesh: Trimesh, smooth_steps: 3, normal_threshold: 60.0 [07:41] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.sharpen_backends.two_step.SharpenTwoStepNode.EXECUTE_NORMALIZED [07:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:41] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:41] [ComfyUI] [SubprocessWorker] created 1 shm blocks [07:41] [ComfyUI] [SubprocessWorker] sending request via socket... [07:41] [ComfyUI] [SubprocessWorker] call_id=136 sending call_method [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: two_step [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: smooth_steps=3, normal_threshold=60.0 [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.059156, max: 0.318610 [07:41] [ComfyUI] [SubprocessWorker] got response: ok [07:41] [ComfyUI] [comfy-env] GeomPackSharpen_TwoStep done (0.15s): result: NodeOutput [07:41] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh [07:41] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [07:41] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:41] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:41] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:41] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:41] [ComfyUI] [SubprocessWorker] created 4 shm blocks [07:41] [ComfyUI] [SubprocessWorker] sending request via socket... [07:41] [ComfyUI] [SubprocessWorker] call_id=137 sending call_method [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4 [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_b3ff1505.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [07:41] Frame 10 saved (frame_009.jpg, t=38.7s) [07:41] [capture-node] freeze=3ms shot=108ms unfreeze=115ms saved=True [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_b3ff1505.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_b3ff1505.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_b3ff1505.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_b3ff1505.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_b3ff1505.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_b3ff1505.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (6475 vertices) [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 6475 vertices, 12946 faces [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_b3ff1505.vtp [07:41] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready [07:41] [ComfyUI] [SubprocessWorker] got response: ok [07:41] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.28s): result: NodeOutput [07:41] [ComfyUI] Prompt executed in 39.08 seconds [07:42] Node executed (8 total), capturing... [07:43] Frame 11 saved (frame_010.jpg, t=40.0s) [07:43] [capture-node] freeze=175ms shot=900ms unfreeze=2ms saved=True [07:43] Node executed (9 total), capturing... [07:44] Frame 12 saved (frame_011.jpg, t=41.5s) [07:44] [capture-node] freeze=3ms shot=138ms unfreeze=0ms saved=True [07:44] Execution complete (t=41.5s) [07:44] Captured 12 unique frames over 41.73s [07:44] [debug] iframes: 2 [07:44] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=368x195, rafFrozen=True [07:44] [debug] iframe[1]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=368x195, rafFrozen=True [07:44] [timing] trigger_3d_previews: 0.0s [07:46] Saved high-quality screenshot: sharpen_all_executed.png [07:46] [timing] final_screenshot: 0.3s [07:46] Capturing execution frames: side_by_side_viewer.json [07:52] Frame 1 saved (frame_000.jpg, t=0.0s) [07:52] Validating workflow... [07:52] [ComfyUI] === /validate endpoint called === [07:52] [ComfyUI] Received JSON with keys: ['prompt'] [07:52] [ComfyUI] Prompt has 3 nodes [07:52] [ComfyUI] Node 1: GeomPackCreatePrimitive [07:52] [ComfyUI] Inputs: {"shape": "cube", "size": 2, "subdivisions": 1} [07:52] [ComfyUI] Node 2: GeomPackCreatePrimitive [07:52] [ComfyUI] Inputs: {"shape": "sphere", "size": 2.5, "subdivisions": 2} [07:52] [ComfyUI] Node 7: GeomPackPreviewMeshDual [07:52] Queuing workflow for execution... [07:52] [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:52] [ComfyUI] Generated prompt_id: 1f30cc73-1a63-4e00-9ee8-d2118d50a20e [07:52] [ComfyUI] Calling execution.validate_prompt()... [07:52] [ComfyUI] Validation result: valid=True [07:52] [ComfyUI] === Validation PASSED === [07:52] [ComfyUI] got prompt [07:52] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 2.5, subdivisions: 2 [07:52] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [07:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:52] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:52] [ComfyUI] [SubprocessWorker] created 0 shm blocks [07:52] [ComfyUI] [SubprocessWorker] sending request via socket... [07:52] [ComfyUI] [SubprocessWorker] call_id=138 sending call_method [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 162 vertices, 320 faces [07:52] [ComfyUI] [SubprocessWorker] got response: ok [07:52] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [07:52] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 2.0, subdivisions: 1 [07:52] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [07:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:52] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:52] [ComfyUI] [SubprocessWorker] created 0 shm blocks [07:52] [ComfyUI] [SubprocessWorker] sending request via socket... [07:52] [ComfyUI] [SubprocessWorker] call_id=139 sending call_method [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces [07:52] [ComfyUI] [SubprocessWorker] got response: ok [07:52] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [07: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 [07:52] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [07:52] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [07:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [07:52] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [07:52] [ComfyUI] [SubprocessWorker] worker started/confirmed [07:52] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [07:52] [ComfyUI] [SubprocessWorker] created 2 shm blocks [07:52] [ComfyUI] [SubprocessWorker] sending request via socket... [07:52] [ComfyUI] [SubprocessWorker] call_id=140 sending call_method [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 8 vertices, 12 faces [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 162 vertices, 320 faces [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: [] [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_18a2c1c1.stl [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_18a2c1c1.stl [07:52] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [07:52] [ComfyUI] [SubprocessWorker] got response: ok [07:52] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.01s): result: NodeOutput [07:52] [ComfyUI] Prompt executed in 0.04 seconds [07:52] Node executed (1 total), capturing... [07:53] Frame 2 saved (frame_001.jpg, t=0.5s) [07:53] [capture-node] freeze=31ms shot=103ms unfreeze=0ms saved=True [07:53] Execution complete (t=0.5s) [07:53] Captured 2 unique frames over 0.67s [07:53] [debug] iframes: 1 [07:53] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [07:53] [timing] trigger_3d_previews: 0.0s [07:55] Saved high-quality screenshot: side_by_side_viewer_executed.png [07:55] [timing] final_screenshot: 0.2s [07:55] Capturing execution frames: skeleton_all.json [08:02] Frame 1 saved (frame_000.jpg, t=0.0s) [08:02] Validating workflow... [08:02] [ComfyUI] === /validate endpoint called === [08:02] [ComfyUI] Received JSON with keys: ['prompt'] [08:02] [ComfyUI] Prompt has 11 nodes [08:02] [ComfyUI] Node 1: GeomPackLoadMesh [08:02] [ComfyUI] Inputs: {"file_path": "3d/cow.off"} [08:02] [ComfyUI] Node 2: GeomPackExtractSkeleton [08:02] [ComfyUI] Inputs: {"fix_mesh": "wavefront", "normalize": false, "backend": "wavefront", "backend.waves": 1, "backend.step_size": 1, "trimesh": ["1", 0]} [08:02] [ComfyUI] Node 3: GeomPackExtractSkeleton [08:02] [ComfyUI] Inputs: {"fix_mesh": "vertex_clusters", "normalize": false, "backend": "vertex_clusters", "backend.sampling_dist": 1, "backend.cluster_pos": "median", "trimesh": ["1", 0]} [08:02] [ComfyUI] Node 4: GeomPackExtractSkeleton [08:02] [ComfyUI] Inputs: {"fix_mesh": "edge_collapse", "normalize": false, "backend": "edge_collapse", "backend.shape_weight": 1, "backend.sample_weight": 0.1, "trimesh": ["1", 0]} [08:02] [ComfyUI] Node 5: GeomPackExtractSkeleton [08:02] Queuing workflow for execution... [08:02] [ComfyUI] Inputs: {"fix_mesh": "teasar", "normalize": false, "backend": "teasar", "backend.inv_dist": 10, "backend.min_length": 0, "trimesh": ["1", 0]} [08:02] [ComfyUI] Node 6: GeomPackMeshFromSkeleton [08:02] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["2", 0]} [08:02] [ComfyUI] Node 7: GeomPackMeshFromSkeleton [08:02] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["3", 0]} [08:02] [ComfyUI] Node 8: GeomPackMeshFromSkeleton [08:02] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["4", 0]} [08:02] [ComfyUI] Node 9: GeomPackMeshFromSkeleton [08:02] [ComfyUI] Inputs: {"joint_radius": 0.02, "bone_radius": 0.01, "skeleton": ["5", 0]} [08:02] [ComfyUI] Node 12: GeomPackPreviewMeshMulti [08:02] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.10839671976880196,-0.004104770901572197,-1.5722856770085691],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\ [08:02] [ComfyUI] Node 13: GeomPackPreviewMeshMulti [08:02] [ComfyUI] Inputs: {"mode": "fields", "preview_multi": "{\"show_edges\":true,\"camera_state\":\"{\\\"position\\\":[-0.10839671976880196,-0.004104770901572197,-1.5722856770085691],\\\"focalPoint\\\":[0,0,0],\\\"viewUp\\\ [08:02] [ComfyUI] Generated prompt_id: bebdb123-53a0-4c58-8794-bd80e9798937 [08:02] [ComfyUI] Calling execution.validate_prompt()... [08:02] [ComfyUI] Validation result: valid=True [08:02] [ComfyUI] === Validation PASSED === [08:02] [ComfyUI] got prompt [08:02] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/cow.off' [08:02] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [08:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:02] [ComfyUI] [SubprocessWorker] created 0 shm blocks [08:02] [ComfyUI] [SubprocessWorker] sending request via socket... [08:02] [ComfyUI] [SubprocessWorker] call_id=141 sending call_method [08:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/cow.off [08:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/cow.off [08:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 2761 vertices, 5520 faces [08:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 2761 vertices, 5520 faces [08:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 2761 vertices, 5520 faces [08:02] [ComfyUI] [SubprocessWorker] got response: ok [08:02] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.04s): result: NodeOutput [08:02] [ComfyUI] [comfy-env] Running GeomPackExtractSkeleton: fix_mesh: True, normalize: False, backend: dict, trimesh: Trimesh [08:02] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.extract_skeleton.ExtractSkeleton.EXECUTE_NORMALIZED [08:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:02] [ComfyUI] [SubprocessWorker] sending request via socket... [08:02] [ComfyUI] [SubprocessWorker] call_id=142 sending call_method [08:02] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Extract Skeleton dispatch: edge_collapse -> GeomPackSkeleton_EdgeCollapse [08:02] [ComfyUI] [SubprocessWorker] got response: ok [08:02] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput [08:02] [ComfyUI] [comfy-env] Running GeomPackSkeleton_EdgeCollapse: trimesh: Trimesh, fix_mesh: True, normalize: False, shape_weight: 1.0, sample_weight: 0.1 [08:02] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.edge_collapse.SkeletonEdgeCollapseNode.EXECUTE_NORMALIZED [08:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:02] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:02] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:02] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:02] [ComfyUI] [SubprocessWorker] sending request via socket... [08:02] [ComfyUI] [SubprocessWorker] call_id=143 sending call_method [08:04] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: edge_collapse [08:04] [ComfyUI] [08:04] [ComfyUI] Collapsing edges: 0%| | 0/5520 [00:00 GeomPackSkeleton_VertexClusters [08:05] [ComfyUI] [SubprocessWorker] got response: ok [08:05] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput [08:05] [ComfyUI] [comfy-env] Running GeomPackSkeleton_VertexClusters: trimesh: Trimesh, fix_mesh: True, normalize: False, sampling_dist: 1.0, cluster_pos: 'median' [08:05] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.vertex_clusters.SkeletonVertexClustersNode.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=146 sending call_method [08:05] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: vertex_clusters [08:06] [ComfyUI] [08:06] [ComfyUI] Clustering: 0%| | 0/2761 [00:00 GeomPackSkeleton_Wavefront [08:06] [ComfyUI] [SubprocessWorker] got response: ok [08:06] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput [08:06] [ComfyUI] [comfy-env] Running GeomPackSkeleton_Wavefront: trimesh: Trimesh, fix_mesh: True, normalize: False, waves: 1, step_size: 1.0 [08:06] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.wavefront.SkeletonWavefrontNode.EXECUTE_NORMALIZED [08:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:06] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:06] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:06] [ComfyUI] [SubprocessWorker] sending request via socket... [08:06] [ComfyUI] [SubprocessWorker] call_id=149 sending call_method [08:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: wavefront [08:06] [ComfyUI] [08:06] [ComfyUI] Skeletonizing: 0%| | 0/2761 [00:00 GeomPackSkeleton_Teasar [08:06] [ComfyUI] [SubprocessWorker] got response: ok [08:06] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput [08:06] [ComfyUI] [comfy-env] Running GeomPackSkeleton_Teasar: trimesh: Trimesh, fix_mesh: True, normalize: False, inv_dist: 10.0, min_length: 0.0 [08:06] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.teasar.SkeletonTeasarNode.EXECUTE_NORMALIZED [08:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:06] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:06] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:06] [ComfyUI] [SubprocessWorker] sending request via socket... [08:06] [ComfyUI] [SubprocessWorker] call_id=153 sending call_method [08:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: teasar [08:06] [ComfyUI] [08:06] [ComfyUI] Invalidating: 0%| | 0/2761 [00:00 GeomPackSkeleton_Wavefront [08:17] [ComfyUI] [SubprocessWorker] got response: ok [08:17] [ComfyUI] [comfy-env] GeomPackExtractSkeleton done (0.01s): result: NodeOutput [08:17] [ComfyUI] [comfy-env] Running GeomPackSkeleton_Wavefront: trimesh: Trimesh, fix_mesh: True, normalize: False, waves: 1, step_size: 1.0 [08:17] [ComfyUI] [SubprocessWorker] call_method: nodes.skeleton.backends.wavefront.SkeletonWavefrontNode.EXECUTE_NORMALIZED [08:17] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:17] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:17] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:17] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:17] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:17] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:17] [ComfyUI] [SubprocessWorker] sending request via socket... [08:17] [ComfyUI] [SubprocessWorker] call_id=158 sending call_method [08:17] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: wavefront [08:17] [ComfyUI] [08:17] [ComfyUI] Skeletonizing: 0%| | 0/2761 [00:00 GeomPackSmooth_HCLaplacian [08:26] [ComfyUI] [SubprocessWorker] got response: ok [08:26] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput [08:26] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh [08:26] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED [08:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:26] [ComfyUI] [SubprocessWorker] sending request via socket... [08:26] [ComfyUI] [SubprocessWorker] call_id=163 sending call_method [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: laplacian -> GeomPackSmooth_Laplacian [08:26] [ComfyUI] [SubprocessWorker] got response: ok [08:26] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput [08:26] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh [08:26] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED [08:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:26] [ComfyUI] [SubprocessWorker] sending request via socket... [08:26] [ComfyUI] [SubprocessWorker] call_id=164 sending call_method [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: taubin -> GeomPackSmooth_Taubin [08:26] [ComfyUI] [SubprocessWorker] got response: ok [08:26] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput [08:26] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh [08:26] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED [08:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:26] [ComfyUI] [SubprocessWorker] sending request via socket... [08:26] [ComfyUI] [SubprocessWorker] call_id=165 sending call_method [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: trimesh_taubin -> GeomPackSmooth_TrimeshTaubin [08:26] [ComfyUI] [SubprocessWorker] got response: ok [08:26] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput [08:26] [ComfyUI] [comfy-env] Running GeomPackSmoothMesh: backend: dict, trimesh: Trimesh [08:26] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth.SmoothMeshNode.EXECUTE_NORMALIZED [08:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:26] [ComfyUI] [SubprocessWorker] sending request via socket... [08:26] [ComfyUI] [SubprocessWorker] call_id=166 sending call_method [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Smooth dispatch: trimesh_laplacian -> GeomPackSmooth_TrimeshLaplacian [08:26] [ComfyUI] [SubprocessWorker] got response: ok [08:26] [ComfyUI] [comfy-env] GeomPackSmoothMesh done (0.01s): result: NodeOutput [08:26] [ComfyUI] [comfy-env] Running GeomPackSmooth_HCLaplacian: trimesh: Trimesh [08:26] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.hc_laplacian.SmoothHCLaplacianNode.EXECUTE_NORMALIZED [08:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:26] [ComfyUI] [SubprocessWorker] sending request via socket... [08:26] [ComfyUI] [SubprocessWorker] call_id=167 sending call_method [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: hc_laplacian [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.003891, max: 0.020931 [08:26] [ComfyUI] [SubprocessWorker] got response: ok [08:26] [ComfyUI] [comfy-env] GeomPackSmooth_HCLaplacian done (0.02s): result: NodeOutput [08:26] [ComfyUI] [comfy-env] Running GeomPackSmooth_Laplacian: trimesh: Trimesh, iterations: 5, cotangent_weight: 'true' [08:26] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.laplacian.SmoothLaplacianNode.EXECUTE_NORMALIZED [08:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:26] [ComfyUI] [SubprocessWorker] sending request via socket... [08:26] [ComfyUI] [SubprocessWorker] call_id=168 sending call_method [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: laplacian [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=5, cotangent_weight=True [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.005665, max: 0.030324 [08:26] [ComfyUI] [SubprocessWorker] got response: ok [08:26] [ComfyUI] [comfy-env] GeomPackSmooth_Laplacian done (0.02s): result: NodeOutput [08:26] [ComfyUI] [comfy-env] Running GeomPackSmooth_Taubin: trimesh: Trimesh, iterations: 5, lambda_: 0.5, mu: -0.53 [08:26] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.taubin.SmoothTaubinNode.EXECUTE_NORMALIZED [08:26] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:26] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:26] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:26] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:26] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:26] [ComfyUI] [SubprocessWorker] sending request via socket... [08:26] [ComfyUI] [SubprocessWorker] call_id=169 sending call_method [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: taubin [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces [08:26] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=5, lambda=0.500, mu=-0.530 [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.003815, max: 0.025956 [08:27] [ComfyUI] [SubprocessWorker] got response: ok [08:27] [ComfyUI] [comfy-env] GeomPackSmooth_Taubin done (0.02s): result: NodeOutput [08:27] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh, mesh_3: Trimesh, mesh_4: Trimesh [08:27] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [08:27] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:27] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:27] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:27] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:27] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:27] [ComfyUI] [SubprocessWorker] created 4 shm blocks [08:27] [ComfyUI] [SubprocessWorker] sending request via socket... [08:27] [ComfyUI] [SubprocessWorker] call_id=170 sending call_method [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 4 [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_119e25d2.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices) [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_119e25d2.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_119e25d2.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices) [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_119e25d2.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 3: Mesh - 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_119e25d2.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices) [08:27] Node executed (3 total), capturing... [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_3_119e25d2.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 4: Mesh - 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_119e25d2.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices) [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_4_119e25d2.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x2, Preview ready [08:27] [ComfyUI] [SubprocessWorker] got response: ok [08:27] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.15s): result: NodeOutput [08:27] [ComfyUI] [comfy-env] Running GeomPackSmooth_TrimeshTaubin: trimesh: Trimesh, iterations: 10, lambda_: 0.6, mu: -0.53 [08:27] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.trimesh_taubin.SmoothTrimeshTaubinNode.EXECUTE_NORMALIZED [08:27] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:27] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:27] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:27] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:27] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:27] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:27] [ComfyUI] [SubprocessWorker] sending request via socket... [08:27] [ComfyUI] [SubprocessWorker] call_id=171 sending call_method [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: trimesh_taubin [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=10, lambda=0.600, mu=-0.530 [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.013246, max: 0.069047 [08:27] [ComfyUI] [SubprocessWorker] got response: ok [08:27] [ComfyUI] [comfy-env] GeomPackSmooth_TrimeshTaubin done (0.01s): result: NodeOutput [08:27] [ComfyUI] [comfy-env] Running GeomPackSmooth_TrimeshLaplacian: trimesh: Trimesh, iterations: 7, lambda_: 0.5 [08:27] [ComfyUI] [SubprocessWorker] call_method: nodes.smoothing.smooth_backends.trimesh_laplacian.SmoothTrimeshLaplacianNode.EXECUTE_NORMALIZED [08:27] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:27] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:27] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:27] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:27] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:27] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:27] [ComfyUI] [SubprocessWorker] sending request via socket... [08:27] [ComfyUI] [SubprocessWorker] call_id=172 sending call_method [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: trimesh_laplacian [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Parameters: iterations=7, lambda=0.500 [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Avg vertex displacement: 0.013786, max: 0.047123 [08:27] [ComfyUI] [SubprocessWorker] got response: ok [08:27] [ComfyUI] [comfy-env] GeomPackSmooth_TrimeshLaplacian done (0.05s): result: NodeOutput [08:27] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh [08:27] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [08:27] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:27] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:27] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:27] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:27] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:27] [ComfyUI] [SubprocessWorker] created 2 shm blocks [08:27] [ComfyUI] [SubprocessWorker] sending request via socket... [08:27] [ComfyUI] [SubprocessWorker] call_id=173 sending call_method [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2 [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_e91dba63.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices) [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_1_e91dba63.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_e91dba63.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2761 vertices) [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2761 vertices, 5520 faces [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_multi_2_e91dba63.vtp [08:27] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready [08:27] [ComfyUI] [SubprocessWorker] got response: ok [08:27] [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.09s): result: NodeOutput [08:27] [ComfyUI] Prompt executed in 0.45 seconds [08:28] Frame 2 saved (frame_001.jpg, t=0.5s) [08:28] [capture-node] freeze=24ms shot=917ms unfreeze=2ms saved=True [08:28] Node executed (7 total), capturing... [08:28] Frame 3 saved (frame_002.jpg, t=1.9s) [08:28] [capture-node] freeze=3ms shot=120ms unfreeze=0ms saved=True [08:28] Execution complete (t=1.8s) [08:28] Captured 3 unique frames over 2.01s [08:28] [debug] iframes: 2 [08:28] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=368x393, rafFrozen=True [08:28] [debug] iframe[1]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17784, canvas=368x195, rafFrozen=True [08:28] [timing] trigger_3d_previews: 0.0s [08:30] Saved high-quality screenshot: smooth_all_executed.png [08:31] [timing] final_screenshot: 0.3s [08:31] Capturing execution frames: surface_reconstruction.json [08:37] Frame 1 saved (frame_000.jpg, t=0.0s) [08:37] Validating workflow... [08:37] [ComfyUI] === /validate endpoint called === [08:37] [ComfyUI] Received JSON with keys: ['prompt'] [08:37] [ComfyUI] Prompt has 4 nodes [08:37] [ComfyUI] Node 20: GeomPackLoadMesh [08:37] [ComfyUI] Inputs: {"file_path": "3d/Stanford_Bunny.stl"} [08:37] [ComfyUI] Node 21: GeomPackMeshToPointCloud [08:37] [ComfyUI] Inputs: {"mode": "surface_sampling", "sample_count": 10000, "sampling_method": "uniform", "include_normals": "true", "trimesh": ["20", 0]} [08:37] Queuing workflow for execution... [08:37] [ComfyUI] Node 22: GeomPackReconstructSurface [08:37] [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:37] [ComfyUI] Node 28: GeomPackPreviewMeshDual [08:37] [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:37] [ComfyUI] Generated prompt_id: 5051e1bb-e1e2-4136-b6e1-7cce51ecc4ce [08:37] [ComfyUI] Calling execution.validate_prompt()... [08:37] [ComfyUI] Validation result: valid=True [08:37] [ComfyUI] === Validation PASSED === [08:37] [ComfyUI] got prompt [08:37] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/Stanford_Bunny.stl' [08:37] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [08:37] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:37] [ComfyUI] [ComfyUI-GeometryPack] Health check: failed [08:37] [ComfyUI] [ComfyUI-GeometryPack] Socket unhealthy, restarting worker... [08:37] [ComfyUI] [ComfyUI-GeometryPack] python: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [08:37] [ComfyUI] [ComfyUI-GeometryPack] sys_path sent to worker: ['/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/lib/python3.11/site-packages', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/custom_nodes/ComfyUI-GeometryPack'] [08:37] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/.pixi/envs/geometrypack-nodes/bin/python [08:37] [ComfyUI] [SubprocessWorker] launching cmd=['/home/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/.ce/pixi.toml', '-e', 'geometrypack-nodes', 'python', '/tmp/comfyui_pvenv_m4_d8rr7/persistent_worker.py', 'abstract://comfy_worker_4a092950fe44']... [08:37] [ComfyUI] [SubprocessWorker] socket_addr=abstract://comfy_worker_4a092950fe44 (abstract, no filesystem path) [08:38] [ComfyUI] [08:38] [ComfyUI] Closed: Sun May 10 20:47:52 2026 [08:38] [ComfyUI] [08:38] [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:38] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:38] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:38] [ComfyUI] [SubprocessWorker] created 0 shm blocks [08:38] [ComfyUI] [SubprocessWorker] sending request via socket... [08:38] [ComfyUI] [SubprocessWorker] call_id=174 sending call_method [08:39] Frame 2 saved (frame_001.jpg, t=2.3s) [08:39] [capture-periodic] freeze=3ms shot=97ms unfreeze=6ms saved=True [08:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/Stanford_Bunny.stl [08:39] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/Stanford_Bunny.stl [08:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 56203 vertices, 112402 faces [08:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 56203 vertices, 112402 faces [08:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 56203 vertices, 112402 faces [08:40] [ComfyUI] [SubprocessWorker] got response: ok [08:40] [ComfyUI] [comfy-env] GeomPackLoadMesh done (2.70s): result: NodeOutput [08:40] [ComfyUI] [comfy-env] Running GeomPackMeshToPointCloud: mode: 'surface_sampling', sample_count: 10000, sampling_method: 'uniform', include_normals: 'true', trimesh: Trimesh [08:40] [ComfyUI] [SubprocessWorker] call_method: nodes.conversion.mesh_to_pointcloud.MeshToPointCloudNode.EXECUTE_NORMALIZED [08:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:40] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:40] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:40] [ComfyUI] [SubprocessWorker] sending request via socket... [08:40] [ComfyUI] [SubprocessWorker] call_id=175 sending call_method [08:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Sampling 10,000 points using uniform method [08:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Generated point cloud with 10,000 points [08:40] [ComfyUI] [SubprocessWorker] got response: ok [08:40] [ComfyUI] [comfy-env] GeomPackMeshToPointCloud done (0.07s): result: NodeOutput [08:40] [ComfyUI] [comfy-env] Running GeomPackReconstructSurface: backend: dict, points: Trimesh [08:40] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.reconstruct_surface.ReconstructSurfaceNode.EXECUTE_NORMALIZED [08:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:40] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:40] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:40] [ComfyUI] [SubprocessWorker] sending request via socket... [08:40] [ComfyUI] [SubprocessWorker] call_id=176 sending call_method [08:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Reconstruct dispatch: poisson -> GeomPackReconstruct_Poisson [08:40] [ComfyUI] [SubprocessWorker] got response: ok [08:40] [ComfyUI] [comfy-env] GeomPackReconstructSurface done (0.01s): result: NodeOutput [08:40] [ComfyUI] [comfy-env] Running GeomPackReconstruct_Poisson: points: Trimesh, poisson_depth: 8, poisson_scale: 1.1, estimate_normals: 'true', normal_radius: 0.1 [08:40] [ComfyUI] [SubprocessWorker] call_method: nodes.reconstruction.backends.poisson.ReconstructPoissonNode.EXECUTE_NORMALIZED [08:40] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:40] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:40] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:40] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:40] [ComfyUI] [SubprocessWorker] created 1 shm blocks [08:40] [ComfyUI] [SubprocessWorker] sending request via socket... [08:40] [ComfyUI] [SubprocessWorker] call_id=177 sending call_method [08:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: poisson [08:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using normals from input [08:40] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using PyMeshLab Poisson reconstruction... [08:41] Frame 3 saved (frame_002.jpg, t=4.5s) [08:41] [capture-periodic] freeze=4ms shot=109ms unfreeze=10ms saved=True [08:43] [capture-loop] iter=50 t=5.8s 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=30% browser_rss=1.07GB [08:45] [ComfyUI] [SubprocessWorker] got response: ok [08:45] [ComfyUI] [comfy-env] GeomPackReconstruct_Poisson done (4.91s): result: NodeOutput [08:45] [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:45] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [08:45] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:45] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:45] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:45] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:45] [ComfyUI] [SubprocessWorker] created 2 shm blocks [08:45] [ComfyUI] [SubprocessWorker] sending request via socket... [08:45] [ComfyUI] [SubprocessWorker] call_id=178 sending call_method [08:45] Node executed (1 total), capturing... [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 56203 vertices, 112402 faces [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 42547 vertices, 85131 faces [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: ['face.stl'] [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_70a2215a.vtp [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (56203 vertices) [08:45] Frame 4 saved (frame_003.jpg, t=8.0s) [08:45] [capture-node] freeze=4ms shot=96ms unfreeze=8ms saved=True [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding face field: stl [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 56203 vertices, 112402 faces [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP with fields: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_70a2215a.vtp [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_70a2215a.stl [08:45] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [08:45] [ComfyUI] [SubprocessWorker] got response: ok [08:45] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.61s): result: NodeOutput [08:45] [ComfyUI] Prompt executed in 8.30 seconds [08:45] Node executed (2 total), capturing... [08:46] Frame 5 saved (frame_004.jpg, t=8.6s) [08:46] [capture-node] freeze=3ms shot=90ms unfreeze=5ms saved=True [08:46] Execution complete (t=8.9s) [08:46] Captured 5 unique frames over 8.87s [08:46] [debug] iframes: 1 [08:46] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=0x0, rafFrozen=False [08:46] [timing] trigger_3d_previews: 0.0s [08:48] Saved high-quality screenshot: surface_reconstruction_executed.png [08:48] [timing] final_screenshot: 0.3s [08:48] Capturing execution frames: test_loading.json [08:55] Frame 1 saved (frame_000.jpg, t=0.0s) [08:55] Validating workflow... [08:55] [ComfyUI] === /validate endpoint called === [08:55] [ComfyUI] Received JSON with keys: ['prompt'] [08:55] [ComfyUI] Prompt has 3 nodes [08:55] [ComfyUI] Node 1: GeomPackLoadMeshBlend [08:55] [ComfyUI] Inputs: {"file_path": "3d/coca_cola.blend", "report_panel": "false"} [08:55] [ComfyUI] Node 2: GeomPackLoadMeshFBX [08:55] [ComfyUI] Inputs: {"file_path": "3d/rigged_human.fbx", "report_panel": "false"} [08:55] [ComfyUI] Node 3: GeomPackPreviewMeshDual [08:55] [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:55] [ComfyUI] Generated prompt_id: 1aca23a9-8111-4fd1-94f6-d3018e8ef7f5 [08:55] [ComfyUI] Calling execution.validate_prompt()... [08:55] [ComfyUI] Validation result: valid=True [08:55] [ComfyUI] === Validation PASSED === [08:55] Queuing workflow for execution... [08:55] [ComfyUI] got prompt [08:55] [ComfyUI] [comfy-env] Running GeomPackLoadMeshFBX: file_path: '3d/rigged_human.fbx' [08:55] [ComfyUI] [SubprocessWorker] call_method: nodes.blender_io.load_mesh_fbx.LoadMeshFBX.EXECUTE_NORMALIZED [08:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:55] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:55] [ComfyUI] [SubprocessWorker] created 0 shm blocks [08:55] [ComfyUI] [SubprocessWorker] sending request via socket... [08:55] [ComfyUI] [SubprocessWorker] call_id=179 sending call_method [08:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found FBX in input folder: 3d/rigged_human.fbx [08:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading via bpy: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/rigged_human.fbx [08:55] [ComfyUI] [worker:ComfyUI-GeometryPack] FBX version: 7400 [08:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 32327 vertices, 50000 faces [08:55] [ComfyUI] [SubprocessWorker] got response: ok [08:55] [ComfyUI] [comfy-env] GeomPackLoadMeshFBX done (0.70s): result: NodeOutput [08:55] [ComfyUI] [comfy-env] Running GeomPackLoadMeshBlend: file_path: '3d/coca_cola.blend' [08:55] [ComfyUI] [SubprocessWorker] call_method: nodes.blender_io.load_mesh_blend.LoadMeshBlend.EXECUTE_NORMALIZED [08:55] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:55] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:55] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:55] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:55] [ComfyUI] [SubprocessWorker] created 0 shm blocks [08:55] [ComfyUI] [SubprocessWorker] sending request via socket... [08:55] [ComfyUI] [SubprocessWorker] call_id=180 sending call_method [08:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found .blend in input folder: 3d/coca_cola.blend [08:55] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading via bpy: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/coca_cola.blend [08:55] Node executed (1 total), capturing... [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 36696 vertices, 73216 faces [08:56] Frame 2 saved (frame_001.jpg, t=1.0s) [08:56] [capture-node] freeze=3ms shot=106ms unfreeze=4ms saved=True [08:56] [ComfyUI] [SubprocessWorker] got response: ok [08:56] [ComfyUI] [comfy-env] GeomPackLoadMeshBlend done (0.36s): result: NodeOutput [08:56] [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:56] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [08:56] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [08:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [08:56] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [08:56] [ComfyUI] [SubprocessWorker] worker started/confirmed [08:56] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [08:56] [ComfyUI] [SubprocessWorker] created 2 shm blocks [08:56] [ComfyUI] [SubprocessWorker] sending request via socket... [08:56] [ComfyUI] [SubprocessWorker] call_id=181 sending call_method [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: side_by_side, Mode: fields [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 36696 vertices, 73216 faces [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 32327 vertices, 50000 faces [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: [] [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_1_6012c73b.stl [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported STL: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_2_6012c73b.stl [08:56] Node executed (2 total), capturing... [08:56] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [08:56] [ComfyUI] [SubprocessWorker] got response: ok [08:56] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.11s): result: NodeOutput [08:56] [ComfyUI] Prompt executed in 1.17 seconds [08:56] Frame 3 saved (frame_002.jpg, t=1.4s) [08:56] [capture-node] freeze=6ms shot=358ms unfreeze=2ms saved=True [08:57] Node executed (3 total), capturing... [08:57] [capture-node] freeze=3ms shot=90ms unfreeze=0ms saved=False [08:57] Execution complete (t=2.2s) [08:57] Captured 3 unique frames over 2.25s [08:57] [debug] iframes: 1 [08:57] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=370x485, rafFrozen=True [08:57] [timing] trigger_3d_previews: 0.0s [08:59] Saved high-quality screenshot: test_loading_executed.png [08:59] [timing] final_screenshot: 0.2s [09:00] Capturing execution frames: transform.json [09:06] Frame 1 saved (frame_000.jpg, t=0.0s) [09:06] Validating workflow... [09:06] [ComfyUI] === /validate endpoint called === [09:06] [ComfyUI] Received JSON with keys: ['prompt'] [09:06] [ComfyUI] Prompt has 3 nodes [09:06] [ComfyUI] Node 2: GeomPackTransformMesh [09:06] [ComfyUI] Inputs: {"operation": "translate", "operation.translate_x": 0.5, "operation.translate_y": 0.5, "operation.translate_z": 2, "report_panel": "false", "trimesh": ["5", 0]} [09:06] [ComfyUI] Node 5: GeomPackCreatePrimitive [09:06] [ComfyUI] Inputs: {"shape": "cube", "size": 1, "subdivisions": 2} [09:06] [ComfyUI] Node 6: GeomPackPreviewMeshDual [09:06] [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 [09:06] Queuing workflow for execution... [09:06] [ComfyUI] Generated prompt_id: 12ab548d-4059-42ff-ac82-8bf1f1eeab94 [09:06] [ComfyUI] Calling execution.validate_prompt()... [09:06] [ComfyUI] Validation result: valid=True [09:06] [ComfyUI] === Validation PASSED === [09:06] [ComfyUI] got prompt [09:06] [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 1.0, subdivisions: 2 [09:06] [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [09:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [09:06] [ComfyUI] [SubprocessWorker] worker started/confirmed [09:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [09:06] [ComfyUI] [SubprocessWorker] created 0 shm blocks [09:06] [ComfyUI] [SubprocessWorker] sending request via socket... [09:06] [ComfyUI] [SubprocessWorker] call_id=182 sending call_method [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces [09:06] [ComfyUI] [SubprocessWorker] got response: ok [09:06] [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [09:06] [ComfyUI] [comfy-env] Running GeomPackTransformMesh: operation: dict, trimesh: Trimesh [09:06] [ComfyUI] [SubprocessWorker] call_method: nodes.transforms.transform.TransformMeshNode.EXECUTE_NORMALIZED [09:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [09:06] [ComfyUI] [SubprocessWorker] worker started/confirmed [09:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [09:06] [ComfyUI] [SubprocessWorker] created 1 shm blocks [09:06] [ComfyUI] [SubprocessWorker] sending request via socket... [09:06] [ComfyUI] [SubprocessWorker] call_id=183 sending call_method [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 8 vertices, 12 faces [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: translate [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Complete [09:06] [ComfyUI] [SubprocessWorker] got response: ok [09:06] [ComfyUI] [comfy-env] GeomPackTransformMesh done (0.01s): result: NodeOutput [09:06] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshDual: layout: 'overlay', mode: 'fields', opacity_1: 1.0, opacity_2: 1.0, mesh_1: Trimesh, mesh_2: Trimesh [09:06] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_dual.PreviewMeshDualNode.EXECUTE_NORMALIZED [09:06] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [09:06] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [09:06] [ComfyUI] [SubprocessWorker] worker started/confirmed [09:06] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [09:06] [ComfyUI] [SubprocessWorker] created 2 shm blocks [09:06] [ComfyUI] [SubprocessWorker] sending request via socket... [09:06] [ComfyUI] [SubprocessWorker] call_id=184 sending call_method [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Layout: overlay, Mode: fields [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 8 vertices, 12 faces [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 8 vertices, 12 faces [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 fields: [] [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 fields: [] [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Common fields: [] [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1 visual: kind=None, texture=False, vertex_colors=False [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2 visual: kind=None, texture=False, vertex_colors=False [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Added mesh_id field and red/blue colors for overlay [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_overlay_8064d8db.vtp [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (16 vertices) [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding scalar field: mesh_id (components: 1) [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 16 vertices, 24 faces [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported combined VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_dual_overlay_8064d8db.vtp [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Combined Mesh: 16 vertices, 24 faces [09:06] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready [09:06] [ComfyUI] [SubprocessWorker] got response: ok [09:06] [ComfyUI] [comfy-env] GeomPackPreviewMeshDual done (0.02s): result: NodeOutput [09:06] [ComfyUI] Prompt executed in 0.05 seconds [09:06] Node executed (2 total), capturing... [09:06] Frame 2 saved (frame_001.jpg, t=0.5s) [09:06] [capture-node] freeze=3ms shot=98ms unfreeze=0ms saved=True [09:06] Execution complete (t=0.5s) [09:06] Captured 2 unique frames over 0.64s [09:06] [debug] iframes: 1 [09:06] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_dual.html?v=177844, canvas=742x485, rafFrozen=True [09:06] [timing] trigger_3d_previews: 0.0s [09:08] Saved high-quality screenshot: transform_executed.png [09:08] [timing] final_screenshot: 0.2s [09:09] Capturing execution frames: uv_unwrap.json [09:15] Frame 1 saved (frame_000.jpg, t=0.0s) [09:15] Validating workflow... [09:15] [ComfyUI] === /validate endpoint called === [09:15] [ComfyUI] Received JSON with keys: ['prompt'] [09:15] [ComfyUI] Prompt has 3 nodes [09:15] [ComfyUI] Node 4: GeomPackLoadMesh [09:15] [ComfyUI] Inputs: {"file_path": "3d/camelhead.off"} [09:15] [ComfyUI] Node 8: GeomPackUVUnwrap [09:15] [ComfyUI] Inputs: {"backend": "xatlas", "report_panel": "false", "trimesh": ["4", 0]} [09:15] [ComfyUI] Node 9: GeomPackPreviewMeshUV [09:15] [ComfyUI] Inputs: {"show_checker": false, "show_wireframe": false, "uv_preview": "", "trimesh": ["8", 0]} [09:15] [ComfyUI] Generated prompt_id: c7b5b3b9-d088-45bb-a8e8-3414283ce591 [09:15] [ComfyUI] Calling execution.validate_prompt()... [09:15] [ComfyUI] Validation result: valid=True [09:15] [ComfyUI] === Validation PASSED === [09:15] Queuing workflow for execution... [09:15] [ComfyUI] got prompt [09:15] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/camelhead.off' [09:15] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [09:15] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [09:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [09:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [09:15] [ComfyUI] [SubprocessWorker] worker started/confirmed [09:15] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [09:15] [ComfyUI] [SubprocessWorker] created 0 shm blocks [09:15] [ComfyUI] [SubprocessWorker] sending request via socket... [09:15] [ComfyUI] [SubprocessWorker] call_id=185 sending call_method [09:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/camelhead.off [09:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/camelhead.off [09:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 11381 vertices, 22704 faces [09:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 11381 vertices, 22704 faces [09:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 11381 vertices, 22704 faces [09:15] [ComfyUI] [SubprocessWorker] got response: ok [09:15] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.08s): result: NodeOutput [09:15] [ComfyUI] [comfy-env] Running GeomPackUVUnwrap: backend: dict, trimesh: Trimesh [09:15] [ComfyUI] [SubprocessWorker] call_method: nodes.uv.uv_unwrap.UVUnwrapNode.EXECUTE_NORMALIZED [09:15] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [09:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [09:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [09:15] [ComfyUI] [SubprocessWorker] worker started/confirmed [09:15] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [09:15] [ComfyUI] [SubprocessWorker] created 1 shm blocks [09:15] [ComfyUI] [SubprocessWorker] sending request via socket... [09:15] [ComfyUI] [SubprocessWorker] call_id=186 sending call_method [09:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: UV Unwrap dispatch: xatlas -> GeomPackUV_Xatlas [09:15] [ComfyUI] [SubprocessWorker] got response: ok [09:15] [ComfyUI] [comfy-env] GeomPackUVUnwrap done (0.01s): result: NodeOutput [09:15] [ComfyUI] [comfy-env] Running GeomPackUV_Xatlas: trimesh: Trimesh [09:15] [ComfyUI] [SubprocessWorker] call_method: nodes.uv.backends.xatlas.UVXatlasNode.EXECUTE_NORMALIZED [09:15] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [09:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [09:15] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [09:15] [ComfyUI] [SubprocessWorker] worker started/confirmed [09:15] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [09:15] [ComfyUI] [SubprocessWorker] created 1 shm blocks [09:15] [ComfyUI] [SubprocessWorker] sending request via socket... [09:15] [ComfyUI] [SubprocessWorker] call_id=187 sending call_method [09:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: xatlas [09:15] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Input: 11381 vertices, 22704 faces [09:17] Frame 2 saved (frame_001.jpg, t=2.3s) [09:17] [capture-periodic] freeze=15ms shot=148ms unfreeze=4ms saved=True [09:20] Frame 3 saved (frame_002.jpg, t=4.5s) [09:20] [capture-periodic] freeze=16ms shot=146ms unfreeze=9ms saved=True [09:21] [capture-loop] iter=50 t=6.6s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=14 ram=2.7/15.6GB (18%) swap=0.0/3.0GB (0%) cpu=42% browser_rss=0.93GB [09:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Output: 14113 vertices, 22704 faces [09:22] [ComfyUI] [SubprocessWorker] got response: ok [09:22] [ComfyUI] [comfy-env] GeomPackUV_Xatlas done (6.68s): result: NodeOutput [09:22] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshUV: show_checker: False, show_wireframe: False, trimesh: Trimesh [09:22] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_uv.PreviewMeshUVNode.EXECUTE_NORMALIZED [09:22] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [09:22] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [09:22] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [09:22] [ComfyUI] [SubprocessWorker] worker started/confirmed [09:22] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [09:22] [ComfyUI] [SubprocessWorker] created 1 shm blocks [09:22] [ComfyUI] [SubprocessWorker] sending request via socket... [09:22] [ComfyUI] [SubprocessWorker] call_id=188 sending call_method [09:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 14113 vertices, 22704 faces [09:22] Node executed (1 total), capturing... [09:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found UV data: 14113 UV coordinates [09:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: UV stats: range=[0.99957985 0.99956971], in_unit_square=True, coverage=0.5727 [09:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported mesh to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_uv_530dd81d.glb [09:22] Frame 4 saved (frame_003.jpg, t=7.2s) [09:22] [capture-node] freeze=4ms shot=97ms unfreeze=5ms saved=True [09:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported UV data to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_uv_5a5e8309_uvdata.json [09:22] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preview ready: has_uvs=True, checker=False, wireframe=False [09:22] [ComfyUI] [SubprocessWorker] got response: ok [09:22] [ComfyUI] [comfy-env] GeomPackPreviewMeshUV done (0.44s): result: NodeOutput [09:22] [ComfyUI] Prompt executed in 7.22 seconds [09:22] Node executed (2 total), capturing... [09:23] Frame 5 saved (frame_004.jpg, t=7.6s) [09:23] [capture-node] freeze=11ms shot=101ms unfreeze=0ms saved=True [09:23] Execution complete (t=7.6s) [09:23] Captured 5 unique frames over 7.75s [09:23] [debug] iframes: 1 [09:23] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_uv.html?v=17784461, canvas=287x287, rafFrozen=True [09:23] [timing] trigger_3d_previews: 0.0s [09:25] Saved high-quality screenshot: uv_unwrap_executed.png [09:25] [timing] final_screenshot: 0.2s [09:25] [32/33] SKIPPED (not in cpu list) uv_unwrap_all.json [09:26] Capturing execution frames: view_texture.json [09:32] Frame 1 saved (frame_000.jpg, t=0.0s) [09:32] Validating workflow... [09:32] [ComfyUI] === /validate endpoint called === [09:32] [ComfyUI] Received JSON with keys: ['prompt'] [09:32] [ComfyUI] Prompt has 2 nodes [09:32] [ComfyUI] Node 3: GeomPackLoadMesh [09:32] [ComfyUI] Inputs: {"file_path": "3d/mount_textured.glb"} [09:32] [ComfyUI] Node 12: GeomPackPreviewMeshVTK [09:32] [ComfyUI] Inputs: {"mode": "texture", "preview_vtk": "{\"show_edges\":false,\"camera_state\":\"\",\"selected_field\":\"\",\"selected_channel\":\"magnitude\",\"selected_colormap\":\"erdc_rainbow_bright\"}", "trimesh": [ [09:32] [ComfyUI] Generated prompt_id: 89bf4af4-2618-468c-8fe3-ba46bd40d924 [09:32] [ComfyUI] Calling execution.validate_prompt()... [09:32] [ComfyUI] Validation result: valid=True [09:32] [ComfyUI] === Validation PASSED === [09:32] Queuing workflow for execution... [09:32] [ComfyUI] got prompt [09:32] [ComfyUI] [comfy-env] Running GeomPackLoadMesh: file_path: '3d/mount_textured.glb' [09:32] [ComfyUI] [SubprocessWorker] call_method: nodes.io.load_mesh.LoadMesh.EXECUTE_NORMALIZED [09:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [09:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [09:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [09:32] [ComfyUI] [SubprocessWorker] worker started/confirmed [09:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [09:32] [ComfyUI] [SubprocessWorker] created 0 shm blocks [09:32] [ComfyUI] [SubprocessWorker] sending request via socket... [09:32] [ComfyUI] [SubprocessWorker] call_id=189 sending call_method [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Found mesh in input folder: 3d/mount_textured.glb [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loading: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/input/3d/mount_textured.glb [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Converting Scene to single mesh (scene has 2 geometries) [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Initial mesh: 3604 vertices, 6964 faces [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Successfully loaded: 3604 vertices, 6964 faces [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Loaded: 3604 vertices, 6964 faces [09:32] [ComfyUI] [SubprocessWorker] got response: ok [09:32] [ComfyUI] [comfy-env] GeomPackLoadMesh done (0.16s): result: NodeOutput [09:32] [ComfyUI] [comfy-env] Running GeomPackPreviewMeshVTK: mode: 'texture', trimesh: Trimesh [09:32] [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_vtk.PreviewMeshVTKNode.EXECUTE_NORMALIZED [09:32] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [09:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [09:32] [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [09:32] [ComfyUI] [SubprocessWorker] worker started/confirmed [09:32] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [09:32] [ComfyUI] [SubprocessWorker] created 1 shm blocks [09:32] [ComfyUI] [SubprocessWorker] sending request via socket... [09:32] [ComfyUI] [SubprocessWorker] call_id=190 sending call_method [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Preparing preview: Mesh - 3604 vertices, 6964 faces [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: texture [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Visual data - has_visual: True, kind: texture, texture: True, vertex_colors: False [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Using texture mode - GLB export [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Set alphaMode to OPAQUE for texture mode [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported GLB to: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-2039/ComfyUI/output/preview_vtk_d02e560d.glb [09:32] [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Texture mode info: watertight=False, volume=None, area=720.728733148043, texture=True, vertex_colors=False [09:32] [ComfyUI] [SubprocessWorker] got response: ok [09:32] [ComfyUI] [comfy-env] GeomPackPreviewMeshVTK done (0.23s): result: NodeOutput [09:32] [ComfyUI] Prompt executed in 0.39 seconds [09:32] Node executed (1 total), capturing... [09:33] Frame 2 saved (frame_001.jpg, t=0.9s) [09:33] [capture-node] freeze=49ms shot=161ms unfreeze=0ms saved=True [09:33] Execution complete (t=0.9s) [09:33] Captured 2 unique frames over 1.1s [09:33] [debug] iframes: 1 [09:33] [debug] iframe[0]: src=http://127.0.0.1:41899/extensions/ComfyUI-GeometryPack/viewer_vtk_textured.html?, canvas=221x249, rafFrozen=True [09:33] [timing] trigger_3d_previews: 0.0s [09:35] Saved high-quality screenshot: view_texture_executed.png [09:35] [timing] final_screenshot: 0.2s [09:35] Results saved to /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GeometryPack-2039/dev/linux-cpu/results.json [09:35] Saved: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GeometryPack-2039/dev/linux-cpu/index.html [09:35] [EXECUTION] PASSED [09:35] linux: PASSED [09:35] Stopping ComfyUI server...