diff --git a/dev/windows-portable-cpu/index.html b/dev/windows-portable-cpu/index.html index 1ec7084..8193d87 100644 --- a/dev/windows-portable-cpu/index.html +++ b/dev/windows-portable-cpu/index.html @@ -124,7 +124,7 @@ } .progress-fill.has-failures { - background: linear-gradient(90deg, #3fb950 0%, #3fb950 100.0%, #f85149 100.0%, #f85149 100%); + background: linear-gradient(90deg, #3fb950 0%, #3fb950 0.0%, #f85149 0.0%, #f85149 100%); width: 100% !important; border-radius: 6px; } @@ -935,7 +935,7 @@

PozzettiAndrea/ComfyUI-GaussianPack Test Results

- 2026-06-07 14:07 UTC Test run Windows-10-10.0.26100-SP0 AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD + 2026-06-07 17:26 UTC Test run Windows-2025Server-10.0.26100-SP0 Intel64 Family 6 Model 106 Stepping 6, GenuineIntel
@@ -943,14 +943,14 @@
-
+
- 100.0% + 0.0%
- 4 passed - - 4/4 tests + 0 passed + 4 failed + 0/4 tests
@@ -963,69 +963,57 @@
-
- - gaussian_analysis - +
+
No screenshot
gaussian_analysis - pass + fail
- 11.93s + 9.29s
-
- - merge_splats - +
+
No screenshot
merge_splats - pass + fail
- 92.14s + 5.73s
-
- - rotate_splats - +
+
No screenshot
rotate_splats - pass + fail
- 69.68s + 5.76s
-
- - spectate - +
+
No screenshot
spectate - pass + fail
- 17.16s + 5.71s
@@ -1033,6 +1021,55 @@
+
+

Failed Tests

+ +
+
+ gaussian_analysis + 9.29s +
+
Workflow validation failed + +Details: +graphToPrompt produced nodes without class_type: graphToPrompt: 4 nodes, missing class_type: [1,19,20,21], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}}
+
+ +
+
+ merge_splats + 5.73s +
+
Workflow validation failed + +Details: +graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,12,14], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}}
+
+ +
+
+ rotate_splats + 5.76s +
+
Workflow validation failed + +Details: +graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,14,18], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}}
+
+ +
+
+ spectate + 5.71s +
+
Workflow validation failed + +Details: +graphToPrompt produced nodes without class_type: graphToPrompt: 2 nodes, missing class_type: [1,2], sample: {"inputs":{"UNKNOWN":"compressed_room.ply"},"_meta":{}}
+
+ +
+
@@ -1119,9 +1156,9 @@ }); } - const workflowData = {"gaussian_analysis": {"src": "screenshots/gaussian_analysis_executed.png", "title": "gaussian_analysis", "status": "pass", "duration": "11.93", "log": " [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\nCapturing execution frames: gaussian_analysis.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 4 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 19: GaussianAnalysis\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 20: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"compressed_room.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 21: GaussianAnalysis\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_path\": [\"20\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: 68d52ede-a37c-4f48-b22a-4bbb68beb4aa\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: compressed_room.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\compressed_room.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianAnalysis:\n [ComfyUI] == Gaussian PLY analysis ==\n [ComfyUI] path: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\compressed_room.ply\n [ComfyUI] size: 26.70 MB (28,000,362 bytes)\n [ComfyUI] encoding: binary_little_endian 1.0\n [ComfyUI] splat count: 500,000\n [ComfyUI] bytes/splat: 56.0\n [ComfyUI] flavor: SH-stripped 3DGS (DC only, no view-dependent term)\n [ComfyUI] SH degree: 0\n [ComfyUI] precision: float32 (all)\n [ComfyUI] has f_dc_*: True\n [ComfyUI] has RGB uchar: False\n [ComfyUI] has opacity: True\n [ComfyUI] has scale_*: True\n [ComfyUI] has rot_*: True\n [ComfyUI] total props: 14\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianAnalysis:\n [ComfyUI] == Gaussian PLY analysis ==\n [ComfyUI] path: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] size: 47.30 MB (49,601,531 bytes)\n [ComfyUI] encoding: binary_little_endian 1.0\n [ComfyUI] splat count: 200,000\n [ComfyUI] bytes/splat: 248.0\n [ComfyUI] flavor: raw 3DGS PLY (SH degree 3)\n [ComfyUI] SH degree: 3\n [ComfyUI] precision: float32 (all)\n [ComfyUI] has f_dc_*: True\n [ComfyUI] has RGB uchar: False\n [ComfyUI] has opacity: True\n [ComfyUI] has scale_*: True\n [ComfyUI] has rot_*: True\n [ComfyUI] total props: 62\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.02 seconds\u001b[0m\n Node executed (2 total), capturing...\n Frame 2 saved (frame_001.jpg, t=0.5s)\n [capture-node] freeze=6ms shot=103ms unfreeze=0ms saved=True\n Execution complete (t=0.5s)\n [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear...\n [3d-wait] Phase 1 done in 0.0s\n [3d-wait] Phase 2: iframes=0\n [3d-wait] Total 3D wait: 0.0s\n Captured 2 unique frames over 0.67s\n [debug] iframes: 0\n [timing] trigger_3d_previews: 0.0s\n Saved high-quality screenshot: gaussian_analysis_executed.png\n [timing] final_screenshot: 0.3s\n Captured 3 video frames", "hardware": {"os": "Windows-10-10.0.26100-SP0", "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD"}}, "merge_splats": {"src": "screenshots/merge_splats_executed.png", "title": "merge_splats", "status": "pass", "duration": "92.14", "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 3 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 12: GaussianMerge\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"target_count\": 100000, \"output_filename\": \"applemerged\", \"opacity_threshold\": 0.1, \"k\": 16, \"backend\": \"nanogs_cpu\", \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 14: PreviewGaussianDual\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"layout\": \"slider\", \"camera_mode\": \"orbit\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path_1\": [\"1\", 0], \"ply_path_2\": [\"12\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Loading PLY: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Initial splats: 200000\n [ComfyUI] Pruned splats: 200000, target: 100000\n [ComfyUI] Opacity Mean: 0.53443545 Median: 0.48362076\n [ComfyUI] Pruning splats with opacity below 0.1000\n [ComfyUI] Original count: 200000, after opacity pruning: 200000\n [ComfyUI] After opacity pruning, 200000 splats remain.\n [ComfyUI] Pass 1: 200000 splats\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=5ms shot=94ms unfreeze=5ms saved=True\n Frame 3 saved (frame_002.jpg, t=4.5s)\n [capture-periodic] freeze=4ms shot=101ms unfreeze=6ms saved=True\n [ComfyUI] \n [ComfyUI] Edge costs: 0%| | 0/19 [00:00 D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m TransformGaussian: 200000 splats, rotation X=-90.0 Y=0.0 Z=0.0\n [ComfyUI] \u001b[32m[INFO]\u001b[0m TransformGaussian: rotated SH AC (sh_degree=3, 15 coeffs/channel x 3 channels) via Wigner-D\n [ComfyUI] \u001b[32m[INFO]\u001b[0m TransformGaussian: wrote apple_rot_m90_p0_p0_0e442043.ply (47.3 MB)\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.81 seconds\u001b[0m\n Node executed (1 total), capturing...\n Frame 2 saved (frame_001.jpg, t=1.2s)\n [capture-node] freeze=48ms shot=343ms unfreeze=0ms saved=True\n Execution complete (t=1.2s)\n [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear...\n [3d-wait] Phase 1 done in 0.0s\n [3d-wait] Phase 2: iframes=1\n [3d-wait] iframe viewer_ready=False (matched 0 console logs)\n [3d-wait] Waiting for 'Loaded successfully' console message (timeout=60s)...\n [3d-wait] iframe wait exception: Timeout 60000ms exceeded while waiting for event \"console\"\n=========================== logs ===========================\nwaiting for event \"console\"\n============================================================\n [3d-wait] Total 3D wait: 60.0s\n Captured 2 unique frames over 61.65s\n [debug] iframes: 1\n [debug] iframe[0]: src=http://127.0.0.1:41884/extensions/ComfyUI-GaussianPack/viewer_gaussian_dual.html, canvas=486x203, rafFrozen=True\n [timing] trigger_3d_previews: 0.0s\n Saved high-quality screenshot: rotate_splats_executed.png\n [timing] final_screenshot: 0.2s\n Captured 3 video frames", "hardware": {"os": "Windows-10-10.0.26100-SP0", "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD"}}, "spectate": {"src": "screenshots/spectate_executed.png", "title": "spectate", "status": "pass", "duration": "17.16", "log": "Capturing execution frames: spectate.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 2 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"compressed_room.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 2: PreviewGaussians\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"camera_mode\": \"spectate\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: 5a885c67-a806-4dae-a8c2-710d79b29166\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: compressed_room.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\compressed_room.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.01 seconds\u001b[0m\n Node executed (1 total), capturing...\n Frame 2 saved (frame_001.jpg, t=0.5s)\n [capture-node] freeze=5ms shot=98ms unfreeze=0ms saved=True\n Execution complete (t=0.5s)\n [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear...\n [3d-wait] Phase 1 done in 0.0s\n [3d-wait] Phase 2: iframes=1\n [3d-wait] iframe viewer_ready=False (matched 0 console logs)\n [3d-wait] Waiting for 'Loaded successfully' console message (timeout=60s)...\n [3d-wait] Got 'Loaded successfully' after 1.2s\n [3d-wait] Unfrozen in 0.011s, rendering for 5s...\n [3d-wait] JS halted via CDP after 6.1s\n [3d-wait] Re-frozen in 7.2s\n [3d-wait] Total 3D wait: 8.4s\n Captured 2 unique frames over 9.0s\n [debug] iframes: 1\n [debug] iframe[0]: src=http://127.0.0.1:41884/extensions/ComfyUI-GaussianPack/viewer_gaussian.html?mode, canvas=781x394, rafFrozen=True\n [timing] trigger_3d_previews: 0.0s\n Saved high-quality screenshot: spectate_executed.png\n [timing] final_screenshot: 0.3s\n Captured 3 video frames", "hardware": {"os": "Windows-10-10.0.26100-SP0", "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD"}}}; + const workflowData = {"gaussian_analysis": {"src": "", "title": "gaussian_analysis", "status": "fail", "duration": "9.29", "log": "Capturing execution frames: gaussian_analysis.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 4 nodes, missing class_type: [1,19,20,21], sample: {\"inputs\":{\"UNKNOWN\":\"apple.ply\"},\"_meta\":{}}\n Status: FAILED\n Error: Workflow validation failed\n Details: graphToPrompt produced nodes without class_type: graphToPrompt: 4 nodes, missing class_type: [1,19,20,21], sample: {\"inputs\":{\"UNKNOWN\":\"apple.ply\"},\"_meta\":{}}", "hardware": {"os": "Windows-2025Server-10.0.26100-SP0", "cpu": "Intel64 Family 6 Model 106 Stepping 6, GenuineIntel"}}, "merge_splats": {"src": "", "title": "merge_splats", "status": "fail", "duration": "5.73", "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,12,14], sample: {\"inputs\":{\"UNKNOWN\":\"apple.ply\"},\"_meta\":{}}\n Status: FAILED\n Error: Workflow validation failed\n Details: graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,12,14], sample: {\"inputs\":{\"UNKNOWN\":\"apple.ply\"},\"_meta\":{}}", "hardware": {"os": "Windows-2025Server-10.0.26100-SP0", "cpu": "Intel64 Family 6 Model 106 Stepping 6, GenuineIntel"}}, "rotate_splats": {"src": "", "title": "rotate_splats", "status": "fail", "duration": "5.76", "log": "Capturing execution frames: rotate_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,14,18], sample: {\"inputs\":{\"UNKNOWN\":\"apple.ply\"},\"_meta\":{}}\n Status: FAILED\n Error: Workflow validation failed\n Details: graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,14,18], sample: {\"inputs\":{\"UNKNOWN\":\"apple.ply\"},\"_meta\":{}}", "hardware": {"os": "Windows-2025Server-10.0.26100-SP0", "cpu": "Intel64 Family 6 Model 106 Stepping 6, GenuineIntel"}}, "spectate": {"src": "", "title": "spectate", "status": "fail", "duration": "5.71", "log": "Capturing execution frames: spectate.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 2 nodes, missing class_type: [1,2], sample: {\"inputs\":{\"UNKNOWN\":\"compressed_room.ply\"},\"_meta\":{}}\n Status: FAILED\n Error: Workflow validation failed\n Details: graphToPrompt produced nodes without class_type: graphToPrompt: 2 nodes, missing class_type: [1,2], sample: {\"inputs\":{\"UNKNOWN\":\"compressed_room.ply\"},\"_meta\":{}}", "hardware": {"os": "Windows-2025Server-10.0.26100-SP0", "cpu": "Intel64 Family 6 Model 106 Stepping 6, GenuineIntel"}}}; const workflowNames = Object.keys(workflowData); - const videoData = {"merge_splats": {"frames": [{"file": "frame_000.jpg", "time": 0.0, "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host"}, {"file": "frame_001.jpg", "time": 2.23, "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 3 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 12: GaussianMerge\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"target_count\": 100000, \"output_filename\": \"applemerged\", \"opacity_threshold\": 0.1, \"k\": 16, \"backend\": \"nanogs_cpu\", \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 14: PreviewGaussianDual\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"layout\": \"slider\", \"camera_mode\": \"orbit\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path_1\": [\"1\", 0], \"ply_path_2\": [\"12\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Loading PLY: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Initial splats: 200000\n [ComfyUI] Pruned splats: 200000, target: 100000\n [ComfyUI] Opacity Mean: 0.53443545 Median: 0.48362076\n [ComfyUI] Pruning splats with opacity below 0.1000\n [ComfyUI] Original count: 200000, after opacity pruning: 200000\n [ComfyUI] After opacity pruning, 200000 splats remain.\n [ComfyUI] Pass 1: 200000 splats"}, {"file": "frame_002.jpg", "time": 4.45, "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 3 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 12: GaussianMerge\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"target_count\": 100000, \"output_filename\": \"applemerged\", \"opacity_threshold\": 0.1, \"k\": 16, \"backend\": \"nanogs_cpu\", \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 14: PreviewGaussianDual\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"layout\": \"slider\", \"camera_mode\": \"orbit\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path_1\": [\"1\", 0], \"ply_path_2\": [\"12\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Loading PLY: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Initial splats: 200000\n [ComfyUI] Pruned splats: 200000, target: 100000\n [ComfyUI] Opacity Mean: 0.53443545 Median: 0.48362076\n [ComfyUI] Pruning splats with opacity below 0.1000\n [ComfyUI] Original count: 200000, after opacity pruning: 200000\n [ComfyUI] After opacity pruning, 200000 splats remain.\n [ComfyUI] Pass 1: 200000 splats\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=5ms shot=94ms unfreeze=5ms saved=True"}, {"file": "frame_003.jpg", "time": 19.41, "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 3 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 12: GaussianMerge\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"target_count\": 100000, \"output_filename\": \"applemerged\", \"opacity_threshold\": 0.1, \"k\": 16, \"backend\": \"nanogs_cpu\", \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 14: PreviewGaussianDual\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"layout\": \"slider\", \"camera_mode\": \"orbit\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path_1\": [\"1\", 0], \"ply_path_2\": [\"12\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Loading PLY: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Initial splats: 200000\n [ComfyUI] Pruned splats: 200000, target: 100000\n [ComfyUI] Opacity Mean: 0.53443545 Median: 0.48362076\n [ComfyUI] Pruning splats with opacity below 0.1000\n [ComfyUI] Original count: 200000, after opacity pruning: 200000\n [ComfyUI] After opacity pruning, 200000 splats remain.\n [ComfyUI] Pass 1: 200000 splats\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=5ms shot=94ms unfreeze=5ms saved=True\n Frame 3 saved (frame_002.jpg, t=4.5s)\n [capture-periodic] freeze=4ms shot=101ms unfreeze=6ms saved=True\n [ComfyUI] \n [ComfyUI] Edge costs: 0%| | 0/19 [00:00 D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\compressed_room.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.01 seconds\u001b[0m"}, {"file": "frame_002.jpg", "time": 11.37205195426941, "log": "Final screenshot"}], "total_time": 9.0}, "gaussian_analysis": {"frames": [{"file": "frame_000.jpg", "time": 0.0, "log": " [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\nCapturing execution frames: gaussian_analysis.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache."}, {"file": "frame_001.jpg", "time": 0.5, "log": " [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\nCapturing execution frames: gaussian_analysis.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 4 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 19: GaussianAnalysis\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 20: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"compressed_room.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 21: GaussianAnalysis\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_path\": [\"20\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: 68d52ede-a37c-4f48-b22a-4bbb68beb4aa\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: compressed_room.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\compressed_room.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianAnalysis:\n [ComfyUI] == Gaussian PLY analysis ==\n [ComfyUI] path: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\compressed_room.ply\n [ComfyUI] size: 26.70 MB (28,000,362 bytes)\n [ComfyUI] encoding: binary_little_endian 1.0\n [ComfyUI] splat count: 500,000\n [ComfyUI] bytes/splat: 56.0\n [ComfyUI] flavor: SH-stripped 3DGS (DC only, no view-dependent term)\n [ComfyUI] SH degree: 0\n [ComfyUI] precision: float32 (all)\n [ComfyUI] has f_dc_*: True\n [ComfyUI] has RGB uchar: False\n [ComfyUI] has opacity: True\n [ComfyUI] has scale_*: True\n [ComfyUI] has rot_*: True\n [ComfyUI] total props: 14\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianAnalysis:\n [ComfyUI] == Gaussian PLY analysis ==\n [ComfyUI] path: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] size: 47.30 MB (49,601,531 bytes)\n [ComfyUI] encoding: binary_little_endian 1.0\n [ComfyUI] splat count: 200,000\n [ComfyUI] bytes/splat: 248.0\n [ComfyUI] flavor: raw 3DGS PLY (SH degree 3)\n [ComfyUI] SH degree: 3\n [ComfyUI] precision: float32 (all)\n [ComfyUI] has f_dc_*: True\n [ComfyUI] has RGB uchar: False\n [ComfyUI] has opacity: True\n [ComfyUI] has scale_*: True\n [ComfyUI] has rot_*: True\n [ComfyUI] total props: 62\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.02 seconds\u001b[0m"}, {"file": "frame_002.jpg", "time": 2.994668483734131, "log": "Final screenshot"}], "total_time": 0.67}, "rotate_splats": {"frames": [{"file": "frame_000.jpg", "time": 0.0, "log": "Capturing execution frames: rotate_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache."}, {"file": "frame_001.jpg", "time": 1.17, "log": "Capturing execution frames: rotate_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 3 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 14: PreviewGaussianDual\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"layout\": \"slider\", \"camera_mode\": \"orbit\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path_1\": [\"1\", 0], \"ply_path_2\": [\"18\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 18: TransformGaussian\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"rotate_x\": -90, \"rotate_y\": 0, \"rotate_z\": 0, \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: 606fc7b4-1ef0-4a8b-bb86-ea5ab470d06c\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m TransformGaussian: 200000 splats, rotation X=-90.0 Y=0.0 Z=0.0\n [ComfyUI] \u001b[32m[INFO]\u001b[0m TransformGaussian: rotated SH AC (sh_degree=3, 15 coeffs/channel x 3 channels) via Wigner-D\n [ComfyUI] \u001b[32m[INFO]\u001b[0m TransformGaussian: wrote apple_rot_m90_p0_p0_0e442043.ply (47.3 MB)\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.81 seconds\u001b[0m"}, {"file": "frame_002.jpg", "time": 63.83711504936218, "log": "Final screenshot"}], "total_time": 61.65}}; + const videoData = {}; const inIframe = window !== window.top; let currentWorkflow = null; diff --git a/dev/windows-portable-cpu/logs/gaussian_analysis.log b/dev/windows-portable-cpu/logs/gaussian_analysis.log index dfd1fd8..5842a40 100644 --- a/dev/windows-portable-cpu/logs/gaussian_analysis.log +++ b/dev/windows-portable-cpu/logs/gaussian_analysis.log @@ -1,71 +1,9 @@ - [ComfyUI] [INFO] Using RAM pressure cache. Capturing execution frames: gaussian_analysis.json + [ComfyUI] [INFO] Using RAM pressure cache. [ComfyUI] [INFO] Using RAM pressure cache. Frame 1 saved (frame_000.jpg, t=0.0s) Validating workflow... - Queuing workflow for execution... - [ComfyUI] [INFO] === /validate endpoint called === - [ComfyUI] [INFO] Received JSON with keys: ['prompt'] - [ComfyUI] [INFO] Prompt has 4 nodes - [ComfyUI] [INFO] Node 1: LoadPLY - [ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"} - [ComfyUI] [INFO] Node 19: GaussianAnalysis - [ComfyUI] [INFO] Inputs: {"ply_path": ["1", 0]} - [ComfyUI] [INFO] Node 20: LoadPLY - [ComfyUI] [INFO] Inputs: {"ply_file": "compressed_room.ply"} - [ComfyUI] [INFO] Node 21: GaussianAnalysis - [ComfyUI] [INFO] Inputs: {"ply_path": ["20", 0]} - [ComfyUI] [INFO] Generated prompt_id: 68d52ede-a37c-4f48-b22a-4bbb68beb4aa - [ComfyUI] [INFO] Calling execution.validate_prompt()... - [ComfyUI] [INFO] Validation result: valid=True - [ComfyUI] [INFO] === Validation PASSED === - [ComfyUI] [INFO] got prompt - [ComfyUI] [INFO] LoadPLY: compressed_room.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\compressed_room.ply - [ComfyUI] [INFO] GaussianAnalysis: - [ComfyUI] == Gaussian PLY analysis == - [ComfyUI] path: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\compressed_room.ply - [ComfyUI] size: 26.70 MB (28,000,362 bytes) - [ComfyUI] encoding: binary_little_endian 1.0 - [ComfyUI] splat count: 500,000 - [ComfyUI] bytes/splat: 56.0 - [ComfyUI] flavor: SH-stripped 3DGS (DC only, no view-dependent term) - [ComfyUI] SH degree: 0 - [ComfyUI] precision: float32 (all) - [ComfyUI] has f_dc_*: True - [ComfyUI] has RGB uchar: False - [ComfyUI] has opacity: True - [ComfyUI] has scale_*: True - [ComfyUI] has rot_*: True - [ComfyUI] total props: 14 - [ComfyUI] [INFO] LoadPLY: apple.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply - [ComfyUI] [INFO] GaussianAnalysis: - [ComfyUI] == Gaussian PLY analysis == - [ComfyUI] path: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply - [ComfyUI] size: 47.30 MB (49,601,531 bytes) - [ComfyUI] encoding: binary_little_endian 1.0 - [ComfyUI] splat count: 200,000 - [ComfyUI] bytes/splat: 248.0 - [ComfyUI] flavor: raw 3DGS PLY (SH degree 3) - [ComfyUI] SH degree: 3 - [ComfyUI] precision: float32 (all) - [ComfyUI] has f_dc_*: True - [ComfyUI] has RGB uchar: False - [ComfyUI] has opacity: True - [ComfyUI] has scale_*: True - [ComfyUI] has rot_*: True - [ComfyUI] total props: 62 - [ComfyUI] [INFO] Prompt executed in 0.02 seconds - Node executed (2 total), capturing... - Frame 2 saved (frame_001.jpg, t=0.5s) - [capture-node] freeze=6ms shot=103ms unfreeze=0ms saved=True - Execution complete (t=0.5s) - [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear... - [3d-wait] Phase 1 done in 0.0s - [3d-wait] Phase 2: iframes=0 - [3d-wait] Total 3D wait: 0.0s - Captured 2 unique frames over 0.67s - [debug] iframes: 0 - [timing] trigger_3d_previews: 0.0s - Saved high-quality screenshot: gaussian_analysis_executed.png - [timing] final_screenshot: 0.3s - Captured 3 video frames \ No newline at end of file + Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 4 nodes, missing class_type: [1,19,20,21], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} + Status: FAILED + Error: Workflow validation failed + Details: graphToPrompt produced nodes without class_type: graphToPrompt: 4 nodes, missing class_type: [1,19,20,21], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} \ No newline at end of file diff --git a/dev/windows-portable-cpu/logs/gaussian_analysis_console.log b/dev/windows-portable-cpu/logs/gaussian_analysis_console.log index 74831b7..9a71c4c 100644 --- a/dev/windows-portable-cpu/logs/gaussian_analysis_console.log +++ b/dev/windows-portable-cpu/logs/gaussian_analysis_console.log @@ -8,15 +8,14 @@ [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} +[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} +[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} [Console-warning] THREE.WARNING: Multiple instances of Three.js being imported. [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} -[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} -[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} -[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} +[Console-log] [GaussianPack Sharp] Loading extension... [Console-log] [GaussianPack] Loading extension... +[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} [Console-warning] [MaskEditor] ComfyApp.open_maskeditor is deprecated. Plugins should migrate to using the command system or direct node context menu integration. -[Console-log] [GaussianPack] Registering Preview Gaussians node -[Console-log] [GaussianPack] Registering Preview Gaussian Dual node [Console-info] Autofocus processing was blocked because a document already has a focused element. -[Console-log] [comfy-test] graphToPrompt: 4 nodes, missing class_type: [], sample: {"inputs":{"ply_file":"apple.ply"},"class_type":"LoadPLY","_meta":{"title":"Load PLY"}} \ No newline at end of file +[Console-log] [comfy-test] graphToPrompt: 4 nodes, missing class_type: [1,19,20,21], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} \ No newline at end of file diff --git a/dev/windows-portable-cpu/logs/gaussian_analysis_resources.csv b/dev/windows-portable-cpu/logs/gaussian_analysis_resources.csv index 445ea99..adb1d37 100644 --- a/dev/windows-portable-cpu/logs/gaussian_analysis_resources.csv +++ b/dev/windows-portable-cpu/logs/gaussian_analysis_resources.csv @@ -8,7 +8,5 @@ t,ram_gb,vram_gb 5.0,1.43, 6.0,1.43, 7.0,1.43, -8.1,1.43, -9.1,1.43, -10.1,1.43, -11.1,1.43, +8.0,1.45, +9.1,1.45, diff --git a/dev/windows-portable-cpu/logs/merge_splats.log b/dev/windows-portable-cpu/logs/merge_splats.log index bd138d9..76e3304 100644 --- a/dev/windows-portable-cpu/logs/merge_splats.log +++ b/dev/windows-portable-cpu/logs/merge_splats.log @@ -1,131 +1,9 @@ Capturing execution frames: merge_splats.json [ComfyUI] [INFO] Using RAM pressure cache. [ComfyUI] [INFO] Using RAM pressure cache. - [ComfyUI] [ERROR] Exception in callback _ProactorBasePipeTransport._call_connection_lost() - [ComfyUI] handle: - [ComfyUI] Traceback (most recent call last): - [ComfyUI] File "asyncio\events.py", line 89, in _run - [ComfyUI] File "asyncio\proactor_events.py", line 165, in _call_connection_lost - [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host Frame 1 saved (frame_000.jpg, t=0.0s) Validating workflow... - Queuing workflow for execution... - [ComfyUI] [INFO] === /validate endpoint called === - [ComfyUI] [INFO] Received JSON with keys: ['prompt'] - [ComfyUI] [INFO] Prompt has 3 nodes - [ComfyUI] [INFO] Node 1: LoadPLY - [ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"} - [ComfyUI] [INFO] Node 12: GaussianMerge - [ComfyUI] [INFO] Inputs: {"target_count": 100000, "output_filename": "applemerged", "opacity_threshold": 0.1, "k": 16, "backend": "nanogs_cpu", "ply_path": ["1", 0]} - [ComfyUI] [INFO] Node 14: PreviewGaussianDual - [ComfyUI] [INFO] Inputs: {"layout": "slider", "camera_mode": "orbit", "fov_degrees": 70, "renderer": "playcanvas", "transport_format": "ply", "ply_path_1": ["1", 0], "ply_path_2": ["12", 0]} - [ComfyUI] [INFO] Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4 - [ComfyUI] [INFO] Calling execution.validate_prompt()... - [ComfyUI] [INFO] Validation result: valid=True - [ComfyUI] [INFO] === Validation PASSED === - [ComfyUI] [INFO] got prompt - [ComfyUI] [INFO] LoadPLY: apple.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply - [ComfyUI] [INFO] GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply - [ComfyUI] Loading PLY: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply - [ComfyUI] Initial splats: 200000 - [ComfyUI] Pruned splats: 200000, target: 100000 - [ComfyUI] Opacity Mean: 0.53443545 Median: 0.48362076 - [ComfyUI] Pruning splats with opacity below 0.1000 - [ComfyUI] Original count: 200000, after opacity pruning: 200000 - [ComfyUI] After opacity pruning, 200000 splats remain. - [ComfyUI] Pass 1: 200000 splats - Frame 2 saved (frame_001.jpg, t=2.2s) - [capture-periodic] freeze=5ms shot=94ms unfreeze=5ms saved=True - Frame 3 saved (frame_002.jpg, t=4.5s) - [capture-periodic] freeze=4ms shot=101ms unfreeze=6ms saved=True - [ComfyUI] - [ComfyUI] Edge costs: 0%| | 0/19 [00:00 + [ComfyUI] Traceback (most recent call last): + [ComfyUI] File "asyncio\events.py", line 89, in _run + [ComfyUI] File "asyncio\proactor_events.py", line 165, in _call_connection_lost + [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host Frame 1 saved (frame_000.jpg, t=0.0s) Validating workflow... - Queuing workflow for execution... - [ComfyUI] [INFO] === /validate endpoint called === - [ComfyUI] [INFO] Received JSON with keys: ['prompt'] - [ComfyUI] [INFO] Prompt has 3 nodes - [ComfyUI] [INFO] Node 1: LoadPLY - [ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"} - [ComfyUI] [INFO] Node 14: PreviewGaussianDual - [ComfyUI] [INFO] Inputs: {"layout": "slider", "camera_mode": "orbit", "fov_degrees": 70, "renderer": "playcanvas", "transport_format": "ply", "ply_path_1": ["1", 0], "ply_path_2": ["18", 0]} - [ComfyUI] [INFO] Node 18: TransformGaussian - [ComfyUI] [INFO] Inputs: {"rotate_x": -90, "rotate_y": 0, "rotate_z": 0, "ply_path": ["1", 0]} - [ComfyUI] [INFO] Generated prompt_id: 606fc7b4-1ef0-4a8b-bb86-ea5ab470d06c - [ComfyUI] [INFO] Calling execution.validate_prompt()... - [ComfyUI] [INFO] Validation result: valid=True - [ComfyUI] [INFO] === Validation PASSED === - [ComfyUI] [INFO] got prompt - [ComfyUI] [INFO] LoadPLY: apple.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply - [ComfyUI] [INFO] TransformGaussian: 200000 splats, rotation X=-90.0 Y=0.0 Z=0.0 - [ComfyUI] [INFO] TransformGaussian: rotated SH AC (sh_degree=3, 15 coeffs/channel x 3 channels) via Wigner-D - [ComfyUI] [INFO] TransformGaussian: wrote apple_rot_m90_p0_p0_0e442043.ply (47.3 MB) - [ComfyUI] [INFO] Prompt executed in 0.81 seconds - Node executed (1 total), capturing... - Frame 2 saved (frame_001.jpg, t=1.2s) - [capture-node] freeze=48ms shot=343ms unfreeze=0ms saved=True - Execution complete (t=1.2s) - [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear... - [3d-wait] Phase 1 done in 0.0s - [3d-wait] Phase 2: iframes=1 - [3d-wait] iframe viewer_ready=False (matched 0 console logs) - [3d-wait] Waiting for 'Loaded successfully' console message (timeout=60s)... - [3d-wait] iframe wait exception: Timeout 60000ms exceeded while waiting for event "console" -=========================== logs =========================== -waiting for event "console" -============================================================ - [3d-wait] Total 3D wait: 60.0s - Captured 2 unique frames over 61.65s - [debug] iframes: 1 - [debug] iframe[0]: src=http://127.0.0.1:41884/extensions/ComfyUI-GaussianPack/viewer_gaussian_dual.html, canvas=486x203, rafFrozen=True - [timing] trigger_3d_previews: 0.0s - Saved high-quality screenshot: rotate_splats_executed.png - [timing] final_screenshot: 0.2s - Captured 3 video frames \ No newline at end of file + Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,14,18], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} + Status: FAILED + Error: Workflow validation failed + Details: graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,14,18], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} \ No newline at end of file diff --git a/dev/windows-portable-cpu/logs/rotate_splats_console.log b/dev/windows-portable-cpu/logs/rotate_splats_console.log index 361f362..b2a8b5a 100644 --- a/dev/windows-portable-cpu/logs/rotate_splats_console.log +++ b/dev/windows-portable-cpu/logs/rotate_splats_console.log @@ -7,21 +7,14 @@ [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) +[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} [Console-warning] THREE.WARNING: Multiple instances of Three.js being imported. [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} -[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} -[Console-log] [GaussianPack] Loading extension... [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} +[Console-log] [GaussianPack Sharp] Loading extension... +[Console-log] [GaussianPack] Loading extension... [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} [Console-warning] [MaskEditor] ComfyApp.open_maskeditor is deprecated. Plugins should migrate to using the command system or direct node context menu integration. -[Console-log] [GaussianPack] Registering Preview Gaussians node -[Console-log] [GaussianPack] Registering Preview Gaussian Dual node -[Console-warning] Allow attribute will take precedence over 'allowfullscreen'. -[Console-log] [comfy-test] graphToPrompt: 3 nodes, missing class_type: [], sample: {"inputs":{"ply_file":"apple.ply"},"class_type":"LoadPLY","_meta":{"title":"Load PLY"}} -[Console-log] [GaussianDualViewer] Ready (layout=slider) -[Console-warning] [GaussianDualViewer] PlayCanvas can't render two gsplat views in one page; using Spark for the dual view. -[Console-warning] THREE.Clock: This module has been deprecated. Please use THREE.Timer instead. -[Console-warning] [GaussianDualViewer] PlayCanvas can't render two gsplat views in one page; using Spark for the dual view. -[Console-warning] THREE.Clock: This module has been deprecated. Please use THREE.Timer instead. \ No newline at end of file +[Console-log] [comfy-test] graphToPrompt: 3 nodes, missing class_type: [1,14,18], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} \ No newline at end of file diff --git a/dev/windows-portable-cpu/logs/rotate_splats_resources.csv b/dev/windows-portable-cpu/logs/rotate_splats_resources.csv index b043ed2..cbedb00 100644 --- a/dev/windows-portable-cpu/logs/rotate_splats_resources.csv +++ b/dev/windows-portable-cpu/logs/rotate_splats_resources.csv @@ -1,72 +1,8 @@ # total_ram_gb=16.0 t,ram_gb,vram_gb -0.0,1.25, -1.0,1.25, -2.0,1.24, -3.0,1.24, -4.0,1.24, -5.0,1.24, -6.0,1.29, -7.1,1.24, -8.1,1.24, -9.1,1.23, -10.1,1.23, -11.1,1.22, -12.1,1.22, -13.1,1.22, -14.1,1.21, -15.1,1.21, -16.1,1.21, -17.1,1.2, -18.2,1.19, -19.2,1.19, -20.2,1.19, -21.2,1.18, -22.2,1.18, -23.2,1.18, -24.2,1.17, -25.2,1.16, -26.2,1.15, -27.2,1.14, -28.2,1.13, -29.2,1.12, -30.2,1.11, -31.2,1.1, -32.3,1.09, -33.3,1.08, -34.3,1.07, -35.3,1.06, -36.3,1.05, -37.3,1.05, -38.3,1.04, -39.3,1.03, -40.3,1.02, -41.3,1.01, -42.3,1.01, -43.4,1.01, -44.4,1.0, -45.4,0.99, -46.4,0.98, -47.4,0.97, -48.4,0.96, -49.4,0.96, -50.4,0.95, -51.4,0.94, -52.4,0.93, -53.4,0.93, -54.4,0.92, -55.4,0.91, -56.4,0.91, -57.4,0.91, -58.4,0.91, -59.4,0.9, -60.4,0.89, -61.5,0.89, -62.5,0.88, -63.5,0.88, -64.5,0.87, -65.5,0.86, -66.5,0.86, -67.5,0.85, -68.5,0.84, -69.5,0.84, +0.0,1.45, +1.0,1.45, +2.0,1.45, +3.0,1.45, +4.0,1.47, +5.0,1.45, diff --git a/dev/windows-portable-cpu/logs/spectate.log b/dev/windows-portable-cpu/logs/spectate.log index 690a7ed..268b42d 100644 --- a/dev/windows-portable-cpu/logs/spectate.log +++ b/dev/windows-portable-cpu/logs/spectate.log @@ -1,41 +1,15 @@ Capturing execution frames: spectate.json [ComfyUI] [INFO] Using RAM pressure cache. [ComfyUI] [INFO] Using RAM pressure cache. + [ComfyUI] [ERROR] Exception in callback _ProactorBasePipeTransport._call_connection_lost() + [ComfyUI] handle: + [ComfyUI] Traceback (most recent call last): + [ComfyUI] File "asyncio\events.py", line 89, in _run + [ComfyUI] File "asyncio\proactor_events.py", line 165, in _call_connection_lost + [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host Frame 1 saved (frame_000.jpg, t=0.0s) Validating workflow... - Queuing workflow for execution... - [ComfyUI] [INFO] === /validate endpoint called === - [ComfyUI] [INFO] Received JSON with keys: ['prompt'] - [ComfyUI] [INFO] Prompt has 2 nodes - [ComfyUI] [INFO] Node 1: LoadPLY - [ComfyUI] [INFO] Inputs: {"ply_file": "compressed_room.ply"} - [ComfyUI] [INFO] Node 2: PreviewGaussians - [ComfyUI] [INFO] Inputs: {"camera_mode": "spectate", "fov_degrees": 70, "renderer": "playcanvas", "transport_format": "ply", "ply_path": ["1", 0]} - [ComfyUI] [INFO] Generated prompt_id: 5a885c67-a806-4dae-a8c2-710d79b29166 - [ComfyUI] [INFO] Calling execution.validate_prompt()... - [ComfyUI] [INFO] Validation result: valid=True - [ComfyUI] [INFO] === Validation PASSED === - [ComfyUI] [INFO] got prompt - [ComfyUI] [INFO] LoadPLY: compressed_room.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\compressed_room.ply - [ComfyUI] [INFO] Prompt executed in 0.01 seconds - Node executed (1 total), capturing... - Frame 2 saved (frame_001.jpg, t=0.5s) - [capture-node] freeze=5ms shot=98ms unfreeze=0ms saved=True - Execution complete (t=0.5s) - [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear... - [3d-wait] Phase 1 done in 0.0s - [3d-wait] Phase 2: iframes=1 - [3d-wait] iframe viewer_ready=False (matched 0 console logs) - [3d-wait] Waiting for 'Loaded successfully' console message (timeout=60s)... - [3d-wait] Got 'Loaded successfully' after 1.2s - [3d-wait] Unfrozen in 0.011s, rendering for 5s... - [3d-wait] JS halted via CDP after 6.1s - [3d-wait] Re-frozen in 7.2s - [3d-wait] Total 3D wait: 8.4s - Captured 2 unique frames over 9.0s - [debug] iframes: 1 - [debug] iframe[0]: src=http://127.0.0.1:41884/extensions/ComfyUI-GaussianPack/viewer_gaussian.html?mode, canvas=781x394, rafFrozen=True - [timing] trigger_3d_previews: 0.0s - Saved high-quality screenshot: spectate_executed.png - [timing] final_screenshot: 0.3s - Captured 3 video frames \ No newline at end of file + Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 2 nodes, missing class_type: [1,2], sample: {"inputs":{"UNKNOWN":"compressed_room.ply"},"_meta":{}} + Status: FAILED + Error: Workflow validation failed + Details: graphToPrompt produced nodes without class_type: graphToPrompt: 2 nodes, missing class_type: [1,2], sample: {"inputs":{"UNKNOWN":"compressed_room.ply"},"_meta":{}} \ No newline at end of file diff --git a/dev/windows-portable-cpu/logs/spectate_console.log b/dev/windows-portable-cpu/logs/spectate_console.log index b8da29b..569a2e7 100644 --- a/dev/windows-portable-cpu/logs/spectate_console.log +++ b/dev/windows-portable-cpu/logs/spectate_console.log @@ -8,34 +8,13 @@ [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} +[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} [Console-warning] THREE.WARNING: Multiple instances of Three.js being imported. [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} -[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} -[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "three". Relati…ences must start with either "/", "./", or "../".} +[Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} +[Console-log] [GaussianPack Sharp] Loading extension... [Console-log] [GaussianPack] Loading extension... [Console-error] [vite:preloadError] {url: null, fileType: unknown, chunkName: null, message: Failed to resolve module specifier "playcanvas". R…ences must start with either "/", "./", or "../".} [Console-warning] [MaskEditor] ComfyApp.open_maskeditor is deprecated. Plugins should migrate to using the command system or direct node context menu integration. -[Console-log] [GaussianPack] Registering Preview Gaussians node -[Console-log] [GaussianPack] Registering Preview Gaussian Dual node -[Console-warning] Allow attribute will take precedence over 'allowfullscreen'. -[Console-log] [GaussianViewer] Ready — waiting for LOAD_MESH_DATA -[Console-log] [comfy-test] graphToPrompt: 2 nodes, missing class_type: [], sample: {"inputs":{"ply_file":"compressed_room.ply"},"class_type":"LoadPLY","_meta":{"title":"Load PLY"}} -[Console-log] [GaussianPack] onExecuted called with: {ply_file: Array(1), filename: Array(1), ply_type: Array(1), ply_subfolder: Array(1), file_size_mb: Array(1)} -[Console-log] [GaussianViewer] Ready — waiting for LOAD_MESH_DATA -[Console-log] [GaussianPack] fetch start: /view?filename=compressed_room.ply&type=input&subfolder=&_=1780840818 -[Console-log] [GaussianPack] download 20% 5.6/26.7 MB -[Console-log] [GaussianPack] download 70% 18.8/26.7 MB -[Console-log] [GaussianPack] download 90% 24.2/26.7 MB -[Console-log] [GaussianPack] download 100% 26.7/26.7 MB -[Console-log] [GaussianPack] fetch done: 28000362 bytes in 100 ms (267.8 MB/s) -[Console-log] [GaussianViewer] Received LOAD_MESH_DATA, size: 28000362 renderer: playcanvas -[Console-log] [GaussianViewer] ensureRenderer('playcanvas') starting... -[Console-log] [PlayCanvas] engine version: 2.19.4 -[Console-log] [PlayCanvas] adapter initialized (mode=spectate) -[Console-log] [GaussianViewer] Adapter ready: playcanvas -[Console-log] [GaussianViewer] Loading splat (28,000,362 bytes) via playcanvas... -[Console-log] [PlayCanvas] loading splat: compressed_room.ply -[Console-log] [PlayCanvas] loaded in 598 ms -[Console-log] [GaussianViewer] adapter.loadSplat resolved in 598 ms -[Console-log] [GaussianViewer] Loaded successfully \ No newline at end of file +[Console-log] [comfy-test] graphToPrompt: 2 nodes, missing class_type: [1,2], sample: {"inputs":{"UNKNOWN":"compressed_room.ply"},"_meta":{}} \ No newline at end of file diff --git a/dev/windows-portable-cpu/logs/spectate_resources.csv b/dev/windows-portable-cpu/logs/spectate_resources.csv index 66d64d6..8846297 100644 --- a/dev/windows-portable-cpu/logs/spectate_resources.csv +++ b/dev/windows-portable-cpu/logs/spectate_resources.csv @@ -1,17 +1,8 @@ # total_ram_gb=16.0 t,ram_gb,vram_gb -0.0,0.83, -1.0,0.82, -2.0,0.82, -3.0,0.81, -4.0,0.81, -5.0,0.81, -6.0,0.83, -7.1,0.82, -8.3,0.82, -10.4,0.8, -12.4,0.79, -13.8,0.79, -14.8,0.79, -15.8,0.79, -16.8,0.78, +0.0,1.46, +1.0,1.45, +2.0,1.45, +3.0,1.45, +4.0,1.45, +5.0,1.45, diff --git a/dev/windows-portable-cpu/models.json b/dev/windows-portable-cpu/models.json index 66b16f7..fb1e3ab 100644 --- a/dev/windows-portable-cpu/models.json +++ b/dev/windows-portable-cpu/models.json @@ -1,5 +1,5 @@ { - "models_dir": "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\models", + "models_dir": "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1720\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\models", "summary": { "total_files": 8, "total_size_bytes": 19659992, diff --git a/dev/windows-portable-cpu/results.json b/dev/windows-portable-cpu/results.json index feef0f8..3cca215 100644 --- a/dev/windows-portable-cpu/results.json +++ b/dev/windows-portable-cpu/results.json @@ -1,89 +1,89 @@ { - "timestamp": "2026-06-07T14:07:52.979842+00:00", + "timestamp": "2026-06-07T17:26:10.992709+00:00", "platform": "windows_portable", "hardware": { - "os": "Windows-10-10.0.26100-SP0", - "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD" + "os": "Windows-2025Server-10.0.26100-SP0", + "cpu": "Intel64 Family 6 Model 106 Stepping 6, GenuineIntel" }, - "commit_hash": "ca04634aaa050a5180a6a7d26546b7b845579976", - "run_url": "https://github.com/PozzettiAndrea/comfy-gpu-ci/actions/runs/27094637029", - "success": true, + "commit_hash": "6753db6f21be5bb21c87b5358f3bd10fb98c0c1d", + "run_url": "https://github.com/PozzettiAndrea/comfy-gpu-ci/actions/runs/27099444596", + "success": false, "summary": { "total": 4, - "passed": 4, - "failed": 0 + "passed": 0, + "failed": 4 }, "workflows": [ { "name": "gaussian_analysis", - "status": "pass", - "duration_seconds": 11.93, - "error": null, + "status": "fail", + "duration_seconds": 9.29, + "error": "Workflow validation failed\n\nDetails:\ngraphToPrompt produced nodes without class_type: graphToPrompt: 4 nodes, missing class_type: [1,19,20,21], sample: {\"inputs\":{\"UNKNOWN\":\"apple.ply\"},\"_meta\":{}}", "hardware": { - "os": "Windows-10-10.0.26100-SP0", - "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD" + "os": "Windows-2025Server-10.0.26100-SP0", + "cpu": "Intel64 Family 6 Model 106 Stepping 6, GenuineIntel" }, "resources": { "ram": { - "peak": 1.43, + "peak": 1.45, "avg": 1.43 }, "total_ram_gb": 16.0, - "samples": 12 + "samples": 10 } }, { "name": "merge_splats", - "status": "pass", - "duration_seconds": 92.14, - "error": null, + "status": "fail", + "duration_seconds": 5.73, + "error": "Workflow validation failed\n\nDetails:\ngraphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,12,14], sample: {\"inputs\":{\"UNKNOWN\":\"apple.ply\"},\"_meta\":{}}", "hardware": { - "os": "Windows-10-10.0.26100-SP0", - "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD" + "os": "Windows-2025Server-10.0.26100-SP0", + "cpu": "Intel64 Family 6 Model 106 Stepping 6, GenuineIntel" }, "resources": { "ram": { - "peak": 1.66, - "avg": 1.43 + "peak": 1.45, + "avg": 1.45 }, "total_ram_gb": 16.0, - "samples": 83 + "samples": 6 } }, { "name": "rotate_splats", - "status": "pass", - "duration_seconds": 69.68, - "error": null, + "status": "fail", + "duration_seconds": 5.76, + "error": "Workflow validation failed\n\nDetails:\ngraphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,14,18], sample: {\"inputs\":{\"UNKNOWN\":\"apple.ply\"},\"_meta\":{}}", "hardware": { - "os": "Windows-10-10.0.26100-SP0", - "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD" + "os": "Windows-2025Server-10.0.26100-SP0", + "cpu": "Intel64 Family 6 Model 106 Stepping 6, GenuineIntel" }, "resources": { "ram": { - "peak": 1.29, - "avg": 1.07 + "peak": 1.47, + "avg": 1.45 }, "total_ram_gb": 16.0, - "samples": 70 + "samples": 6 } }, { "name": "spectate", - "status": "pass", - "duration_seconds": 17.16, - "error": null, + "status": "fail", + "duration_seconds": 5.71, + "error": "Workflow validation failed\n\nDetails:\ngraphToPrompt produced nodes without class_type: graphToPrompt: 2 nodes, missing class_type: [1,2], sample: {\"inputs\":{\"UNKNOWN\":\"compressed_room.ply\"},\"_meta\":{}}", "hardware": { - "os": "Windows-10-10.0.26100-SP0", - "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD" + "os": "Windows-2025Server-10.0.26100-SP0", + "cpu": "Intel64 Family 6 Model 106 Stepping 6, GenuineIntel" }, "resources": { "ram": { - "peak": 0.83, - "avg": 0.81 + "peak": 1.46, + "avg": 1.45 }, "total_ram_gb": 16.0, - "samples": 15 + "samples": 6 } } ] diff --git a/dev/windows-portable-cpu/screenshots/gaussian_analysis_executed.png b/dev/windows-portable-cpu/screenshots/gaussian_analysis_executed.png deleted file mode 100644 index 8da185d..0000000 Binary files a/dev/windows-portable-cpu/screenshots/gaussian_analysis_executed.png and /dev/null differ diff --git a/dev/windows-portable-cpu/screenshots/merge_splats_executed.png b/dev/windows-portable-cpu/screenshots/merge_splats_executed.png deleted file mode 100644 index 4f13894..0000000 Binary files a/dev/windows-portable-cpu/screenshots/merge_splats_executed.png and /dev/null differ diff --git a/dev/windows-portable-cpu/screenshots/rotate_splats_executed.png b/dev/windows-portable-cpu/screenshots/rotate_splats_executed.png deleted file mode 100644 index 2651678..0000000 Binary files a/dev/windows-portable-cpu/screenshots/rotate_splats_executed.png and /dev/null differ diff --git a/dev/windows-portable-cpu/screenshots/spectate_executed.png b/dev/windows-portable-cpu/screenshots/spectate_executed.png deleted file mode 100644 index 302d8dc..0000000 Binary files a/dev/windows-portable-cpu/screenshots/spectate_executed.png and /dev/null differ diff --git a/dev/windows-portable-cpu/server.log b/dev/windows-portable-cpu/server.log index bdd15fa..26f8f41 100644 --- a/dev/windows-portable-cpu/server.log +++ b/dev/windows-portable-cpu/server.log @@ -6,12 +6,12 @@ [INFO] setup plugin alembic.autogenerate.comments [INFO] Prestartup times for custom nodes: -[INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack +[INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack [INFO] -D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\cuda\__init__.py:187: UserWarning: cudaGetDeviceCount() returned cudaErrorNotSupported, likely using older driver or on CPU machine (Triggered internally at C:\actions-runner\_work\pytorch\pytorch\c10\cuda\CUDAFunctions.cpp:88.) +D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\cuda\__init__.py:187: UserWarning: cudaGetDeviceCount() returned cudaErrorNotSupported, likely using older driver or on CPU machine (Triggered internally at C:\actions-runner\_work\pytorch\pytorch\c10\cuda\CUDAFunctions.cpp:88.) return torch._C._cuda_getDeviceCount() > 0 -[INFO] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []} [INFO] Found comfy_kitchen backend cuda: {'available': False, 'disabled': False, 'unavailable_reason': 'CUDA not available on this system', 'capabilities': []} +[INFO] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []} [INFO] Found comfy_kitchen backend eager: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'apply_rope_split_half', 'apply_rope_split_half1', 'dequantize_mxfp8', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'gemv_awq_w4a16', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'quantize_svdquant_w4a4', 'scaled_mm_mxfp8', 'scaled_mm_nvfp4', 'scaled_mm_svdquant_w4a4', 'stochastic_rounding_fp8']} [INFO] Checkpoint files will always be loaded safely. [INFO] Total VRAM 16379 MB, total RAM 16379 MB @@ -30,24 +30,68 @@ D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyu [INFO] comfyui-embedded-docs version: 0.5.2 [INFO] comfy-kitchen version: 0.2.10 [INFO] comfy-aimdo version: 0.4.8 -[INFO] [Prompt Server] web root: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\comfyui_frontend_package\static +[INFO] [Prompt Server] web root: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\comfyui_frontend_package\static [INFO] Asset seeder disabled [comfy-env] Version: 0.3.89 [comfy-env] register_nodes: ComfyUI-GaussianPack -[comfy-env] ComfyUI source dir: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI +[comfy-env] ComfyUI source dir: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI [comfy-env] Workspace: C:\Users\stduser\AppData\Local\Programs\comfy-env -[comfy-env] isolation env not found at C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes: pixi has not materialized `gaussianpack-nodes`; using in-process import. Run `comfy-env install` (or your node's `install.py`) to create it. -[comfy-env] Found 0 isolation env(s) -[comfy-env] Importing nodes (root)... -[comfy-env] Imported nodes root: 10 nodes -[comfy-env] isolation env not found at C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes: pixi has not materialized `gaussianpack-nodes`; using in-process import. Run `comfy-env install` (or your node's `install.py`) to create it. -[comfy-env] No env for nodes -- run 'comfy-env install' -[comfy-env] Registered 10 total nodes +[comfy-env] Found 1 isolation env(s) +[comfy-env] Scanning nodes metadata (isolation root)... +[comfy-env] gaussianpack-nodes: Library/bin has 158 DLLs +[comfy-env] Metadata scan: C:\Users\stduser\.pixi\bin\pixi.exe run --as-is --manifest-path C:\Users\stduser\AppData\Local\Programs\comfy-env\pixi.toml -e gaussianpack-nodes python C:\Users\stduser\AppData\Local\Temp\comfy_meta_7sp57xri.py D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack nodes C:\Users\stduser\AppData\Local\Temp\comfy_meta_out_hufnmz24.pkl +[comfy-env] Scan env PATH for nodes: +[comfy-env] [0] C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes +[comfy-env] [1] C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes\Library\bin +[comfy-env] [2] C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes\Scripts +[comfy-env] [3] C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes\Lib\site-packages\bpy +[comfy-env] [4] C:\Windows\System32 +[comfy-env] [5] C:\Windows +[comfy-env] [6] C:\Windows\System32\Wbem +[comfy-env] Metadata scan stderr for nodes: +[comfy-env] [meta-scan] importing nodes from D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack +[comfy-env] Traceback (most recent call last): +[comfy-env] File "C:\Users\stduser\AppData\Local\Temp\comfy_meta_7sp57xri.py", line 65, in +[comfy-env] module = importlib.import_module(package_name) +[comfy-env] File "C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes\Lib\importlib\__init__.py", line 88, in import_module +[comfy-env] return _bootstrap._gcd_import(name[level:], package, level) +[comfy-env] ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +[comfy-env] File "", line 1395, in _gcd_import +[comfy-env] File "", line 1360, in _find_and_load +[comfy-env] File "", line 1331, in _find_and_load_unlocked +[comfy-env] File "", line 935, in _load_unlocked +[comfy-env] File "", line 1023, in exec_module +[comfy-env] File "", line 488, in _call_with_frames_removed +[comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\nodes\__init__.py", line 11, in +[comfy-env] from .preview_gaussian_sharp import PreviewGaussianSharp +[comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\nodes\preview_gaussian_sharp.py", line 21, in +[comfy-env] from comfy_api.latest import io +[comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\__init__.py", line 6, in +[comfy-env] from ._input import ImageInput, AudioInput, MaskInput, LatentInput, VideoInput +[comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\_input\__init__.py", line 4, in +[comfy-env] from .video_types import VideoInput +[comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\_input\video_types.py", line 6, in +[comfy-env] import av +[comfy-env] ModuleNotFoundError: No module named 'av' +[comfy-env] Metadata scan failed for nodes (exit 1, 5.2s): +[comfy-env] from .preview_gaussian_sharp import PreviewGaussianSharp +[comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\nodes\preview_gaussian_sharp.py", line 21, in +[comfy-env] from comfy_api.latest import io +[comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\__init__.py", line 6, in +[comfy-env] from ._input import ImageInput, AudioInput, MaskInput, LatentInput, VideoInput +[comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\_input\__init__.py", line 4, in +[comfy-env] from .video_types import VideoInput +[comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\_input\video_types.py", line 6, in +[comfy-env] import av +[comfy-env] ModuleNotFoundError: No module named 'av' +[comfy-env] Scanned nodes root: 0 nodes (5.2s) +[comfy-env] Imported nodes root: 0 nodes (isolation) +[comfy-env] Registered 0 total nodes [INFO] Import times for custom nodes: -[INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\websocket_image_save.py -[INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-validate-endpoint -[INFO] 0.9 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack +[INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\websocket_image_save.py +[INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-validate-endpoint +[INFO] 5.8 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack [INFO] [INFO] Context impl SQLiteImpl. [INFO] Will assume non-transactional DDL. @@ -64,60 +108,12 @@ Change preview_id FK from assets.id to asset_references.id. [INFO] Using RAM pressure cache. [INFO] Starting server -[INFO] To see the GUI go to: http://127.0.0.1:41884 +[INFO] To see the GUI go to: http://127.0.0.1:41888 +[INFO] Using RAM pressure cache. +[INFO] Using RAM pressure cache. +[INFO] Using RAM pressure cache. [INFO] Using RAM pressure cache. [INFO] Using RAM pressure cache. -[INFO] === /validate endpoint called === -[INFO] Received JSON with keys: ['prompt'] -[INFO] Prompt has 4 nodes -[INFO] Node 1: LoadPLY -[INFO] Inputs: {"ply_file": "apple.ply"} -[INFO] Node 19: GaussianAnalysis -[INFO] Inputs: {"ply_path": ["1", 0]} -[INFO] Node 20: LoadPLY -[INFO] Inputs: {"ply_file": "compressed_room.ply"} -[INFO] Node 21: GaussianAnalysis -[INFO] Inputs: {"ply_path": ["20", 0]} -[INFO] Generated prompt_id: 68d52ede-a37c-4f48-b22a-4bbb68beb4aa -[INFO] Calling execution.validate_prompt()... -[INFO] Validation result: valid=True -[INFO] === Validation PASSED === -[INFO] got prompt -[INFO] LoadPLY: compressed_room.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\compressed_room.ply -[INFO] GaussianAnalysis: -== Gaussian PLY analysis == - path: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\compressed_room.ply - size: 26.70 MB (28,000,362 bytes) - encoding: binary_little_endian 1.0 - splat count: 500,000 - bytes/splat: 56.0 - flavor: SH-stripped 3DGS (DC only, no view-dependent term) - SH degree: 0 - precision: float32 (all) - has f_dc_*: True - has RGB uchar: False - has opacity: True - has scale_*: True - has rot_*: True - total props: 14 -[INFO] LoadPLY: apple.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -[INFO] GaussianAnalysis: -== Gaussian PLY analysis == - path: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply - size: 47.30 MB (49,601,531 bytes) - encoding: binary_little_endian 1.0 - splat count: 200,000 - bytes/splat: 248.0 - flavor: raw 3DGS PLY (SH degree 3) - SH degree: 3 - precision: float32 (all) - has f_dc_*: True - has RGB uchar: False - has opacity: True - has scale_*: True - has rot_*: True - total props: 62 -[INFO] Prompt executed in 0.02 seconds [INFO] Using RAM pressure cache. [INFO] Using RAM pressure cache. [INFO] Using RAM pressure cache. @@ -127,77 +123,13 @@ Traceback (most recent call last): File "asyncio\events.py", line 89, in _run File "asyncio\proactor_events.py", line 165, in _call_connection_lost ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host -[INFO] === /validate endpoint called === -[INFO] Received JSON with keys: ['prompt'] -[INFO] Prompt has 3 nodes -[INFO] Node 1: LoadPLY -[INFO] Inputs: {"ply_file": "apple.ply"} -[INFO] Node 12: GaussianMerge -[INFO] Inputs: {"target_count": 100000, "output_filename": "applemerged", "opacity_threshold": 0.1, "k": 16, "backend": "nanogs_cpu", "ply_path": ["1", 0]} -[INFO] Node 14: PreviewGaussianDual -[INFO] Inputs: {"layout": "slider", "camera_mode": "orbit", "fov_degrees": 70, "renderer": "playcanvas", "transport_format": "ply", "ply_path_1": ["1", 0], "ply_path_2": ["12", 0]} -[INFO] Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4 -[INFO] Calling execution.validate_prompt()... -[INFO] Validation result: valid=True -[INFO] === Validation PASSED === -[INFO] got prompt -[INFO] LoadPLY: apple.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -[INFO] GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -Loading PLY: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -Initial splats: 200000 -Pruned splats: 200000, target: 100000 -Opacity Mean: 0.53443545 Median: 0.48362076 -Pruning splats with opacity below 0.1000 -Original count: 200000, after opacity pruning: 200000 -After opacity pruning, 200000 splats remain. -Pass 1: 200000 splats - Edge costs: 0%| | 0/19 [00:00 D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -[INFO] TransformGaussian: 200000 splats, rotation X=-90.0 Y=0.0 Z=0.0 -[INFO] TransformGaussian: rotated SH AC (sh_degree=3, 15 coeffs/channel x 3 channels) via Wigner-D -[INFO] TransformGaussian: wrote apple_rot_m90_p0_p0_0e442043.ply (47.3 MB) -[INFO] Prompt executed in 0.81 seconds -[INFO] Using RAM pressure cache. -[INFO] Using RAM pressure cache. -[INFO] Using RAM pressure cache. -[INFO] === /validate endpoint called === -[INFO] Received JSON with keys: ['prompt'] -[INFO] Prompt has 2 nodes -[INFO] Node 1: LoadPLY -[INFO] Inputs: {"ply_file": "compressed_room.ply"} -[INFO] Node 2: PreviewGaussians -[INFO] Inputs: {"camera_mode": "spectate", "fov_degrees": 70, "renderer": "playcanvas", "transport_format": "ply", "ply_path": ["1", 0]} -[INFO] Generated prompt_id: 5a885c67-a806-4dae-a8c2-710d79b29166 -[INFO] Calling execution.validate_prompt()... -[INFO] Validation result: valid=True -[INFO] === Validation PASSED === -[INFO] got prompt -[INFO] LoadPLY: compressed_room.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\compressed_room.ply -[INFO] Prompt executed in 0.01 seconds +[ERROR] Exception in callback _ProactorBasePipeTransport._call_connection_lost() +handle: +Traceback (most recent call last): + File "asyncio\events.py", line 89, in _run + File "asyncio\proactor_events.py", line 165, in _call_connection_lost +ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host [INFO] Using RAM pressure cache. diff --git a/dev/windows-portable-cpu/session.log b/dev/windows-portable-cpu/session.log index c5ffd11..b761a4a 100644 --- a/dev/windows-portable-cpu/session.log +++ b/dev/windows-portable-cpu/session.log @@ -1,4 +1,4 @@ -[00:00] Crash dump logging enabled: D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\GaussianPack-1400\dev\windows-portable-cpu\crash_dump.log +[00:00] Crash dump logging enabled: D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\GaussianPack-1720\dev\windows-portable-cpu\crash_dump.log [00:00] [00:00] [1/5] SYNTAX [00:00] ---------------------------------------- @@ -19,461 +19,291 @@ Setting up ComfyUI... [00:00] Fetching latest release version... [00:00] Latest version: v0.24.0 [00:00] Downloading portable ComfyUI from https://github.com/comfyanonymous/ComfyUI/releases/download/v0.24.0/ComfyUI_windows_portable_nvidia.7z... -[00:02] Downloaded: 10% -[00:03] Downloaded: 20% -[00:04] Downloaded: 30% -[00:05] Downloaded: 40% -[00:06] Downloaded: 50% -[00:07] Downloaded: 60% -[00:14] Downloaded: 70% +[00:04] Downloaded: 10% +[00:06] Downloaded: 20% +[00:07] Downloaded: 30% +[00:09] Downloaded: 40% +[00:10] Downloaded: 50% +[00:12] Downloaded: 60% +[00:13] Downloaded: 70% [00:15] Downloaded: 80% [00:16] Downloaded: 90% -[00:16] Downloaded: 100% +[00:17] Downloaded: 100% [00:17] Downloaded to C:\Users\stduser\.comfy-test\cache\portable\ComfyUI_portable_v0.24.0.7z [00:17] Extracting to cache: C:\Users\stduser\.comfy-test\cache\portable\ComfyUI_portable_v0.24.0 [00:17] Extracting ComfyUI_portable_v0.24.0.7z... -[00:17] Using 7z: 7z -[02:23] Extracted to C:\Users\stduser\.comfy-test\cache\portable\ComfyUI_portable_v0.24.0 -[02:23] Copying from cache to: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui -[02:48] Installing uv into embedded Python... -[02:48] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\python.exe -m pip install uv -[02:52] Installing ComfyUI requirements... -[02:52] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\python.exe -m uv pip install -r D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\requirements.txt -[02:52] +[00:18] Using 7z: 7z +[02:04] Extracted to C:\Users\stduser\.comfy-test\cache\portable\ComfyUI_portable_v0.24.0 +[02:04] Copying from cache to: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui +[02:29] Installing uv into embedded Python... +[02:29] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\python_embeded\python.exe -m pip install uv +[02:32] Installing ComfyUI requirements... +[02:32] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\python_embeded\python.exe -m uv pip install -r D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\requirements.txt +[02:32] Installing custom node... -[02:52] Copying ComfyUI-GaussianPack to custom_nodes/... -[02:52] Installing node requirements... -[02:52] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\python.exe -m pip install -r D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\requirements.txt -[03:01] +[02:32] Copying ComfyUI-GaussianPack to custom_nodes/... +[02:32] Installing node requirements... +[02:32] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\python_embeded\python.exe -m pip install -r D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\requirements.txt +[02:41] Running install.py... -[03:01] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\python.exe D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\install.py -[03:19] Warning: install.py failed (exit code 1), continuing... -[03:19] [!] install_workspace(comfyui_dir, log=log, dry_run=dry_run) -[03:19] [!] ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -[03:19] [!] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\comfy_env\install\workspace.py", line 499, in install_workspace -[03:19] [!] ensure_pixi() -[03:19] [!] ~~~~~~~~~~~^^ -[03:19] [!] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\comfy_env\packages\pixi.py", line 44, in ensure_pixi -[03:19] [!] with urllib.request.urlopen(url, context=ctx) as resp: -[03:19] [!] ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ -[03:19] [!] File "urllib\request.py", line 189, in urlopen -[03:19] [!] File "urllib\request.py", line 495, in open -[03:19] [!] File "urllib\request.py", line 604, in http_response -[03:19] [!] File "urllib\request.py", line 527, in error -[03:19] [!] File "urllib\request.py", line 466, in _call_chain -[03:19] [!] File "urllib\request.py", line 720, in http_error_302 -[03:19] [!] File "urllib\request.py", line 495, in open -[03:19] [!] File "urllib\request.py", line 604, in http_response -[03:19] [!] File "urllib\request.py", line 533, in error -[03:19] [!] File "urllib\request.py", line 466, in _call_chain -[03:19] [!] File "urllib\request.py", line 613, in http_error_default -[03:19] [!] urllib.error.HTTPError: HTTP Error 504: Gateway Time-out -[03:19] Installing validation endpoint... -[03:19] Cloning PozzettiAndrea/ComfyUI-validate-endpoint... -[03:19] Running: git clone --depth 1 https://x-access-token:***@github.com/PozzettiAndrea/ComfyUI-validate-endpoint.git D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-validate-endpoint -[03:20] CUDA packages absent (will mock): gsplat -[03:20] [INSTALL] PASSED -[03:20] -[03:20] [3/5] REGISTRATION -[03:20] ---------------------------------------- -[03:20] +[02:41] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\python_embeded\python.exe D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\install.py +[02:43] [comfy-env] _discover: scanning D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes +[02:43] [comfy-env] _discover: ComfyUI-GaussianPack -> gaussianpack-nodes (custom_nodes\ComfyUI-GaussianPack\nodes\comfy-env.toml) +[02:43] [comfy-env] Workspace: C:\Users\stduser\AppData\Local\Programs\comfy-env +[02:43] [comfy-env] ComfyUI: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI +[02:43] [comfy-env] Found 1 node config(s): +[02:43] - gaussianpack-nodes <- custom_nodes\ComfyUI-GaussianPack\nodes\comfy-env.toml (python=host) +[02:43] [comfy-env] Bootstrap interpreter has python 3.13 + torch 2.12.0 (cu130). Looking for cuda-only wheels matching cu130/torch2.12/cp313. +[02:45] [comfy-env] GPU: No GPU detected +[02:45] [comfy-env] Comfyui feature -> torch 2.12.0 from https://download.pytorch.org/whl/cu130 (CUDA 13.0 via bootstrap torch) +[02:45] [comfy-env] cuda-wheels: 1 package(s) need a matched (cuda, torch, python) combo: ['gsplat'] +[02:45] [comfy-env] cuda-wheels tier 1 (bootstrap): probing cu13.0/torch2.12/cp313 +[02:45] [cuda-wheels] Looking up gsplat: cu130 torch2.12 cp313 win_amd64 +[02:45] [cuda-wheels] GH Pages index unreachable, falling back to GitHub Releases API... +[02:48] [cuda-wheels] No wheel found via index or API. If your network blocks +[02:48] [cuda-wheels] *.github.io / fastly, set HTTPS_PROXY to a working proxy. +[02:48] [comfy-env] cuda-wheels tier 1 incomplete: `gsplat` not built for cu13.0+torch2.12; falling back +[02:48] [comfy-env] cuda-wheels tier 2 (fallback): probing cu12.8/torch2.8/cp313 +[02:48] [cuda-wheels] Looking up gsplat: cu128 torch2.8 cp313 win_amd64 +[02:48] [cuda-wheels] Found: gsplat-1.5.3+cu128torch2.8-cp313-cp313-win_amd64.whl +[02:48] [comfy-env] cuda-wheels combo: cu12.8/torch2.8 (fallback; per-node cuda envs will override torch to this combo while comfyui keeps bootstrap torch) +[02:48] [cuda-wheels] Looking up gsplat: cu128 torch2.8 cp313 win_amd64 +[02:48] [cuda-wheels] Found: gsplat-1.5.3+cu128torch2.8-cp313-cp313-win_amd64.whl +[02:48] [comfy-env] gaussianpack-nodes: cuda-wheels deferred for post-pixi install (gsplat) +[02:48] Generated C:\Users\stduser\AppData\Local\Programs\comfy-env\pixi.toml +[02:48] [comfy-env] Installing 1 environment(s): +[02:48] - gaussianpack-nodes (python=host, 8 pypi deps, 1 cuda wheels) +[02:48] [comfy-env] Running `pixi install -e gaussianpack-nodes`... +[04:17] The gaussianpack-nodes environment has been installed. +[04:17] [comfy-env] gaussianpack-nodes: installing cuda-wheels with --no-deps (gsplat) +[04:17] Using Python 3.13.13 environment at: .pixi\envs\gaussianpack-nodes +[04:18] Resolved 1 package in 969ms +[04:18] Downloading gsplat (33.6MiB) +[04:19] Downloaded gsplat +[04:19] Prepared 1 package in 1.37s +[04:21] Installed 1 package in 1.22s +[04:21] + gsplat==1.5.3+cu128torch2.8 (from https://github.com/PozzettiAndrea/cuda-wheels/releases/download/gsplat-latest/gsplat-1.5.3%2Bcu128torch2.8-cp313-cp313-win_amd64.whl) +[04:21] [comfy-env] Recorded install hash f8f8333c802c -> C:\Users\stduser\AppData\Local\Programs\comfy-env\install.hash +[04:21] [comfy-env] Install log: C:\Users\stduser\AppData\Local\Programs\comfy-env\install.log +[04:21] +[04:21] Installation complete! +[04:22] Installing validation endpoint... +[04:22] Cloning PozzettiAndrea/ComfyUI-validate-endpoint... +[04:22] Running: git clone --depth 1 https://x-access-token:***@github.com/PozzettiAndrea/ComfyUI-validate-endpoint.git D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-validate-endpoint +[04:22] CUDA packages absent (will mock): gsplat +[04:22] [INSTALL] PASSED +[04:22] +[04:22] [3/5] REGISTRATION +[04:22] ---------------------------------------- +[04:22] [DEBUG] server=None, api=None -[03:20] +[04:22] Starting ComfyUI server... -[03:20] Starting ComfyUI server on port 41884... -[03:20] CUDA mock packages: gsplat -[03:20] Starting ComfyUI server on port 41884... -[03:20] Server stdout/stderr -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\server.log -[03:20] Waiting for server to be ready (timeout: 600s)... -[03:21] [ComfyUI] [INFO] setup plugin alembic.autogenerate.schemas -[03:21] [ComfyUI] [INFO] setup plugin alembic.autogenerate.tables -[03:21] [ComfyUI] [INFO] setup plugin alembic.autogenerate.types -[03:21] [ComfyUI] [INFO] setup plugin alembic.autogenerate.constraints -[03:21] [ComfyUI] [INFO] setup plugin alembic.autogenerate.defaults -[03:21] [ComfyUI] [INFO] setup plugin alembic.autogenerate.comments -[03:21] [ComfyUI] [INFO] -[03:21] [ComfyUI] Prestartup times for custom nodes: -[03:21] [ComfyUI] [INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack -[03:21] [ComfyUI] [INFO] -[03:24] [ComfyUI] D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\cuda\__init__.py:187: UserWarning: cudaGetDeviceCount() returned cudaErrorNotSupported, likely using older driver or on CPU machine (Triggered internally at C:\actions-runner\_work\pytorch\pytorch\c10\cuda\CUDAFunctions.cpp:88.) -[03:24] [ComfyUI] return torch._C._cuda_getDeviceCount() > 0 -[03:24] [ComfyUI] [INFO] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []} -[03:24] [ComfyUI] [INFO] Found comfy_kitchen backend cuda: {'available': False, 'disabled': False, 'unavailable_reason': 'CUDA not available on this system', 'capabilities': []} -[03:24] [ComfyUI] [INFO] Found comfy_kitchen backend eager: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'apply_rope_split_half', 'apply_rope_split_half1', 'dequantize_mxfp8', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'gemv_awq_w4a16', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'quantize_svdquant_w4a4', 'scaled_mm_mxfp8', 'scaled_mm_nvfp4', 'scaled_mm_svdquant_w4a4', 'stochastic_rounding_fp8']} -[03:24] [ComfyUI] [INFO] Checkpoint files will always be loaded safely. -[03:24] [ComfyUI] [INFO] Total VRAM 16379 MB, total RAM 16379 MB -[03:24] [ComfyUI] [INFO] pytorch version: 2.12.0+cu130 -[03:24] [ComfyUI] [INFO] Set vram state to: DISABLED -[03:24] [ComfyUI] [INFO] Device: cpu -[03:25] [ComfyUI] [INFO] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention -[03:29] [ComfyUI] [INFO] Python version: 3.13.12 (tags/v3.13.12:1cbe481, Feb 3 2026, 18:22:25) [MSC v.1944 64 bit (AMD64)] -[03:29] [ComfyUI] [INFO] ComfyUI version: 0.24.0 -[03:29] [ComfyUI] [INFO] comfy-aimdo version: 0.4.8 -[03:29] [ComfyUI] [INFO] comfy-kitchen version: 0.2.10 -[03:29] [ComfyUI] [WARNING] ****** User settings have been changed to be stored on the server instead of browser storage. ****** -[03:29] [ComfyUI] [WARNING] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ****** -[03:29] [ComfyUI] [INFO] comfyui-frontend-package version: 1.44.19 -[03:29] [ComfyUI] [INFO] comfyui-workflow-templates version: 0.9.94 -[03:29] [ComfyUI] [INFO] comfyui-embedded-docs version: 0.5.2 -[03:29] [ComfyUI] [INFO] comfy-kitchen version: 0.2.10 -[03:29] [ComfyUI] [INFO] comfy-aimdo version: 0.4.8 -[03:29] [ComfyUI] [INFO] [Prompt Server] web root: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\comfyui_frontend_package\static -[03:29] [ComfyUI] [INFO] Asset seeder disabled -[03:31] [ComfyUI] [comfy-env] Version: 0.3.89 -[03:32] [ComfyUI] [comfy-env] register_nodes: ComfyUI-GaussianPack -[03:32] [ComfyUI] [comfy-env] ComfyUI source dir: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI -[03:32] [ComfyUI] [comfy-env] Workspace: C:\Users\stduser\AppData\Local\Programs\comfy-env -[03:32] [ComfyUI] [comfy-env] isolation env not found at C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes: pixi has not materialized `gaussianpack-nodes`; using in-process import. Run `comfy-env install` (or your node's `install.py`) to create it. -[03:32] [ComfyUI] [comfy-env] Found 0 isolation env(s) -[03:32] [ComfyUI] [comfy-env] Importing nodes (root)... -[03:32] [ComfyUI] [comfy-env] Imported nodes root: 10 nodes -[03:32] [ComfyUI] [comfy-env] isolation env not found at C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes: pixi has not materialized `gaussianpack-nodes`; using in-process import. Run `comfy-env install` (or your node's `install.py`) to create it. -[03:32] [ComfyUI] [comfy-env] No env for nodes -- run 'comfy-env install' -[03:32] [ComfyUI] [comfy-env] Registered 10 total nodes -[03:32] [ComfyUI] [INFO] -[03:32] [ComfyUI] Import times for custom nodes: -[03:32] [ComfyUI] [INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\websocket_image_save.py -[03:32] [ComfyUI] [INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-validate-endpoint -[03:32] [ComfyUI] [INFO] 0.9 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack -[03:32] [ComfyUI] [INFO] -[03:32] [ComfyUI] [INFO] Context impl SQLiteImpl. -[03:32] [ComfyUI] [INFO] Will assume non-transactional DDL. -[03:32] [ComfyUI] [INFO] Context impl SQLiteImpl. -[03:32] [ComfyUI] [INFO] Will assume non-transactional DDL. -[03:32] [ComfyUI] [INFO] Running upgrade -> 0001_assets, Initial assets schema -[03:32] [ComfyUI] Revision ID: 0001_assets -[03:32] [ComfyUI] Revises: None -[03:32] [ComfyUI] Create Date: 2025-12-10 00:00:00 -[03:32] [ComfyUI] [INFO] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table. -[03:32] [ComfyUI] [INFO] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references. -[03:32] [ComfyUI] Change preview_id FK from assets.id to asset_references.id. -[03:32] [ComfyUI] [INFO] Database upgraded from None to 0003_add_metadata_job_id -[03:32] [ComfyUI] [INFO] Using RAM pressure cache. -[03:32] [ComfyUI] [INFO] Starting server -[03:32] [ComfyUI] -[03:32] [ComfyUI] [INFO] To see the GUI go to: http://127.0.0.1:41884 -[03:33] Server responding, waiting for nodes to load... -[03:53] Server is ready! -[03:53] Checking for import errors in server logs... -[03:53] No import errors detected -[03:53] Found 775 registered nodes -[03:53] [REGISTRATION] PASSED -[03:53] -[03:53] [4/5] INSTANTIATION -[03:53] ---------------------------------------- -[03:53] -[DEBUG] server=, api= -[03:53] Testing node constructors... -[03:57] All 10 node(s) instantiated successfully! -[03:57] [INSTANTIATION] PASSED -[03:57] -[03:57] [5/5] EXECUTION -[03:57] ---------------------------------------- -[03:57] -[DEBUG] server=, api= -[03:57] CPU runner - will execute 4 workflow(s) -[03:57] Running 4 workflow(s) (all with videos)... -[03:57] Installing screenshot dependencies (playwright, pillow)... -[03:59] Packages installed, downloading chromium browser... -[04:16] Screenshot dependencies installed successfully -[04:16] Starting headless browser... -[04:16] Downloading Mesa llvmpipe for Windows... -[04:21] Copied opengl32.dll to Chromium dir -[04:21] Copied libgallium_wgl.dll to Chromium dir -[04:21] Using Mesa llvmpipe (desktop GL) -- multithreaded CPU rendering -[04:22] [ComfyUI] [INFO] Using RAM pressure cache. -[04:22] Capturing execution frames: gaussian_analysis.json -[04:22] [ComfyUI] [INFO] Using RAM pressure cache. -[04:31] Frame 1 saved (frame_000.jpg, t=0.0s) -[04:31] Validating workflow... -[04:31] Queuing workflow for execution... -[04:31] [ComfyUI] [INFO] === /validate endpoint called === -[04:31] [ComfyUI] [INFO] Received JSON with keys: ['prompt'] -[04:31] [ComfyUI] [INFO] Prompt has 4 nodes -[04:31] [ComfyUI] [INFO] Node 1: LoadPLY -[04:31] [ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"} -[04:31] [ComfyUI] [INFO] Node 19: GaussianAnalysis -[04:31] [ComfyUI] [INFO] Inputs: {"ply_path": ["1", 0]} -[04:31] [ComfyUI] [INFO] Node 20: LoadPLY -[04:31] [ComfyUI] [INFO] Inputs: {"ply_file": "compressed_room.ply"} -[04:31] [ComfyUI] [INFO] Node 21: GaussianAnalysis -[04:31] [ComfyUI] [INFO] Inputs: {"ply_path": ["20", 0]} -[04:31] [ComfyUI] [INFO] Generated prompt_id: 68d52ede-a37c-4f48-b22a-4bbb68beb4aa -[04:31] [ComfyUI] [INFO] Calling execution.validate_prompt()... -[04:31] [ComfyUI] [INFO] Validation result: valid=True -[04:31] [ComfyUI] [INFO] === Validation PASSED === -[04:31] [ComfyUI] [INFO] got prompt -[04:31] [ComfyUI] [INFO] LoadPLY: compressed_room.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\compressed_room.ply -[04:31] [ComfyUI] [INFO] GaussianAnalysis: -[04:31] [ComfyUI] == Gaussian PLY analysis == -[04:31] [ComfyUI] path: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\compressed_room.ply -[04:31] [ComfyUI] size: 26.70 MB (28,000,362 bytes) -[04:31] [ComfyUI] encoding: binary_little_endian 1.0 -[04:31] [ComfyUI] splat count: 500,000 -[04:31] [ComfyUI] bytes/splat: 56.0 -[04:31] [ComfyUI] flavor: SH-stripped 3DGS (DC only, no view-dependent term) -[04:31] [ComfyUI] SH degree: 0 -[04:31] [ComfyUI] precision: float32 (all) -[04:31] [ComfyUI] has f_dc_*: True -[04:31] [ComfyUI] has RGB uchar: False -[04:31] [ComfyUI] has opacity: True -[04:31] [ComfyUI] has scale_*: True -[04:31] [ComfyUI] has rot_*: True -[04:31] [ComfyUI] total props: 14 -[04:31] [ComfyUI] [INFO] LoadPLY: apple.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -[04:31] [ComfyUI] [INFO] GaussianAnalysis: -[04:31] [ComfyUI] == Gaussian PLY analysis == -[04:31] [ComfyUI] path: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -[04:31] [ComfyUI] size: 47.30 MB (49,601,531 bytes) -[04:31] [ComfyUI] encoding: binary_little_endian 1.0 -[04:31] [ComfyUI] splat count: 200,000 -[04:31] [ComfyUI] bytes/splat: 248.0 -[04:31] [ComfyUI] flavor: raw 3DGS PLY (SH degree 3) -[04:31] [ComfyUI] SH degree: 3 -[04:31] [ComfyUI] precision: float32 (all) -[04:31] [ComfyUI] has f_dc_*: True -[04:31] [ComfyUI] has RGB uchar: False -[04:31] [ComfyUI] has opacity: True -[04:31] [ComfyUI] has scale_*: True -[04:31] [ComfyUI] has rot_*: True -[04:31] [ComfyUI] total props: 62 -[04:31] [ComfyUI] [INFO] Prompt executed in 0.02 seconds -[04:31] Node executed (2 total), capturing... -[04:31] Frame 2 saved (frame_001.jpg, t=0.5s) -[04:31] [capture-node] freeze=6ms shot=103ms unfreeze=0ms saved=True -[04:31] Execution complete (t=0.5s) -[04:31] [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear... -[04:31] [3d-wait] Phase 1 done in 0.0s -[04:31] [3d-wait] Phase 2: iframes=0 -[04:31] [3d-wait] Total 3D wait: 0.0s -[04:31] Captured 2 unique frames over 0.67s -[04:31] [debug] iframes: 0 -[04:31] [timing] trigger_3d_previews: 0.0s -[04:34] Saved high-quality screenshot: gaussian_analysis_executed.png -[04:34] [timing] final_screenshot: 0.3s -[04:34] [ComfyUI] [INFO] Using RAM pressure cache. -[04:34] Capturing execution frames: merge_splats.json -[04:34] [ComfyUI] [INFO] Using RAM pressure cache. -[04:34] [ComfyUI] [INFO] Using RAM pressure cache. -[04:35] [ComfyUI] [ERROR] Exception in callback _ProactorBasePipeTransport._call_connection_lost() -[04:35] [ComfyUI] handle: -[04:35] [ComfyUI] Traceback (most recent call last): -[04:35] [ComfyUI] File "asyncio\events.py", line 89, in _run -[04:35] [ComfyUI] File "asyncio\proactor_events.py", line 165, in _call_connection_lost -[04:35] [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host -[04:41] Frame 1 saved (frame_000.jpg, t=0.0s) -[04:41] Validating workflow... -[04:41] Queuing workflow for execution... -[04:41] [ComfyUI] [INFO] === /validate endpoint called === -[04:41] [ComfyUI] [INFO] Received JSON with keys: ['prompt'] -[04:41] [ComfyUI] [INFO] Prompt has 3 nodes -[04:41] [ComfyUI] [INFO] Node 1: LoadPLY -[04:41] [ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"} -[04:41] [ComfyUI] [INFO] Node 12: GaussianMerge -[04:41] [ComfyUI] [INFO] Inputs: {"target_count": 100000, "output_filename": "applemerged", "opacity_threshold": 0.1, "k": 16, "backend": "nanogs_cpu", "ply_path": ["1", 0]} -[04:41] [ComfyUI] [INFO] Node 14: PreviewGaussianDual -[04:41] [ComfyUI] [INFO] Inputs: {"layout": "slider", "camera_mode": "orbit", "fov_degrees": 70, "renderer": "playcanvas", "transport_format": "ply", "ply_path_1": ["1", 0], "ply_path_2": ["12", 0]} -[04:41] [ComfyUI] [INFO] Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4 -[04:41] [ComfyUI] [INFO] Calling execution.validate_prompt()... -[04:41] [ComfyUI] [INFO] Validation result: valid=True -[04:41] [ComfyUI] [INFO] === Validation PASSED === -[04:41] [ComfyUI] [INFO] got prompt -[04:41] [ComfyUI] [INFO] LoadPLY: apple.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -[04:41] [ComfyUI] [INFO] GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -[04:41] [ComfyUI] Loading PLY: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -[04:41] [ComfyUI] Initial splats: 200000 -[04:41] [ComfyUI] Pruned splats: 200000, target: 100000 -[04:41] [ComfyUI] Opacity Mean: 0.53443545 Median: 0.48362076 -[04:41] [ComfyUI] Pruning splats with opacity below 0.1000 -[04:41] [ComfyUI] Original count: 200000, after opacity pruning: 200000 -[04:41] [ComfyUI] After opacity pruning, 200000 splats remain. -[04:41] [ComfyUI] Pass 1: 200000 splats -[04:43] Frame 2 saved (frame_001.jpg, t=2.2s) -[04:43] [capture-periodic] freeze=5ms shot=94ms unfreeze=5ms saved=True -[04:45] Frame 3 saved (frame_002.jpg, t=4.5s) -[04:45] [capture-periodic] freeze=4ms shot=101ms unfreeze=6ms saved=True -[04:46] [ComfyUI] -[04:46] [ComfyUI] Edge costs: 0%| | 0/19 [00:00 D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\apple.ply -[06:12] [ComfyUI] [INFO] TransformGaussian: 200000 splats, rotation X=-90.0 Y=0.0 Z=0.0 -[06:13] [ComfyUI] [INFO] TransformGaussian: rotated SH AC (sh_degree=3, 15 coeffs/channel x 3 channels) via Wigner-D -[06:13] [ComfyUI] [INFO] TransformGaussian: wrote apple_rot_m90_p0_p0_0e442043.ply (47.3 MB) -[06:13] [ComfyUI] [INFO] Prompt executed in 0.81 seconds -[06:13] Node executed (1 total), capturing... -[06:14] Frame 2 saved (frame_001.jpg, t=1.2s) -[06:14] [capture-node] freeze=48ms shot=343ms unfreeze=0ms saved=True -[06:14] Execution complete (t=1.2s) -[06:14] [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear... -[06:14] [3d-wait] Phase 1 done in 0.0s -[06:14] [3d-wait] Phase 2: iframes=1 -[06:14] [3d-wait] iframe viewer_ready=False (matched 0 console logs) -[06:14] [3d-wait] Waiting for 'Loaded successfully' console message (timeout=60s)... -[07:14] [3d-wait] iframe wait exception: Timeout 60000ms exceeded while waiting for event "console" -=========================== logs =========================== -waiting for event "console" -============================================================ -[07:14] [3d-wait] Total 3D wait: 60.0s -[07:14] Captured 2 unique frames over 61.65s -[07:14] [debug] iframes: 1 -[07:14] [debug] iframe[0]: src=http://127.0.0.1:41884/extensions/ComfyUI-GaussianPack/viewer_gaussian_dual.html, canvas=486x203, rafFrozen=True -[07:14] [timing] trigger_3d_previews: 0.0s -[07:16] Saved high-quality screenshot: rotate_splats_executed.png -[07:16] [timing] final_screenshot: 0.2s -[07:16] [ComfyUI] [INFO] Using RAM pressure cache. -[07:17] Capturing execution frames: spectate.json -[07:17] [ComfyUI] [INFO] Using RAM pressure cache. -[07:17] [ComfyUI] [INFO] Using RAM pressure cache. -[07:22] Frame 1 saved (frame_000.jpg, t=0.0s) -[07:22] Validating workflow... -[07:22] Queuing workflow for execution... -[07:23] [ComfyUI] [INFO] === /validate endpoint called === -[07:23] [ComfyUI] [INFO] Received JSON with keys: ['prompt'] -[07:23] [ComfyUI] [INFO] Prompt has 2 nodes -[07:23] [ComfyUI] [INFO] Node 1: LoadPLY -[07:23] [ComfyUI] [INFO] Inputs: {"ply_file": "compressed_room.ply"} -[07:23] [ComfyUI] [INFO] Node 2: PreviewGaussians -[07:23] [ComfyUI] [INFO] Inputs: {"camera_mode": "spectate", "fov_degrees": 70, "renderer": "playcanvas", "transport_format": "ply", "ply_path": ["1", 0]} -[07:23] [ComfyUI] [INFO] Generated prompt_id: 5a885c67-a806-4dae-a8c2-710d79b29166 -[07:23] [ComfyUI] [INFO] Calling execution.validate_prompt()... -[07:23] [ComfyUI] [INFO] Validation result: valid=True -[07:23] [ComfyUI] [INFO] === Validation PASSED === -[07:23] [ComfyUI] [INFO] got prompt -[07:23] [ComfyUI] [INFO] LoadPLY: compressed_room.ply -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1400\portable-comfyui\ComfyUI_windows_portable\ComfyUI\input\compressed_room.ply -[07:23] [ComfyUI] [INFO] Prompt executed in 0.01 seconds -[07:23] Node executed (1 total), capturing... -[07:23] Frame 2 saved (frame_001.jpg, t=0.5s) -[07:23] [capture-node] freeze=5ms shot=98ms unfreeze=0ms saved=True -[07:23] Execution complete (t=0.5s) -[07:23] [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear... -[07:23] [3d-wait] Phase 1 done in 0.0s -[07:23] [3d-wait] Phase 2: iframes=1 -[07:23] [3d-wait] iframe viewer_ready=False (matched 0 console logs) -[07:23] [3d-wait] Waiting for 'Loaded successfully' console message (timeout=60s)... -[07:24] [3d-wait] Got 'Loaded successfully' after 1.2s -[07:24] [3d-wait] Unfrozen in 0.011s, rendering for 5s... -[07:30] [3d-wait] JS halted via CDP after 6.1s -[07:31] [3d-wait] Re-frozen in 7.2s -[07:31] [3d-wait] Total 3D wait: 8.4s -[07:31] Captured 2 unique frames over 9.0s -[07:31] [debug] iframes: 1 -[07:31] [debug] iframe[0]: src=http://127.0.0.1:41884/extensions/ComfyUI-GaussianPack/viewer_gaussian.html?mode, canvas=781x394, rafFrozen=True -[07:31] [timing] trigger_3d_previews: 0.0s -[07:34] Saved high-quality screenshot: spectate_executed.png -[07:34] [timing] final_screenshot: 0.3s -[07:34] [ComfyUI] [INFO] Using RAM pressure cache. -[07:34] Results saved to D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\GaussianPack-1400\dev\windows-portable-cpu\results.json -[07:34] Model report: 8 files, 18.7 MB -> D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\GaussianPack-1400\dev\windows-portable-cpu\models.json -[07:34] Saved: D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\GaussianPack-1400\dev\windows-portable-cpu\index.html -[07:34] [EXECUTION] PASSED -[07:34] -windows_portable: PASSED -[07:34] Stopping ComfyUI server... +[04:22] Starting ComfyUI server on port 41888... +[04:22] CUDA mock packages: gsplat +[04:22] Starting ComfyUI server on port 41888... +[04:22] Server stdout/stderr -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\server.log +[04:22] Waiting for server to be ready (timeout: 600s)... +[04:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.schemas +[04:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.tables +[04:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.types +[04:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.constraints +[04:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.defaults +[04:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.comments +[04:23] [ComfyUI] [INFO] +[04:23] [ComfyUI] Prestartup times for custom nodes: +[04:23] [ComfyUI] [INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack +[04:23] [ComfyUI] [INFO] +[04:26] [ComfyUI] D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\cuda\__init__.py:187: UserWarning: cudaGetDeviceCount() returned cudaErrorNotSupported, likely using older driver or on CPU machine (Triggered internally at C:\actions-runner\_work\pytorch\pytorch\c10\cuda\CUDAFunctions.cpp:88.) +[04:26] [ComfyUI] return torch._C._cuda_getDeviceCount() > 0 +[04:26] [ComfyUI] [INFO] Found comfy_kitchen backend cuda: {'available': False, 'disabled': False, 'unavailable_reason': 'CUDA not available on this system', 'capabilities': []} +[04:26] [ComfyUI] [INFO] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []} +[04:26] [ComfyUI] [INFO] Found comfy_kitchen backend eager: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'apply_rope_split_half', 'apply_rope_split_half1', 'dequantize_mxfp8', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'gemv_awq_w4a16', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'quantize_svdquant_w4a4', 'scaled_mm_mxfp8', 'scaled_mm_nvfp4', 'scaled_mm_svdquant_w4a4', 'stochastic_rounding_fp8']} +[04:26] [ComfyUI] [INFO] Checkpoint files will always be loaded safely. +[04:26] [ComfyUI] [INFO] Total VRAM 16379 MB, total RAM 16379 MB +[04:26] [ComfyUI] [INFO] pytorch version: 2.12.0+cu130 +[04:26] [ComfyUI] [INFO] Set vram state to: DISABLED +[04:26] [ComfyUI] [INFO] Device: cpu +[04:26] [ComfyUI] [INFO] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention +[04:31] [ComfyUI] [INFO] Python version: 3.13.12 (tags/v3.13.12:1cbe481, Feb 3 2026, 18:22:25) [MSC v.1944 64 bit (AMD64)] +[04:31] [ComfyUI] [INFO] ComfyUI version: 0.24.0 +[04:31] [ComfyUI] [INFO] comfy-aimdo version: 0.4.8 +[04:31] [ComfyUI] [INFO] comfy-kitchen version: 0.2.10 +[04:31] [ComfyUI] [WARNING] ****** User settings have been changed to be stored on the server instead of browser storage. ****** +[04:31] [ComfyUI] [WARNING] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ****** +[04:31] [ComfyUI] [INFO] comfyui-frontend-package version: 1.44.19 +[04:31] [ComfyUI] [INFO] comfyui-workflow-templates version: 0.9.94 +[04:31] [ComfyUI] [INFO] comfyui-embedded-docs version: 0.5.2 +[04:31] [ComfyUI] [INFO] comfy-kitchen version: 0.2.10 +[04:31] [ComfyUI] [INFO] comfy-aimdo version: 0.4.8 +[04:31] [ComfyUI] [INFO] [Prompt Server] web root: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\comfyui_frontend_package\static +[04:31] [ComfyUI] [INFO] Asset seeder disabled +[04:34] [ComfyUI] [comfy-env] Version: 0.3.89 +[04:34] [ComfyUI] [comfy-env] register_nodes: ComfyUI-GaussianPack +[04:34] [ComfyUI] [comfy-env] ComfyUI source dir: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI +[04:34] [ComfyUI] [comfy-env] Workspace: C:\Users\stduser\AppData\Local\Programs\comfy-env +[04:34] [ComfyUI] [comfy-env] Found 1 isolation env(s) +[04:34] [ComfyUI] [comfy-env] Scanning nodes metadata (isolation root)... +[04:34] [ComfyUI] [comfy-env] gaussianpack-nodes: Library/bin has 158 DLLs +[04:34] [ComfyUI] [comfy-env] Metadata scan: C:\Users\stduser\.pixi\bin\pixi.exe run --as-is --manifest-path C:\Users\stduser\AppData\Local\Programs\comfy-env\pixi.toml -e gaussianpack-nodes python C:\Users\stduser\AppData\Local\Temp\comfy_meta_7sp57xri.py D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack nodes C:\Users\stduser\AppData\Local\Temp\comfy_meta_out_hufnmz24.pkl +[04:34] [ComfyUI] [comfy-env] Scan env PATH for nodes: +[04:34] [ComfyUI] [comfy-env] [0] C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes +[04:34] [ComfyUI] [comfy-env] [1] C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes\Library\bin +[04:34] [ComfyUI] [comfy-env] [2] C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes\Scripts +[04:34] [ComfyUI] [comfy-env] [3] C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes\Lib\site-packages\bpy +[04:34] [ComfyUI] [comfy-env] [4] C:\Windows\System32 +[04:34] [ComfyUI] [comfy-env] [5] C:\Windows +[04:34] [ComfyUI] [comfy-env] [6] C:\Windows\System32\Wbem +[04:39] [ComfyUI] [comfy-env] Metadata scan stderr for nodes: +[04:39] [ComfyUI] [comfy-env] [meta-scan] importing nodes from D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack +[04:39] [ComfyUI] [comfy-env] Traceback (most recent call last): +[04:39] [ComfyUI] [comfy-env] File "C:\Users\stduser\AppData\Local\Temp\comfy_meta_7sp57xri.py", line 65, in +[04:39] [ComfyUI] [comfy-env] module = importlib.import_module(package_name) +[04:39] [ComfyUI] [comfy-env] File "C:\Users\stduser\AppData\Local\Programs\comfy-env\.pixi\envs\gaussianpack-nodes\Lib\importlib\__init__.py", line 88, in import_module +[04:39] [ComfyUI] [comfy-env] return _bootstrap._gcd_import(name[level:], package, level) +[04:39] [ComfyUI] [comfy-env] ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +[04:39] [ComfyUI] [comfy-env] File "", line 1395, in _gcd_import +[04:39] [ComfyUI] [comfy-env] File "", line 1360, in _find_and_load +[04:39] [ComfyUI] [comfy-env] File "", line 1331, in _find_and_load_unlocked +[04:39] [ComfyUI] [comfy-env] File "", line 935, in _load_unlocked +[04:39] [ComfyUI] [comfy-env] File "", line 1023, in exec_module +[04:39] [ComfyUI] [comfy-env] File "", line 488, in _call_with_frames_removed +[04:39] [ComfyUI] [comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\nodes\__init__.py", line 11, in +[04:39] [ComfyUI] [comfy-env] from .preview_gaussian_sharp import PreviewGaussianSharp +[04:39] [ComfyUI] [comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\nodes\preview_gaussian_sharp.py", line 21, in +[04:39] [ComfyUI] [comfy-env] from comfy_api.latest import io +[04:39] [ComfyUI] [comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\__init__.py", line 6, in +[04:39] [ComfyUI] [comfy-env] from ._input import ImageInput, AudioInput, MaskInput, LatentInput, VideoInput +[04:39] [ComfyUI] [comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\_input\__init__.py", line 4, in +[04:39] [ComfyUI] [comfy-env] from .video_types import VideoInput +[04:39] [ComfyUI] [comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\_input\video_types.py", line 6, in +[04:39] [ComfyUI] [comfy-env] import av +[04:39] [ComfyUI] [comfy-env] ModuleNotFoundError: No module named 'av' +[04:39] [ComfyUI] [comfy-env] Metadata scan failed for nodes (exit 1, 5.2s): +[04:39] [ComfyUI] [comfy-env] from .preview_gaussian_sharp import PreviewGaussianSharp +[04:39] [ComfyUI] [comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack\nodes\preview_gaussian_sharp.py", line 21, in +[04:39] [ComfyUI] [comfy-env] from comfy_api.latest import io +[04:39] [ComfyUI] [comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\__init__.py", line 6, in +[04:39] [ComfyUI] [comfy-env] from ._input import ImageInput, AudioInput, MaskInput, LatentInput, VideoInput +[04:39] [ComfyUI] [comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\_input\__init__.py", line 4, in +[04:39] [ComfyUI] [comfy-env] from .video_types import VideoInput +[04:39] [ComfyUI] [comfy-env] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\comfy_api\latest\_input\video_types.py", line 6, in +[04:39] [ComfyUI] [comfy-env] import av +[04:39] [ComfyUI] [comfy-env] ModuleNotFoundError: No module named 'av' +[04:39] [ComfyUI] [comfy-env] Scanned nodes root: 0 nodes (5.2s) +[04:39] [ComfyUI] [comfy-env] Imported nodes root: 0 nodes (isolation) +[04:39] [ComfyUI] [comfy-env] Registered 0 total nodes +[04:39] [ComfyUI] [INFO] +[04:39] [ComfyUI] Import times for custom nodes: +[04:39] [ComfyUI] [INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\websocket_image_save.py +[04:39] [ComfyUI] [INFO] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-validate-endpoint +[04:39] [ComfyUI] [INFO] 5.8 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\GaussianPack-1720\portable-comfyui\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-GaussianPack +[04:39] [ComfyUI] [INFO] +[04:39] [ComfyUI] [INFO] Context impl SQLiteImpl. +[04:39] [ComfyUI] [INFO] Will assume non-transactional DDL. +[04:39] [ComfyUI] [INFO] Context impl SQLiteImpl. +[04:39] [ComfyUI] [INFO] Will assume non-transactional DDL. +[04:39] [ComfyUI] [INFO] Running upgrade -> 0001_assets, Initial assets schema +[04:39] [ComfyUI] Revision ID: 0001_assets +[04:39] [ComfyUI] Revises: None +[04:39] [ComfyUI] Create Date: 2025-12-10 00:00:00 +[04:40] [ComfyUI] [INFO] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table. +[04:40] [ComfyUI] [INFO] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references. +[04:40] [ComfyUI] Change preview_id FK from assets.id to asset_references.id. +[04:40] [ComfyUI] [INFO] Database upgraded from None to 0003_add_metadata_job_id +[04:40] [ComfyUI] [INFO] Using RAM pressure cache. +[04:40] [ComfyUI] [INFO] Starting server +[04:40] [ComfyUI] +[04:40] [ComfyUI] [INFO] To see the GUI go to: http://127.0.0.1:41888 +[04:40] Server responding, waiting for nodes to load... +[05:00] Server is ready! +[05:00] Checking for import errors in server logs... +[05:00] No import errors detected +[05:01] Found 765 registered nodes +[05:01] [REGISTRATION] PASSED +[05:01] +[05:01] [4/5] INSTANTIATION +[05:01] ---------------------------------------- +[05:01] +[DEBUG] server=, api= +[05:01] Testing node constructors... +[05:05] All 0 node(s) instantiated successfully! +[05:05] [INSTANTIATION] PASSED +[05:05] +[05:05] [5/5] EXECUTION +[05:05] ---------------------------------------- +[05:05] +[DEBUG] server=, api= +[05:05] CPU runner - will execute 4 workflow(s) +[05:05] Running 4 workflow(s) (all with videos)... +[05:05] Installing screenshot dependencies (playwright, pillow)... +[05:08] Packages installed, downloading chromium browser... +[05:23] Screenshot dependencies installed successfully +[05:24] Starting headless browser... +[05:24] Downloading Mesa llvmpipe for Windows... +[05:29] Copied opengl32.dll to Chromium dir +[05:29] Copied libgallium_wgl.dll to Chromium dir +[05:29] Using Mesa llvmpipe (desktop GL) -- multithreaded CPU rendering +[05:33] Capturing execution frames: gaussian_analysis.json +[05:33] [ComfyUI] [INFO] Using RAM pressure cache. +[05:34] [ComfyUI] [INFO] Using RAM pressure cache. +[05:43] Frame 1 saved (frame_000.jpg, t=0.0s) +[05:43] Validating workflow... +[05:43] Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 4 nodes, missing class_type: [1,19,20,21], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} +[05:43] [ComfyUI] [INFO] Using RAM pressure cache. +[05:43] Capturing execution frames: merge_splats.json +[05:43] [ComfyUI] [INFO] Using RAM pressure cache. +[05:43] [ComfyUI] [INFO] Using RAM pressure cache. +[05:49] Frame 1 saved (frame_000.jpg, t=0.0s) +[05:49] Validating workflow... +[05:49] Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,12,14], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} +[05:49] [ComfyUI] [INFO] Using RAM pressure cache. +[05:49] Capturing execution frames: rotate_splats.json +[05:49] [ComfyUI] [INFO] Using RAM pressure cache. +[05:49] [ComfyUI] [INFO] Using RAM pressure cache. +[05:49] [ComfyUI] [ERROR] Exception in callback _ProactorBasePipeTransport._call_connection_lost() +[05:49] [ComfyUI] handle: +[05:49] [ComfyUI] Traceback (most recent call last): +[05:49] [ComfyUI] File "asyncio\events.py", line 89, in _run +[05:49] [ComfyUI] File "asyncio\proactor_events.py", line 165, in _call_connection_lost +[05:49] [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host +[05:55] Frame 1 saved (frame_000.jpg, t=0.0s) +[05:55] Validating workflow... +[05:55] Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,14,18], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} +[05:55] [ComfyUI] [INFO] Using RAM pressure cache. +[05:55] Capturing execution frames: spectate.json +[05:55] [ComfyUI] [INFO] Using RAM pressure cache. +[05:55] [ComfyUI] [INFO] Using RAM pressure cache. +[05:55] [ComfyUI] [ERROR] Exception in callback _ProactorBasePipeTransport._call_connection_lost() +[05:56] [ComfyUI] handle: +[05:56] [ComfyUI] Traceback (most recent call last): +[05:56] [ComfyUI] File "asyncio\events.py", line 89, in _run +[05:56] [ComfyUI] File "asyncio\proactor_events.py", line 165, in _call_connection_lost +[05:56] [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host +[06:01] Frame 1 saved (frame_000.jpg, t=0.0s) +[06:01] Validating workflow... +[06:01] Validation failed: graphToPrompt produced nodes without class_type: graphToPrompt: 2 nodes, missing class_type: [1,2], sample: {"inputs":{"UNKNOWN":"compressed_room.ply"},"_meta":{}} +[06:01] [ComfyUI] [INFO] Using RAM pressure cache. +[06:01] Results saved to D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\GaussianPack-1720\dev\windows-portable-cpu\results.json +[06:01] Model report: 8 files, 18.7 MB -> D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\GaussianPack-1720\dev\windows-portable-cpu\models.json +[06:01] Saved: D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\GaussianPack-1720\dev\windows-portable-cpu\index.html +[06:01] +windows_portable: FAILED +[06:01] Error: Workflow execution failed (4 error(s)) +[06:01] Details: gaussian_analysis.json: Workflow validation failed + +Details: +graphToPrompt produced nodes without class_type: graphToPrompt: 4 nodes, missing class_type: [1,19,20,21], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} +merge_splats.json: Workflow validation failed + +Details: +graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,12,14], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} +rotate_splats.json: Workflow validation failed + +Details: +graphToPrompt produced nodes without class_type: graphToPrompt: 3 nodes, missing class_type: [1,14,18], sample: {"inputs":{"UNKNOWN":"apple.ply"},"_meta":{}} +spectate.json: Workflow validation failed + +Details: +graphToPrompt produced nodes without class_type: graphToPrompt: 2 nodes, missing class_type: [1,2], sample: {"inputs":{"UNKNOWN":"compressed_room.ply"},"_meta":{}} +[06:01] Stopping ComfyUI server... diff --git a/dev/windows-portable-cpu/videos/gaussian_analysis/frame_000.jpg b/dev/windows-portable-cpu/videos/gaussian_analysis/frame_000.jpg index 2fd4cae..dc9d9ff 100644 Binary files a/dev/windows-portable-cpu/videos/gaussian_analysis/frame_000.jpg and b/dev/windows-portable-cpu/videos/gaussian_analysis/frame_000.jpg differ diff --git a/dev/windows-portable-cpu/videos/gaussian_analysis/frame_001.jpg b/dev/windows-portable-cpu/videos/gaussian_analysis/frame_001.jpg deleted file mode 100644 index 4fa9745..0000000 Binary files a/dev/windows-portable-cpu/videos/gaussian_analysis/frame_001.jpg and /dev/null differ diff --git a/dev/windows-portable-cpu/videos/gaussian_analysis/frame_002.jpg b/dev/windows-portable-cpu/videos/gaussian_analysis/frame_002.jpg deleted file mode 100644 index 5b9763e..0000000 Binary files a/dev/windows-portable-cpu/videos/gaussian_analysis/frame_002.jpg and /dev/null differ diff --git a/dev/windows-portable-cpu/videos/gaussian_analysis/metadata.json b/dev/windows-portable-cpu/videos/gaussian_analysis/metadata.json deleted file mode 100644 index 2a26172..0000000 --- a/dev/windows-portable-cpu/videos/gaussian_analysis/metadata.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "frames": [ - { - "file": "frame_000.jpg", - "time": 0.0, - "log": " [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\nCapturing execution frames: gaussian_analysis.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache." - }, - { - "file": "frame_001.jpg", - "time": 0.5, - "log": " [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\nCapturing execution frames: gaussian_analysis.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 4 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 19: GaussianAnalysis\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 20: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"compressed_room.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 21: GaussianAnalysis\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_path\": [\"20\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: 68d52ede-a37c-4f48-b22a-4bbb68beb4aa\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: compressed_room.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\compressed_room.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianAnalysis:\n [ComfyUI] == Gaussian PLY analysis ==\n [ComfyUI] path: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\compressed_room.ply\n [ComfyUI] size: 26.70 MB (28,000,362 bytes)\n [ComfyUI] encoding: binary_little_endian 1.0\n [ComfyUI] splat count: 500,000\n [ComfyUI] bytes/splat: 56.0\n [ComfyUI] flavor: SH-stripped 3DGS (DC only, no view-dependent term)\n [ComfyUI] SH degree: 0\n [ComfyUI] precision: float32 (all)\n [ComfyUI] has f_dc_*: True\n [ComfyUI] has RGB uchar: False\n [ComfyUI] has opacity: True\n [ComfyUI] has scale_*: True\n [ComfyUI] has rot_*: True\n [ComfyUI] total props: 14\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianAnalysis:\n [ComfyUI] == Gaussian PLY analysis ==\n [ComfyUI] path: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] size: 47.30 MB (49,601,531 bytes)\n [ComfyUI] encoding: binary_little_endian 1.0\n [ComfyUI] splat count: 200,000\n [ComfyUI] bytes/splat: 248.0\n [ComfyUI] flavor: raw 3DGS PLY (SH degree 3)\n [ComfyUI] SH degree: 3\n [ComfyUI] precision: float32 (all)\n [ComfyUI] has f_dc_*: True\n [ComfyUI] has RGB uchar: False\n [ComfyUI] has opacity: True\n [ComfyUI] has scale_*: True\n [ComfyUI] has rot_*: True\n [ComfyUI] total props: 62\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.02 seconds\u001b[0m" - }, - { - "file": "frame_002.jpg", - "time": 2.994668483734131, - "log": "Final screenshot" - } - ], - "total_time": 0.67 -} \ No newline at end of file diff --git a/dev/windows-portable-cpu/videos/merge_splats/frame_000.jpg b/dev/windows-portable-cpu/videos/merge_splats/frame_000.jpg index 5b2a814..d6a3dee 100644 Binary files a/dev/windows-portable-cpu/videos/merge_splats/frame_000.jpg and b/dev/windows-portable-cpu/videos/merge_splats/frame_000.jpg differ diff --git a/dev/windows-portable-cpu/videos/merge_splats/frame_001.jpg b/dev/windows-portable-cpu/videos/merge_splats/frame_001.jpg deleted file mode 100644 index 92ac0b4..0000000 Binary files a/dev/windows-portable-cpu/videos/merge_splats/frame_001.jpg and /dev/null differ diff --git a/dev/windows-portable-cpu/videos/merge_splats/frame_002.jpg b/dev/windows-portable-cpu/videos/merge_splats/frame_002.jpg deleted file mode 100644 index 4c2bc32..0000000 Binary files a/dev/windows-portable-cpu/videos/merge_splats/frame_002.jpg and /dev/null differ diff --git a/dev/windows-portable-cpu/videos/merge_splats/frame_003.jpg b/dev/windows-portable-cpu/videos/merge_splats/frame_003.jpg deleted file mode 100644 index 29d6094..0000000 Binary files a/dev/windows-portable-cpu/videos/merge_splats/frame_003.jpg and /dev/null differ diff --git a/dev/windows-portable-cpu/videos/merge_splats/frame_004.jpg b/dev/windows-portable-cpu/videos/merge_splats/frame_004.jpg deleted file mode 100644 index 71485c5..0000000 Binary files a/dev/windows-portable-cpu/videos/merge_splats/frame_004.jpg and /dev/null differ diff --git a/dev/windows-portable-cpu/videos/merge_splats/metadata.json b/dev/windows-portable-cpu/videos/merge_splats/metadata.json deleted file mode 100644 index 8d09fc1..0000000 --- a/dev/windows-portable-cpu/videos/merge_splats/metadata.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "frames": [ - { - "file": "frame_000.jpg", - "time": 0.0, - "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host" - }, - { - "file": "frame_001.jpg", - "time": 2.23, - "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 3 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 12: GaussianMerge\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"target_count\": 100000, \"output_filename\": \"applemerged\", \"opacity_threshold\": 0.1, \"k\": 16, \"backend\": \"nanogs_cpu\", \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 14: PreviewGaussianDual\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"layout\": \"slider\", \"camera_mode\": \"orbit\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path_1\": [\"1\", 0], \"ply_path_2\": [\"12\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Loading PLY: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Initial splats: 200000\n [ComfyUI] Pruned splats: 200000, target: 100000\n [ComfyUI] Opacity Mean: 0.53443545 Median: 0.48362076\n [ComfyUI] Pruning splats with opacity below 0.1000\n [ComfyUI] Original count: 200000, after opacity pruning: 200000\n [ComfyUI] After opacity pruning, 200000 splats remain.\n [ComfyUI] Pass 1: 200000 splats" - }, - { - "file": "frame_002.jpg", - "time": 4.45, - "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 3 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 12: GaussianMerge\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"target_count\": 100000, \"output_filename\": \"applemerged\", \"opacity_threshold\": 0.1, \"k\": 16, \"backend\": \"nanogs_cpu\", \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 14: PreviewGaussianDual\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"layout\": \"slider\", \"camera_mode\": \"orbit\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path_1\": [\"1\", 0], \"ply_path_2\": [\"12\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Loading PLY: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Initial splats: 200000\n [ComfyUI] Pruned splats: 200000, target: 100000\n [ComfyUI] Opacity Mean: 0.53443545 Median: 0.48362076\n [ComfyUI] Pruning splats with opacity below 0.1000\n [ComfyUI] Original count: 200000, after opacity pruning: 200000\n [ComfyUI] After opacity pruning, 200000 splats remain.\n [ComfyUI] Pass 1: 200000 splats\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=5ms shot=94ms unfreeze=5ms saved=True" - }, - { - "file": "frame_003.jpg", - "time": 19.41, - "log": "Capturing execution frames: merge_splats.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[1m\u001b[31m[ERROR]\u001b[0m Exception in callback _ProactorBasePipeTransport._call_connection_lost()\n [ComfyUI] handle: \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"asyncio\\events.py\", line 89, in _run\n [ComfyUI] File \"asyncio\\proactor_events.py\", line 165, in _call_connection_lost\n [ComfyUI] ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 3 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"apple.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 12: GaussianMerge\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"target_count\": 100000, \"output_filename\": \"applemerged\", \"opacity_threshold\": 0.1, \"k\": 16, \"backend\": \"nanogs_cpu\", \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 14: PreviewGaussianDual\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"layout\": \"slider\", \"camera_mode\": \"orbit\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path_1\": [\"1\", 0], \"ply_path_2\": [\"12\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: da948adf-79a8-4b1c-a4e6-e49d0db097e4\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: apple.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m GaussianMerge: 200000 -> 100000 splats (ratio=0.5000, backend=nanogs_cpu) on D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Loading PLY: D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] Initial splats: 200000\n [ComfyUI] Pruned splats: 200000, target: 100000\n [ComfyUI] Opacity Mean: 0.53443545 Median: 0.48362076\n [ComfyUI] Pruning splats with opacity below 0.1000\n [ComfyUI] Original count: 200000, after opacity pruning: 200000\n [ComfyUI] After opacity pruning, 200000 splats remain.\n [ComfyUI] Pass 1: 200000 splats\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=5ms shot=94ms unfreeze=5ms saved=True\n Frame 3 saved (frame_002.jpg, t=4.5s)\n [capture-periodic] freeze=4ms shot=101ms unfreeze=6ms saved=True\n [ComfyUI] \n [ComfyUI] Edge costs: 0%| | 0/19 [00:00 D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\apple.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m TransformGaussian: 200000 splats, rotation X=-90.0 Y=0.0 Z=0.0\n [ComfyUI] \u001b[32m[INFO]\u001b[0m TransformGaussian: rotated SH AC (sh_degree=3, 15 coeffs/channel x 3 channels) via Wigner-D\n [ComfyUI] \u001b[32m[INFO]\u001b[0m TransformGaussian: wrote apple_rot_m90_p0_p0_0e442043.ply (47.3 MB)\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.81 seconds\u001b[0m" - }, - { - "file": "frame_002.jpg", - "time": 63.83711504936218, - "log": "Final screenshot" - } - ], - "total_time": 61.65 -} \ No newline at end of file diff --git a/dev/windows-portable-cpu/videos/spectate/frame_000.jpg b/dev/windows-portable-cpu/videos/spectate/frame_000.jpg index bcd99a3..17289e6 100644 Binary files a/dev/windows-portable-cpu/videos/spectate/frame_000.jpg and b/dev/windows-portable-cpu/videos/spectate/frame_000.jpg differ diff --git a/dev/windows-portable-cpu/videos/spectate/frame_001.jpg b/dev/windows-portable-cpu/videos/spectate/frame_001.jpg deleted file mode 100644 index 50d23f1..0000000 Binary files a/dev/windows-portable-cpu/videos/spectate/frame_001.jpg and /dev/null differ diff --git a/dev/windows-portable-cpu/videos/spectate/frame_002.jpg b/dev/windows-portable-cpu/videos/spectate/frame_002.jpg deleted file mode 100644 index 1bbdaea..0000000 Binary files a/dev/windows-portable-cpu/videos/spectate/frame_002.jpg and /dev/null differ diff --git a/dev/windows-portable-cpu/videos/spectate/metadata.json b/dev/windows-portable-cpu/videos/spectate/metadata.json deleted file mode 100644 index a72df16..0000000 --- a/dev/windows-portable-cpu/videos/spectate/metadata.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "frames": [ - { - "file": "frame_000.jpg", - "time": 0.0, - "log": "Capturing execution frames: spectate.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache." - }, - { - "file": "frame_001.jpg", - "time": 0.47, - "log": "Capturing execution frames: spectate.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === /validate endpoint called ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Received JSON with keys: ['prompt']\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Prompt has 2 nodes\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 1: LoadPLY\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"ply_file\": \"compressed_room.ply\"}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Node 2: PreviewGaussians\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Inputs: {\"camera_mode\": \"spectate\", \"fov_degrees\": 70, \"renderer\": \"playcanvas\", \"transport_format\": \"ply\", \"ply_path\": [\"1\", 0]}\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Generated prompt_id: 5a885c67-a806-4dae-a8c2-710d79b29166\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Calling execution.validate_prompt()...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Validation result: valid=True\n [ComfyUI] \u001b[32m[INFO]\u001b[0m === Validation PASSED ===\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] \u001b[32m[INFO]\u001b[0m LoadPLY: compressed_room.ply -> D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\GaussianPack-1400\\portable-comfyui\\ComfyUI_windows_portable\\ComfyUI\\input\\compressed_room.ply\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.01 seconds\u001b[0m" - }, - { - "file": "frame_002.jpg", - "time": 11.37205195426941, - "log": "Final screenshot" - } - ], - "total_time": 9.0 -} \ No newline at end of file