Capturing execution frames: boolean_ops_all.json Frame 1 saved (frame_000.jpg, t=0.0s) Validating workflow... [ComfyUI] === /validate endpoint called === [ComfyUI] Received JSON with keys: ['prompt'] [ComfyUI] Prompt has 5 nodes [ComfyUI] Node 1: GeomPackCreatePrimitive [ComfyUI] Inputs: {"shape": "sphere", "size": 1, "subdivisions": 4} [ComfyUI] Node 2: GeomPackCreatePrimitive Queuing workflow for execution... [ComfyUI] Inputs: {"shape": "cube", "size": 0.8, "subdivisions": 1} [ComfyUI] Node 3: GeomPackBoolean [ComfyUI] Inputs: {"operation": "difference", "backend": "libigl_cgal", "mesh_a": ["1", 0], "mesh_b": ["2", 0]} [ComfyUI] Node 4: GeomPackBoolean [ComfyUI] Inputs: {"operation": "difference", "backend": "blender_exact", "mesh_a": ["1", 0], "mesh_b": ["2", 0]} [ComfyUI] Node 5: GeomPackPreviewMeshMulti [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 [ComfyUI] Generated prompt_id: aca4f395-d0c8-4fe0-a964-3f748e75c2de [ComfyUI] Calling execution.validate_prompt()... [ComfyUI] Validation result: valid=True [ComfyUI] === Validation PASSED === [ComfyUI] got prompt [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'cube', size: 0.8, subdivisions: 1 [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [ComfyUI] [SubprocessWorker] worker started/confirmed [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [ComfyUI] [SubprocessWorker] created 0 shm blocks [ComfyUI] [SubprocessWorker] sending request via socket... [ComfyUI] [SubprocessWorker] call_id=24 sending call_method [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created cube: 8 vertices, 12 faces [ComfyUI] [SubprocessWorker] got response: ok [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [ComfyUI] [comfy-env] Running GeomPackCreatePrimitive: shape: 'sphere', size: 1.0, subdivisions: 4 [ComfyUI] [SubprocessWorker] call_method: nodes.primitives.create_primitive.CreatePrimitive.EXECUTE_NORMALIZED [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [ComfyUI] [SubprocessWorker] worker started/confirmed [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [ComfyUI] [SubprocessWorker] created 0 shm blocks [ComfyUI] [SubprocessWorker] sending request via socket... [ComfyUI] [SubprocessWorker] call_id=25 sending call_method [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Created sphere: 2562 vertices, 5120 faces [ComfyUI] [SubprocessWorker] got response: ok [ComfyUI] [comfy-env] GeomPackCreatePrimitive done (0.01s): result: NodeOutput [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'difference', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.EXECUTE_NORMALIZED [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [ComfyUI] [SubprocessWorker] worker started/confirmed [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [ComfyUI] [SubprocessWorker] created 2 shm blocks [ComfyUI] [SubprocessWorker] sending request via socket... [ComfyUI] [SubprocessWorker] call_id=26 sending call_method [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: blender_exact -> GeomPackBoolean_BlenderExact [ComfyUI] [SubprocessWorker] got response: ok [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput [ComfyUI] [comfy-env] Running GeomPackBoolean: operation: 'difference', backend: dict, mesh_a: Trimesh, mesh_b: Trimesh [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.boolean.BooleanNode.EXECUTE_NORMALIZED [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [ComfyUI] [SubprocessWorker] worker started/confirmed [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [ComfyUI] [SubprocessWorker] created 2 shm blocks [ComfyUI] [SubprocessWorker] sending request via socket... [ComfyUI] [SubprocessWorker] call_id=27 sending call_method [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Boolean dispatch: libigl_cgal -> GeomPackBoolean_LibiglCGAL [ComfyUI] [SubprocessWorker] got response: ok [ComfyUI] [comfy-env] GeomPackBoolean done (0.01s): result: NodeOutput [ComfyUI] [comfy-env] Running GeomPackBoolean_BlenderExact: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'difference' [ComfyUI] [SubprocessWorker] call_method: nodes.blender_boolean.boolean.BooleanBlenderExactNode.EXECUTE_NORMALIZED [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [ComfyUI] [SubprocessWorker] worker started/confirmed [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [ComfyUI] [SubprocessWorker] created 2 shm blocks [ComfyUI] [SubprocessWorker] sending request via socket... [ComfyUI] [SubprocessWorker] call_id=28 sending call_method [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: blender_exact [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 2562 vertices, 5120 faces [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 8 vertices, 12 faces [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: difference [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 2202 vertices, 4380 faces [ComfyUI] [SubprocessWorker] got response: ok [ComfyUI] [comfy-env] GeomPackBoolean_BlenderExact done (0.21s): result: NodeOutput [ComfyUI] [comfy-env] Running GeomPackBoolean_LibiglCGAL: mesh_a: Trimesh, mesh_b: Trimesh, operation: 'difference' [ComfyUI] [SubprocessWorker] call_method: nodes.boolean.backends.libigl_cgal.BooleanLibiglCGALNode.EXECUTE_NORMALIZED [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [ComfyUI] [SubprocessWorker] worker started/confirmed [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [ComfyUI] [SubprocessWorker] created 2 shm blocks [ComfyUI] [SubprocessWorker] sending request via socket... [ComfyUI] [SubprocessWorker] call_id=29 sending call_method [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Backend: libigl_cgal [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh A: 2562 vertices, 5120 faces [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh B: 8 vertices, 12 faces [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Operation: difference Node executed (1 total), capturing... Frame 2 saved (frame_001.jpg, t=0.6s) [capture-node] freeze=2ms shot=92ms unfreeze=3ms saved=True [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Success: 2202 vertices, 4380 faces [ComfyUI] [SubprocessWorker] got response: ok [ComfyUI] [comfy-env] GeomPackBoolean_LibiglCGAL done (0.65s): result: NodeOutput [ComfyUI] [comfy-env] Running GeomPackPreviewMeshMulti: mode: 'fields', mesh_1: Trimesh, mesh_2: Trimesh [ComfyUI] [SubprocessWorker] call_method: nodes.visualization.preview_mesh_multi.PreviewMeshMultiNode.EXECUTE_NORMALIZED [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [ComfyUI] [ComfyUI-GeometryPack] Health check: ping (timeout=5.0s)... [ComfyUI] [ComfyUI-GeometryPack] Health check: ok [ComfyUI] [SubprocessWorker] worker started/confirmed [ComfyUI] [SubprocessWorker] serializing kwargs to shm... [ComfyUI] [SubprocessWorker] created 2 shm blocks [ComfyUI] [SubprocessWorker] sending request via socket... [ComfyUI] [SubprocessWorker] call_id=30 sending call_method [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mode: fields, Meshes: 2 [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 1: Mesh - 2202 vertices, 4380 faces [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-0802/ComfyUI/output/preview_multi_1_af211d20.vtp [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2202 vertices) [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2202 vertices, 4380 faces [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-0802/ComfyUI/output/preview_multi_1_af211d20.vtp [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Mesh 2: Mesh - 2202 vertices, 4380 faces [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exporting mesh to VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-0802/ComfyUI/output/preview_multi_2_af211d20.vtp Node executed (2 total), capturing... [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Adding normals field (2202 vertices) [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Export complete: 2202 vertices, 4380 faces [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Exported VTP: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GeometryPack-0802/ComfyUI/output/preview_multi_2_af211d20.vtp [ComfyUI] [worker:ComfyUI-GeometryPack] INFO: Grid: 2x1, Preview ready [ComfyUI] [SubprocessWorker] got response: ok [ComfyUI] [comfy-env] GeomPackPreviewMeshMulti done (0.05s): result: NodeOutput [ComfyUI] Prompt executed in 0.96 seconds Frame 3 saved (frame_002.jpg, t=1.2s) [capture-node] freeze=242ms shot=240ms unfreeze=2ms saved=True Node executed (3 total), capturing... [capture-node] freeze=2ms shot=142ms unfreeze=0ms saved=False Execution complete (t=2.0s) Captured 3 unique frames over 2.15s [debug] iframes: 1 [debug] iframe[0]: src=http://127.0.0.1:41880/extensions/ComfyUI-GeometryPack/viewer_multi.html?v=17786, canvas=368x393, rafFrozen=True [timing] trigger_3d_previews: 0.0s Saved high-quality screenshot: boolean_ops_all_executed.png [timing] final_screenshot: 0.3s Captured 4 video frames