Update dev/macos-cpu

This commit is contained in:
comfy-test
2026-06-07 12:51:46 +00:00
parent b18b67ed55
commit f2d1bdd908
38 changed files with 1376 additions and 431 deletions
File diff suppressed because one or more lines are too long
+91
View File
@@ -0,0 +1,91 @@
[ComfyUI] [INFO] Using RAM pressure cache.
Capturing execution frames: gaussian_analysis.json
[ComfyUI] [INFO] Using RAM pressure cache.
Frame 1 saved (frame_000.jpg, t=0.0s)
Validating workflow...
[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: 7cb8307a-51e6-4f0b-bd81-03b5b475d3c9
Queuing workflow for execution...
[ComfyUI] [INFO] Calling execution.validate_prompt()...
[ComfyUI] [INFO] Validation result: valid=True
[ComfyUI] [INFO] === Validation PASSED ===
[ComfyUI] [INFO] got prompt
[ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'compressed_room.ply'
[ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI'}
[ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] python: /Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[ComfyUI] [ComfyUI-GaussianPack] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack', '/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/lib/python3.13/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack']
[ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/.ce/pixi.toml', '-e', 'gaussianpack-nodes', 'python', '/var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfyui_pvenv_ck272ns8/persistent_worker.py', 'unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_8caae8a81655.sock']...
[ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_8caae8a81655.sock exists=True
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=1 sending call_method
[ComfyUI] [worker:ComfyUI-GaussianPack] WARNING: SPZ route not registered (ModuleNotFoundError: No module named 'comfy_aimdo')
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] LoadPLY done (0.88s): result: list[1]
[ComfyUI] [comfy-env] Running GaussianAnalysis: ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[ComfyUI] [SubprocessWorker] call_method: nodes.analyze_gaussians.GaussianAnalysis.analyze
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=2 sending call_method
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] GaussianAnalysis done (0.00s): result: dict
[ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'apple.ply'
[ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=3 sending call_method
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] LoadPLY done (0.00s): result: list[1]
[ComfyUI] [comfy-env] Running GaussianAnalysis: ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[ComfyUI] [SubprocessWorker] call_method: nodes.analyze_gaussians.GaussianAnalysis.analyze
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=4 sending call_method
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] GaussianAnalysis done (0.00s): result: dict
[ComfyUI] [INFO] Prompt executed in 0.89 seconds
Node executed (2 total), capturing...
Frame 2 saved (frame_001.jpg, t=1.2s)
[capture-node] freeze=2ms shot=67ms unfreeze=0ms saved=True
Execution complete (t=1.3s)
[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 1.35s
[debug] iframes: 0
[timing] trigger_3d_previews: 0.0s
Saved high-quality screenshot: gaussian_analysis_executed.png
[timing] final_screenshot: 0.1s
Captured 3 video frames
@@ -0,0 +1,22 @@
[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-warning] [ComfyUI] The legacy queue/history menu is deprecated. Core functionality in this menu may break at any time. Issues and feature requests related to the legacy menu will not be addressed. To switch to the new menu: Settings → search "Use new menu" → change from "Disabled" to "Top".
[Console-warning] [ComfyUI] The legacy queue/history menu is deprecated. Core functionality in this menu may break at any time. Issues and feature requests related to the legacy menu will not be addressed. To switch to the new menu: Settings → search "Use new menu" → change from "Disabled" to "Top".
[Console-error] Failed to load resource: the server responded with a status of 404 (Not Found)
[Console-error] ComfyApp graph accessed before initialization
[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-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 "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-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 "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-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"}}
@@ -0,0 +1,12 @@
# total_ram_gb=7.0
t,ram_gb,vram_gb
0.0,0.57,
1.0,0.57,
2.0,0.57,
3.1,0.56,
4.1,0.55,
5.1,0.55,
6.1,0.6,
7.2,0.72,
8.3,0.72,
9.4,0.72,
1 # total_ram_gb=7.0
2 t,ram_gb,vram_gb
3 0.0,0.57,
4 1.0,0.57,
5 2.0,0.57,
6 3.1,0.56,
7 4.1,0.55,
8 5.1,0.55,
9 6.1,0.6,
10 7.2,0.72,
11 8.3,0.72,
12 9.4,0.72,
+112 -91
View File
@@ -5,108 +5,129 @@ Capturing execution frames: merge_splats.json
Validating workflow...
[ComfyUI] [INFO] === /validate endpoint called ===
[ComfyUI] [INFO] Received JSON with keys: ['prompt']
[ComfyUI] [INFO] Prompt has 4 nodes
[ComfyUI] [INFO] Prompt has 3 nodes
[ComfyUI] [INFO] Node 1: LoadPLY
[ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"}
[ComfyUI] [INFO] Node 2: PreviewGaussians
[ComfyUI] [INFO] Inputs: {"fov_degrees": 50, "image_width": 512, "image_height": 512, "renderer": "spark", "transport_format": "ply", "ply_path": ["1", 0]}
[ComfyUI] [INFO] Node 3: GaussianMerge
[ComfyUI] [INFO] Inputs: {"target_count": 100000, "output_filename": "merged", "opacity_threshold": 0, "k": 24, "ply_path": ["1", 0]}
[ComfyUI] [INFO] Node 4: PreviewGaussians
[ComfyUI] [INFO] Inputs: {"fov_degrees": 50, "image_width": 512, "image_height": 512, "renderer": "spark", "transport_format": "ply", "ply_path": ["3", 0]}
[ComfyUI] [INFO] Generated prompt_id: 8b0c3ccf-1fe3-4905-8819-318606318c78
[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: ab2ecc4f-5bbb-4b56-a217-2b6af814dd59
[ComfyUI] [INFO] Calling execution.validate_prompt()...
Queuing workflow for execution...
[ComfyUI] [INFO] Validation result: valid=True
Queuing workflow for execution...
[ComfyUI] [INFO] === Validation PASSED ===
[ComfyUI] [INFO] got prompt
[ComfyUI] [INFO] LoadPLY: apple.ply -> /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/input/apple.ply
[ComfyUI] [INFO] GaussianMerge: 200000 -> 100000 splats (ratio=0.5000) via NanoGS MPMM on /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/input/apple.ply
Node executed (1 total), capturing...
Frame 2 saved (frame_001.jpg, t=0.5s)
[capture-node] freeze=6ms shot=894ms unfreeze=3ms saved=True
Frame 3 saved (frame_002.jpg, t=3.4s)
[capture-periodic] freeze=1ms shot=94ms unfreeze=1ms saved=True
[ComfyUI] Loading PLY: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/input/apple.ply
[ComfyUI] Initial splats: 200000
[ComfyUI] Pruned splats: 200000, target: 100000
[ComfyUI] Opacity Mean: 0.53443545 Median: 0.4836207
[ComfyUI] Pruning splats with opacity below 0.0000
[ComfyUI] Original count: 200000, after opacity pruning: 200000
[ComfyUI] After opacity pruning, 200000 splats remain.
[ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'apple.ply'
[ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=5 sending call_method
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] LoadPLY done (0.00s): result: list[1]
[ComfyUI] [comfy-env] Running GaussianMerge: target_count: 100000, output_filename: 'applemerged', opacity_threshold: 0.1, k: 16, backend: 'nanogs_cpu', ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[ComfyUI] [SubprocessWorker] call_method: nodes.merge_gaussians.GaussianMerge.merge
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=6 sending call_method
[ComfyUI] [worker:ComfyUI-GaussianPack] Loading PLY: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/input/apple.ply
[ComfyUI] [worker:ComfyUI-GaussianPack] Initial splats: 200000
[ComfyUI] [worker:ComfyUI-GaussianPack] Pruned splats: 200000, target: 100000
[ComfyUI] [worker:ComfyUI-GaussianPack] Opacity Mean: 0.53443545 Median: 0.4836207
[ComfyUI] [worker:ComfyUI-GaussianPack] Pruning splats with opacity below 0.1000
[ComfyUI] [worker:ComfyUI-GaussianPack] Original count: 200000, after opacity pruning: 200000
[ComfyUI] [worker:ComfyUI-GaussianPack] After opacity pruning, 200000 splats remain.
[ComfyUI] [worker:ComfyUI-GaussianPack] Pass 1: 200000 splats
Frame 2 saved (frame_001.jpg, t=2.1s)
[capture-periodic] freeze=1ms shot=65ms unfreeze=2ms saved=True
[ComfyUI]
[ComfyUI] Pass 1: 200000 splats
[ComfyUI] Edge costs: 0%| | 0/27 [00:00<?, ?it/s]
[ComfyUI] Edge costs: 4%|▎ | 1/27 [00:00<00:03, 7.51it/s]
[ComfyUI] Edge costs: 7%|▋ | 2/27 [00:00<00:04, 6.01it/s]
Frame 4 saved (frame_003.jpg, t=5.6s)
[capture-periodic] freeze=3ms shot=106ms unfreeze=2ms saved=True
[ComfyUI] Edge costs: 11%|█ | 3/27 [00:00<00:04, 5.88it/s]
[ComfyUI] Edge costs: 15%|█▍ | 4/27 [00:00<00:03, 6.38it/s]
[ComfyUI] Edge costs: 19%|█▊ | 5/27 [00:00<00:03, 6.88it/s]
[ComfyUI] Edge costs: 22%|██▏ | 6/27 [00:00<00:02, 7.20it/s]
[ComfyUI] Edge costs: 26%|██▌ | 7/27 [00:01<00:02, 7.44it/s]
[ComfyUI] Edge costs: 30%|██▉ | 8/27 [00:01<00:02, 7.34it/s]
[ComfyUI] Edge costs: 33%|███▎ | 9/27 [00:01<00:02, 7.25it/s]
[ComfyUI] Edge costs: 37%|███▋ | 10/27 [00:01<00:02, 7.34it/s]
[ComfyUI] Edge costs: 41%|████ | 11/27 [00:01<00:02, 7.67it/s]
[ComfyUI] Edge costs: 44%|████▍ | 12/27 [00:01<00:01, 7.78it/s]
[capture-loop] iter=50 t=7.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=79% browser_rss=0.83GB
[ComfyUI] Edge costs: 48%|████▊ | 13/27 [00:01<00:01, 7.91it/s]
[ComfyUI] Edge costs: 52%|█████▏ | 14/27 [00:01<00:01, 8.01it/s]
[ComfyUI] Edge costs: 56%|█████▌ | 15/27 [00:02<00:01, 8.37it/s]
[ComfyUI] Edge costs: 59%|█████▉ | 16/27 [00:02<00:01, 8.33it/s]
[ComfyUI] Edge costs: 63%|██████▎ | 17/27 [00:02<00:01, 8.15it/s]
[ComfyUI] Edge costs: 67%|██████▋ | 18/27 [00:02<00:01, 7.93it/s]
[ComfyUI] Edge costs: 70%|███████ | 19/27 [00:02<00:00, 8.08it/s]
[ComfyUI] Edge costs: 74%|███████▍ | 20/27 [00:02<00:00, 8.05it/s]
[ComfyUI] Edge costs: 78%|███████▊ | 21/27 [00:02<00:00, 7.83it/s]
[ComfyUI] Edge costs: 81%|████████▏ | 22/27 [00:02<00:00, 6.71it/s]
[ComfyUI] Edge costs: 85%|████████▌ | 23/27 [00:03<00:00, 6.98it/s]
[ComfyUI] Edge costs: 89%|████████▉ | 24/27 [00:03<00:00, 7.26it/s]
[ComfyUI] Edge costs: 93%|█████████▎| 25/27 [00:03<00:00, 7.44it/s]
[ComfyUI] Edge costs: 96%|█████████▋| 26/27 [00:03<00:00, 7.80it/s]
[ComfyUI] Edge costs: 100%|██████████| 27/27 [00:03<00:00, 8.30it/s]
[capture-loop] iter=100 t=12.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=81% browser_rss=0.83GB
[ComfyUI] Edge costs: 100%|██████████| 27/27 [00:03<00:00, 7.55it/s]
[ComfyUI] edges: 2697139, pairs: 97792 (need 100000)
[ComfyUI] Merging 97792 pairs
[ComfyUI] Edge costs: 0%| | 0/19 [00:00<?, ?it/s]
[ComfyUI] Edge costs: 5%|▌ | 1/19 [00:00<00:02, 8.47it/s]
[ComfyUI] Edge costs: 11%|█ | 2/19 [00:00<00:01, 9.11it/s]
[ComfyUI] Edge costs: 16%|█▌ | 3/19 [00:00<00:01, 9.20it/s]
[ComfyUI] Edge costs: 21%|██ | 4/19 [00:00<00:01, 9.45it/s]
[ComfyUI] Edge costs: 26%|██▋ | 5/19 [00:00<00:01, 9.53it/s]
[ComfyUI] Edge costs: 32%|███▏ | 6/19 [00:00<00:01, 9.68it/s]
[ComfyUI] Edge costs: 37%|███▋ | 7/19 [00:00<00:01, 9.67it/s]
Frame 3 saved (frame_002.jpg, t=4.3s)
[capture-periodic] freeze=2ms shot=61ms unfreeze=2ms saved=True
[ComfyUI] Edge costs: 42%|████▏ | 8/19 [00:00<00:01, 9.65it/s]
[ComfyUI] Edge costs: 47%|████▋ | 9/19 [00:00<00:01, 9.44it/s]
[ComfyUI] Edge costs: 53%|█████▎ | 10/19 [00:01<00:00, 9.49it/s]
[ComfyUI] Edge costs: 58%|█████▊ | 11/19 [00:01<00:00, 9.60it/s]
[ComfyUI] Edge costs: 63%|██████▎ | 12/19 [00:01<00:00, 9.68it/s]
[ComfyUI] Edge costs: 68%|██████▊ | 13/19 [00:01<00:00, 9.71it/s]
[ComfyUI] Edge costs: 74%|███████▎ | 14/19 [00:01<00:00, 9.31it/s]
[ComfyUI] Edge costs: 79%|███████▉ | 15/19 [00:01<00:00, 9.37it/s]
[ComfyUI] Edge costs: 84%|████████▍ | 16/19 [00:01<00:00, 9.50it/s]
[ComfyUI] Edge costs: 89%|████████▉ | 17/19 [00:01<00:00, 9.59it/s]
[ComfyUI] Edge costs: 95%|█████████▍| 18/19 [00:01<00:00, 9.70it/s]
[ComfyUI] Edge costs: 100%|██████████| 19/19 [00:01<00:00, 9.78it/s]
[capture-loop] iter=50 t=5.5s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=52% browser_rss=0.66GB
[ComfyUI] [worker:ComfyUI-GaussianPack] edges: 1848776, pairs: 96906 (need 100000)
[ComfyUI] [worker:ComfyUI-GaussianPack] Merging 96906 pairs
[ComfyUI] [worker:ComfyUI-GaussianPack] Pass 2: 103094 splats
Frame 4 saved (frame_003.jpg, t=6.5s)
[capture-periodic] freeze=2ms shot=66ms unfreeze=2ms saved=True
[ComfyUI]
[ComfyUI] Pass 2: 102208 splats
[ComfyUI] Edge costs: 0%| | 0/14 [00:00<?, ?it/s]
[ComfyUI] Edge costs: 7%|▋ | 1/14 [00:00<00:01, 7.63it/s]
[ComfyUI] Edge costs: 14%|█▍ | 2/14 [00:00<00:01, 8.38it/s]
[ComfyUI] Edge costs: 21%|██▏ | 3/14 [00:00<00:01, 7.51it/s]
[ComfyUI] Edge costs: 29%|██▊ | 4/14 [00:00<00:01, 7.86it/s]
[ComfyUI] Edge costs: 36%|███▌ | 5/14 [00:00<00:01, 8.20it/s]
[ComfyUI] Edge costs: 43%|████▎ | 6/14 [00:00<00:00, 8.43it/s]
[ComfyUI] Edge costs: 50%|█████ | 7/14 [00:00<00:00, 8.53it/s]
[ComfyUI] Edge costs: 57%|█████▋ | 8/14 [00:00<00:00, 8.72it/s]
[ComfyUI] Edge costs: 64%|██████▍ | 9/14 [00:01<00:00, 8.01it/s]
[ComfyUI] Edge costs: 71%|███████▏ | 10/14 [00:01<00:00, 8.13it/s]
[ComfyUI] Edge costs: 79%|███████▊ | 11/14 [00:01<00:00, 8.33it/s]
[ComfyUI] Edge costs: 86%|████████▌ | 12/14 [00:01<00:00, 8.45it/s]
[ComfyUI] Edge costs: 93%|█████████▎| 13/14 [00:01<00:00, 8.49it/s]
[ComfyUI] Edge costs: 100%|██████████| 14/14 [00:01<00:00, 8.68it/s]
[ComfyUI] [INFO] GaussianMerge: wrote /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/output/merged.ply (100000 splats, 23.7 MB)
[ComfyUI] [INFO] Prompt executed in 16.82 seconds
[ComfyUI] Edge costs: 0%| | 0/10 [00:00<?, ?it/s]
[ComfyUI] Edge costs: 10%|█ | 1/10 [00:00<00:00, 9.83it/s]
[ComfyUI] Edge costs: 20%|██ | 2/10 [00:00<00:00, 9.85it/s]
[ComfyUI] Edge costs: 30%|███ | 3/10 [00:00<00:00, 9.65it/s]
[ComfyUI] Edge costs: 40%|████ | 4/10 [00:00<00:00, 9.72it/s]
[ComfyUI] Edge costs: 50%|█████ | 5/10 [00:00<00:00, 9.67it/s]
[ComfyUI] Edge costs: 60%|██████ | 6/10 [00:00<00:00, 9.73it/s]
[ComfyUI] Edge costs: 70%|███████ | 7/10 [00:00<00:00, 9.72it/s]
[ComfyUI] Edge costs: 80%|████████ | 8/10 [00:00<00:00, 9.77it/s]
[ComfyUI] Edge costs: 90%|█████████ | 9/10 [00:00<00:00, 9.50it/s]
[ComfyUI] Edge costs: 100%|██████████| 10/10 [00:00<00:00, 10.49it/s]
[ComfyUI] [worker:ComfyUI-GaussianPack] edges: 919857, pairs: 3094 (need 3094)
[ComfyUI] [worker:ComfyUI-GaussianPack] Merging 3094 pairs
[ComfyUI] [worker:ComfyUI-GaussianPack] Final splats: 100000
[capture-loop] iter=100 t=10.9s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=74% browser_rss=0.65GB
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] GaussianMerge done (11.47s): result: dict
[ComfyUI] [comfy-env] Running PreviewGaussianDual: layout: 'slider', camera_mode: 'orbit', fov_degrees: 70.0, renderer: 'playcanvas', transport_format: 'ply', ply_path_1: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp..., ply_path_2: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[ComfyUI] [SubprocessWorker] call_method: nodes.preview_gaussian_dual.PreviewGaussianDual.preview
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=7 sending call_method
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] PreviewGaussianDual done (0.00s): result: dict
[ComfyUI] [INFO] Prompt executed in 11.47 seconds
Node executed (2 total), capturing...
Frame 5 saved (frame_004.jpg, t=17.2s)
[capture-node] freeze=4ms shot=608ms unfreeze=0ms saved=True
Execution complete (t=17.2s)
Frame 5 saved (frame_004.jpg, t=11.7s)
[capture-node] freeze=2ms shot=942ms unfreeze=0ms saved=True
Execution complete (t=11.7s)
[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=2
[3d-wait] iframe viewer_ready=True (matched 1 console logs)
[3d-wait] Unfrozen in 0.001s, rendering for 5s...
[3d-wait] JS halted via CDP after 5.1s
[3d-wait] Re-frozen in 6.2s
[3d-wait] Total 3D wait: 6.2s
Captured 5 unique frames over 24.11s
[debug] iframes: 2
[debug] iframe[0]: src=http://127.0.0.1:41892/extensions/ComfyUI-GaussianPack/viewer_gaussian.html?v=17, canvas=486x225, rafFrozen=True
[debug] iframe[1]: src=http://127.0.0.1:41892/extensions/ComfyUI-GaussianPack/viewer_gaussian.html?v=17, canvas=486x225, rafFrozen=True
[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 5 unique frames over 72.73s
[debug] iframes: 1
[debug] iframe[0]: src=http://127.0.0.1:41894/extensions/ComfyUI-GaussianPack/viewer_gaussian_dual.html, canvas=486x240, rafFrozen=True
[timing] trigger_3d_previews: 0.0s
Saved high-quality screenshot: merge_splats_executed.png
[timing] final_screenshot: 0.2s
[timing] final_screenshot: 0.1s
Captured 6 video frames
+8 -56
View File
@@ -11,65 +11,17 @@
[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-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] 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] [GaussianViewer] Ready — waiting for LOAD_MESH_DATA
[Console-log] [GaussianViewer] Ready — waiting for LOAD_MESH_DATA
[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"}}
[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] [GaussianPack] Resized node to: 512 x 572 (aspect ratio: 1.00 )
[Console-log] [GaussianPack] fetch start: /view?filename=apple.ply&type=input&subfolder=
[Console-log] [GaussianPack] fetch response 200; content-length=49601531
[Console-log] [GaussianPack] download 25% 12.0/47.3 MB
[Console-log] [GaussianPack] download 50% 24.0/47.3 MB
[Console-log] [GaussianPack] download 80% 38.0/47.3 MB
[Console-log] [GaussianPack] download 100% 47.3/47.3 MB
[Console-log] [GaussianPack] fetch done: 49601531 bytes in 244 ms (193.9 MB/s)
[Console-log] [GaussianPack] posting LOAD_MESH_DATA to iframe, renderer: spark filename: apple.ply
[Console-log] [GaussianViewer] Received LOAD_MESH_DATA, size: 49601531 renderer: spark
[Console-log] [GaussianViewer] ensureRenderer('spark') starting...
[Console-log] [Spark] init: canvas client=486x225 dpr=1.00
[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-log] [Spark] first frame rendered.
[Console-log] [GaussianViewer] Adapter ready: spark
[Console-log] [GaussianViewer] Loading splat (49,601,531 bytes) via spark...
[Console-log] [Spark] new SplatMesh url=apple.ply
[Console-log] [Spark] parse 11%
[Console-log] [Spark] parse 51%
[Console-log] [Spark] parse 80%
[Console-log] [Spark] parse 100%
[Console-log] [Spark] loaded 200000 splats in 375 ms
[Console-log] [GaussianViewer] adapter.loadSplat resolved in 375 ms
[Console-log] [GaussianViewer] frameOnBounds: bounds center=(0.002, -0.005, -0.015) size=(1.808, 1.857, 1.969)
[Console-log] [GaussianViewer] Framed: cam=(0.00, -0.01, -2.44) target=(0.00, -0.01, -0.02) maxExtent=1.97 radius=2.43 fov=50
[Console-log] [GaussianViewer] Loaded successfully
[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] [GaussianPack] Resized node to: 512 x 572 (aspect ratio: 1.00 )
[Console-log] [GaussianPack] fetch start: /view?filename=merged.ply&type=output&subfolder=
[Console-log] [GaussianPack] fetch response 200; content-length=24801531
[Console-log] [GaussianPack] download 25% 6.0/23.7 MB
[Console-log] [GaussianPack] download 35% 8.3/23.7 MB
[Console-log] [GaussianPack] download 50% 11.9/23.7 MB
[Console-log] [GaussianPack] download 100% 23.7/23.7 MB
[Console-log] [GaussianPack] fetch done: 24801531 bytes in 330 ms (71.7 MB/s)
[Console-log] [GaussianPack] posting LOAD_MESH_DATA to iframe, renderer: spark filename: merged.ply
[Console-log] [GaussianViewer] Received LOAD_MESH_DATA, size: 24801531 renderer: spark
[Console-log] [GaussianViewer] ensureRenderer('spark') starting...
[Console-log] [Spark] init: canvas client=486x225 dpr=1.00
[Console-warning] THREE.Clock: This module has been deprecated. Please use THREE.Timer instead.
[Console-log] [Spark] first frame rendered.
[Console-log] [GaussianViewer] Adapter ready: spark
[Console-log] [GaussianViewer] Loading splat (24,801,531 bytes) via spark...
[Console-log] [Spark] new SplatMesh url=merged.ply
[Console-log] [Spark] parse 51%
[Console-log] [Spark] parse 100%
[Console-log] [Spark] loaded 100000 splats in 320 ms
[Console-log] [GaussianViewer] adapter.loadSplat resolved in 320 ms
[Console-log] [GaussianViewer] frameOnBounds: bounds center=(0.001, -0.005, -0.015) size=(1.807, 1.857, 1.968)
[Console-log] [GaussianViewer] Framed: cam=(0.00, -0.01, -2.44) target=(0.00, -0.01, -0.02) maxExtent=1.97 radius=2.43 fov=50
[Console-log] [GaussianViewer] Loaded successfully
[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.
+76 -32
View File
@@ -1,34 +1,78 @@
# total_ram_gb=7.0
t,ram_gb,vram_gb
0.0,0.48,
1.1,0.48,
2.2,0.46,
3.2,0.46,
4.3,0.46,
5.5,0.46,
6.6,0.46,
7.7,0.63,
8.8,0.72,
10.0,0.71,
11.0,0.71,
12.2,0.71,
13.2,0.81,
14.2,0.82,
15.2,0.82,
16.2,0.85,
17.3,0.86,
18.4,0.87,
19.5,0.87,
20.6,0.9,
21.7,0.91,
22.8,0.91,
23.9,0.9,
25.1,0.9,
26.2,0.89,
27.2,0.89,
28.2,0.89,
29.2,0.89,
30.3,0.89,
31.5,0.89,
32.5,0.89,
33.5,0.89,
0.0,0.72,
1.0,0.72,
2.1,0.72,
3.2,0.72,
4.2,0.72,
5.3,0.9,
6.4,1.03,
7.4,1.03,
8.4,1.15,
9.5,1.17,
10.5,1.19,
11.5,1.19,
12.6,1.17,
13.7,1.18,
14.7,1.18,
15.8,1.18,
16.8,1.14,
17.9,0.89,
18.9,0.81,
19.9,0.8,
20.9,0.75,
21.9,0.75,
22.9,0.75,
24.0,0.75,
25.0,0.75,
26.1,0.75,
27.2,0.75,
28.2,0.75,
29.2,0.75,
30.3,0.75,
31.3,0.75,
32.4,0.75,
33.4,0.75,
34.5,0.75,
35.5,0.75,
36.6,0.75,
37.6,0.75,
38.6,0.75,
39.6,0.75,
40.6,0.75,
41.7,0.75,
42.7,0.75,
43.8,0.75,
44.9,0.75,
45.9,0.75,
46.9,0.75,
47.9,0.75,
49.0,0.75,
50.1,0.75,
51.1,0.75,
52.2,0.75,
53.2,0.75,
54.3,0.75,
55.3,0.75,
56.3,0.75,
57.4,0.75,
58.5,0.75,
59.7,0.75,
60.7,0.75,
61.8,0.75,
63.0,0.75,
64.1,0.75,
65.1,0.74,
66.2,0.74,
67.2,0.74,
68.3,0.74,
69.3,0.74,
70.4,0.74,
71.5,0.74,
72.6,0.74,
73.6,0.72,
74.8,0.71,
75.9,0.71,
77.0,0.71,
78.1,0.71,
79.2,0.71,
1 # total_ram_gb=7.0
2 t,ram_gb,vram_gb
3 0.0,0.48, 0.0,0.72,
4 1.1,0.48, 1.0,0.72,
5 2.2,0.46, 2.1,0.72,
6 3.2,0.46, 3.2,0.72,
7 4.3,0.46, 4.2,0.72,
8 5.5,0.46, 5.3,0.9,
9 6.6,0.46, 6.4,1.03,
10 7.7,0.63, 7.4,1.03,
11 8.8,0.72, 8.4,1.15,
12 10.0,0.71, 9.5,1.17,
13 11.0,0.71, 10.5,1.19,
14 12.2,0.71, 11.5,1.19,
15 13.2,0.81, 12.6,1.17,
16 14.2,0.82, 13.7,1.18,
17 15.2,0.82, 14.7,1.18,
18 16.2,0.85, 15.8,1.18,
19 17.3,0.86, 16.8,1.14,
20 18.4,0.87, 17.9,0.89,
21 19.5,0.87, 18.9,0.81,
22 20.6,0.9, 19.9,0.8,
23 21.7,0.91, 20.9,0.75,
24 22.8,0.91, 21.9,0.75,
25 23.9,0.9, 22.9,0.75,
26 25.1,0.9, 24.0,0.75,
27 26.2,0.89, 25.0,0.75,
28 27.2,0.89, 26.1,0.75,
29 28.2,0.89, 27.2,0.75,
30 29.2,0.89, 28.2,0.75,
31 30.3,0.89, 29.2,0.75,
32 31.5,0.89, 30.3,0.75,
33 32.5,0.89, 31.3,0.75,
34 33.5,0.89, 32.4,0.75,
35 33.4,0.75,
36 34.5,0.75,
37 35.5,0.75,
38 36.6,0.75,
39 37.6,0.75,
40 38.6,0.75,
41 39.6,0.75,
42 40.6,0.75,
43 41.7,0.75,
44 42.7,0.75,
45 43.8,0.75,
46 44.9,0.75,
47 45.9,0.75,
48 46.9,0.75,
49 47.9,0.75,
50 49.0,0.75,
51 50.1,0.75,
52 51.1,0.75,
53 52.2,0.75,
54 53.2,0.75,
55 54.3,0.75,
56 55.3,0.75,
57 56.3,0.75,
58 57.4,0.75,
59 58.5,0.75,
60 59.7,0.75,
61 60.7,0.75,
62 61.8,0.75,
63 63.0,0.75,
64 64.1,0.75,
65 65.1,0.74,
66 66.2,0.74,
67 67.2,0.74,
68 68.3,0.74,
69 69.3,0.74,
70 70.4,0.74,
71 71.5,0.74,
72 72.6,0.74,
73 73.6,0.72,
74 74.8,0.71,
75 75.9,0.71,
76 77.0,0.71,
77 78.1,0.71,
78 79.2,0.71,
+85
View File
@@ -0,0 +1,85 @@
[ComfyUI] [INFO] Using RAM pressure cache.
Capturing execution frames: rotate_splats.json
[ComfyUI] [INFO] Using RAM pressure cache.
Frame 1 saved (frame_000.jpg, t=0.0s)
Validating workflow...
[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]}
Queuing workflow for execution...
[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: a95eea2e-703b-4946-9b22-e2dc06e4e22d
[ComfyUI] [INFO] Calling execution.validate_prompt()...
[ComfyUI] [INFO] Validation result: valid=True
[ComfyUI] [INFO] === Validation PASSED ===
[ComfyUI] [INFO] got prompt
[ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'apple.ply'
[ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: failed
[ComfyUI] [ComfyUI-GaussianPack] Socket unhealthy, restarting worker...
[ComfyUI] [ComfyUI-GaussianPack] python: /Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[ComfyUI] [ComfyUI-GaussianPack] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack', '/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/lib/python3.13/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack']
[ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/.ce/pixi.toml', '-e', 'gaussianpack-nodes', 'python', '/var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfyui_pvenv_ck272ns8/persistent_worker.py', 'unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1e3310afad0b.sock']...
[ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1e3310afad0b.sock exists=True
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=8 sending call_method
[ComfyUI] [worker:ComfyUI-GaussianPack] WARNING: SPZ route not registered (ModuleNotFoundError: No module named 'comfy_aimdo')
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] LoadPLY done (1.08s): result: list[1]
[ComfyUI] [comfy-env] Running TransformGaussian: rotate_x: -90.0, rotate_y: 0.0, rotate_z: 0.0, ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[ComfyUI] [SubprocessWorker] call_method: nodes.transform_gaussian.TransformGaussian.transform
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=9 sending call_method
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] TransformGaussian done (0.51s): result: list[1]
[ComfyUI] [comfy-env] Running PreviewGaussianDual: layout: 'slider', camera_mode: 'orbit', fov_degrees: 70.0, renderer: 'playcanvas', transport_format: 'ply', ply_path_1: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp..., ply_path_2: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[ComfyUI] [SubprocessWorker] call_method: nodes.preview_gaussian_dual.PreviewGaussianDual.preview
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=10 sending call_method
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] PreviewGaussianDual done (0.00s): result: dict
[ComfyUI] [INFO] Prompt executed in 1.60 seconds
Node executed (1 total), capturing...
Frame 2 saved (frame_001.jpg, t=1.9s)
[capture-node] freeze=20ms shot=242ms unfreeze=0ms saved=True
Execution complete (t=1.9s)
[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 62.22s
[debug] iframes: 1
[debug] iframe[0]: src=http://127.0.0.1:41894/extensions/ComfyUI-GaussianPack/viewer_gaussian_dual.html, canvas=486x214, rafFrozen=True
[timing] trigger_3d_previews: 0.0s
Saved high-quality screenshot: rotate_splats_executed.png
[timing] final_screenshot: 0.1s
Captured 3 video frames
@@ -0,0 +1,27 @@
[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-warning] [ComfyUI] The legacy queue/history menu is deprecated. Core functionality in this menu may break at any time. Issues and feature requests related to the legacy menu will not be addressed. To switch to the new menu: Settings → search "Use new menu" → change from "Disabled" to "Top".
[Console-warning] [ComfyUI] The legacy queue/history menu is deprecated. Core functionality in this menu may break at any time. Issues and feature requests related to the legacy menu will not be addressed. To switch to the new menu: Settings → search "Use new menu" → change from "Disabled" to "Top".
[Console-error] Failed to load resource: the server responded with a status of 404 (Not Found)
[Console-error] ComfyApp graph accessed before initialization
[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-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 "playcanvas". R…ences must start with either "/", "./", or "../".}
[Console-log] [GaussianPack] Loading extension...
[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.
@@ -0,0 +1,66 @@
# total_ram_gb=7.0
t,ram_gb,vram_gb
0.0,0.71,
1.1,0.71,
2.1,0.71,
3.2,0.71,
4.2,0.71,
5.2,0.66,
6.4,0.87,
7.4,0.87,
8.5,0.87,
9.5,0.87,
10.6,0.87,
11.7,0.87,
12.8,0.87,
13.8,0.87,
14.8,0.87,
15.9,0.87,
16.9,0.87,
17.9,0.87,
19.1,0.87,
20.1,0.87,
21.2,0.87,
22.2,0.87,
23.4,0.87,
24.5,0.87,
25.5,0.87,
26.5,0.87,
27.6,0.87,
28.7,0.87,
29.9,0.87,
31.0,0.87,
32.2,0.87,
33.3,0.87,
34.4,0.87,
35.5,0.87,
36.5,0.87,
37.6,0.87,
38.8,0.87,
39.9,0.87,
41.0,0.87,
42.1,0.87,
43.3,0.87,
44.4,0.87,
45.4,0.87,
46.4,0.87,
47.4,0.87,
48.4,0.87,
49.5,0.87,
50.5,0.87,
51.6,0.87,
52.6,0.87,
53.7,0.87,
54.8,0.87,
55.9,0.87,
57.0,0.87,
58.0,0.87,
59.1,0.87,
60.1,0.87,
61.3,0.87,
62.4,0.87,
63.4,0.87,
64.6,0.87,
65.6,0.87,
66.8,0.87,
67.8,0.87,
1 # total_ram_gb=7.0
2 t,ram_gb,vram_gb
3 0.0,0.71,
4 1.1,0.71,
5 2.1,0.71,
6 3.2,0.71,
7 4.2,0.71,
8 5.2,0.66,
9 6.4,0.87,
10 7.4,0.87,
11 8.5,0.87,
12 9.5,0.87,
13 10.6,0.87,
14 11.7,0.87,
15 12.8,0.87,
16 13.8,0.87,
17 14.8,0.87,
18 15.9,0.87,
19 16.9,0.87,
20 17.9,0.87,
21 19.1,0.87,
22 20.1,0.87,
23 21.2,0.87,
24 22.2,0.87,
25 23.4,0.87,
26 24.5,0.87,
27 25.5,0.87,
28 26.5,0.87,
29 27.6,0.87,
30 28.7,0.87,
31 29.9,0.87,
32 31.0,0.87,
33 32.2,0.87,
34 33.3,0.87,
35 34.4,0.87,
36 35.5,0.87,
37 36.5,0.87,
38 37.6,0.87,
39 38.8,0.87,
40 39.9,0.87,
41 41.0,0.87,
42 42.1,0.87,
43 43.3,0.87,
44 44.4,0.87,
45 45.4,0.87,
46 46.4,0.87,
47 47.4,0.87,
48 48.4,0.87,
49 49.5,0.87,
50 50.5,0.87,
51 51.6,0.87,
52 52.6,0.87,
53 53.7,0.87,
54 54.8,0.87,
55 55.9,0.87,
56 57.0,0.87,
57 58.0,0.87,
58 59.1,0.87,
59 60.1,0.87,
60 61.3,0.87,
61 62.4,0.87,
62 63.4,0.87,
63 64.6,0.87,
64 65.6,0.87,
65 66.8,0.87,
66 67.8,0.87,
+71
View File
@@ -0,0 +1,71 @@
[ComfyUI] [INFO] Using RAM pressure cache.
Capturing execution frames: spectate.json
[ComfyUI] [INFO] Using RAM pressure cache.
Frame 1 saved (frame_000.jpg, t=0.0s)
Validating workflow...
[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: b76b44ee-ecd9-4511-837e-6847b53313e8
[ComfyUI] [INFO] Calling execution.validate_prompt()...
[ComfyUI] [INFO] Validation result: valid=True
[ComfyUI] [INFO] === Validation PASSED ===
Queuing workflow for execution...
[ComfyUI] [INFO] got prompt
[ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'compressed_room.ply'
[ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: failed
[ComfyUI] [ComfyUI-GaussianPack] Socket unhealthy, restarting worker...
[ComfyUI] [ComfyUI-GaussianPack] python: /Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[ComfyUI] [ComfyUI-GaussianPack] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack', '/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/lib/python3.13/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack']
[ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/.ce/pixi.toml', '-e', 'gaussianpack-nodes', 'python', '/var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfyui_pvenv_ck272ns8/persistent_worker.py', 'unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1a76a7d42288.sock']...
[ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1a76a7d42288.sock exists=True
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=11 sending call_method
[ComfyUI] [worker:ComfyUI-GaussianPack] WARNING: SPZ route not registered (ModuleNotFoundError: No module named 'comfy_aimdo')
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] LoadPLY done (0.94s): result: list[1]
[ComfyUI] [comfy-env] Running PreviewGaussians: camera_mode: 'spectate', fov_degrees: 70.0, renderer: 'playcanvas', transport_format: 'ply', ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[ComfyUI] [SubprocessWorker] call_method: nodes.preview_gaussian.PreviewGaussians.preview
[ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[ComfyUI] [SubprocessWorker] worker started/confirmed
[ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[ComfyUI] [SubprocessWorker] created 0 shm blocks
[ComfyUI] [SubprocessWorker] sending request via socket...
[ComfyUI] [SubprocessWorker] call_id=12 sending call_method
[ComfyUI] [SubprocessWorker] got response: ok
[ComfyUI] [comfy-env] PreviewGaussians done (0.00s): result: dict
[ComfyUI] [INFO] Prompt executed in 0.95 seconds
Node executed (1 total), capturing...
Frame 2 saved (frame_001.jpg, t=1.2s)
[capture-node] freeze=2ms shot=65ms 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] Got 'Loaded successfully' after 0.8s
[3d-wait] Unfrozen in 0.002s, rendering for 5s...
[3d-wait] JS halted via CDP after 5.1s
[3d-wait] Re-frozen in 6.2s
[3d-wait] Total 3D wait: 7.0s
Captured 2 unique frames over 8.3s
[debug] iframes: 1
[debug] iframe[0]: src=http://127.0.0.1:41894/extensions/ComfyUI-GaussianPack/viewer_gaussian.html?mode, canvas=781x404, rafFrozen=True
[timing] trigger_3d_previews: 0.0s
Saved high-quality screenshot: spectate_executed.png
[timing] final_screenshot: 0.2s
Captured 3 video frames
+45
View File
@@ -0,0 +1,45 @@
[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-warning] [ComfyUI] The legacy queue/history menu is deprecated. Core functionality in this menu may break at any time. Issues and feature requests related to the legacy menu will not be addressed. To switch to the new menu: Settings → search "Use new menu" → change from "Disabled" to "Top".
[Console-warning] [ComfyUI] The legacy queue/history menu is deprecated. Core functionality in this menu may break at any time. Issues and feature requests related to the legacy menu will not be addressed. To switch to the new menu: Settings → search "Use new menu" → change from "Disabled" to "Top".
[Console-error] Failed to load resource: the server responded with a status of 404 (Not Found)
[Console-error] ComfyApp graph accessed before initialization
[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 "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-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=&_=1780836436
[Console-log] [GaussianPack] download 0% 0.1/26.7 MB
[Console-log] [GaussianPack] download 5% 1.4/26.7 MB
[Console-log] [GaussianPack] download 15% 4.1/26.7 MB
[Console-log] [GaussianPack] download 40% 10.8/26.7 MB
[Console-log] [GaussianPack] download 50% 13.5/26.7 MB
[Console-log] [GaussianPack] download 55% 14.9/26.7 MB
[Console-log] [GaussianPack] download 70% 18.8/26.7 MB
[Console-log] [GaussianPack] download 100% 26.7/26.7 MB
[Console-log] [GaussianPack] fetch done: 28000362 bytes in 59 ms (451.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 357 ms
[Console-log] [GaussianViewer] adapter.loadSplat resolved in 357 ms
[Console-log] [GaussianViewer] Loaded successfully
+17
View File
@@ -0,0 +1,17 @@
# total_ram_gb=7.0
t,ram_gb,vram_gb
0.0,0.87,
1.1,0.87,
2.2,0.87,
3.2,0.87,
4.3,0.87,
5.3,0.68,
6.3,0.71,
7.5,0.71,
8.5,0.71,
9.5,0.71,
10.7,0.71,
11.7,0.71,
12.8,0.71,
13.9,0.71,
14.9,0.7,
1 # total_ram_gb=7.0
2 t,ram_gb,vram_gb
3 0.0,0.87,
4 1.1,0.87,
5 2.2,0.87,
6 3.2,0.87,
7 4.3,0.87,
8 5.3,0.68,
9 6.3,0.71,
10 7.5,0.71,
11 8.5,0.71,
12 9.5,0.71,
13 10.7,0.71,
14 11.7,0.71,
15 12.8,0.71,
16 13.9,0.71,
17 14.9,0.7,
+65 -11
View File
@@ -1,35 +1,89 @@
{
"timestamp": "2026-05-25T19:29:37.211511+00:00",
"timestamp": "2026-06-07T12:51:29.625823+00:00",
"platform": "macos",
"hardware": {
"os": "macOS-15.7.7-arm64-arm-64bit",
"os": "macOS-15.7.7-arm64-arm-64bit-Mach-O",
"cpu": "arm"
},
"commit_hash": "6f8632efff00b21d22fb9ed493c85f4f0e2de9d4",
"run_url": "https://github.com/PozzettiAndrea/comfy-gpu-ci/actions/runs/26416332296",
"commit_hash": "03612bca162c9c720e64d52305f8891d1770a0e3",
"run_url": "https://github.com/PozzettiAndrea/comfy-gpu-ci/actions/runs/27092991549",
"success": true,
"summary": {
"total": 1,
"passed": 1,
"total": 4,
"passed": 4,
"failed": 0
},
"workflows": [
{
"name": "merge_splats",
"name": "gaussian_analysis",
"status": "pass",
"duration_seconds": 33.55,
"duration_seconds": 9.4,
"error": null,
"hardware": {
"os": "macOS-15.7.7-arm64-arm-64bit",
"os": "macOS-15.7.7-arm64-arm-64bit-Mach-O",
"cpu": "arm"
},
"resources": {
"ram": {
"peak": 0.91,
"peak": 0.72,
"avg": 0.61
},
"total_ram_gb": 7.0,
"samples": 10
}
},
{
"name": "merge_splats",
"status": "pass",
"duration_seconds": 79.6,
"error": null,
"hardware": {
"os": "macOS-15.7.7-arm64-arm-64bit-Mach-O",
"cpu": "arm"
},
"resources": {
"ram": {
"peak": 1.19,
"avg": 0.81
},
"total_ram_gb": 7.0,
"samples": 76
}
},
{
"name": "rotate_splats",
"status": "pass",
"duration_seconds": 68.94,
"error": null,
"hardware": {
"os": "macOS-15.7.7-arm64-arm-64bit-Mach-O",
"cpu": "arm"
},
"resources": {
"ram": {
"peak": 0.87,
"avg": 0.85
},
"total_ram_gb": 7.0,
"samples": 64
}
},
{
"name": "spectate",
"status": "pass",
"duration_seconds": 15.1,
"error": null,
"hardware": {
"os": "macOS-15.7.7-arm64-arm-64bit-Mach-O",
"cpu": "arm"
},
"resources": {
"ram": {
"peak": 0.87,
"avg": 0.76
},
"total_ram_gb": 7.0,
"samples": 32
"samples": 15
}
}
]
Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

After

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 KiB

+552 -225
View File
@@ -1,4 +1,4 @@
[00:00] Crash dump logging enabled: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GaussianPack-1927/dev/macos-cpu/crash_dump.log
[00:00] Crash dump logging enabled: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GaussianPack-1247/dev/macos-cpu/crash_dump.log
[00:00]
[00:00] [1/5] SYNTAX
[00:00] ----------------------------------------
@@ -17,235 +17,562 @@
[00:00]
Setting up ComfyUI...
[00:00] Cloning ComfyUI (latest)...
[00:00] Running: git clone --depth 1 https://github.com/comfyanonymous/ComfyUI.git /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI
[00:00] Running: git clone --depth 1 https://github.com/comfyanonymous/ComfyUI.git /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI
[00:01] Creating virtual environment...
[00:01] Running: /Library/Frameworks/Python.framework/Versions/3.10/bin/python -m venv /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/venv
[00:03] Installing uv into venv...
[00:03] Running: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/venv/bin/python -m pip install uv
[00:04] Installing PyTorch...
[00:04] Pinning torch family: torch==2.10.0 torchvision==0.25.0 torchaudio==2.10.0
[00:04] Running: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/venv/bin/python -m uv pip install torch==2.10.0 torchvision==0.25.0 torchaudio==2.10.0
[00:01] Running: /Library/Frameworks/Python.framework/Versions/3.13/bin/python -m venv /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/venv
[00:02] Installing uv into venv...
[00:02] Running: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/venv/bin/python -m pip install uv
[00:03] Installing PyTorch...
[00:03] Pinning torch family: torch==2.10.0 torchvision==0.25.0 torchaudio==2.10.0
[00:03] Running: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/venv/bin/python -m uv pip install torch==2.10.0 torchvision==0.25.0 torchaudio==2.10.0
[00:10] Installing ComfyUI requirements...
[00:10] Running: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/venv/bin/python -m uv pip install -r /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/requirements.txt
[00:10] Running: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/venv/bin/python -m uv pip install -r /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/requirements.txt
[00:18]
Installing custom node...
[00:18] Copying ComfyUI-GaussianPack to custom_nodes/...
[00:19] Installing node requirements...
[00:19] Running: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/venv/bin/python -m uv pip install -r /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/custom_nodes/ComfyUI-GaussianPack/requirements.txt
[00:21] Installing validation endpoint...
[00:21] Cloning PozzettiAndrea/ComfyUI-validate-endpoint...
[00:21] Running: git clone --depth 1 https://x-access-token:***@github.com/PozzettiAndrea/ComfyUI-validate-endpoint.git /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/custom_nodes/ComfyUI-validate-endpoint
[00:22] [INSTALL] PASSED
[00:22]
[00:22] [3/5] REGISTRATION
[00:22] ----------------------------------------
[00:22]
[00:18] Installing node requirements...
[00:18] Running: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/venv/bin/python -m uv pip install -r /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack/requirements.txt
[00:19]
Running install.py...
[00:19] Running: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/venv/bin/python /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack/install.py
[00:20] [comfy-env] _discover: scanning /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes
[00:20] [comfy-env] _discover: ComfyUI-GaussianPack -> gaussianpack-nodes (custom_nodes/ComfyUI-GaussianPack/nodes/comfy-env.toml)
[00:20] [comfy-env] Workspace: /Users/runner/.ce
[00:20] [comfy-env] ComfyUI: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI
[00:20] [comfy-env] Found 1 node config(s):
[00:20] - gaussianpack-nodes <- custom_nodes/ComfyUI-GaussianPack/nodes/comfy-env.toml (python=host)
[00:20] [comfy-env] Bootstrap interpreter has python 3.13 + torch 2.10.0 (cpu). Looking for cuda-only wheels matching cpu/torch2.10/cp313.
[00:20] Generated /Users/runner/.ce/pixi.toml
[00:20] [comfy-env] Installing 1 environment(s):
[00:20] - gaussianpack-nodes (python=host, 8 pypi deps, 1 cuda wheels)
[00:20] [comfy-env] Running `pixi install -e gaussianpack-nodes`...
[00:28] ✔ The gaussianpack-nodes environment has been installed.
[00:28] [comfy-env] gaussianpack-nodes: deduped libomp
[00:28] [comfy-env] Recorded install hash b37afdb81be9 -> /Users/runner/.ce/install.hash
[00:28] [comfy-env] Install log: /Users/runner/.ce/install.log
[00:28]
[00:28] Installation complete!
[00:28] Installing validation endpoint...
[00:28] Cloning PozzettiAndrea/ComfyUI-validate-endpoint...
[00:28] Running: git clone --depth 1 https://x-access-token:***@github.com/PozzettiAndrea/ComfyUI-validate-endpoint.git /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-validate-endpoint
[00:29] CUDA packages absent (will mock): gsplat
[00:29] [INSTALL] PASSED
[00:29]
[00:29] [3/5] REGISTRATION
[00:29] ----------------------------------------
[00:29]
[DEBUG] server=None, api=None
[00:22]
[00:29]
Starting ComfyUI server...
[00:22] Starting ComfyUI server on port 41892...
[00:22] Starting ComfyUI server on port 41892...
[00:22] Waiting for server to be ready (timeout: 600s)...
[00:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.schemas
[00:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.tables
[00:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.types
[00:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.constraints
[00:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.defaults
[00:23] [ComfyUI] [INFO] setup plugin alembic.autogenerate.comments
[00:23] [ComfyUI] [WARNING] Could not autodetect AIMDO implementation, assuming Nvidia
[00:23] [ComfyUI] [INFO] comfy-aimdo unsupported operating system: Darwin
[00:23] [ComfyUI] [INFO] NOTE: comfy-aimdo currently only supports Windows and Linux
[00:23] [ComfyUI] [INFO]
[00:23] [ComfyUI] Prestartup times for custom nodes:
[00:23] [ComfyUI] [INFO] 0.0 seconds: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/custom_nodes/ComfyUI-GaussianPack
[00:23] [ComfyUI] [INFO]
[00:27] [ComfyUI] [INFO] Found comfy_kitchen backend cuda: {'available': False, 'disabled': True, 'unavailable_reason': 'Extension file not found: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/venv/lib/python3.10/site-packages/comfy_kitchen/backends/cuda/_C.abi3.so', 'capabilities': []}
[00:27] [ComfyUI] [INFO] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []}
[00:27] [ComfyUI] [INFO] Found comfy_kitchen backend eager: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'dequantize_mxfp8', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'scaled_mm_mxfp8', 'scaled_mm_nvfp4']}
[00:27] [ComfyUI] [INFO] Checkpoint files will always be loaded safely.
[00:27] [ComfyUI] [INFO] Total VRAM 7168 MB, total RAM 7168 MB
[00:27] [ComfyUI] [INFO] pytorch version: 2.10.0
[00:27] [ComfyUI] [INFO] Mac Version (15, 7, 7)
[00:27] [ComfyUI] [INFO] Set vram state to: SHARED
[00:27] [ComfyUI] [INFO] Device: mps
[00:28] [ComfyUI] [INFO] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention
[00:32] [ComfyUI] [INFO] Python version: 3.10.11 (v3.10.11:7d4cc5aa85, Apr 4 2023, 19:05:19) [Clang 13.0.0 (clang-1300.0.29.30)]
[00:32] [ComfyUI] [INFO] ComfyUI version: 0.22.0
[00:32] [ComfyUI] [INFO] comfy-aimdo version: 0.4.5
[00:32] [ComfyUI] [INFO] comfy-kitchen version: 0.2.8
[00:32] [ComfyUI] [WARNING] ****** User settings have been changed to be stored on the server instead of browser storage. ******
[00:32] [ComfyUI] [WARNING] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ******
[00:32] [ComfyUI] [INFO] comfyui-frontend-package version: 1.44.19
[00:32] [ComfyUI] [INFO] comfyui-workflow-templates version: 0.9.82
[00:32] [ComfyUI] [INFO] comfyui-embedded-docs version: 0.5.1
[00:32] [ComfyUI] [INFO] comfy-kitchen version: 0.2.8
[00:32] [ComfyUI] [INFO] comfy-aimdo version: 0.4.5
[00:32] [ComfyUI] [INFO] [Prompt Server] web root: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/venv/lib/python3.10/site-packages/comfyui_frontend_package/static
[00:32] [ComfyUI] [INFO] Asset seeder disabled
[00:34] [ComfyUI] [INFO] loading...
[00:34] [ComfyUI] [INFO]
[00:34] [ComfyUI] Import times for custom nodes:
[00:34] [ComfyUI] [INFO] 0.0 seconds: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/custom_nodes/websocket_image_save.py
[00:34] [ComfyUI] [INFO] 0.0 seconds: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/custom_nodes/ComfyUI-validate-endpoint
[00:34] [ComfyUI] [INFO] 0.0 seconds: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/custom_nodes/ComfyUI-GaussianPack
[00:34] [ComfyUI] [INFO]
[00:34] [ComfyUI] [INFO] Context impl SQLiteImpl.
[00:34] [ComfyUI] [INFO] Will assume non-transactional DDL.
[00:34] [ComfyUI] [INFO] Context impl SQLiteImpl.
[00:34] [ComfyUI] [INFO] Will assume non-transactional DDL.
[00:34] [ComfyUI] [INFO] Running upgrade -> 0001_assets, Initial assets schema
[00:34] [ComfyUI] Revision ID: 0001_assets
[00:34] [ComfyUI] Revises: None
[00:34] [ComfyUI] Create Date: 2025-12-10 00:00:00
[00:34] [ComfyUI] [INFO] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table.
[00:34] [ComfyUI] [INFO] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references.
[00:34] [ComfyUI] Change preview_id FK from assets.id to asset_references.id.
[00:34] [ComfyUI] [INFO] Database upgraded from None to 0003_add_metadata_job_id
[00:34] [ComfyUI] [INFO] Using RAM pressure cache.
[00:34] [ComfyUI] [INFO] Starting server
[00:34] [ComfyUI]
[00:34] [ComfyUI] [INFO] To see the GUI go to: http://127.0.0.1:41892
[00:35] Server responding, waiting for nodes to load...
[00:55] Server is ready!
[00:55] Checking for import errors in server logs...
[00:55] No import errors detected
[00:55] Found 739 registered nodes
[00:55] [REGISTRATION] PASSED
[00:55]
[00:55] [4/5] INSTANTIATION
[00:55] ----------------------------------------
[00:55]
[DEBUG] server=<comfy_test.comfyui.server.ComfyUIServer object at 0x106aebd90>, api=<comfy_test.comfyui.api.ComfyUIAPI object at 0x106be8940>
[00:55] Testing node constructors...
[01:00] All 5 node(s) instantiated successfully!
[01:00] [INSTANTIATION] PASSED
[01:00]
[01:00] [5/5] EXECUTION
[01:00] ----------------------------------------
[01:00]
[DEBUG] server=<comfy_test.comfyui.server.ComfyUIServer object at 0x106aebd90>, api=<comfy_test.comfyui.api.ComfyUIAPI object at 0x106be8940>
[01:00] CPU runner - will execute 1 workflow(s)
[01:00] Running 1 workflow(s) (all with videos)...
[01:00] Installing screenshot dependencies (playwright, pillow)...
[01:01] Packages installed, downloading chromium browser...
[01:10] Screenshot dependencies installed successfully
[01:10] Starting headless browser...
[01:10] macOS -- using Apple Metal GPU via ANGLE
[01:11] [ComfyUI] [INFO] Using RAM pressure cache.
[01:11] Capturing execution frames: merge_splats.json
[01:11] [ComfyUI] [INFO] Using RAM pressure cache.
[01:18] Frame 1 saved (frame_000.jpg, t=0.0s)
[01:18] Validating workflow...
[01:18] [ComfyUI] [INFO] === /validate endpoint called ===
[01:18] [ComfyUI] [INFO] Received JSON with keys: ['prompt']
[01:18] [ComfyUI] [INFO] Prompt has 4 nodes
[01:18] [ComfyUI] [INFO] Node 1: LoadPLY
[01:18] [ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"}
[01:18] [ComfyUI] [INFO] Node 2: PreviewGaussians
[01:18] [ComfyUI] [INFO] Inputs: {"fov_degrees": 50, "image_width": 512, "image_height": 512, "renderer": "spark", "transport_format": "ply", "ply_path": ["1", 0]}
[01:18] [ComfyUI] [INFO] Node 3: GaussianMerge
[01:18] [ComfyUI] [INFO] Inputs: {"target_count": 100000, "output_filename": "merged", "opacity_threshold": 0, "k": 24, "ply_path": ["1", 0]}
[01:18] [ComfyUI] [INFO] Node 4: PreviewGaussians
[01:18] [ComfyUI] [INFO] Inputs: {"fov_degrees": 50, "image_width": 512, "image_height": 512, "renderer": "spark", "transport_format": "ply", "ply_path": ["3", 0]}
[01:18] [ComfyUI] [INFO] Generated prompt_id: 8b0c3ccf-1fe3-4905-8819-318606318c78
[01:18] [ComfyUI] [INFO] Calling execution.validate_prompt()...
[01:18] [ComfyUI] [INFO] Validation result: valid=True
[01:18] Queuing workflow for execution...
[01:18] [ComfyUI] [INFO] === Validation PASSED ===
[01:18] [ComfyUI] [INFO] got prompt
[01:18] [ComfyUI] [INFO] LoadPLY: apple.ply -> /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/input/apple.ply
[01:18] [ComfyUI] [INFO] GaussianMerge: 200000 -> 100000 splats (ratio=0.5000) via NanoGS MPMM on /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/input/apple.ply
[01:18] Node executed (1 total), capturing...
[01:19] Frame 2 saved (frame_001.jpg, t=0.5s)
[01:19] [capture-node] freeze=6ms shot=894ms unfreeze=3ms saved=True
[01:22] Frame 3 saved (frame_002.jpg, t=3.4s)
[01:22] [capture-periodic] freeze=1ms shot=94ms unfreeze=1ms saved=True
[01:23] [ComfyUI] Loading PLY: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/input/apple.ply
[01:23] [ComfyUI] Initial splats: 200000
[01:23] [ComfyUI] Pruned splats: 200000, target: 100000
[01:23] [ComfyUI] Opacity Mean: 0.53443545 Median: 0.4836207
[01:23] [ComfyUI] Pruning splats with opacity below 0.0000
[01:23] [ComfyUI] Original count: 200000, after opacity pruning: 200000
[01:23] [ComfyUI] After opacity pruning, 200000 splats remain.
[01:23] [ComfyUI]
[01:23] [ComfyUI] Pass 1: 200000 splats
[01:23] [ComfyUI] Edge costs: 0%| | 0/27 [00:00<?, ?it/s]
[01:23] [ComfyUI] Edge costs: 4%|▎ | 1/27 [00:00<00:03, 7.51it/s]
[01:24] [ComfyUI] Edge costs: 7%|▋ | 2/27 [00:00<00:04, 6.01it/s]
[01:24] Frame 4 saved (frame_003.jpg, t=5.6s)
[01:24] [capture-periodic] freeze=3ms shot=106ms unfreeze=2ms saved=True
[01:24] [ComfyUI] Edge costs: 11%|█ | 3/27 [00:00<00:04, 5.88it/s]
[01:24] [ComfyUI] Edge costs: 15%|█▍ | 4/27 [00:00<00:03, 6.38it/s]
[01:24] [ComfyUI] Edge costs: 19%|█▊ | 5/27 [00:00<00:03, 6.88it/s]
[01:24] [ComfyUI] Edge costs: 22%|██▏ | 6/27 [00:00<00:02, 7.20it/s]
[01:24] [ComfyUI] Edge costs: 26%|██▌ | 7/27 [00:01<00:02, 7.44it/s]
[01:24] [ComfyUI] Edge costs: 30%|██▉ | 8/27 [00:01<00:02, 7.34it/s]
[01:25] [ComfyUI] Edge costs: 33%|███▎ | 9/27 [00:01<00:02, 7.25it/s]
[01:25] [ComfyUI] Edge costs: 37%|███▋ | 10/27 [00:01<00:02, 7.34it/s]
[01:25] [ComfyUI] Edge costs: 41%|████ | 11/27 [00:01<00:02, 7.67it/s]
[01:25] [ComfyUI] Edge costs: 44%|████▍ | 12/27 [00:01<00:01, 7.78it/s]
[01:25] [capture-loop] iter=50 t=7.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=79% browser_rss=0.83GB
[01:25] [ComfyUI] Edge costs: 48%|████▊ | 13/27 [00:01<00:01, 7.91it/s]
[01:25] [ComfyUI] Edge costs: 52%|█████▏ | 14/27 [00:01<00:01, 8.01it/s]
[01:25] [ComfyUI] Edge costs: 56%|█████▌ | 15/27 [00:02<00:01, 8.37it/s]
[01:25] [ComfyUI] Edge costs: 59%|█████▉ | 16/27 [00:02<00:01, 8.33it/s]
[01:26] [ComfyUI] Edge costs: 63%|██████▎ | 17/27 [00:02<00:01, 8.15it/s]
[01:26] [ComfyUI] Edge costs: 67%|██████▋ | 18/27 [00:02<00:01, 7.93it/s]
[01:26] [ComfyUI] Edge costs: 70%|███████ | 19/27 [00:02<00:00, 8.08it/s]
[01:26] [ComfyUI] Edge costs: 74%|███████▍ | 20/27 [00:02<00:00, 8.05it/s]
[01:26] [ComfyUI] Edge costs: 78%|███████▊ | 21/27 [00:02<00:00, 7.83it/s]
[01:26] [ComfyUI] Edge costs: 81%|████████▏ | 22/27 [00:02<00:00, 6.71it/s]
[01:26] [ComfyUI] Edge costs: 85%|████████▌ | 23/27 [00:03<00:00, 6.98it/s]
[01:26] [ComfyUI] Edge costs: 89%|████████▉ | 24/27 [00:03<00:00, 7.26it/s]
[01:27] [ComfyUI] Edge costs: 93%|█████████▎| 25/27 [00:03<00:00, 7.44it/s]
[01:27] [ComfyUI] Edge costs: 96%|█████████▋| 26/27 [00:03<00:00, 7.80it/s]
[01:27] [ComfyUI] Edge costs: 100%|██████████| 27/27 [00:03<00:00, 8.30it/s]
[01:31] [capture-loop] iter=100 t=12.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=81% browser_rss=0.83GB
[01:31] [ComfyUI] Edge costs: 100%|██████████| 27/27 [00:03<00:00, 7.55it/s]
[01:31] [ComfyUI] edges: 2697139, pairs: 97792 (need 100000)
[01:31] [ComfyUI] Merging 97792 pairs
[01:31] [ComfyUI]
[01:31] [ComfyUI] Pass 2: 102208 splats
[01:31] [ComfyUI] Edge costs: 0%| | 0/14 [00:00<?, ?it/s]
[01:31] [ComfyUI] Edge costs: 7%|▋ | 1/14 [00:00<00:01, 7.63it/s]
[01:31] [ComfyUI] Edge costs: 14%|█▍ | 2/14 [00:00<00:01, 8.38it/s]
[01:31] [ComfyUI] Edge costs: 21%|██▏ | 3/14 [00:00<00:01, 7.51it/s]
[01:31] [ComfyUI] Edge costs: 29%|██▊ | 4/14 [00:00<00:01, 7.86it/s]
[01:32] [ComfyUI] Edge costs: 36%|███▌ | 5/14 [00:00<00:01, 8.20it/s]
[01:32] [ComfyUI] Edge costs: 43%|████▎ | 6/14 [00:00<00:00, 8.43it/s]
[01:32] [ComfyUI] Edge costs: 50%|█████ | 7/14 [00:00<00:00, 8.53it/s]
[01:32] [ComfyUI] Edge costs: 57%|█████▋ | 8/14 [00:00<00:00, 8.72it/s]
[01:32] [ComfyUI] Edge costs: 64%|██████▍ | 9/14 [00:01<00:00, 8.01it/s]
[01:32] [ComfyUI] Edge costs: 71%|███████▏ | 10/14 [00:01<00:00, 8.13it/s]
[01:32] [ComfyUI] Edge costs: 79%|███████▊ | 11/14 [00:01<00:00, 8.33it/s]
[01:32] [ComfyUI] Edge costs: 86%|████████▌ | 12/14 [00:01<00:00, 8.45it/s]
[01:32] [ComfyUI] Edge costs: 93%|█████████▎| 13/14 [00:01<00:00, 8.49it/s]
[01:35] [ComfyUI] Edge costs: 100%|██████████| 14/14 [00:01<00:00, 8.68it/s]
[01:35] [ComfyUI] [INFO] GaussianMerge: wrote /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1927/ComfyUI/output/merged.ply (100000 splats, 23.7 MB)
[01:35] [ComfyUI] [INFO] Prompt executed in 16.82 seconds
[01:35] Node executed (2 total), capturing...
[01:36] Frame 5 saved (frame_004.jpg, t=17.2s)
[01:36] [capture-node] freeze=4ms shot=608ms unfreeze=0ms saved=True
[01:36] Execution complete (t=17.2s)
[01:36] [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear...
[01:36] [3d-wait] Phase 1 done in 0.0s
[01:36] [3d-wait] Phase 2: iframes=2
[01:36] [3d-wait] iframe viewer_ready=True (matched 1 console logs)
[01:36] [3d-wait] Unfrozen in 0.001s, rendering for 5s...
[01:41] [3d-wait] JS halted via CDP after 5.1s
[01:42] [3d-wait] Re-frozen in 6.2s
[01:42] [3d-wait] Total 3D wait: 6.2s
[01:42] Captured 5 unique frames over 24.11s
[01:42] [debug] iframes: 2
[01:42] [debug] iframe[0]: src=http://127.0.0.1:41892/extensions/ComfyUI-GaussianPack/viewer_gaussian.html?v=17, canvas=486x225, rafFrozen=True
[01:42] [debug] iframe[1]: src=http://127.0.0.1:41892/extensions/ComfyUI-GaussianPack/viewer_gaussian.html?v=17, canvas=486x225, rafFrozen=True
[01:42] [timing] trigger_3d_previews: 0.0s
[01:44] Saved high-quality screenshot: merge_splats_executed.png
[01:44] [timing] final_screenshot: 0.2s
[01:44] [ComfyUI] [INFO] Using RAM pressure cache.
[01:44] Results saved to /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GaussianPack-1927/dev/macos-cpu/results.json
[01:45] Saved: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GaussianPack-1927/dev/macos-cpu/index.html
[01:45] [EXECUTION] PASSED
[01:45]
[00:29] Starting ComfyUI server on port 41894...
[00:29] CUDA mock packages: gsplat
[00:29] Starting ComfyUI server on port 41894...
[00:29] Waiting for server to be ready (timeout: 600s)...
[00:30] [ComfyUI] [INFO] setup plugin alembic.autogenerate.schemas
[00:30] [ComfyUI] [INFO] setup plugin alembic.autogenerate.tables
[00:30] [ComfyUI] [INFO] setup plugin alembic.autogenerate.types
[00:30] [ComfyUI] [INFO] setup plugin alembic.autogenerate.constraints
[00:30] [ComfyUI] [INFO] setup plugin alembic.autogenerate.defaults
[00:30] [ComfyUI] [INFO] setup plugin alembic.autogenerate.comments
[00:30] [ComfyUI] [WARNING] Could not autodetect AIMDO implementation, assuming Nvidia
[00:30] [ComfyUI] [INFO] comfy-aimdo unsupported operating system: Darwin
[00:30] [ComfyUI] [INFO] NOTE: comfy-aimdo currently only supports Windows and Linux
[00:30] [ComfyUI] [INFO]
[00:30] [ComfyUI] Prestartup times for custom nodes:
[00:30] [ComfyUI] [INFO] 0.1 seconds: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack
[00:30] [ComfyUI] [INFO]
[00:35] [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']}
[00:35] [ComfyUI] [INFO] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []}
[00:35] [ComfyUI] [INFO] Found comfy_kitchen backend cuda: {'available': False, 'disabled': True, 'unavailable_reason': 'Extension file not found: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/venv/lib/python3.13/site-packages/comfy_kitchen/backends/cuda/_C.abi3.so', 'capabilities': []}
[00:35] [ComfyUI] [INFO] Checkpoint files will always be loaded safely.
[00:35] [ComfyUI] [INFO] Total VRAM 7168 MB, total RAM 7168 MB
[00:35] [ComfyUI] [INFO] pytorch version: 2.10.0
[00:35] [ComfyUI] [INFO] Mac Version (15, 7, 7)
[00:35] [ComfyUI] [INFO] Set vram state to: SHARED
[00:35] [ComfyUI] [INFO] Device: mps
[00:36] [ComfyUI] [INFO] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention
[00:41] [ComfyUI] [INFO] Python version: 3.13.13 (v3.13.13:01104ce1beb, Apr 7 2026, 14:43:30) [Clang 16.0.0 (clang-1600.0.26.6)]
[00:41] [ComfyUI] [INFO] ComfyUI version: 0.24.0
[00:41] [ComfyUI] [INFO] comfy-aimdo version: 0.4.9
[00:41] [ComfyUI] [INFO] comfy-kitchen version: 0.2.10
[00:41] [ComfyUI] [WARNING] ****** User settings have been changed to be stored on the server instead of browser storage. ******
[00:41] [ComfyUI] [WARNING] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ******
[00:41] [ComfyUI] [INFO] comfyui-frontend-package version: 1.45.15
[00:41] [ComfyUI] [INFO] comfyui-workflow-templates version: 0.9.98
[00:41] [ComfyUI] [INFO] comfyui-embedded-docs version: 0.5.2
[00:41] [ComfyUI] [INFO] comfy-kitchen version: 0.2.10
[00:41] [ComfyUI] [INFO] comfy-aimdo version: 0.4.9
[00:41] [ComfyUI] [INFO] [Prompt Server] web root: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/venv/lib/python3.13/site-packages/comfyui_frontend_package/static
[00:41] [ComfyUI] [INFO] Asset seeder disabled
[00:43] [ComfyUI] [comfy-env] Version: 0.3.89
[00:43] [ComfyUI] [comfy-env] register_nodes: ComfyUI-GaussianPack
[00:43] [ComfyUI] [comfy-env] ComfyUI source dir: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI
[00:43] [ComfyUI] [comfy-env] Workspace: /Users/runner/.ce
[00:43] [ComfyUI] [comfy-env] Found 1 isolation env(s)
[00:43] [ComfyUI] [comfy-env] Scanning nodes metadata (isolation root)...
[00:43] [ComfyUI] [comfy-env] Metadata scan: /Users/runner/.pixi/bin/pixi run --as-is --manifest-path /Users/runner/.ce/pixi.toml -e gaussianpack-nodes python /var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_meta_058lfxlx.py /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack nodes /var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_meta_out_jc9jsbck.pkl
[00:43] [ComfyUI] [comfy-env] Scan env PATH for nodes:
[00:43] [ComfyUI] [comfy-env] [0] /Users/runner/hostedtoolcache/Python/3.13.13/arm64/bin
[00:43] [ComfyUI] [comfy-env] [1] /Users/runner/hostedtoolcache/Python/3.13.13/arm64
[00:43] [ComfyUI] [comfy-env] [2] /opt/homebrew/lib/ruby/gems/3.3.0/bin
[00:43] [ComfyUI] [comfy-env] [3] /opt/homebrew/opt/ruby@3.3/bin
[00:43] [ComfyUI] [comfy-env] [4] /Users/runner/.local/bin
[00:43] [ComfyUI] [comfy-env] [5] /opt/homebrew/bin
[00:43] [ComfyUI] [comfy-env] [6] /opt/homebrew/sbin
[00:43] [ComfyUI] [comfy-env] [7] /Users/runner/.cargo/bin
[00:43] [ComfyUI] [comfy-env] [8] /usr/local/opt/curl/bin
[00:43] [ComfyUI] [comfy-env] [9] /usr/local/bin
[00:43] [ComfyUI] [comfy-env] [10] /usr/local/sbin
[00:43] [ComfyUI] [comfy-env] [11] /Users/runner/bin
[00:43] [ComfyUI] [comfy-env] [12] /Users/runner/.yarn/bin
[00:43] [ComfyUI] [comfy-env] [13] /Users/runner/Library/Android/sdk/tools
[00:43] [ComfyUI] [comfy-env] [14] /Users/runner/Library/Android/sdk/platform-tools
[00:43] [ComfyUI] [comfy-env] [15] /Library/Frameworks/Python.framework/Versions/Current/bin
[00:43] [ComfyUI] [comfy-env] [16] /Library/Frameworks/Mono.framework/Versions/Current/Commands
[00:43] [ComfyUI] [comfy-env] [17] /usr/bin
[00:43] [ComfyUI] [comfy-env] [18] /bin
[00:43] [ComfyUI] [comfy-env] [19] /usr/sbin
[00:43] [ComfyUI] [comfy-env] [20] /sbin
[00:43] [ComfyUI] [comfy-env] [21] /Users/runner/.dotnet/tools
[00:46] [ComfyUI] [comfy-env] Metadata scan stderr for nodes:
[00:46] [ComfyUI] [comfy-env] [meta-scan] importing nodes from /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack
[00:46] [ComfyUI] [comfy-env] SPZ route not registered (ModuleNotFoundError: No module named 'comfy_aimdo')
[00:46] [ComfyUI] [comfy-env] [meta-scan] import OK
[00:46] [ComfyUI] [comfy-env] Scanned nodes: 10 nodes (2.5s)
[00:46] [ComfyUI] [comfy-env] Scanned nodes root: 10 nodes (2.5s)
[00:46] [ComfyUI] [comfy-env] Imported nodes root: 10 nodes (isolation)
[00:46] [ComfyUI] [comfy-env] Registered 10 total nodes
[00:46] [ComfyUI] [INFO]
[00:46] [ComfyUI] Import times for custom nodes:
[00:46] [ComfyUI] [INFO] 0.0 seconds: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/websocket_image_save.py
[00:46] [ComfyUI] [INFO] 0.0 seconds: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-validate-endpoint
[00:46] [ComfyUI] [INFO] 2.6 seconds: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack
[00:46] [ComfyUI] [INFO]
[00:46] [ComfyUI] [INFO] Context impl SQLiteImpl.
[00:46] [ComfyUI] [INFO] Will assume non-transactional DDL.
[00:46] [ComfyUI] [INFO] Context impl SQLiteImpl.
[00:46] [ComfyUI] [INFO] Will assume non-transactional DDL.
[00:46] [ComfyUI] [INFO] Running upgrade -> 0001_assets, Initial assets schema
[00:46] [ComfyUI] Revision ID: 0001_assets
[00:46] [ComfyUI] Revises: None
[00:46] [ComfyUI] Create Date: 2025-12-10 00:00:00
[00:46] [ComfyUI] [INFO] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table.
[00:46] [ComfyUI] [INFO] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references.
[00:46] [ComfyUI] Change preview_id FK from assets.id to asset_references.id.
[00:46] [ComfyUI] [INFO] Database upgraded from None to 0003_add_metadata_job_id
[00:46] [ComfyUI] [INFO] Using RAM pressure cache.
[00:46] [ComfyUI] [INFO] Starting server
[00:46] [ComfyUI]
[00:46] [ComfyUI] [INFO] To see the GUI go to: http://127.0.0.1:41894
[00:47] Server responding, waiting for nodes to load...
[01:07] Server is ready!
[01:07] Checking for import errors in server logs...
[01:07] No import errors detected
[01:07] Found 781 registered nodes
[01:07] [REGISTRATION] PASSED
[01:07]
[01:07] [4/5] INSTANTIATION
[01:07] ----------------------------------------
[01:07]
[DEBUG] server=<comfy_test.comfyui.server.ComfyUIServer object at 0x103cc8830>, api=<comfy_test.comfyui.api.ComfyUIAPI object at 0x103cc9fd0>
[01:07] Testing node constructors...
[01:08] All 10 node(s) instantiated successfully!
[01:08] [INSTANTIATION] PASSED
[01:08]
[01:08] [5/5] EXECUTION
[01:08] ----------------------------------------
[01:08]
[DEBUG] server=<comfy_test.comfyui.server.ComfyUIServer object at 0x103cc8830>, api=<comfy_test.comfyui.api.ComfyUIAPI object at 0x103cc9fd0>
[01:08] CPU runner - will execute 4 workflow(s)
[01:08] Running 4 workflow(s) (all with videos)...
[01:08] Installing screenshot dependencies (playwright, pillow)...
[01:09] Packages installed, downloading chromium browser...
[01:18] Screenshot dependencies installed successfully
[01:18] Starting headless browser...
[01:18] macOS -- using Apple Metal GPU via ANGLE
[01:18] [ComfyUI] [INFO] Using RAM pressure cache.
[01:18] Capturing execution frames: gaussian_analysis.json
[01:19] [ComfyUI] [INFO] Using RAM pressure cache.
[01:24] Frame 1 saved (frame_000.jpg, t=0.0s)
[01:24] Validating workflow...
[01:24] [ComfyUI] [INFO] === /validate endpoint called ===
[01:24] [ComfyUI] [INFO] Received JSON with keys: ['prompt']
[01:24] [ComfyUI] [INFO] Prompt has 4 nodes
[01:24] [ComfyUI] [INFO] Node 1: LoadPLY
[01:24] [ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"}
[01:24] [ComfyUI] [INFO] Node 19: GaussianAnalysis
[01:24] [ComfyUI] [INFO] Inputs: {"ply_path": ["1", 0]}
[01:24] [ComfyUI] [INFO] Node 20: LoadPLY
[01:24] [ComfyUI] [INFO] Inputs: {"ply_file": "compressed_room.ply"}
[01:24] [ComfyUI] [INFO] Node 21: GaussianAnalysis
[01:24] [ComfyUI] [INFO] Inputs: {"ply_path": ["20", 0]}
[01:24] [ComfyUI] [INFO] Generated prompt_id: 7cb8307a-51e6-4f0b-bd81-03b5b475d3c9
[01:24] [ComfyUI] [INFO] Calling execution.validate_prompt()...
[01:24] Queuing workflow for execution...
[01:24] [ComfyUI] [INFO] Validation result: valid=True
[01:24] [ComfyUI] [INFO] === Validation PASSED ===
[01:24] [ComfyUI] [INFO] got prompt
[01:24] [ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'compressed_room.ply'
[01:24] [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[01:24] [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI'}
[01:24] [ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[01:24] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:24] [ComfyUI] [ComfyUI-GaussianPack] python: /Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[01:24] [ComfyUI] [ComfyUI-GaussianPack] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack', '/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/lib/python3.13/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack']
[01:24] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[01:24] [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/.ce/pixi.toml', '-e', 'gaussianpack-nodes', 'python', '/var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfyui_pvenv_ck272ns8/persistent_worker.py', 'unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_8caae8a81655.sock']...
[01:24] [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_8caae8a81655.sock exists=True
[01:25] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:25] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[01:25] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:25] [ComfyUI] [SubprocessWorker] call_id=1 sending call_method
[01:25] [ComfyUI] [worker:ComfyUI-GaussianPack] WARNING: SPZ route not registered (ModuleNotFoundError: No module named 'comfy_aimdo')
[01:25] [ComfyUI] [SubprocessWorker] got response: ok
[01:25] [ComfyUI] [comfy-env] LoadPLY done (0.88s): result: list[1]
[01:25] [ComfyUI] [comfy-env] Running GaussianAnalysis: ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[01:25] [ComfyUI] [SubprocessWorker] call_method: nodes.analyze_gaussians.GaussianAnalysis.analyze
[01:25] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:25] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[01:25] [ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[01:25] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:25] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[01:25] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:25] [ComfyUI] [SubprocessWorker] call_id=2 sending call_method
[01:25] [ComfyUI] [SubprocessWorker] got response: ok
[01:25] [ComfyUI] [comfy-env] GaussianAnalysis done (0.00s): result: dict
[01:25] [ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'apple.ply'
[01:25] [ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[01:25] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:25] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[01:25] [ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[01:25] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:25] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[01:25] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:25] [ComfyUI] [SubprocessWorker] call_id=3 sending call_method
[01:25] [ComfyUI] [SubprocessWorker] got response: ok
[01:25] [ComfyUI] [comfy-env] LoadPLY done (0.00s): result: list[1]
[01:25] [ComfyUI] [comfy-env] Running GaussianAnalysis: ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[01:25] [ComfyUI] [SubprocessWorker] call_method: nodes.analyze_gaussians.GaussianAnalysis.analyze
[01:25] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:25] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[01:25] [ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[01:25] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:25] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[01:25] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:25] [ComfyUI] [SubprocessWorker] call_id=4 sending call_method
[01:25] [ComfyUI] [SubprocessWorker] got response: ok
[01:25] [ComfyUI] [comfy-env] GaussianAnalysis done (0.00s): result: dict
[01:25] [ComfyUI] [INFO] Prompt executed in 0.89 seconds
[01:25] Node executed (2 total), capturing...
[01:26] Frame 2 saved (frame_001.jpg, t=1.2s)
[01:26] [capture-node] freeze=2ms shot=67ms unfreeze=0ms saved=True
[01:26] Execution complete (t=1.3s)
[01:26] [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear...
[01:26] [3d-wait] Phase 1 done in 0.0s
[01:26] [3d-wait] Phase 2: iframes=0
[01:26] [3d-wait] Total 3D wait: 0.0s
[01:26] Captured 2 unique frames over 1.35s
[01:26] [debug] iframes: 0
[01:26] [timing] trigger_3d_previews: 0.0s
[01:28] Saved high-quality screenshot: gaussian_analysis_executed.png
[01:28] [timing] final_screenshot: 0.1s
[01:28] [ComfyUI] [INFO] Using RAM pressure cache.
[01:28] [ComfyUI] [INFO] Using RAM pressure cache.
[01:28] Capturing execution frames: merge_splats.json
[01:28] [ComfyUI] [INFO] Using RAM pressure cache.
[01:33] Frame 1 saved (frame_000.jpg, t=0.0s)
[01:33] Validating workflow...
[01:33] [ComfyUI] [INFO] === /validate endpoint called ===
[01:33] [ComfyUI] [INFO] Received JSON with keys: ['prompt']
[01:33] [ComfyUI] [INFO] Prompt has 3 nodes
[01:33] [ComfyUI] [INFO] Node 1: LoadPLY
[01:33] [ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"}
[01:33] [ComfyUI] [INFO] Node 12: GaussianMerge
[01:33] [ComfyUI] [INFO] Inputs: {"target_count": 100000, "output_filename": "applemerged", "opacity_threshold": 0.1, "k": 16, "backend": "nanogs_cpu", "ply_path": ["1", 0]}
[01:33] [ComfyUI] [INFO] Node 14: PreviewGaussianDual
[01:33] [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]}
[01:33] [ComfyUI] [INFO] Generated prompt_id: ab2ecc4f-5bbb-4b56-a217-2b6af814dd59
[01:33] [ComfyUI] [INFO] Calling execution.validate_prompt()...
[01:33] [ComfyUI] [INFO] Validation result: valid=True
[01:33] [ComfyUI] [INFO] === Validation PASSED ===
[01:33] Queuing workflow for execution...
[01:33] [ComfyUI] [INFO] got prompt
[01:33] [ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'apple.ply'
[01:33] [ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[01:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:33] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[01:33] [ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[01:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:33] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[01:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:33] [ComfyUI] [SubprocessWorker] call_id=5 sending call_method
[01:33] [ComfyUI] [SubprocessWorker] got response: ok
[01:33] [ComfyUI] [comfy-env] LoadPLY done (0.00s): result: list[1]
[01:33] [ComfyUI] [comfy-env] Running GaussianMerge: target_count: 100000, output_filename: 'applemerged', opacity_threshold: 0.1, k: 16, backend: 'nanogs_cpu', ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[01:33] [ComfyUI] [SubprocessWorker] call_method: nodes.merge_gaussians.GaussianMerge.merge
[01:33] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:33] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[01:33] [ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[01:33] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:33] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:33] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[01:33] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:33] [ComfyUI] [SubprocessWorker] call_id=6 sending call_method
[01:33] [ComfyUI] [worker:ComfyUI-GaussianPack] Loading PLY: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/input/apple.ply
[01:33] [ComfyUI] [worker:ComfyUI-GaussianPack] Initial splats: 200000
[01:33] [ComfyUI] [worker:ComfyUI-GaussianPack] Pruned splats: 200000, target: 100000
[01:33] [ComfyUI] [worker:ComfyUI-GaussianPack] Opacity Mean: 0.53443545 Median: 0.4836207
[01:33] [ComfyUI] [worker:ComfyUI-GaussianPack] Pruning splats with opacity below 0.1000
[01:33] [ComfyUI] [worker:ComfyUI-GaussianPack] Original count: 200000, after opacity pruning: 200000
[01:33] [ComfyUI] [worker:ComfyUI-GaussianPack] After opacity pruning, 200000 splats remain.
[01:33] [ComfyUI] [worker:ComfyUI-GaussianPack] Pass 1: 200000 splats
[01:35] Frame 2 saved (frame_001.jpg, t=2.1s)
[01:35] [capture-periodic] freeze=1ms shot=65ms unfreeze=2ms saved=True
[01:36] [ComfyUI]
[01:36] [ComfyUI] Edge costs: 0%| | 0/19 [00:00<?, ?it/s]
[01:36] [ComfyUI] Edge costs: 5%|▌ | 1/19 [00:00<00:02, 8.47it/s]
[01:36] [ComfyUI] Edge costs: 11%|█ | 2/19 [00:00<00:01, 9.11it/s]
[01:37] [ComfyUI] Edge costs: 16%|█▌ | 3/19 [00:00<00:01, 9.20it/s]
[01:37] [ComfyUI] Edge costs: 21%|██ | 4/19 [00:00<00:01, 9.45it/s]
[01:37] [ComfyUI] Edge costs: 26%|██▋ | 5/19 [00:00<00:01, 9.53it/s]
[01:37] [ComfyUI] Edge costs: 32%|███▏ | 6/19 [00:00<00:01, 9.68it/s]
[01:37] [ComfyUI] Edge costs: 37%|███▋ | 7/19 [00:00<00:01, 9.67it/s]
[01:37] Frame 3 saved (frame_002.jpg, t=4.3s)
[01:37] [capture-periodic] freeze=2ms shot=61ms unfreeze=2ms saved=True
[01:37] [ComfyUI] Edge costs: 42%|████▏ | 8/19 [00:00<00:01, 9.65it/s]
[01:37] [ComfyUI] Edge costs: 47%|████▋ | 9/19 [00:00<00:01, 9.44it/s]
[01:37] [ComfyUI] Edge costs: 53%|█████▎ | 10/19 [00:01<00:00, 9.49it/s]
[01:37] [ComfyUI] Edge costs: 58%|█████▊ | 11/19 [00:01<00:00, 9.60it/s]
[01:38] [ComfyUI] Edge costs: 63%|██████▎ | 12/19 [00:01<00:00, 9.68it/s]
[01:38] [ComfyUI] Edge costs: 68%|██████▊ | 13/19 [00:01<00:00, 9.71it/s]
[01:38] [ComfyUI] Edge costs: 74%|███████▎ | 14/19 [00:01<00:00, 9.31it/s]
[01:38] [ComfyUI] Edge costs: 79%|███████▉ | 15/19 [00:01<00:00, 9.37it/s]
[01:38] [ComfyUI] Edge costs: 84%|████████▍ | 16/19 [00:01<00:00, 9.50it/s]
[01:38] [ComfyUI] Edge costs: 89%|████████▉ | 17/19 [00:01<00:00, 9.59it/s]
[01:38] [ComfyUI] Edge costs: 95%|█████████▍| 18/19 [00:01<00:00, 9.70it/s]
[01:38] [ComfyUI] Edge costs: 100%|██████████| 19/19 [00:01<00:00, 9.78it/s]
[01:38] [capture-loop] iter=50 t=5.5s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=52% browser_rss=0.66GB
[01:39] [ComfyUI] [worker:ComfyUI-GaussianPack] edges: 1848776, pairs: 96906 (need 100000)
[01:39] [ComfyUI] [worker:ComfyUI-GaussianPack] Merging 96906 pairs
[01:39] [ComfyUI] [worker:ComfyUI-GaussianPack] Pass 2: 103094 splats
[01:39] Frame 4 saved (frame_003.jpg, t=6.5s)
[01:39] [capture-periodic] freeze=2ms shot=66ms unfreeze=2ms saved=True
[01:41] [ComfyUI]
[01:41] [ComfyUI] Edge costs: 0%| | 0/10 [00:00<?, ?it/s]
[01:41] [ComfyUI] Edge costs: 10%|█ | 1/10 [00:00<00:00, 9.83it/s]
[01:41] [ComfyUI] Edge costs: 20%|██ | 2/10 [00:00<00:00, 9.85it/s]
[01:41] [ComfyUI] Edge costs: 30%|███ | 3/10 [00:00<00:00, 9.65it/s]
[01:41] [ComfyUI] Edge costs: 40%|████ | 4/10 [00:00<00:00, 9.72it/s]
[01:41] [ComfyUI] Edge costs: 50%|█████ | 5/10 [00:00<00:00, 9.67it/s]
[01:41] [ComfyUI] Edge costs: 60%|██████ | 6/10 [00:00<00:00, 9.73it/s]
[01:41] [ComfyUI] Edge costs: 70%|███████ | 7/10 [00:00<00:00, 9.72it/s]
[01:42] [ComfyUI] Edge costs: 80%|████████ | 8/10 [00:00<00:00, 9.77it/s]
[01:42] [ComfyUI] Edge costs: 90%|█████████ | 9/10 [00:00<00:00, 9.50it/s]
[01:42] [ComfyUI] Edge costs: 100%|██████████| 10/10 [00:00<00:00, 10.49it/s]
[01:42] [ComfyUI] [worker:ComfyUI-GaussianPack] edges: 919857, pairs: 3094 (need 3094)
[01:42] [ComfyUI] [worker:ComfyUI-GaussianPack] Merging 3094 pairs
[01:42] [ComfyUI] [worker:ComfyUI-GaussianPack] Final splats: 100000
[01:44] [capture-loop] iter=100 t=10.9s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=74% browser_rss=0.65GB
[01:44] [ComfyUI] [SubprocessWorker] got response: ok
[01:44] [ComfyUI] [comfy-env] GaussianMerge done (11.47s): result: dict
[01:44] [ComfyUI] [comfy-env] Running PreviewGaussianDual: layout: 'slider', camera_mode: 'orbit', fov_degrees: 70.0, renderer: 'playcanvas', transport_format: 'ply', ply_path_1: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp..., ply_path_2: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[01:44] [ComfyUI] [SubprocessWorker] call_method: nodes.preview_gaussian_dual.PreviewGaussianDual.preview
[01:44] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[01:44] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[01:44] [ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[01:44] [ComfyUI] [SubprocessWorker] worker started/confirmed
[01:44] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[01:44] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[01:44] [ComfyUI] [SubprocessWorker] sending request via socket...
[01:44] [ComfyUI] [SubprocessWorker] call_id=7 sending call_method
[01:44] [ComfyUI] [SubprocessWorker] got response: ok
[01:44] [ComfyUI] [comfy-env] PreviewGaussianDual done (0.00s): result: dict
[01:44] [ComfyUI] [INFO] Prompt executed in 11.47 seconds
[01:44] Node executed (2 total), capturing...
[01:45] Frame 5 saved (frame_004.jpg, t=11.7s)
[01:45] [capture-node] freeze=2ms shot=942ms unfreeze=0ms saved=True
[01:45] Execution complete (t=11.7s)
[01:45] [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear...
[01:45] [3d-wait] Phase 1 done in 0.0s
[01:45] [3d-wait] Phase 2: iframes=1
[01:45] [3d-wait] iframe viewer_ready=False (matched 0 console logs)
[01:45] [3d-wait] Waiting for 'Loaded successfully' console message (timeout=60s)...
[02:45] [3d-wait] iframe wait exception: Timeout 60000ms exceeded while waiting for event "console"
=========================== logs ===========================
waiting for event "console"
============================================================
[02:45] [3d-wait] Total 3D wait: 60.0s
[02:45] Captured 5 unique frames over 72.73s
[02:45] [debug] iframes: 1
[02:45] [debug] iframe[0]: src=http://127.0.0.1:41894/extensions/ComfyUI-GaussianPack/viewer_gaussian_dual.html, canvas=486x240, rafFrozen=True
[02:45] [timing] trigger_3d_previews: 0.0s
[02:48] Saved high-quality screenshot: merge_splats_executed.png
[02:48] [timing] final_screenshot: 0.1s
[02:48] [ComfyUI] [INFO] Using RAM pressure cache.
[02:48] [ComfyUI] [INFO] Using RAM pressure cache.
[02:48] Capturing execution frames: rotate_splats.json
[02:48] [ComfyUI] [INFO] Using RAM pressure cache.
[02:53] Frame 1 saved (frame_000.jpg, t=0.0s)
[02:53] Validating workflow...
[02:53] [ComfyUI] [INFO] === /validate endpoint called ===
[02:53] [ComfyUI] [INFO] Received JSON with keys: ['prompt']
[02:53] [ComfyUI] [INFO] Prompt has 3 nodes
[02:53] [ComfyUI] [INFO] Node 1: LoadPLY
[02:53] [ComfyUI] [INFO] Inputs: {"ply_file": "apple.ply"}
[02:53] [ComfyUI] [INFO] Node 14: PreviewGaussianDual
[02:53] [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]}
[02:53] [ComfyUI] [INFO] Node 18: TransformGaussian
[02:53] Queuing workflow for execution...
[02:53] [ComfyUI] [INFO] Inputs: {"rotate_x": -90, "rotate_y": 0, "rotate_z": 0, "ply_path": ["1", 0]}
[02:53] [ComfyUI] [INFO] Generated prompt_id: a95eea2e-703b-4946-9b22-e2dc06e4e22d
[02:53] [ComfyUI] [INFO] Calling execution.validate_prompt()...
[02:53] [ComfyUI] [INFO] Validation result: valid=True
[02:53] [ComfyUI] [INFO] === Validation PASSED ===
[02:53] [ComfyUI] [INFO] got prompt
[02:53] [ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'apple.ply'
[02:53] [ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[02:53] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:53] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[02:53] [ComfyUI] [ComfyUI-GaussianPack] Health check: failed
[02:53] [ComfyUI] [ComfyUI-GaussianPack] Socket unhealthy, restarting worker...
[02:53] [ComfyUI] [ComfyUI-GaussianPack] python: /Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[02:53] [ComfyUI] [ComfyUI-GaussianPack] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack', '/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/lib/python3.13/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack']
[02:53] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[02:53] [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/.ce/pixi.toml', '-e', 'gaussianpack-nodes', 'python', '/var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfyui_pvenv_ck272ns8/persistent_worker.py', 'unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1e3310afad0b.sock']...
[02:53] [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1e3310afad0b.sock exists=True
[02:53] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:53] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:53] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:53] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:53] [ComfyUI] [SubprocessWorker] call_id=8 sending call_method
[02:54] [ComfyUI] [worker:ComfyUI-GaussianPack] WARNING: SPZ route not registered (ModuleNotFoundError: No module named 'comfy_aimdo')
[02:54] [ComfyUI] [SubprocessWorker] got response: ok
[02:54] [ComfyUI] [comfy-env] LoadPLY done (1.08s): result: list[1]
[02:54] [ComfyUI] [comfy-env] Running TransformGaussian: rotate_x: -90.0, rotate_y: 0.0, rotate_z: 0.0, ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[02:54] [ComfyUI] [SubprocessWorker] call_method: nodes.transform_gaussian.TransformGaussian.transform
[02:54] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:54] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[02:54] [ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[02:54] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:54] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:54] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:54] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:54] [ComfyUI] [SubprocessWorker] call_id=9 sending call_method
[02:54] [ComfyUI] [SubprocessWorker] got response: ok
[02:54] [ComfyUI] [comfy-env] TransformGaussian done (0.51s): result: list[1]
[02:54] [ComfyUI] [comfy-env] Running PreviewGaussianDual: layout: 'slider', camera_mode: 'orbit', fov_degrees: 70.0, renderer: 'playcanvas', transport_format: 'ply', ply_path_1: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp..., ply_path_2: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[02:54] [ComfyUI] [SubprocessWorker] call_method: nodes.preview_gaussian_dual.PreviewGaussianDual.preview
[02:54] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[02:54] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[02:54] [ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[02:54] [ComfyUI] [SubprocessWorker] worker started/confirmed
[02:54] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[02:54] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[02:54] [ComfyUI] [SubprocessWorker] sending request via socket...
[02:54] [ComfyUI] [SubprocessWorker] call_id=10 sending call_method
[02:54] [ComfyUI] [SubprocessWorker] got response: ok
[02:54] [ComfyUI] [comfy-env] PreviewGaussianDual done (0.00s): result: dict
[02:54] [ComfyUI] [INFO] Prompt executed in 1.60 seconds
[02:54] Node executed (1 total), capturing...
[02:55] Frame 2 saved (frame_001.jpg, t=1.9s)
[02:55] [capture-node] freeze=20ms shot=242ms unfreeze=0ms saved=True
[02:55] Execution complete (t=1.9s)
[02:55] [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear...
[02:55] [3d-wait] Phase 1 done in 0.0s
[02:55] [3d-wait] Phase 2: iframes=1
[02:55] [3d-wait] iframe viewer_ready=False (matched 0 console logs)
[02:55] [3d-wait] Waiting for 'Loaded successfully' console message (timeout=60s)...
[03:55] [3d-wait] iframe wait exception: Timeout 60000ms exceeded while waiting for event "console"
=========================== logs ===========================
waiting for event "console"
============================================================
[03:55] [3d-wait] Total 3D wait: 60.0s
[03:55] Captured 2 unique frames over 62.22s
[03:55] [debug] iframes: 1
[03:55] [debug] iframe[0]: src=http://127.0.0.1:41894/extensions/ComfyUI-GaussianPack/viewer_gaussian_dual.html, canvas=486x214, rafFrozen=True
[03:55] [timing] trigger_3d_previews: 0.0s
[03:57] Saved high-quality screenshot: rotate_splats_executed.png
[03:57] [timing] final_screenshot: 0.1s
[03:57] [ComfyUI] [INFO] Using RAM pressure cache.
[03:57] [ComfyUI] [INFO] Using RAM pressure cache.
[03:57] Capturing execution frames: spectate.json
[03:57] [ComfyUI] [INFO] Using RAM pressure cache.
[04:02] Frame 1 saved (frame_000.jpg, t=0.0s)
[04:02] Validating workflow...
[04:02] [ComfyUI] [INFO] === /validate endpoint called ===
[04:02] [ComfyUI] [INFO] Received JSON with keys: ['prompt']
[04:02] [ComfyUI] [INFO] Prompt has 2 nodes
[04:02] [ComfyUI] [INFO] Node 1: LoadPLY
[04:02] [ComfyUI] [INFO] Inputs: {"ply_file": "compressed_room.ply"}
[04:02] [ComfyUI] [INFO] Node 2: PreviewGaussians
[04:02] [ComfyUI] [INFO] Inputs: {"camera_mode": "spectate", "fov_degrees": 70, "renderer": "playcanvas", "transport_format": "ply", "ply_path": ["1", 0]}
[04:02] [ComfyUI] [INFO] Generated prompt_id: b76b44ee-ecd9-4511-837e-6847b53313e8
[04:02] [ComfyUI] [INFO] Calling execution.validate_prompt()...
[04:02] [ComfyUI] [INFO] Validation result: valid=True
[04:02] [ComfyUI] [INFO] === Validation PASSED ===
[04:02] Queuing workflow for execution...
[04:02] [ComfyUI] [INFO] got prompt
[04:02] [ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'compressed_room.ply'
[04:02] [ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load
[04:02] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:02] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[04:02] [ComfyUI] [ComfyUI-GaussianPack] Health check: failed
[04:02] [ComfyUI] [ComfyUI-GaussianPack] Socket unhealthy, restarting worker...
[04:02] [ComfyUI] [ComfyUI-GaussianPack] python: /Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[04:02] [ComfyUI] [ComfyUI-GaussianPack] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack', '/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/lib/python3.13/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack']
[04:02] [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python
[04:02] [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/.ce/pixi.toml', '-e', 'gaussianpack-nodes', 'python', '/var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfyui_pvenv_ck272ns8/persistent_worker.py', 'unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1a76a7d42288.sock']...
[04:02] [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1a76a7d42288.sock exists=True
[04:02] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:02] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:02] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:02] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:02] [ComfyUI] [SubprocessWorker] call_id=11 sending call_method
[04:03] [ComfyUI] [worker:ComfyUI-GaussianPack] WARNING: SPZ route not registered (ModuleNotFoundError: No module named 'comfy_aimdo')
[04:03] [ComfyUI] [SubprocessWorker] got response: ok
[04:03] [ComfyUI] [comfy-env] LoadPLY done (0.94s): result: list[1]
[04:03] [ComfyUI] [comfy-env] Running PreviewGaussians: camera_mode: 'spectate', fov_degrees: 70.0, renderer: 'playcanvas', transport_format: 'ply', ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...
[04:03] [ComfyUI] [SubprocessWorker] call_method: nodes.preview_gaussian.PreviewGaussians.preview
[04:03] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...
[04:03] [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...
[04:03] [ComfyUI] [ComfyUI-GaussianPack] Health check: ok
[04:03] [ComfyUI] [SubprocessWorker] worker started/confirmed
[04:03] [ComfyUI] [SubprocessWorker] serializing kwargs to shm...
[04:03] [ComfyUI] [SubprocessWorker] created 0 shm blocks
[04:03] [ComfyUI] [SubprocessWorker] sending request via socket...
[04:03] [ComfyUI] [SubprocessWorker] call_id=12 sending call_method
[04:03] [ComfyUI] [SubprocessWorker] got response: ok
[04:03] [ComfyUI] [comfy-env] PreviewGaussians done (0.00s): result: dict
[04:03] [ComfyUI] [INFO] Prompt executed in 0.95 seconds
[04:03] Node executed (1 total), capturing...
[04:03] Frame 2 saved (frame_001.jpg, t=1.2s)
[04:03] [capture-node] freeze=2ms shot=65ms unfreeze=0ms saved=True
[04:03] Execution complete (t=1.2s)
[04:03] [3d-wait] Phase 1: Waiting for 'Loading 3D Model' text to disappear...
[04:03] [3d-wait] Phase 1 done in 0.0s
[04:03] [3d-wait] Phase 2: iframes=1
[04:03] [3d-wait] iframe viewer_ready=False (matched 0 console logs)
[04:03] [3d-wait] Waiting for 'Loaded successfully' console message (timeout=60s)...
[04:04] [3d-wait] Got 'Loaded successfully' after 0.8s
[04:04] [3d-wait] Unfrozen in 0.002s, rendering for 5s...
[04:09] [3d-wait] JS halted via CDP after 5.1s
[04:10] [3d-wait] Re-frozen in 6.2s
[04:10] [3d-wait] Total 3D wait: 7.0s
[04:10] Captured 2 unique frames over 8.3s
[04:10] [debug] iframes: 1
[04:10] [debug] iframe[0]: src=http://127.0.0.1:41894/extensions/ComfyUI-GaussianPack/viewer_gaussian.html?mode, canvas=781x404, rafFrozen=True
[04:10] [timing] trigger_3d_previews: 0.0s
[04:12] Saved high-quality screenshot: spectate_executed.png
[04:12] [timing] final_screenshot: 0.2s
[04:12] [ComfyUI] [INFO] Using RAM pressure cache.
[04:12] Results saved to /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GaussianPack-1247/dev/macos-cpu/results.json
[04:12] Saved: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/GaussianPack-1247/dev/macos-cpu/index.html
[04:12] [EXECUTION] PASSED
[04:12]
macos: PASSED
[01:45] Stopping ComfyUI server...
[04:12] Stopping ComfyUI server...
Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

File diff suppressed because one or more lines are too long
Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 80 KiB

File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

@@ -0,0 +1,20 @@
{
"frames": [
{
"file": "frame_000.jpg",
"time": 0.0,
"log": " [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\nCapturing execution frames: spectate.json\n [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache."
},
{
"file": "frame_001.jpg",
"time": 1.24,
"log": " [ComfyUI] \u001b[32m[INFO]\u001b[0m Using RAM pressure cache.\nCapturing execution frames: spectate.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 [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: b76b44ee-ecd9-4511-837e-6847b53313e8\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 Queuing workflow for execution...\n [ComfyUI] \u001b[32m[INFO]\u001b[0m got prompt\n [ComfyUI] [comfy-env] Running LoadPLY: ply_file: 'compressed_room.ply'\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_ply.LoadPLY.load\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-GaussianPack] Health check: failed\n [ComfyUI] [ComfyUI-GaussianPack] Socket unhealthy, restarting worker...\n [ComfyUI] [ComfyUI-GaussianPack] python: /Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python\n [ComfyUI] [ComfyUI-GaussianPack] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack', '/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/lib/python3.13/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/GaussianPack-1247/ComfyUI/custom_nodes/ComfyUI-GaussianPack']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/.ce/.pixi/envs/gaussianpack-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/.ce/pixi.toml', '-e', 'gaussianpack-nodes', 'python', '/var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfyui_pvenv_ck272ns8/persistent_worker.py', 'unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1a76a7d42288.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/8d/778wjbv96mq1760tv6gk374m0000gn/T/comfy_worker_1a76a7d42288.sock exists=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=11 sending call_method\n [ComfyUI] [worker:ComfyUI-GaussianPack] WARNING: SPZ route not registered (ModuleNotFoundError: No module named 'comfy_aimdo')\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadPLY done (0.94s): result: list[1]\n [ComfyUI] [comfy-env] Running PreviewGaussians: camera_mode: 'spectate', fov_degrees: 70.0, renderer: 'playcanvas', transport_format: 'ply', ply_path: '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_worksp...\n [ComfyUI] [SubprocessWorker] call_method: nodes.preview_gaussian.PreviewGaussians.preview\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-GaussianPack] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-GaussianPack] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=12 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] PreviewGaussians done (0.00s): result: dict\n [ComfyUI] \u001b[32m[INFO]\u001b[0m \u001b[32mPrompt executed in 0.95 seconds\u001b[0m"
},
{
"file": "frame_002.jpg",
"time": 10.547467708587646,
"log": "Final screenshot"
}
],
"total_time": 8.3
}