1617 lines
678 KiB
HTML
1617 lines
678 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>PozzettiAndrea/ComfyUI-SAM3 - Test Results</title>
|
|
<style>
|
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
|
|
body {
|
|
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
background: #0f1923;
|
|
color: #e6edf3;
|
|
min-height: 100vh;
|
|
line-height: 1.6;
|
|
}
|
|
|
|
header {
|
|
background: #162033;
|
|
padding: 1.25rem 2rem;
|
|
border-bottom: 1px solid #243656;
|
|
}
|
|
|
|
body.in-iframe header {
|
|
display: none;
|
|
}
|
|
|
|
body.in-iframe .container {
|
|
padding-top: 1.25rem;
|
|
}
|
|
|
|
body.in-iframe .summary-meta {
|
|
display: flex;
|
|
gap: 0.5rem;
|
|
flex-wrap: wrap;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
h1 {
|
|
font-size: 1.25rem;
|
|
font-weight: 600;
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
|
|
h1 a {
|
|
color: #e6edf3;
|
|
text-decoration: none;
|
|
}
|
|
|
|
h1 a:hover { color: #58a6ff; }
|
|
|
|
.meta-chips {
|
|
display: flex;
|
|
gap: 0.5rem;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
}
|
|
|
|
.meta-chip {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 0.35rem;
|
|
padding: 0.2rem 0.6rem;
|
|
background: #1c2d44;
|
|
border: 1px solid #243656;
|
|
border-radius: 2rem;
|
|
font-size: 0.75rem;
|
|
color: #8ba3c1;
|
|
}
|
|
|
|
.meta-chip svg {
|
|
width: 12px;
|
|
height: 12px;
|
|
fill: currentColor;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.container {
|
|
max-width: 1400px;
|
|
margin: 0 auto;
|
|
padding: 2rem;
|
|
}
|
|
|
|
/* Summary Section */
|
|
.summary {
|
|
background: #162033;
|
|
border: 1px solid #243656;
|
|
border-radius: 8px;
|
|
padding: 1.5rem;
|
|
margin-bottom: 2rem;
|
|
}
|
|
|
|
.progress-wrapper {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 1rem;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.progress-bar {
|
|
background: #1c2d44;
|
|
border-radius: 6px;
|
|
height: 10px;
|
|
overflow: hidden;
|
|
flex: 1;
|
|
}
|
|
|
|
.progress-fill {
|
|
background: #3fb950;
|
|
height: 100%;
|
|
border-radius: 6px;
|
|
transition: width 0.3s ease;
|
|
}
|
|
|
|
.progress-fill.has-failures {
|
|
background: linear-gradient(90deg, #3fb950 0%, #3fb950 75.0%, #f85149 75.0%, #f85149 100%);
|
|
width: 100% !important;
|
|
border-radius: 6px;
|
|
}
|
|
|
|
.progress-label {
|
|
font-size: 0.85rem;
|
|
font-weight: 600;
|
|
color: #8ba3c1;
|
|
white-space: nowrap;
|
|
min-width: 3.5rem;
|
|
text-align: right;
|
|
}
|
|
|
|
.stats {
|
|
display: flex;
|
|
gap: 0.75rem;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
}
|
|
|
|
.stat-badge {
|
|
padding: 0.35rem 0.75rem;
|
|
border-radius: 2rem;
|
|
font-weight: 600;
|
|
font-size: 0.8rem;
|
|
}
|
|
|
|
.stat-pass {
|
|
background: rgba(63, 185, 80, 0.15);
|
|
color: #3fb950;
|
|
}
|
|
|
|
.stat-fail {
|
|
background: rgba(248, 81, 73, 0.15);
|
|
color: #f85149;
|
|
}
|
|
|
|
.stat-total {
|
|
color: #8ba3c1;
|
|
font-size: 0.85rem;
|
|
}
|
|
|
|
/* Failed Section */
|
|
.failed-section {
|
|
background: rgba(248, 81, 73, 0.08);
|
|
border: 1px solid rgba(248, 81, 73, 0.3);
|
|
border-radius: 8px;
|
|
padding: 1.25rem;
|
|
margin-bottom: 2rem;
|
|
}
|
|
|
|
.failed-section h2 {
|
|
color: #f85149;
|
|
font-size: 0.9rem;
|
|
font-weight: 600;
|
|
margin-bottom: 0.75rem;
|
|
}
|
|
|
|
.failed-item {
|
|
background: #162033;
|
|
border: 1px solid #243656;
|
|
border-radius: 6px;
|
|
padding: 1rem;
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
|
|
.failed-item:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.failed-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
|
|
.failed-name {
|
|
font-weight: 600;
|
|
color: #f85149;
|
|
}
|
|
|
|
.failed-duration {
|
|
color: #8ba3c1;
|
|
font-size: 0.8rem;
|
|
}
|
|
|
|
.failed-error {
|
|
background: #0f1923;
|
|
border: 1px solid #243656;
|
|
padding: 0.75rem;
|
|
border-radius: 6px;
|
|
font-family: 'SFMono-Regular', 'Menlo', 'Monaco', monospace;
|
|
font-size: 0.8rem;
|
|
color: #d29922;
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
|
|
.log-link {
|
|
color: #58a6ff;
|
|
text-decoration: none;
|
|
font-size: 0.8rem;
|
|
}
|
|
|
|
.log-link:hover {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
/* Workflow Grid */
|
|
.section-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
margin-bottom: 1.25rem;
|
|
}
|
|
|
|
.section-title {
|
|
font-size: 0.8rem;
|
|
color: #8ba3c1;
|
|
font-weight: 600;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.06em;
|
|
}
|
|
|
|
.view-controls {
|
|
display: flex;
|
|
gap: 0;
|
|
align-items: center;
|
|
border: 1px solid #243656;
|
|
border-radius: 6px;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.view-btn {
|
|
background: #1c2d44;
|
|
color: #8ba3c1;
|
|
border: none;
|
|
border-right: 1px solid #243656;
|
|
padding: 0.3rem 0.75rem;
|
|
cursor: pointer;
|
|
font-size: 0.75rem;
|
|
font-weight: 500;
|
|
transition: all 0.15s;
|
|
}
|
|
|
|
.view-btn:last-child {
|
|
border-right: none;
|
|
}
|
|
|
|
.view-btn:hover {
|
|
background: #243656;
|
|
color: #e6edf3;
|
|
}
|
|
|
|
.view-btn.active {
|
|
background: #58a6ff;
|
|
color: #fff;
|
|
}
|
|
|
|
.workflow-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, 1fr);
|
|
gap: 1rem;
|
|
}
|
|
|
|
.workflow-grid.view-list {
|
|
grid-template-columns: 1fr;
|
|
gap: 0;
|
|
}
|
|
|
|
.workflow-grid.view-list .workflow-card {
|
|
border-radius: 0;
|
|
border-bottom: 1px solid #243656;
|
|
}
|
|
|
|
.workflow-grid.view-list .workflow-card:first-child {
|
|
border-radius: 8px 8px 0 0;
|
|
}
|
|
|
|
.workflow-grid.view-list .workflow-card:last-child {
|
|
border-radius: 0 0 8px 8px;
|
|
border-bottom: none;
|
|
}
|
|
|
|
.workflow-grid.view-list .workflow-card:only-child {
|
|
border-radius: 8px;
|
|
}
|
|
|
|
.workflow-grid.view-list .workflow-screenshot {
|
|
width: 100%;
|
|
height: auto;
|
|
aspect-ratio: auto;
|
|
}
|
|
|
|
.workflow-grid.view-list .workflow-info {
|
|
border-top: 1px solid #243656;
|
|
padding: 0.75rem 1rem;
|
|
}
|
|
|
|
.workflow-grid.view-list .workflow-name {
|
|
max-width: none;
|
|
font-size: 0.9rem;
|
|
}
|
|
|
|
.workflow-card {
|
|
background: #162033;
|
|
border: 1px solid #243656;
|
|
border-radius: 8px;
|
|
overflow: hidden;
|
|
transition: transform 0.15s, border-color 0.15s;
|
|
}
|
|
|
|
.workflow-card:hover {
|
|
transform: translateY(-1px);
|
|
border-color: #4a6282;
|
|
}
|
|
|
|
.workflow-card.clickable {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.workflow-card.failed {
|
|
border-color: #f85149;
|
|
}
|
|
|
|
.workflow-card.failed:hover {
|
|
border-color: #f85149;
|
|
}
|
|
|
|
.workflow-screenshot {
|
|
width: 100%;
|
|
aspect-ratio: 16/10;
|
|
object-fit: cover;
|
|
background: #0f1923;
|
|
display: block;
|
|
}
|
|
|
|
.workflow-screenshot.placeholder {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
color: #4a6282;
|
|
font-size: 0.8rem;
|
|
}
|
|
|
|
.workflow-info {
|
|
padding: 0.75rem 1rem;
|
|
border-top: 1px solid #243656;
|
|
}
|
|
|
|
.workflow-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
margin-bottom: 0.25rem;
|
|
}
|
|
|
|
.workflow-name {
|
|
font-weight: 500;
|
|
font-size: 0.85rem;
|
|
color: #e6edf3;
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
max-width: 65%;
|
|
}
|
|
|
|
.workflow-badge {
|
|
padding: 0.15rem 0.5rem;
|
|
border-radius: 2rem;
|
|
font-size: 0.7rem;
|
|
font-weight: 600;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.03em;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.workflow-badge.pass {
|
|
background: rgba(63, 185, 80, 0.15);
|
|
color: #3fb950;
|
|
}
|
|
|
|
.workflow-badge.fail {
|
|
background: rgba(248, 81, 73, 0.15);
|
|
color: #f85149;
|
|
}
|
|
|
|
.workflow-meta {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
font-size: 0.75rem;
|
|
color: #4a6282;
|
|
}
|
|
|
|
/* Lightbox */
|
|
.lightbox {
|
|
display: none;
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
background: rgba(1, 4, 9, 0.9);
|
|
z-index: 1000;
|
|
justify-content: center;
|
|
align-items: flex-start;
|
|
padding: 2rem;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
.lightbox.active {
|
|
display: flex;
|
|
}
|
|
|
|
.lightbox-content {
|
|
display: flex;
|
|
flex-direction: column;
|
|
max-width: 1200px;
|
|
width: 100%;
|
|
margin: auto;
|
|
}
|
|
|
|
.lightbox-content img {
|
|
max-width: 100%;
|
|
max-height: 60vh;
|
|
object-fit: contain;
|
|
border-radius: 8px;
|
|
border: 1px solid #243656;
|
|
align-self: center;
|
|
cursor: zoom-in;
|
|
}
|
|
|
|
.img-overlay {
|
|
display: none;
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100vw;
|
|
height: 100vh;
|
|
z-index: 1002;
|
|
background: rgba(1, 4, 9, 0.95);
|
|
overflow: auto;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
.img-overlay.active {
|
|
display: flex;
|
|
}
|
|
|
|
.img-overlay.zoomed {
|
|
align-items: flex-start;
|
|
justify-content: flex-start;
|
|
}
|
|
|
|
.img-overlay img {
|
|
max-width: 100%;
|
|
max-height: 100%;
|
|
object-fit: contain;
|
|
cursor: zoom-in;
|
|
}
|
|
|
|
.img-overlay.zoomed img {
|
|
max-width: none;
|
|
max-height: none;
|
|
cursor: zoom-out;
|
|
}
|
|
|
|
.lightbox-close {
|
|
position: fixed;
|
|
top: 1rem;
|
|
right: 1.5rem;
|
|
font-size: 2rem;
|
|
color: #e6edf3;
|
|
cursor: pointer;
|
|
opacity: 0.6;
|
|
background: none;
|
|
border: none;
|
|
z-index: 1001;
|
|
}
|
|
|
|
.lightbox-close:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
.lightbox-nav {
|
|
position: fixed;
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
background: rgba(22, 32, 51, 0.8);
|
|
border: 1px solid #243656;
|
|
color: #e6edf3;
|
|
font-size: 2.5rem;
|
|
width: 48px;
|
|
height: 64px;
|
|
border-radius: 8px;
|
|
cursor: pointer;
|
|
opacity: 0.6;
|
|
z-index: 1001;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
transition: opacity 0.15s;
|
|
padding: 0;
|
|
line-height: 1;
|
|
}
|
|
|
|
.lightbox-nav:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
.lightbox-nav-left { left: 1rem; }
|
|
.lightbox-nav-right { right: 1rem; }
|
|
|
|
.lightbox-info {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding: 1rem 1.25rem;
|
|
background: #162033;
|
|
border: 1px solid #243656;
|
|
border-radius: 8px;
|
|
margin-top: 1rem;
|
|
}
|
|
|
|
.lightbox-title {
|
|
font-size: 1rem;
|
|
font-weight: 600;
|
|
color: #e6edf3;
|
|
}
|
|
|
|
.lightbox-hardware {
|
|
display: block;
|
|
font-size: 0.75rem;
|
|
color: #8ba3c1;
|
|
margin-top: 0.25rem;
|
|
}
|
|
|
|
.lightbox-meta {
|
|
display: flex;
|
|
gap: 1rem;
|
|
align-items: center;
|
|
}
|
|
|
|
.lightbox-badge {
|
|
padding: 0.25rem 0.75rem;
|
|
border-radius: 2rem;
|
|
font-size: 0.8rem;
|
|
font-weight: 600;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.lightbox-badge.pass {
|
|
background: rgba(63, 185, 80, 0.15);
|
|
color: #3fb950;
|
|
}
|
|
|
|
.lightbox-badge.fail {
|
|
background: rgba(248, 81, 73, 0.15);
|
|
color: #f85149;
|
|
}
|
|
|
|
.lightbox-duration {
|
|
color: #8ba3c1;
|
|
font-size: 0.85rem;
|
|
}
|
|
|
|
.lightbox-log {
|
|
background: #0f1923;
|
|
border: 1px solid #243656;
|
|
border-radius: 8px;
|
|
padding: 1rem;
|
|
margin-top: 1rem;
|
|
max-height: 300px;
|
|
overflow-y: auto;
|
|
font-family: 'SFMono-Regular', 'Menlo', 'Monaco', monospace;
|
|
font-size: 0.8rem;
|
|
line-height: 1.5;
|
|
white-space: pre-wrap;
|
|
word-break: break-all;
|
|
color: #8ba3c1;
|
|
}
|
|
|
|
.lightbox-log::-webkit-scrollbar {
|
|
width: 8px;
|
|
}
|
|
|
|
.lightbox-log::-webkit-scrollbar-track {
|
|
background: #162033;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.lightbox-log::-webkit-scrollbar-thumb {
|
|
background: #243656;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.lightbox-log::-webkit-scrollbar-thumb:hover {
|
|
background: #4a6282;
|
|
}
|
|
|
|
/* Resource Graph */
|
|
.resource-graph {
|
|
display: none;
|
|
margin-top: 1rem;
|
|
background: #162033;
|
|
border: 1px solid #243656;
|
|
border-radius: 8px;
|
|
padding: 1rem;
|
|
}
|
|
|
|
.resource-graph.active {
|
|
display: block;
|
|
}
|
|
|
|
.resource-graph-title {
|
|
font-size: 0.8rem;
|
|
color: #8ba3c1;
|
|
font-weight: 500;
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
|
|
.resource-graph canvas {
|
|
width: 100%;
|
|
height: 120px;
|
|
cursor: crosshair;
|
|
}
|
|
|
|
.resource-legend {
|
|
display: flex;
|
|
gap: 1rem;
|
|
margin-top: 0.5rem;
|
|
font-size: 0.75rem;
|
|
color: #8ba3c1;
|
|
}
|
|
|
|
.resource-legend span {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 4px;
|
|
}
|
|
|
|
.resource-legend .dot {
|
|
width: 8px;
|
|
height: 8px;
|
|
border-radius: 50%;
|
|
}
|
|
|
|
.resource-legend .ram { background: #3fb950; }
|
|
.resource-legend .gpu { background: #d29922; }
|
|
|
|
/* Video Player */
|
|
.video-player {
|
|
display: none;
|
|
margin-top: 1rem;
|
|
background: #162033;
|
|
border: 1px solid #243656;
|
|
border-radius: 8px;
|
|
padding: 1rem;
|
|
}
|
|
|
|
.video-player.active {
|
|
display: block;
|
|
}
|
|
|
|
.video-controls {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 1rem;
|
|
margin-top: 0.5rem;
|
|
}
|
|
|
|
.video-play-btn {
|
|
background: #58a6ff;
|
|
color: #fff;
|
|
border: none;
|
|
padding: 0.4rem 1rem;
|
|
border-radius: 6px;
|
|
cursor: pointer;
|
|
font-size: 0.8rem;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.video-play-btn:hover {
|
|
background: #79b8ff;
|
|
}
|
|
|
|
.video-frame-counter {
|
|
color: #8ba3c1;
|
|
font-size: 0.8rem;
|
|
}
|
|
|
|
.video-slider-container {
|
|
padding: 15px 0;
|
|
}
|
|
|
|
/* noUiSlider customization */
|
|
#video-slider {
|
|
height: 6px;
|
|
background: #1c2d44;
|
|
border: none;
|
|
box-shadow: none;
|
|
}
|
|
|
|
#video-slider .noUi-connect {
|
|
background: #58a6ff;
|
|
}
|
|
|
|
#video-slider .noUi-handle {
|
|
width: 16px;
|
|
height: 16px;
|
|
background: #58a6ff;
|
|
border: none;
|
|
border-radius: 50%;
|
|
box-shadow: none;
|
|
top: -5px;
|
|
right: -8px;
|
|
cursor: pointer;
|
|
}
|
|
|
|
#video-slider .noUi-handle:before,
|
|
#video-slider .noUi-handle:after {
|
|
display: none;
|
|
}
|
|
|
|
/* Pips (tick marks) */
|
|
.noUi-pips {
|
|
color: #4a6282;
|
|
}
|
|
|
|
.noUi-marker {
|
|
background: #243656;
|
|
width: 2px;
|
|
}
|
|
|
|
.noUi-marker-large {
|
|
height: 12px;
|
|
}
|
|
|
|
.noUi-value {
|
|
display: none;
|
|
}
|
|
|
|
/* Models Section */
|
|
.models-section {
|
|
margin-top: 2rem;
|
|
margin-bottom: 2rem;
|
|
}
|
|
|
|
.models-total {
|
|
font-size: 0.8rem;
|
|
color: #8ba3c1;
|
|
}
|
|
|
|
.models-folder {
|
|
background: #162033;
|
|
border: 1px solid #243656;
|
|
border-radius: 8px;
|
|
margin-bottom: 0.5rem;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.models-folder-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding: 0.75rem 1rem;
|
|
cursor: pointer;
|
|
user-select: none;
|
|
list-style: none;
|
|
}
|
|
|
|
.models-folder-header::-webkit-details-marker {
|
|
display: none;
|
|
}
|
|
|
|
.models-folder-header::before {
|
|
content: '\25B6';
|
|
font-size: 0.6rem;
|
|
color: #4a6282;
|
|
margin-right: 0.5rem;
|
|
transition: transform 0.15s;
|
|
}
|
|
|
|
.models-folder[open] > .models-folder-header::before {
|
|
transform: rotate(90deg);
|
|
}
|
|
|
|
.models-folder-name {
|
|
font-family: 'SFMono-Regular', 'Menlo', 'Monaco', monospace;
|
|
font-size: 0.85rem;
|
|
font-weight: 600;
|
|
color: #58a6ff;
|
|
}
|
|
|
|
.models-folder-meta {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.75rem;
|
|
}
|
|
|
|
.models-folder-size {
|
|
font-size: 0.8rem;
|
|
font-weight: 600;
|
|
color: #8ba3c1;
|
|
}
|
|
|
|
.models-source-link {
|
|
font-size: 0.75rem;
|
|
color: #3fb950;
|
|
text-decoration: none;
|
|
padding: 0.15rem 0.5rem;
|
|
background: rgba(63, 185, 80, 0.1);
|
|
border: 1px solid rgba(63, 185, 80, 0.2);
|
|
border-radius: 2rem;
|
|
}
|
|
|
|
.models-source-link:hover {
|
|
background: rgba(63, 185, 80, 0.2);
|
|
text-decoration: none;
|
|
}
|
|
|
|
.models-file-list {
|
|
border-top: 1px solid #243656;
|
|
padding: 0.25rem 0;
|
|
}
|
|
|
|
.models-file {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding: 0.35rem 1rem 0.35rem 2rem;
|
|
font-size: 0.8rem;
|
|
}
|
|
|
|
.models-file:hover {
|
|
background: rgba(88, 166, 255, 0.05);
|
|
}
|
|
|
|
.models-file-path {
|
|
font-family: 'SFMono-Regular', 'Menlo', 'Monaco', monospace;
|
|
color: #8ba3c1;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.models-file-size {
|
|
color: #4a6282;
|
|
white-space: nowrap;
|
|
margin-left: 1rem;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
/* Footer */
|
|
footer {
|
|
text-align: center;
|
|
padding: 2.5rem;
|
|
color: #4a6282;
|
|
font-size: 0.8rem;
|
|
}
|
|
|
|
footer a {
|
|
color: #58a6ff;
|
|
text-decoration: none;
|
|
}
|
|
|
|
footer a:hover {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
/* Responsive */
|
|
@media (max-width: 600px) {
|
|
.workflow-grid {
|
|
grid-template-columns: 1fr !important;
|
|
}
|
|
|
|
.workflow-grid.view-list .workflow-card {
|
|
grid-template-columns: 1fr;
|
|
}
|
|
|
|
.workflow-grid.view-list .workflow-screenshot {
|
|
width: 100%;
|
|
height: auto;
|
|
aspect-ratio: 16/10;
|
|
}
|
|
|
|
.stats {
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
}
|
|
|
|
.section-header {
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
gap: 0.5rem;
|
|
}
|
|
|
|
.container {
|
|
padding: 1rem;
|
|
}
|
|
}
|
|
</style>
|
|
<link href="https://cdn.jsdelivr.net/npm/nouislider@15/dist/nouislider.min.css" rel="stylesheet">
|
|
<script src="https://cdn.jsdelivr.net/npm/nouislider@15/dist/nouislider.min.js"></script>
|
|
</head>
|
|
<body>
|
|
<header>
|
|
<h1><a href="https://github.com/PozzettiAndrea/PozzettiAndrea/ComfyUI-SAM3">PozzettiAndrea/ComfyUI-SAM3</a> Test Results</h1>
|
|
<div class="meta-chips">
|
|
<span class="meta-chip"><svg viewBox="0 0 16 16"><path d="M8 0a8 8 0 110 16A8 8 0 018 0zm.5 4.5a.5.5 0 00-1 0v3.793L5.854 9.854a.5.5 0 10.708.708l1.853-1.854a.5.5 0 00.085-.094V4.5z"/></svg> 2026-05-10 21:27 UTC</span> <span class="meta-chip"><svg viewBox="0 0 16 16"><path d="M2.5 4a.5.5 0 100 1 .5.5 0 000-1zM4 4.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM2.5 7a.5.5 0 100 1 .5.5 0 000-1zM4 7.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 014 7.5zM2.5 10a.5.5 0 100 1 .5.5 0 000-1zM4 10.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5z"/></svg> macOS-15.7.4-arm64-arm-64bit</span> <span class="meta-chip"><svg viewBox="0 0 16 16"><path d="M5 0a.5.5 0 01.5.5V2h1V.5a.5.5 0 011 0V2h1V.5a.5.5 0 011 0V2h.5A2.5 2.5 0 0112.5 4.5H14v1h-1.5v1H14v1h-1.5v1H14v1h-1.5A2.5 2.5 0 0110 12h-.5v1.5a.5.5 0 01-1 0V12h-1v1.5a.5.5 0 01-1 0V12H6v1.5a.5.5 0 01-1 0V12h-.5A2.5 2.5 0 012 9.5H.5v-1H2v-1H.5v-1H2v-1H.5v-1H2A2.5 2.5 0 014.5 2V.5A.5.5 0 015 0zm-.5 4A1.5 1.5 0 003 5.5v4A1.5 1.5 0 004.5 11h6a1.5 1.5 0 001.5-1.5v-4A1.5 1.5 0 0010.5 4h-6z"/></svg> arm</span>
|
|
</div>
|
|
</header>
|
|
|
|
<div class="container">
|
|
<div class="summary">
|
|
<div class="progress-wrapper">
|
|
<div class="progress-bar">
|
|
<div class="progress-fill has-failures" style="width: 75.0%"></div>
|
|
</div>
|
|
<span class="progress-label">75.0%</span>
|
|
</div>
|
|
<div class="stats">
|
|
<span class="stat-badge stat-pass">3 passed</span>
|
|
<span class="stat-badge stat-fail">1 failed</span>
|
|
<span class="stat-total">3/4 tests</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="section-header">
|
|
<h2 class="section-title">Workflows</h2>
|
|
<div class="view-controls">
|
|
<button class="view-btn active" onclick="setView('grid')">Grid</button>
|
|
<button class="view-btn" onclick="setView('list')">List</button>
|
|
</div>
|
|
</div>
|
|
<div class="workflow-grid" id="workflow-grid">
|
|
|
|
<div class="workflow-card clickable " onclick="openLightboxByName('image_seg_point')">
|
|
|
|
<img class="workflow-screenshot" src="screenshots/image_seg_point_executed.png"
|
|
alt="image_seg_point" loading="lazy">
|
|
|
|
<div class="workflow-info">
|
|
<div class="workflow-header">
|
|
<span class="workflow-name" title="image_seg_point">image_seg_point</span>
|
|
<span class="workflow-badge pass">pass</span>
|
|
</div>
|
|
<div class="workflow-meta">
|
|
<span>121.82s</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="workflow-card clickable failed" onclick="openLightboxByName('image_seg_text')">
|
|
<div class="workflow-screenshot placeholder">No screenshot</div>
|
|
<div class="workflow-info">
|
|
<div class="workflow-header">
|
|
<span class="workflow-name" title="image_seg_text">image_seg_text</span>
|
|
<span class="workflow-badge fail">fail</span>
|
|
</div>
|
|
<div class="workflow-meta">
|
|
<span>52.38s</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="workflow-card clickable " onclick="openLightboxByName('scene_seg')">
|
|
|
|
<img class="workflow-screenshot" src="screenshots/scene_seg_executed.png"
|
|
alt="scene_seg" loading="lazy">
|
|
|
|
<div class="workflow-info">
|
|
<div class="workflow-header">
|
|
<span class="workflow-name" title="scene_seg">scene_seg</span>
|
|
<span class="workflow-badge pass">pass</span>
|
|
</div>
|
|
<div class="workflow-meta">
|
|
<span>76.55s</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="workflow-card clickable " onclick="openLightboxByName('scene_seg_interactive')">
|
|
|
|
<img class="workflow-screenshot" src="screenshots/scene_seg_interactive_executed.png"
|
|
alt="scene_seg_interactive" loading="lazy">
|
|
|
|
<div class="workflow-info">
|
|
<div class="workflow-header">
|
|
<span class="workflow-name" title="scene_seg_interactive">scene_seg_interactive</span>
|
|
<span class="workflow-badge pass">pass</span>
|
|
</div>
|
|
<div class="workflow-meta">
|
|
<span>60.80s</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="failed-section">
|
|
<h2>Failed Tests</h2>
|
|
|
|
<div class="failed-item">
|
|
<div class="failed-header">
|
|
<span class="failed-name">image_seg_text</span>
|
|
<span class="failed-duration">52.38s</span>
|
|
</div>
|
|
<div class="failed-error">Workflow execution failed: {'prompt_id': '2b5feead-5a9f-46b9-9770-3ffbd0acb631', 'node_id': '15', 'node_type': 'SAM3Grounding', 'executed': ['12', '1'], 'exception_message': 'The operator \'aten::_assert_async\' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\n\nWorker traceback:\nTraceback (most recent call last):\n File "/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py", line 1762, in main\n result = method(**inputs)\n ^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 111, in execute\n result = cls._segment_grounding(\n ^^^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 138, in _segment_grounding\n state = processor.set_text_prompt(text_prompt.strip(), state)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py", line 1393, in set_text_prompt\n return self._forward_grounding(state)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py", line 1477, in _forward_grounding\n outputs = self.model.forward_grounding(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 3819, in forward_grounding\n prompt, prompt_mask, backbone_out = self._encode_prompt(\n ^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 3561, in _encode_prompt\n geo_feats, geo_masks = self.geometry_encoder(\n ^^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py", line 1779, in _wrapped_call_impl\n return self._call_impl(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py", line 1790, in _call_impl\n return forward_call(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 2501, in forward\n final_embeds, final_mask = concat_padded_sequences(\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py", line 1824, in concat_padded_sequences\n torch._assert_async(is_right_padded(mask1))\nNotImplementedError: The operator \'aten::_assert_async\' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py", line 535, in execute\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py", line 335, in get_output_data\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py", line 297, in process_inputs\n result = f(**inputs)\n ^^^^^^^^^^^\n', ' File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/venv/lib/python3.11/site-packages/comfy_env/isolation/metadata.py", line 536, in proxy\n result = worker.call_method(\n ^^^^^^^^^^^^^^^^^^^\n', ' File "/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/venv/lib/python3.11/site-packages/comfy_env/isolation/workers/subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'confidence_threshold': [0.2], 'text_prompt': ['child'], 'max_detections': [-1], 'sam3_model_config': ["{'checkpoint_path': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'fp32', 'dtype': 'fp32', 'compile': False}"], 'image': ['tensor([[[[0.2902, 0.4667, 0.5961],\n [0.2902, 0.4667, 0.5961],\n [0.2902, 0.4667, 0.5961],\n ...,\n [0.3176, 0.5804, 0.7216],\n [0.3333, 0.6039, 0.7451],\n [0.3529, 0.6235, 0.7647]],\n\n [[0.2902, 0.4667, 0.5961],\n [0.2902, 0.4667, 0.5961],\n [0.2902, 0.4667, 0.5961],\n ...,\n [0.3137, 0.5765, 0.7176],\n [0.3137, 0.5843, 0.7255],\n [0.3255, 0.5961, 0.7373]],\n\n [[0.2902, 0.4667, 0.5961],\n [0.2902, 0.4667, 0.5961],\n [0.2902, 0.4667, 0.5961],\n ...,\n [0.3922, 0.5333, 0.6275],\n [0.3922, 0.5294, 0.6235],\n [0.3961, 0.5333, 0.6275]],\n\n ...,\n\n [[0.4941, 0.4863, 0.4157],\n [0.4941, 0.4863, 0.4157],\n [0.4980, 0.4902, 0.4196],\n ...,\n [0.5647, 0.5608, 0.5059],\n [0.5647, 0.5608, 0.5059],\n [0.5647, 0.5608, 0.5059]],\n\n [[0.5098, 0.5020, 0.4314],\n [0.5098, 0.5020, 0.4314],\n [0.5137, 0.5059, 0.4353],\n ...,\n [0.5647, 0.5608, 0.5059],\n [0.5647, 0.5608, 0.5059],\n [0.5647, 0.5608, 0.5059]],\n\n [[0.5176, 0.5098, 0.4392],\n [0.5216, 0.5137, 0.4431],\n [0.5255, 0.5176, 0.4471],\n ...,\n [0.5647, 0.5608, 0.5059],\n [0.5647, 0.5608, 0.5059],\n [0.5647, 0.5608, 0.5059]]]])']}, 'current_outputs': ['4', '1', '15', '12', '3'], 'timestamp': 1778448334344}
|
|
|
|
Details:
|
|
Workflow: /private/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy-test-run-agbqvzmh/ComfyUI-SAM3/workflows/image_seg_text.json
|
|
Node error: SAM3Grounding</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="models-section">
|
|
<div class="section-header">
|
|
<h2 class="section-title">Downloaded Models</h2>
|
|
<span class="models-total">1 files · 3.2 GB</span>
|
|
</div>
|
|
|
|
<details class="models-folder" open>
|
|
<summary class="models-folder-header">
|
|
<span class="models-folder-name">models/sam3/</span>
|
|
<span class="models-folder-meta">
|
|
|
|
<span class="models-folder-size">3.2 GB</span>
|
|
</span>
|
|
</summary>
|
|
<div class="models-file-list">
|
|
<div class="models-file"><span class="models-file-path">sam3.safetensors</span><span class="models-file-size">3.2 GB</span></div>
|
|
</div>
|
|
</details>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="lightbox" id="lightbox">
|
|
<button class="lightbox-close" onclick="closeLightbox()">×</button>
|
|
<button class="lightbox-nav lightbox-nav-left" onclick="navigateLightbox(-1)">‹</button>
|
|
<button class="lightbox-nav lightbox-nav-right" onclick="navigateLightbox(1)">›</button>
|
|
<div class="lightbox-content">
|
|
<img id="lightbox-img" src="" alt="">
|
|
<video id="lightbox-video" controls preload="metadata" style="display:none; max-width:90vw; max-height:80vh; background:#000;"></video>
|
|
<div class="video-player" id="video-player">
|
|
<div class="video-slider-container">
|
|
<div id="video-slider"></div>
|
|
</div>
|
|
<div class="video-controls">
|
|
<span class="video-frame-counter" id="video-frame-counter">0.0s / 0.0s</span>
|
|
</div>
|
|
</div>
|
|
<div class="resource-graph" id="resource-graph">
|
|
<div class="resource-graph-title">Resource Usage</div>
|
|
<canvas id="resource-canvas"></canvas>
|
|
<div class="resource-legend">
|
|
<span><span class="dot ram"></span> RAM (GB)</span>
|
|
<span id="gpu-legend" style="display:none"><span class="dot gpu"></span> VRAM (GB)</span>
|
|
</div>
|
|
</div>
|
|
<div class="lightbox-info">
|
|
<div>
|
|
<span class="lightbox-title" id="lightbox-title"></span>
|
|
<span class="lightbox-hardware" id="lightbox-hardware"></span>
|
|
</div>
|
|
<div class="lightbox-meta">
|
|
<span class="lightbox-badge" id="lightbox-badge"></span>
|
|
<span class="lightbox-duration" id="lightbox-duration"></span>
|
|
</div>
|
|
</div>
|
|
<pre class="lightbox-log" id="lightbox-log"></pre>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="img-overlay" id="img-overlay">
|
|
<img id="img-overlay-content" src="" alt="">
|
|
</div>
|
|
|
|
<footer>
|
|
Generated by <a href="https://github.com/PozzettiAndrea/comfy-test">comfy-test</a>
|
|
</footer>
|
|
|
|
<script>
|
|
function setView(mode) {
|
|
const grid = document.getElementById('workflow-grid');
|
|
grid.className = mode === 'list' ? 'workflow-grid view-list' : 'workflow-grid';
|
|
document.querySelectorAll('.view-controls .view-btn').forEach(btn => {
|
|
btn.classList.toggle('active', btn.textContent.trim().toLowerCase() === mode);
|
|
});
|
|
}
|
|
|
|
const workflowData = {"image_seg_point": {"src": "screenshots/image_seg_point_executed.png", "title": "image_seg_point", "status": "pass", "duration": "121.82", "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%\n Frame 25 saved (frame_024.jpg, t=51.9s)\n [capture-periodic] freeze=8ms shot=94ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 26 saved (frame_025.jpg, t=54.1s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 27 saved (frame_026.jpg, t=56.2s)\n [capture-periodic] freeze=6ms shot=102ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=500 t=57.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=47% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 90%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 28 saved (frame_027.jpg, t=58.4s)\n [capture-periodic] freeze=3ms shot=98ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 29 saved (frame_028.jpg, t=60.5s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=2ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000017078f000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1166 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1314 in recv_into\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/socket.py\", line 718 in readinto\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/http/client.py\", line 478 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1005 in _fp_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1022 in _raw_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1110 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1267 in stream\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/requests/models.py\", line 822 in generate\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 128 in _download_from_huggingface\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 73 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=550 t=62.5s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=50% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 30 saved (frame_029.jpg, t=62.7s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=6ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 100%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloaded sam3.safetensors\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model downloaded successfully\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (59.17s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3Segmentation: refinement_iterations: 0, use_multimask: True, output_best_mask: True, sam3_model_config: dict, image: torch.float32 [1,720,1280,3] cpu, positive_points: dict, negative_points: dict\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3Segmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=3 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] objc[2924]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x113d707a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x14d1083a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[2924]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x113d707f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x14d1083f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n Frame 31 saved (frame_030.jpg, t=64.9s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=2ms saved=True\n [capture-loop] iter=600 t=68.2s 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=53% browser_rss=0.45GB\n [capture-loop] iter=650 t=73.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=4 ram=3.3/7.0GB (66%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.43GB\n [capture-loop] iter=700 t=79.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.8/7.0GB (73%) swap=0.0/0.0GB (0%) cpu=52% browser_rss=0.25GB\n [capture-loop] iter=750 t=85.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.6/7.0GB (76%) swap=0.0/0.0GB (0%) cpu=34% browser_rss=0.26GB\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=3\n [ComfyUI] [comfy-env] VRAM request: 1.84GB, free before eviction: 1.78GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.77GB\n [capture-loop] iter=800 t=91.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.4/7.0GB (70%) swap=0.0/0.0GB (0%) cpu=51% browser_rss=0.25GB\n [capture-loop] iter=850 t=103.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=4.4/7.0GB (83%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.22GB\n [capture-loop] iter=900 t=109.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.9/7.0GB (74%) swap=0.0/0.0GB (0%) cpu=54% browser_rss=0.23GB\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3Segmentation done (47.92s): result: NodeOutput\n [ComfyUI] Prompt executed in 111.16 seconds\n Node executed (2 total), capturing...\n Frame 32 saved (frame_031.jpg, t=111.7s)\n [capture-node] freeze=3ms shot=557ms unfreeze=3ms saved=True\n Node executed (3 total), capturing...\n Frame 33 saved (frame_032.jpg, t=112.8s)\n [capture-node] freeze=2ms shot=235ms unfreeze=0ms saved=True\n Execution complete (t=112.8s)\n Captured 33 unique frames over 113.1s\n [debug] iframes: 0\n [timing] trigger_3d_previews: 0.0s\n Saved high-quality screenshot: image_seg_point_executed.png\n [timing] final_screenshot: 0.2s\n Captured 34 video frames", "hardware": {"os": "macOS-15.7.4-arm64-arm-64bit", "cpu": "arm"}}, "image_seg_text": {"src": "", "title": "image_seg_text", "status": "fail", "duration": "52.38", "log": "Capturing execution frames: image_seg_text.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 5 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"15\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"15\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 15: SAM3Grounding\n [ComfyUI] Inputs: {\"confidence_threshold\": 0.2, \"text_prompt\": \"child\", \"max_detections\": -1, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0]}\n [ComfyUI] Generated prompt_id: 62db8f04-d13f-4afa-acc1-b9211e83e340\n [ComfyUI] Calling execution.validate_prompt()...\n Queuing workflow for execution...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'fp32', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: failed\n [ComfyUI] [ComfyUI-SAM3] Socket unhealthy, restarting worker...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_ed81cb815898.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_ed81cb815898.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=1ms shot=80ms unfreeze=2ms saved=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=4 sending call_method\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-periodic] freeze=2ms shot=90ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (4.54s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3Grounding: confidence_threshold: 0.2, text_prompt: 'child', max_detections: -1, sam3_model_config: dict, image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3Grounding.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=5 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] objc[5291]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x123efc7a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x130e4c3a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[5291]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x123efc7f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x130e4c3f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [capture-loop] iter=50 t=5.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=2.5/7.0GB (47%) swap=0.0/0.0GB (0%) cpu=57% browser_rss=0.50GB\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=5\n [ComfyUI] [comfy-env] VRAM request: 3.50GB, free before eviction: 3.92GB\n [ComfyUI] [comfy-env] VRAM after eviction: 3.92GB\n Frame 4 saved (frame_003.jpg, t=6.5s)\n [capture-periodic] freeze=2ms shot=430ms unfreeze=4ms saved=True\n Frame 5 saved (frame_004.jpg, t=9.5s)\n [capture-periodic] freeze=116ms shot=6069ms unfreeze=13ms saved=True\n [capture-loop] iter=100 t=23.4s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (88%) swap=1.8/3.0GB (61%) cpu=60% browser_rss=0.18GB\n Frame 6 saved (frame_005.jpg, t=24.1s)\n [capture-periodic] freeze=2ms shot=1275ms unfreeze=41ms saved=True\n [capture-loop] iter=150 t=31.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=6 ram=2.8/7.0GB (66%) swap=2.9/4.0GB (71%) cpu=56% browser_rss=0.24GB\n [capture-loop] iter=200 t=39.5s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=5.8/7.0GB (90%) swap=0.9/2.0GB (47%) cpu=38% browser_rss=0.23GB\n [ComfyUI] [SubprocessWorker] got response: error\n [ComfyUI] !!! Exception during processing !!! The operator 'aten::_assert_async' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\n [ComfyUI] \n [ComfyUI] Worker traceback:\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762, in main\n [ComfyUI] result = method(**inputs)\n [ComfyUI] ^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 111, in execute\n [ComfyUI] result = cls._segment_grounding(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 138, in _segment_grounding\n [ComfyUI] state = processor.set_text_prompt(text_prompt.strip(), state)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1393, in set_text_prompt\n [ComfyUI] return self._forward_grounding(state)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1477, in _forward_grounding\n [ComfyUI] outputs = self.model.forward_grounding(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 3819, in forward_grounding\n [ComfyUI] prompt, prompt_mask, backbone_out = self._encode_prompt(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 3561, in _encode_prompt\n [ComfyUI] geo_feats, geo_masks = self.geometry_encoder(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 1779, in _wrapped_call_impl\n [ComfyUI] return self._call_impl(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 1790, in _call_impl\n [ComfyUI] return forward_call(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 2501, in forward\n [ComfyUI] final_embeds, final_mask = concat_padded_sequences(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1824, in concat_padded_sequences\n [ComfyUI] torch._assert_async(is_right_padded(mask1))\n [ComfyUI] NotImplementedError: The operator 'aten::_assert_async' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\n [ComfyUI] \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 535, in execute\n [ComfyUI] output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 335, in get_output_data\n [ComfyUI] return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 309, in _async_map_node_over_list\n [ComfyUI] await process_inputs(input_dict, i)\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 297, in process_inputs\n [ComfyUI] result = f(**inputs)\n [ComfyUI] ^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/venv/lib/python3.11/site-packages/comfy_env/isolation/metadata.py\", line 536, in proxy\n [ComfyUI] result = worker.call_method(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/venv/lib/python3.11/site-packages/comfy_env/isolation/workers/subprocess.py\", line 674, in call_method\n [ComfyUI] raise WorkerError(\n [ComfyUI] comfy_env.isolation.workers.base.WorkerError: The operator 'aten::_assert_async' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\n [ComfyUI] \n [ComfyUI] Worker traceback:\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762, in main\n [ComfyUI] result = method(**inputs)\n [ComfyUI] ^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 111, in execute\n [ComfyUI] result = cls._segment_grounding(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 138, in _segment_grounding\n [ComfyUI] state = processor.set_text_prompt(text_prompt.strip(), state)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1393, in set_text_prompt\n [ComfyUI] return self._forward_grounding(state)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1477, in _forward_grounding\n [ComfyUI] outputs = self.model.forward_grounding(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 3819, in forward_grounding\n [ComfyUI] prompt, prompt_mask, backbone_out = self._encode_prompt(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 3561, in _encode_prompt\n [ComfyUI] geo_feats, geo_masks = self.geometry_encoder(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 1779, in _wrapped_call_impl\n [ComfyUI] return self._call_impl(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 1790, in _call_impl\n [ComfyUI] return forward_call(*args, **kwargs)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 2501, in forward\n [ComfyUI] final_embeds, final_mask = concat_padded_sequences(\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1824, in concat_padded_sequences\n [ComfyUI] torch._assert_async(is_right_padded(mask1))\n [ComfyUI] NotImplementedError: The operator 'aten::_assert_async' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Prompt executed in 43.27 seconds\n Frame 7 saved (frame_006.jpg, t=43.8s)\n [capture-periodic] freeze=4ms shot=2159ms unfreeze=2ms saved=True\n Execution complete (t=43.8s)\n Execution error: {'prompt_id': '2b5feead-5a9f-46b9-9770-3ffbd0acb631', 'node_id': '15', 'node_type': 'SAM3Grounding', 'executed': ['12', '1'], 'exception_message': 'The operator \\'aten::_assert_async\\' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n ^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 111, in execute\\n result = cls._segment_grounding(\\n ^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 138, in _segment_grounding\\n state = processor.set_text_prompt(text_prompt.strip(), state)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1393, in set_text_prompt\\n return self._forward_grounding(state)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1477, in _forward_grounding\\n outputs = self.model.forward_grounding(\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 3819, in forward_grounding\\n prompt, prompt_mask, backbone_out = self._encode_prompt(\\n ^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 3561, in _encode_prompt\\n geo_feats, geo_masks = self.geometry_encoder(\\n ^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 1779, in _wrapped_call_impl\\n return self._call_impl(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 1790, in _call_impl\\n return forward_call(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 2501, in forward\\n final_embeds, final_mask = concat_padded_sequences(\\n ^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1824, in concat_padded_sequences\\n torch._assert_async(is_right_padded(mask1))\\nNotImplementedError: The operator \\'aten::_assert_async\\' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 535, in execute\\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 335, in get_output_data\\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n ^^^^^^^^^^^\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/venv/lib/python3.11/site-packages/comfy_env/isolation/metadata.py\", line 536, in proxy\\n result = worker.call_method(\\n ^^^^^^^^^^^^^^^^^^^\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/venv/lib/python3.11/site-packages/comfy_env/isolation/workers/subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n'], 'current_inputs': {'confidence_threshold': [0.2], 'text_prompt': ['child'], 'max_detections': [-1], 'sam3_model_config': [\"{'checkpoint_path': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'fp32', 'dtype': 'fp32', 'compile': False}\"], 'image': ['tensor([[[[0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n ...,\\n [0.3176, 0.5804, 0.7216],\\n [0.3333, 0.6039, 0.7451],\\n [0.3529, 0.6235, 0.7647]],\\n\\n [[0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n ...,\\n [0.3137, 0.5765, 0.7176],\\n [0.3137, 0.5843, 0.7255],\\n [0.3255, 0.5961, 0.7373]],\\n\\n [[0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n ...,\\n [0.3922, 0.5333, 0.6275],\\n [0.3922, 0.5294, 0.6235],\\n [0.3961, 0.5333, 0.6275]],\\n\\n ...,\\n\\n [[0.4941, 0.4863, 0.4157],\\n [0.4941, 0.4863, 0.4157],\\n [0.4980, 0.4902, 0.4196],\\n ...,\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059]],\\n\\n [[0.5098, 0.5020, 0.4314],\\n [0.5098, 0.5020, 0.4314],\\n [0.5137, 0.5059, 0.4353],\\n ...,\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059]],\\n\\n [[0.5176, 0.5098, 0.4392],\\n [0.5216, 0.5137, 0.4431],\\n [0.5255, 0.5176, 0.4471],\\n ...,\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059]]]])']}, 'current_outputs': ['4', '1', '15', '12', '3'], 'timestamp': 1778448334344}\n Status: FAILED\n Error: Workflow execution failed: {'prompt_id': '2b5feead-5a9f-46b9-9770-3ffbd0acb631', 'node_id': '15', 'node_type': 'SAM3Grounding', 'executed': ['12', '1'], 'exception_message': 'The operator \\'aten::_assert_async\\' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n ^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 111, in execute\\n result = cls._segment_grounding(\\n ^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 138, in _segment_grounding\\n state = processor.set_text_prompt(text_prompt.strip(), state)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1393, in set_text_prompt\\n return self._forward_grounding(state)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/utils/_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1477, in _forward_grounding\\n outputs = self.model.forward_grounding(\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 3819, in forward_grounding\\n prompt, prompt_mask, backbone_out = self._encode_prompt(\\n ^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 3561, in _encode_prompt\\n geo_feats, geo_masks = self.geometry_encoder(\\n ^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 1779, in _wrapped_call_impl\\n return self._call_impl(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 1790, in _call_impl\\n return forward_call(*args, **kwargs)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py\", line 2501, in forward\\n final_embeds, final_mask = concat_padded_sequences(\\n ^^^^^^^^^^^^^^^^^^^^^^^^\\n File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/utils.py\", line 1824, in concat_padded_sequences\\n torch._assert_async(is_right_padded(mask1))\\nNotImplementedError: The operator \\'aten::_assert_async\\' is not currently implemented for the MPS device. If you want this op to be considered for addition please comment on https://github.com/pytorch/pytorch/issues/141287 and mention use-case, that resulted in missing op as well as commit hash 70d99e998b4955e0049d13a98d77ae1b14db1f45. As a temporary fix, you can set the environment variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for this op. WARNING: this will be slower than running natively on MPS.\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 535, in execute\\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 335, in get_output_data\\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n ^^^^^^^^^^^\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/venv/lib/python3.11/site-packages/comfy_env/isolation/metadata.py\", line 536, in proxy\\n result = worker.call_method(\\n ^^^^^^^^^^^^^^^^^^^\\n', ' File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/venv/lib/python3.11/site-packages/comfy_env/isolation/workers/subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n'], 'current_inputs': {'confidence_threshold': [0.2], 'text_prompt': ['child'], 'max_detections': [-1], 'sam3_model_config': [\"{'checkpoint_path': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'fp32', 'dtype': 'fp32', 'compile': False}\"], 'image': ['tensor([[[[0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n ...,\\n [0.3176, 0.5804, 0.7216],\\n [0.3333, 0.6039, 0.7451],\\n [0.3529, 0.6235, 0.7647]],\\n\\n [[0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n ...,\\n [0.3137, 0.5765, 0.7176],\\n [0.3137, 0.5843, 0.7255],\\n [0.3255, 0.5961, 0.7373]],\\n\\n [[0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n [0.2902, 0.4667, 0.5961],\\n ...,\\n [0.3922, 0.5333, 0.6275],\\n [0.3922, 0.5294, 0.6235],\\n [0.3961, 0.5333, 0.6275]],\\n\\n ...,\\n\\n [[0.4941, 0.4863, 0.4157],\\n [0.4941, 0.4863, 0.4157],\\n [0.4980, 0.4902, 0.4196],\\n ...,\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059]],\\n\\n [[0.5098, 0.5020, 0.4314],\\n [0.5098, 0.5020, 0.4314],\\n [0.5137, 0.5059, 0.4353],\\n ...,\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059]],\\n\\n [[0.5176, 0.5098, 0.4392],\\n [0.5216, 0.5137, 0.4431],\\n [0.5255, 0.5176, 0.4471],\\n ...,\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059],\\n [0.5647, 0.5608, 0.5059]]]])']}, 'current_outputs': ['4', '1', '15', '12', '3'], 'timestamp': 1778448334344}\n Details: Workflow: /private/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy-test-run-agbqvzmh/ComfyUI-SAM3/workflows/image_seg_text.json\nNode error: SAM3Grounding", "hardware": {"os": "macOS-15.7.4-arm64-arm-64bit", "cpu": "arm"}}, "scene_seg": {"src": "screenshots/scene_seg_executed.png", "title": "scene_seg", "status": "pass", "duration": "76.55", "log": "Capturing execution frames: scene_seg.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 10 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"27\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"27\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 20: SAM3MultiRegionCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":5052.74953932266,\\\"y\\\":2847.0600693869637},{\\\"x\\\":4932.510591392486,\\\"y\\\":2953.9413227753366},{\\\"x\\\":4718.752461738845,\\\"y\\\":2967.301479448883},{\n [ComfyUI] Node 22: MultibandFromBatch\n [ComfyUI] Inputs: {\"images\": [\"1\", 0], \"masks\": [\"27\", 0]}\n [ComfyUI] Node 23: MultibandSave\n [ComfyUI] Inputs: {\"file_path\": \"output/multiband\", \"format\": \"npz\", \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 24: MultibandPreview\n [ComfyUI] Inputs: {\"channel_index\": 0, \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 26: MultibandResize\n [ComfyUI] Inputs: {\"upscale_method\": \"nearest-exact\", \"width\": 900, \"height\": 600, \"crop\": \"center\", \"multiband\": [\"22\", 0]}\n [ComfyUI] Node 27: SAM3MultipromptSegmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": false, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0], \"multi_prompts\": [\"20\", 0]}\n [ComfyUI] Generated prompt_id: c5d361f1-c707-4369-b382-2370ef9c2309\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=34ms shot=1063ms unfreeze=54ms saved=True\n [ComfyUI] [comfy-env] Running SAM3MultiRegionCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":5052.74953932266,\"y\":2847.0600..., image: torch.float32 [1,4480,6720,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3MultiRegionCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=6 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultiRegionCollector done (1.03s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'fp32', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=7 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (0.02s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3MultipromptSegmentation: refinement_iterations: 0, use_multimask: False, sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, multi_prompts: list[7]\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3MultipromptSegmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=8 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=8\n [ComfyUI] [comfy-env] VRAM request: 3.50GB, free before eviction: 1.34GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.34GB\n Node executed (1 total), capturing...\n Frame 3 saved (frame_002.jpg, t=5.5s)\n [capture-node] freeze=3ms shot=121ms unfreeze=6ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000016cac7000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2161 in _save_to_state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2267 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 510 in module_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_patcher.py\", line 314 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 557 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 772 in load_models_gpu\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1539 in _shimmed_load_models_gpu\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 697 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [capture-loop] iter=50 t=9.3s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.2/7.0GB (79%) swap=2.0/3.0GB (66%) cpu=54% browser_rss=0.43GB\n [capture-loop] iter=100 t=29.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=4.5/7.0GB (82%) swap=1.1/2.0GB (56%) cpu=44% browser_rss=0.15GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [capture-loop] iter=150 t=37.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.3/7.0GB (87%) swap=1.6/2.0GB (80%) cpu=53% browser_rss=0.22GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 4 saved (frame_003.jpg, t=38.0s)\n [capture-periodic] freeze=8ms shot=163ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 5 saved (frame_004.jpg, t=40.3s)\n [capture-periodic] freeze=14ms shot=235ms unfreeze=20ms saved=True\n [capture-loop] iter=200 t=45.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/7.0GB (83%) swap=2.3/3.0GB (77%) cpu=60% browser_rss=0.17GB\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultipromptSegmentation done (49.14s): result: NodeOutput\n Frame 6 saved (frame_005.jpg, t=54.1s)\n [capture-periodic] freeze=45ms shot=156ms unfreeze=2ms saved=True\n [capture-loop] iter=250 t=54.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/7.0GB (77%) swap=2.4/3.0GB (79%) cpu=64% browser_rss=0.22GB\n Node executed (2 total), capturing...\n Frame 7 saved (frame_006.jpg, t=59.2s)\n [capture-node] freeze=2ms shot=1857ms unfreeze=2ms saved=True\n [ComfyUI] BatchToMultiband: Processed 1 images with 3 channels each -> 3 channels\n [ComfyUI] BatchToMultiband: Processed 7 masks -> 7 channels\n Node executed (3 total), capturing...\n Frame 8 saved (frame_007.jpg, t=61.6s)\n [capture-node] freeze=2ms shot=554ms unfreeze=5ms saved=True\n [capture-loop] iter=300 t=63.5s state={'complete': False, 'error': None, 'executedCount': 3, 'wsState': 1} eval_ms=26 ram=2.2/7.0GB (84%) swap=2.1/3.0GB (69%) cpu=62% browser_rss=0.30GB\n [ComfyUI] BatchToMultiband: Output shape torch.Size([1, 10, 4480, 6720]), channels: ['img_01_r', 'img_01_g', 'img_01_b', 'mask_01', 'mask_02', 'mask_03', 'mask_04', 'mask_05', 'mask_06', 'mask_07']\n [ComfyUI] ResizeMultiband: 4480x6720 -> 600x900\n [ComfyUI] SaveMultibandImage: Saved to output/multiband.npz\n [ComfyUI] Shape: (1, 10, 600, 900)\n [ComfyUI] Format: npz\n [ComfyUI] PreviewMultibandImage: Batch=1, Channels=10, Names=['img_01_r', 'img_01_g', 'img_01_b', 'mask_01', 'mask_02', 'mask_03', 'mask_04', 'mask_05', 'mask_06', 'mask_07']\n [ComfyUI] Prompt executed in 66.13 seconds\n Node executed (4 total), capturing...\n Frame 9 saved (frame_008.jpg, t=66.5s)\n [capture-node] freeze=2ms shot=147ms unfreeze=0ms saved=True\n Execution complete (t=66.5s)\n Captured 9 unique frames over 66.7s\n [debug] iframes: 0\n [timing] trigger_3d_previews: 0.0s\n Saved high-quality screenshot: scene_seg_executed.png\n [timing] final_screenshot: 0.3s\n Captured 10 video frames", "hardware": {"os": "macOS-15.7.4-arm64-arm-64bit", "cpu": "arm"}}, "scene_seg_interactive": {"src": "screenshots/scene_seg_interactive_executed.png", "title": "scene_seg_interactive", "status": "pass", "duration": "60.80", "log": "Capturing execution frames: scene_seg_interactive.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"26\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 26: SAM3InteractiveCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":3348.288109906738,\\\"y\\\":2452.2208696844737}],\\\"negative_points\\\":[],\\\"positive_boxes\\\":[],\\\"negative_boxes\\\":[],\\\"name\\\":\\\"Prompt 1\\\"},{\\\"positiv\n [ComfyUI] Generated prompt_id: 811be13c-53ad-4f41-945b-c061fa52b40c\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=3ms shot=232ms unfreeze=2ms saved=True\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: failed\n [ComfyUI] [ComfyUI-SAM3] Socket unhealthy, restarting worker...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock exists=True\n Frame 3 saved (frame_002.jpg, t=4.5s)\n [capture-periodic] freeze=7ms shot=131ms unfreeze=15ms saved=True\n [capture-loop] iter=50 t=6.4s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.1/7.0GB (46%) swap=1.6/3.0GB (54%) cpu=54% browser_rss=0.53GB\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=9 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (4.78s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3InteractiveCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":3348.288109906738,\"y\":2452.220..., sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, unique_id: '26'\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3InteractiveCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=10 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] objc[7858]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[7858]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n Frame 4 saved (frame_003.jpg, t=8.8s)\n [capture-periodic] freeze=1ms shot=71ms unfreeze=2ms saved=True\n [capture-loop] iter=100 t=12.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.4/7.0GB (62%) swap=0.5/2.0GB (26%) cpu=30% browser_rss=0.54GB\n [capture-loop] iter=150 t=18.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.8/7.0GB (73%) swap=0.5/2.0GB (26%) cpu=32% browser_rss=0.25GB\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=10\n [ComfyUI] [comfy-env] VRAM request: 1.84GB, free before eviction: 1.60GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.61GB\n [capture-loop] iter=200 t=23.5s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.4/7.0GB (79%) swap=0.5/2.0GB (26%) cpu=24% browser_rss=0.23GB\n [capture-loop] iter=250 t=29.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.5/7.0GB (78%) swap=0.4/2.0GB (22%) cpu=54% browser_rss=0.23GB\n [capture-loop] iter=300 t=38.8s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.6/7.0GB (79%) swap=0.5/2.0GB (23%) cpu=43% browser_rss=0.21GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=10\n Frame 5 saved (frame_004.jpg, t=47.5s)\n [capture-periodic] freeze=7ms shot=196ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3InteractiveCollector done (41.76s): result: NodeOutput\n [ComfyUI] Prompt executed in 49.97 seconds\n Node executed (1 total), capturing...\n Frame 6 saved (frame_005.jpg, t=51.5s)\n [capture-node] freeze=352ms shot=331ms unfreeze=3ms saved=True\n Node executed (2 total), capturing...\n Frame 7 saved (frame_006.jpg, t=52.5s)\n [capture-node] freeze=2ms shot=119ms unfreeze=0ms saved=True\n Execution complete (t=52.5s)\n Captured 7 unique frames over 52.61s\n [debug] iframes: 0\n [timing] trigger_3d_previews: 0.0s\n Saved high-quality screenshot: scene_seg_interactive_executed.png\n [timing] final_screenshot: 0.5s\n Captured 8 video frames", "hardware": {"os": "macOS-15.7.4-arm64-arm-64bit", "cpu": "arm"}}};
|
|
const workflowNames = Object.keys(workflowData);
|
|
const videoData = {"scene_seg": {"frames": [{"file": "frame_000.jpg", "time": 0.0, "log": "Capturing execution frames: scene_seg.json"}, {"file": "frame_001.jpg", "time": 2.2, "log": "Capturing execution frames: scene_seg.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 10 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"27\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"27\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 20: SAM3MultiRegionCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":5052.74953932266,\\\"y\\\":2847.0600693869637},{\\\"x\\\":4932.510591392486,\\\"y\\\":2953.9413227753366},{\\\"x\\\":4718.752461738845,\\\"y\\\":2967.301479448883},{\n [ComfyUI] Node 22: MultibandFromBatch\n [ComfyUI] Inputs: {\"images\": [\"1\", 0], \"masks\": [\"27\", 0]}\n [ComfyUI] Node 23: MultibandSave\n [ComfyUI] Inputs: {\"file_path\": \"output/multiband\", \"format\": \"npz\", \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 24: MultibandPreview\n [ComfyUI] Inputs: {\"channel_index\": 0, \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 26: MultibandResize\n [ComfyUI] Inputs: {\"upscale_method\": \"nearest-exact\", \"width\": 900, \"height\": 600, \"crop\": \"center\", \"multiband\": [\"22\", 0]}\n [ComfyUI] Node 27: SAM3MultipromptSegmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": false, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0], \"multi_prompts\": [\"20\", 0]}\n [ComfyUI] Generated prompt_id: c5d361f1-c707-4369-b382-2370ef9c2309\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt"}, {"file": "frame_002.jpg", "time": 5.5, "log": "Capturing execution frames: scene_seg.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 10 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"27\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"27\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 20: SAM3MultiRegionCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":5052.74953932266,\\\"y\\\":2847.0600693869637},{\\\"x\\\":4932.510591392486,\\\"y\\\":2953.9413227753366},{\\\"x\\\":4718.752461738845,\\\"y\\\":2967.301479448883},{\n [ComfyUI] Node 22: MultibandFromBatch\n [ComfyUI] Inputs: {\"images\": [\"1\", 0], \"masks\": [\"27\", 0]}\n [ComfyUI] Node 23: MultibandSave\n [ComfyUI] Inputs: {\"file_path\": \"output/multiband\", \"format\": \"npz\", \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 24: MultibandPreview\n [ComfyUI] Inputs: {\"channel_index\": 0, \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 26: MultibandResize\n [ComfyUI] Inputs: {\"upscale_method\": \"nearest-exact\", \"width\": 900, \"height\": 600, \"crop\": \"center\", \"multiband\": [\"22\", 0]}\n [ComfyUI] Node 27: SAM3MultipromptSegmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": false, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0], \"multi_prompts\": [\"20\", 0]}\n [ComfyUI] Generated prompt_id: c5d361f1-c707-4369-b382-2370ef9c2309\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=34ms shot=1063ms unfreeze=54ms saved=True\n [ComfyUI] [comfy-env] Running SAM3MultiRegionCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":5052.74953932266,\"y\":2847.0600..., image: torch.float32 [1,4480,6720,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3MultiRegionCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=6 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultiRegionCollector done (1.03s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'fp32', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=7 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (0.02s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3MultipromptSegmentation: refinement_iterations: 0, use_multimask: False, sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, multi_prompts: list[7]\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3MultipromptSegmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=8 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=8\n [ComfyUI] [comfy-env] VRAM request: 3.50GB, free before eviction: 1.34GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.34GB"}, {"file": "frame_003.jpg", "time": 38.01, "log": "Capturing execution frames: scene_seg.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 10 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"27\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"27\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 20: SAM3MultiRegionCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":5052.74953932266,\\\"y\\\":2847.0600693869637},{\\\"x\\\":4932.510591392486,\\\"y\\\":2953.9413227753366},{\\\"x\\\":4718.752461738845,\\\"y\\\":2967.301479448883},{\n [ComfyUI] Node 22: MultibandFromBatch\n [ComfyUI] Inputs: {\"images\": [\"1\", 0], \"masks\": [\"27\", 0]}\n [ComfyUI] Node 23: MultibandSave\n [ComfyUI] Inputs: {\"file_path\": \"output/multiband\", \"format\": \"npz\", \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 24: MultibandPreview\n [ComfyUI] Inputs: {\"channel_index\": 0, \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 26: MultibandResize\n [ComfyUI] Inputs: {\"upscale_method\": \"nearest-exact\", \"width\": 900, \"height\": 600, \"crop\": \"center\", \"multiband\": [\"22\", 0]}\n [ComfyUI] Node 27: SAM3MultipromptSegmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": false, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0], \"multi_prompts\": [\"20\", 0]}\n [ComfyUI] Generated prompt_id: c5d361f1-c707-4369-b382-2370ef9c2309\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=34ms shot=1063ms unfreeze=54ms saved=True\n [ComfyUI] [comfy-env] Running SAM3MultiRegionCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":5052.74953932266,\"y\":2847.0600..., image: torch.float32 [1,4480,6720,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3MultiRegionCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=6 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultiRegionCollector done (1.03s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'fp32', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=7 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (0.02s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3MultipromptSegmentation: refinement_iterations: 0, use_multimask: False, sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, multi_prompts: list[7]\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3MultipromptSegmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=8 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=8\n [ComfyUI] [comfy-env] VRAM request: 3.50GB, free before eviction: 1.34GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.34GB\n Node executed (1 total), capturing...\n Frame 3 saved (frame_002.jpg, t=5.5s)\n [capture-node] freeze=3ms shot=121ms unfreeze=6ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000016cac7000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2161 in _save_to_state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2267 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 510 in module_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_patcher.py\", line 314 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 557 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 772 in load_models_gpu\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1539 in _shimmed_load_models_gpu\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 697 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [capture-loop] iter=50 t=9.3s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.2/7.0GB (79%) swap=2.0/3.0GB (66%) cpu=54% browser_rss=0.43GB\n [capture-loop] iter=100 t=29.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=4.5/7.0GB (82%) swap=1.1/2.0GB (56%) cpu=44% browser_rss=0.15GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [capture-loop] iter=150 t=37.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.3/7.0GB (87%) swap=1.6/2.0GB (80%) cpu=53% browser_rss=0.22GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8"}, {"file": "frame_004.jpg", "time": 40.29, "log": "Capturing execution frames: scene_seg.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 10 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"27\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"27\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 20: SAM3MultiRegionCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":5052.74953932266,\\\"y\\\":2847.0600693869637},{\\\"x\\\":4932.510591392486,\\\"y\\\":2953.9413227753366},{\\\"x\\\":4718.752461738845,\\\"y\\\":2967.301479448883},{\n [ComfyUI] Node 22: MultibandFromBatch\n [ComfyUI] Inputs: {\"images\": [\"1\", 0], \"masks\": [\"27\", 0]}\n [ComfyUI] Node 23: MultibandSave\n [ComfyUI] Inputs: {\"file_path\": \"output/multiband\", \"format\": \"npz\", \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 24: MultibandPreview\n [ComfyUI] Inputs: {\"channel_index\": 0, \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 26: MultibandResize\n [ComfyUI] Inputs: {\"upscale_method\": \"nearest-exact\", \"width\": 900, \"height\": 600, \"crop\": \"center\", \"multiband\": [\"22\", 0]}\n [ComfyUI] Node 27: SAM3MultipromptSegmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": false, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0], \"multi_prompts\": [\"20\", 0]}\n [ComfyUI] Generated prompt_id: c5d361f1-c707-4369-b382-2370ef9c2309\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=34ms shot=1063ms unfreeze=54ms saved=True\n [ComfyUI] [comfy-env] Running SAM3MultiRegionCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":5052.74953932266,\"y\":2847.0600..., image: torch.float32 [1,4480,6720,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3MultiRegionCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=6 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultiRegionCollector done (1.03s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'fp32', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=7 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (0.02s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3MultipromptSegmentation: refinement_iterations: 0, use_multimask: False, sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, multi_prompts: list[7]\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3MultipromptSegmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=8 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=8\n [ComfyUI] [comfy-env] VRAM request: 3.50GB, free before eviction: 1.34GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.34GB\n Node executed (1 total), capturing...\n Frame 3 saved (frame_002.jpg, t=5.5s)\n [capture-node] freeze=3ms shot=121ms unfreeze=6ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000016cac7000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2161 in _save_to_state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2267 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 510 in module_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_patcher.py\", line 314 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 557 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 772 in load_models_gpu\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1539 in _shimmed_load_models_gpu\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 697 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [capture-loop] iter=50 t=9.3s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.2/7.0GB (79%) swap=2.0/3.0GB (66%) cpu=54% browser_rss=0.43GB\n [capture-loop] iter=100 t=29.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=4.5/7.0GB (82%) swap=1.1/2.0GB (56%) cpu=44% browser_rss=0.15GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [capture-loop] iter=150 t=37.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.3/7.0GB (87%) swap=1.6/2.0GB (80%) cpu=53% browser_rss=0.22GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 4 saved (frame_003.jpg, t=38.0s)\n [capture-periodic] freeze=8ms shot=163ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8"}, {"file": "frame_005.jpg", "time": 54.08, "log": "Capturing execution frames: scene_seg.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 10 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"27\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"27\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 20: SAM3MultiRegionCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":5052.74953932266,\\\"y\\\":2847.0600693869637},{\\\"x\\\":4932.510591392486,\\\"y\\\":2953.9413227753366},{\\\"x\\\":4718.752461738845,\\\"y\\\":2967.301479448883},{\n [ComfyUI] Node 22: MultibandFromBatch\n [ComfyUI] Inputs: {\"images\": [\"1\", 0], \"masks\": [\"27\", 0]}\n [ComfyUI] Node 23: MultibandSave\n [ComfyUI] Inputs: {\"file_path\": \"output/multiband\", \"format\": \"npz\", \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 24: MultibandPreview\n [ComfyUI] Inputs: {\"channel_index\": 0, \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 26: MultibandResize\n [ComfyUI] Inputs: {\"upscale_method\": \"nearest-exact\", \"width\": 900, \"height\": 600, \"crop\": \"center\", \"multiband\": [\"22\", 0]}\n [ComfyUI] Node 27: SAM3MultipromptSegmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": false, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0], \"multi_prompts\": [\"20\", 0]}\n [ComfyUI] Generated prompt_id: c5d361f1-c707-4369-b382-2370ef9c2309\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=34ms shot=1063ms unfreeze=54ms saved=True\n [ComfyUI] [comfy-env] Running SAM3MultiRegionCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":5052.74953932266,\"y\":2847.0600..., image: torch.float32 [1,4480,6720,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3MultiRegionCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=6 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultiRegionCollector done (1.03s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'fp32', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=7 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (0.02s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3MultipromptSegmentation: refinement_iterations: 0, use_multimask: False, sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, multi_prompts: list[7]\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3MultipromptSegmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=8 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=8\n [ComfyUI] [comfy-env] VRAM request: 3.50GB, free before eviction: 1.34GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.34GB\n Node executed (1 total), capturing...\n Frame 3 saved (frame_002.jpg, t=5.5s)\n [capture-node] freeze=3ms shot=121ms unfreeze=6ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000016cac7000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2161 in _save_to_state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2267 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 510 in module_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_patcher.py\", line 314 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 557 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 772 in load_models_gpu\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1539 in _shimmed_load_models_gpu\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 697 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [capture-loop] iter=50 t=9.3s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.2/7.0GB (79%) swap=2.0/3.0GB (66%) cpu=54% browser_rss=0.43GB\n [capture-loop] iter=100 t=29.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=4.5/7.0GB (82%) swap=1.1/2.0GB (56%) cpu=44% browser_rss=0.15GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [capture-loop] iter=150 t=37.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.3/7.0GB (87%) swap=1.6/2.0GB (80%) cpu=53% browser_rss=0.22GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 4 saved (frame_003.jpg, t=38.0s)\n [capture-periodic] freeze=8ms shot=163ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 5 saved (frame_004.jpg, t=40.3s)\n [capture-periodic] freeze=14ms shot=235ms unfreeze=20ms saved=True\n [capture-loop] iter=200 t=45.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/7.0GB (83%) swap=2.3/3.0GB (77%) cpu=60% browser_rss=0.17GB\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultipromptSegmentation done (49.14s): result: NodeOutput"}, {"file": "frame_006.jpg", "time": 59.22, "log": "Capturing execution frames: scene_seg.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 10 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"27\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"27\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 20: SAM3MultiRegionCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":5052.74953932266,\\\"y\\\":2847.0600693869637},{\\\"x\\\":4932.510591392486,\\\"y\\\":2953.9413227753366},{\\\"x\\\":4718.752461738845,\\\"y\\\":2967.301479448883},{\n [ComfyUI] Node 22: MultibandFromBatch\n [ComfyUI] Inputs: {\"images\": [\"1\", 0], \"masks\": [\"27\", 0]}\n [ComfyUI] Node 23: MultibandSave\n [ComfyUI] Inputs: {\"file_path\": \"output/multiband\", \"format\": \"npz\", \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 24: MultibandPreview\n [ComfyUI] Inputs: {\"channel_index\": 0, \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 26: MultibandResize\n [ComfyUI] Inputs: {\"upscale_method\": \"nearest-exact\", \"width\": 900, \"height\": 600, \"crop\": \"center\", \"multiband\": [\"22\", 0]}\n [ComfyUI] Node 27: SAM3MultipromptSegmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": false, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0], \"multi_prompts\": [\"20\", 0]}\n [ComfyUI] Generated prompt_id: c5d361f1-c707-4369-b382-2370ef9c2309\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=34ms shot=1063ms unfreeze=54ms saved=True\n [ComfyUI] [comfy-env] Running SAM3MultiRegionCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":5052.74953932266,\"y\":2847.0600..., image: torch.float32 [1,4480,6720,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3MultiRegionCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=6 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultiRegionCollector done (1.03s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'fp32', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=7 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (0.02s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3MultipromptSegmentation: refinement_iterations: 0, use_multimask: False, sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, multi_prompts: list[7]\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3MultipromptSegmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=8 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=8\n [ComfyUI] [comfy-env] VRAM request: 3.50GB, free before eviction: 1.34GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.34GB\n Node executed (1 total), capturing...\n Frame 3 saved (frame_002.jpg, t=5.5s)\n [capture-node] freeze=3ms shot=121ms unfreeze=6ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000016cac7000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2161 in _save_to_state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2267 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 510 in module_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_patcher.py\", line 314 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 557 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 772 in load_models_gpu\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1539 in _shimmed_load_models_gpu\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 697 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [capture-loop] iter=50 t=9.3s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.2/7.0GB (79%) swap=2.0/3.0GB (66%) cpu=54% browser_rss=0.43GB\n [capture-loop] iter=100 t=29.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=4.5/7.0GB (82%) swap=1.1/2.0GB (56%) cpu=44% browser_rss=0.15GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [capture-loop] iter=150 t=37.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.3/7.0GB (87%) swap=1.6/2.0GB (80%) cpu=53% browser_rss=0.22GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 4 saved (frame_003.jpg, t=38.0s)\n [capture-periodic] freeze=8ms shot=163ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 5 saved (frame_004.jpg, t=40.3s)\n [capture-periodic] freeze=14ms shot=235ms unfreeze=20ms saved=True\n [capture-loop] iter=200 t=45.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/7.0GB (83%) swap=2.3/3.0GB (77%) cpu=60% browser_rss=0.17GB\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultipromptSegmentation done (49.14s): result: NodeOutput\n Frame 6 saved (frame_005.jpg, t=54.1s)\n [capture-periodic] freeze=45ms shot=156ms unfreeze=2ms saved=True\n [capture-loop] iter=250 t=54.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/7.0GB (77%) swap=2.4/3.0GB (79%) cpu=64% browser_rss=0.22GB"}, {"file": "frame_007.jpg", "time": 61.6, "log": "Capturing execution frames: scene_seg.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 10 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"27\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"27\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 20: SAM3MultiRegionCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":5052.74953932266,\\\"y\\\":2847.0600693869637},{\\\"x\\\":4932.510591392486,\\\"y\\\":2953.9413227753366},{\\\"x\\\":4718.752461738845,\\\"y\\\":2967.301479448883},{\n [ComfyUI] Node 22: MultibandFromBatch\n [ComfyUI] Inputs: {\"images\": [\"1\", 0], \"masks\": [\"27\", 0]}\n [ComfyUI] Node 23: MultibandSave\n [ComfyUI] Inputs: {\"file_path\": \"output/multiband\", \"format\": \"npz\", \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 24: MultibandPreview\n [ComfyUI] Inputs: {\"channel_index\": 0, \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 26: MultibandResize\n [ComfyUI] Inputs: {\"upscale_method\": \"nearest-exact\", \"width\": 900, \"height\": 600, \"crop\": \"center\", \"multiband\": [\"22\", 0]}\n [ComfyUI] Node 27: SAM3MultipromptSegmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": false, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0], \"multi_prompts\": [\"20\", 0]}\n [ComfyUI] Generated prompt_id: c5d361f1-c707-4369-b382-2370ef9c2309\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=34ms shot=1063ms unfreeze=54ms saved=True\n [ComfyUI] [comfy-env] Running SAM3MultiRegionCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":5052.74953932266,\"y\":2847.0600..., image: torch.float32 [1,4480,6720,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3MultiRegionCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=6 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultiRegionCollector done (1.03s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'fp32', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=7 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (0.02s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3MultipromptSegmentation: refinement_iterations: 0, use_multimask: False, sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, multi_prompts: list[7]\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3MultipromptSegmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=8 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=8\n [ComfyUI] [comfy-env] VRAM request: 3.50GB, free before eviction: 1.34GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.34GB\n Node executed (1 total), capturing...\n Frame 3 saved (frame_002.jpg, t=5.5s)\n [capture-node] freeze=3ms shot=121ms unfreeze=6ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000016cac7000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2161 in _save_to_state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2267 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 510 in module_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_patcher.py\", line 314 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 557 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 772 in load_models_gpu\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1539 in _shimmed_load_models_gpu\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 697 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [capture-loop] iter=50 t=9.3s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.2/7.0GB (79%) swap=2.0/3.0GB (66%) cpu=54% browser_rss=0.43GB\n [capture-loop] iter=100 t=29.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=4.5/7.0GB (82%) swap=1.1/2.0GB (56%) cpu=44% browser_rss=0.15GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [capture-loop] iter=150 t=37.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.3/7.0GB (87%) swap=1.6/2.0GB (80%) cpu=53% browser_rss=0.22GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 4 saved (frame_003.jpg, t=38.0s)\n [capture-periodic] freeze=8ms shot=163ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 5 saved (frame_004.jpg, t=40.3s)\n [capture-periodic] freeze=14ms shot=235ms unfreeze=20ms saved=True\n [capture-loop] iter=200 t=45.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/7.0GB (83%) swap=2.3/3.0GB (77%) cpu=60% browser_rss=0.17GB\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultipromptSegmentation done (49.14s): result: NodeOutput\n Frame 6 saved (frame_005.jpg, t=54.1s)\n [capture-periodic] freeze=45ms shot=156ms unfreeze=2ms saved=True\n [capture-loop] iter=250 t=54.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/7.0GB (77%) swap=2.4/3.0GB (79%) cpu=64% browser_rss=0.22GB\n Node executed (2 total), capturing...\n Frame 7 saved (frame_006.jpg, t=59.2s)\n [capture-node] freeze=2ms shot=1857ms unfreeze=2ms saved=True\n [ComfyUI] BatchToMultiband: Processed 1 images with 3 channels each -> 3 channels\n [ComfyUI] BatchToMultiband: Processed 7 masks -> 7 channels"}, {"file": "frame_008.jpg", "time": 66.52, "log": "Capturing execution frames: scene_seg.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 10 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 3: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"27\", 1]}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"27\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"precision\": \"fp32\", \"compile\": false}\n [ComfyUI] Node 20: SAM3MultiRegionCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":5052.74953932266,\\\"y\\\":2847.0600693869637},{\\\"x\\\":4932.510591392486,\\\"y\\\":2953.9413227753366},{\\\"x\\\":4718.752461738845,\\\"y\\\":2967.301479448883},{\n [ComfyUI] Node 22: MultibandFromBatch\n [ComfyUI] Inputs: {\"images\": [\"1\", 0], \"masks\": [\"27\", 0]}\n [ComfyUI] Node 23: MultibandSave\n [ComfyUI] Inputs: {\"file_path\": \"output/multiband\", \"format\": \"npz\", \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 24: MultibandPreview\n [ComfyUI] Inputs: {\"channel_index\": 0, \"multiband\": [\"26\", 0]}\n [ComfyUI] Node 26: MultibandResize\n [ComfyUI] Inputs: {\"upscale_method\": \"nearest-exact\", \"width\": 900, \"height\": 600, \"crop\": \"center\", \"multiband\": [\"22\", 0]}\n [ComfyUI] Node 27: SAM3MultipromptSegmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": false, \"sam3_model_config\": [\"12\", 0], \"image\": [\"1\", 0], \"multi_prompts\": [\"20\", 0]}\n [ComfyUI] Generated prompt_id: c5d361f1-c707-4369-b382-2370ef9c2309\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=34ms shot=1063ms unfreeze=54ms saved=True\n [ComfyUI] [comfy-env] Running SAM3MultiRegionCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":5052.74953932266,\"y\":2847.0600..., image: torch.float32 [1,4480,6720,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3MultiRegionCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=6 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultiRegionCollector done (1.03s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'fp32', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=7 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (0.02s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3MultipromptSegmentation: refinement_iterations: 0, use_multimask: False, sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, multi_prompts: list[7]\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3MultipromptSegmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=8 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=8\n [ComfyUI] [comfy-env] VRAM request: 3.50GB, free before eviction: 1.34GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.34GB\n Node executed (1 total), capturing...\n Frame 3 saved (frame_002.jpg, t=5.5s)\n [capture-node] freeze=3ms shot=121ms unfreeze=6ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000016cac7000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2161 in _save_to_state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2267 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/torch/nn/modules/module.py\", line 2270 in state_dict\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 510 in module_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_patcher.py\", line 314 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 557 in model_mmap_residency\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy/model_management.py\", line 772 in load_models_gpu\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1539 in _shimmed_load_models_gpu\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py\", line 697 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [capture-loop] iter=50 t=9.3s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.2/7.0GB (79%) swap=2.0/3.0GB (66%) cpu=54% browser_rss=0.43GB\n [capture-loop] iter=100 t=29.8s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=4.5/7.0GB (82%) swap=1.1/2.0GB (56%) cpu=44% browser_rss=0.15GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [capture-loop] iter=150 t=37.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.3/7.0GB (87%) swap=1.6/2.0GB (80%) cpu=53% browser_rss=0.22GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 4 saved (frame_003.jpg, t=38.0s)\n [capture-periodic] freeze=8ms shot=163ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=8\n Frame 5 saved (frame_004.jpg, t=40.3s)\n [capture-periodic] freeze=14ms shot=235ms unfreeze=20ms saved=True\n [capture-loop] iter=200 t=45.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/7.0GB (83%) swap=2.3/3.0GB (77%) cpu=60% browser_rss=0.17GB\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3MultipromptSegmentation done (49.14s): result: NodeOutput\n Frame 6 saved (frame_005.jpg, t=54.1s)\n [capture-periodic] freeze=45ms shot=156ms unfreeze=2ms saved=True\n [capture-loop] iter=250 t=54.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.3/7.0GB (77%) swap=2.4/3.0GB (79%) cpu=64% browser_rss=0.22GB\n Node executed (2 total), capturing...\n Frame 7 saved (frame_006.jpg, t=59.2s)\n [capture-node] freeze=2ms shot=1857ms unfreeze=2ms saved=True\n [ComfyUI] BatchToMultiband: Processed 1 images with 3 channels each -> 3 channels\n [ComfyUI] BatchToMultiband: Processed 7 masks -> 7 channels\n Node executed (3 total), capturing...\n Frame 8 saved (frame_007.jpg, t=61.6s)\n [capture-node] freeze=2ms shot=554ms unfreeze=5ms saved=True\n [capture-loop] iter=300 t=63.5s state={'complete': False, 'error': None, 'executedCount': 3, 'wsState': 1} eval_ms=26 ram=2.2/7.0GB (84%) swap=2.1/3.0GB (69%) cpu=62% browser_rss=0.30GB\n [ComfyUI] BatchToMultiband: Output shape torch.Size([1, 10, 4480, 6720]), channels: ['img_01_r', 'img_01_g', 'img_01_b', 'mask_01', 'mask_02', 'mask_03', 'mask_04', 'mask_05', 'mask_06', 'mask_07']\n [ComfyUI] ResizeMultiband: 4480x6720 -> 600x900\n [ComfyUI] SaveMultibandImage: Saved to output/multiband.npz\n [ComfyUI] Shape: (1, 10, 600, 900)\n [ComfyUI] Format: npz\n [ComfyUI] PreviewMultibandImage: Batch=1, Channels=10, Names=['img_01_r', 'img_01_g', 'img_01_b', 'mask_01', 'mask_02', 'mask_03', 'mask_04', 'mask_05', 'mask_06', 'mask_07']\n [ComfyUI] Prompt executed in 66.13 seconds"}, {"file": "frame_009.jpg", "time": 69.02335786819458, "log": "Final screenshot"}], "total_time": 66.7}, "scene_seg_interactive": {"frames": [{"file": "frame_000.jpg", "time": 0.0, "log": "Capturing execution frames: scene_seg_interactive.json"}, {"file": "frame_001.jpg", "time": 2.17, "log": "Capturing execution frames: scene_seg_interactive.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"26\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 26: SAM3InteractiveCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":3348.288109906738,\\\"y\\\":2452.2208696844737}],\\\"negative_points\\\":[],\\\"positive_boxes\\\":[],\\\"negative_boxes\\\":[],\\\"name\\\":\\\"Prompt 1\\\"},{\\\"positiv\n [ComfyUI] Generated prompt_id: 811be13c-53ad-4f41-945b-c061fa52b40c\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt"}, {"file": "frame_002.jpg", "time": 4.49, "log": "Capturing execution frames: scene_seg_interactive.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"26\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 26: SAM3InteractiveCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":3348.288109906738,\\\"y\\\":2452.2208696844737}],\\\"negative_points\\\":[],\\\"positive_boxes\\\":[],\\\"negative_boxes\\\":[],\\\"name\\\":\\\"Prompt 1\\\"},{\\\"positiv\n [ComfyUI] Generated prompt_id: 811be13c-53ad-4f41-945b-c061fa52b40c\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=3ms shot=232ms unfreeze=2ms saved=True\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: failed\n [ComfyUI] [ComfyUI-SAM3] Socket unhealthy, restarting worker...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock exists=True"}, {"file": "frame_003.jpg", "time": 8.84, "log": "Capturing execution frames: scene_seg_interactive.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"26\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 26: SAM3InteractiveCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":3348.288109906738,\\\"y\\\":2452.2208696844737}],\\\"negative_points\\\":[],\\\"positive_boxes\\\":[],\\\"negative_boxes\\\":[],\\\"name\\\":\\\"Prompt 1\\\"},{\\\"positiv\n [ComfyUI] Generated prompt_id: 811be13c-53ad-4f41-945b-c061fa52b40c\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=3ms shot=232ms unfreeze=2ms saved=True\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: failed\n [ComfyUI] [ComfyUI-SAM3] Socket unhealthy, restarting worker...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock exists=True\n Frame 3 saved (frame_002.jpg, t=4.5s)\n [capture-periodic] freeze=7ms shot=131ms unfreeze=15ms saved=True\n [capture-loop] iter=50 t=6.4s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.1/7.0GB (46%) swap=1.6/3.0GB (54%) cpu=54% browser_rss=0.53GB\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=9 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (4.78s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3InteractiveCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":3348.288109906738,\"y\":2452.220..., sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, unique_id: '26'\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3InteractiveCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=10 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] objc[7858]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[7858]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed."}, {"file": "frame_004.jpg", "time": 47.52, "log": "Capturing execution frames: scene_seg_interactive.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"26\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 26: SAM3InteractiveCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":3348.288109906738,\\\"y\\\":2452.2208696844737}],\\\"negative_points\\\":[],\\\"positive_boxes\\\":[],\\\"negative_boxes\\\":[],\\\"name\\\":\\\"Prompt 1\\\"},{\\\"positiv\n [ComfyUI] Generated prompt_id: 811be13c-53ad-4f41-945b-c061fa52b40c\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=3ms shot=232ms unfreeze=2ms saved=True\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: failed\n [ComfyUI] [ComfyUI-SAM3] Socket unhealthy, restarting worker...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock exists=True\n Frame 3 saved (frame_002.jpg, t=4.5s)\n [capture-periodic] freeze=7ms shot=131ms unfreeze=15ms saved=True\n [capture-loop] iter=50 t=6.4s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.1/7.0GB (46%) swap=1.6/3.0GB (54%) cpu=54% browser_rss=0.53GB\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=9 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (4.78s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3InteractiveCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":3348.288109906738,\"y\":2452.220..., sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, unique_id: '26'\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3InteractiveCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=10 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] objc[7858]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[7858]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n Frame 4 saved (frame_003.jpg, t=8.8s)\n [capture-periodic] freeze=1ms shot=71ms unfreeze=2ms saved=True\n [capture-loop] iter=100 t=12.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.4/7.0GB (62%) swap=0.5/2.0GB (26%) cpu=30% browser_rss=0.54GB\n [capture-loop] iter=150 t=18.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.8/7.0GB (73%) swap=0.5/2.0GB (26%) cpu=32% browser_rss=0.25GB\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=10\n [ComfyUI] [comfy-env] VRAM request: 1.84GB, free before eviction: 1.60GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.61GB\n [capture-loop] iter=200 t=23.5s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.4/7.0GB (79%) swap=0.5/2.0GB (26%) cpu=24% browser_rss=0.23GB\n [capture-loop] iter=250 t=29.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.5/7.0GB (78%) swap=0.4/2.0GB (22%) cpu=54% browser_rss=0.23GB\n [capture-loop] iter=300 t=38.8s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.6/7.0GB (79%) swap=0.5/2.0GB (23%) cpu=43% browser_rss=0.21GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=10"}, {"file": "frame_005.jpg", "time": 51.47, "log": "Capturing execution frames: scene_seg_interactive.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"26\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 26: SAM3InteractiveCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":3348.288109906738,\\\"y\\\":2452.2208696844737}],\\\"negative_points\\\":[],\\\"positive_boxes\\\":[],\\\"negative_boxes\\\":[],\\\"name\\\":\\\"Prompt 1\\\"},{\\\"positiv\n [ComfyUI] Generated prompt_id: 811be13c-53ad-4f41-945b-c061fa52b40c\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=3ms shot=232ms unfreeze=2ms saved=True\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: failed\n [ComfyUI] [ComfyUI-SAM3] Socket unhealthy, restarting worker...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock exists=True\n Frame 3 saved (frame_002.jpg, t=4.5s)\n [capture-periodic] freeze=7ms shot=131ms unfreeze=15ms saved=True\n [capture-loop] iter=50 t=6.4s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.1/7.0GB (46%) swap=1.6/3.0GB (54%) cpu=54% browser_rss=0.53GB\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=9 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (4.78s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3InteractiveCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":3348.288109906738,\"y\":2452.220..., sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, unique_id: '26'\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3InteractiveCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=10 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] objc[7858]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[7858]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n Frame 4 saved (frame_003.jpg, t=8.8s)\n [capture-periodic] freeze=1ms shot=71ms unfreeze=2ms saved=True\n [capture-loop] iter=100 t=12.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.4/7.0GB (62%) swap=0.5/2.0GB (26%) cpu=30% browser_rss=0.54GB\n [capture-loop] iter=150 t=18.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.8/7.0GB (73%) swap=0.5/2.0GB (26%) cpu=32% browser_rss=0.25GB\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=10\n [ComfyUI] [comfy-env] VRAM request: 1.84GB, free before eviction: 1.60GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.61GB\n [capture-loop] iter=200 t=23.5s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.4/7.0GB (79%) swap=0.5/2.0GB (26%) cpu=24% browser_rss=0.23GB\n [capture-loop] iter=250 t=29.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.5/7.0GB (78%) swap=0.4/2.0GB (22%) cpu=54% browser_rss=0.23GB\n [capture-loop] iter=300 t=38.8s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.6/7.0GB (79%) swap=0.5/2.0GB (23%) cpu=43% browser_rss=0.21GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=10\n Frame 5 saved (frame_004.jpg, t=47.5s)\n [capture-periodic] freeze=7ms shot=196ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3InteractiveCollector done (41.76s): result: NodeOutput\n [ComfyUI] Prompt executed in 49.97 seconds"}, {"file": "frame_006.jpg", "time": 52.46, "log": "Capturing execution frames: scene_seg_interactive.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"image.png\"}\n [ComfyUI] Node 4: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"26\", 0]}\n [ComfyUI] Node 12: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 26: SAM3InteractiveCollector\n [ComfyUI] Inputs: {\"multi_prompts_store\": \"[{\\\"positive_points\\\":[{\\\"x\\\":3348.288109906738,\\\"y\\\":2452.2208696844737}],\\\"negative_points\\\":[],\\\"positive_boxes\\\":[],\\\"negative_boxes\\\":[],\\\"name\\\":\\\"Prompt 1\\\"},{\\\"positiv\n [ComfyUI] Generated prompt_id: 811be13c-53ad-4f41-945b-c061fa52b40c\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n Frame 2 saved (frame_001.jpg, t=2.2s)\n [capture-periodic] freeze=3ms shot=232ms unfreeze=2ms saved=True\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: failed\n [ComfyUI] [ComfyUI-SAM3] Socket unhealthy, restarting worker...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_9c3d433d932a.sock exists=True\n Frame 3 saved (frame_002.jpg, t=4.5s)\n [capture-periodic] freeze=7ms shot=131ms unfreeze=15ms saved=True\n [capture-loop] iter=50 t=6.4s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.1/7.0GB (46%) swap=1.6/3.0GB (54%) cpu=54% browser_rss=0.53GB\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=9 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (4.78s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3InteractiveCollector: multi_prompts_store: '[{\"positive_points\":[{\"x\":3348.288109906738,\"y\":2452.220..., sam3_model_config: dict, image: torch.float32 [1,4480,6720,3] cpu, unique_id: '26'\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3InteractiveCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 4480, 6720, 3])\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=10 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 4480, 6720, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 4480, 6720, 3])\n [ComfyUI] objc[7858]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[7858]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x122e187f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x164e943f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n Frame 4 saved (frame_003.jpg, t=8.8s)\n [capture-periodic] freeze=1ms shot=71ms unfreeze=2ms saved=True\n [capture-loop] iter=100 t=12.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.4/7.0GB (62%) swap=0.5/2.0GB (26%) cpu=30% browser_rss=0.54GB\n [capture-loop] iter=150 t=18.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.8/7.0GB (73%) swap=0.5/2.0GB (26%) cpu=32% browser_rss=0.25GB\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=10\n [ComfyUI] [comfy-env] VRAM request: 1.84GB, free before eviction: 1.60GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.61GB\n [capture-loop] iter=200 t=23.5s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.4/7.0GB (79%) swap=0.5/2.0GB (26%) cpu=24% browser_rss=0.23GB\n [capture-loop] iter=250 t=29.7s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=2.5/7.0GB (78%) swap=0.4/2.0GB (22%) cpu=54% browser_rss=0.23GB\n [capture-loop] iter=300 t=38.8s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=2 ram=3.6/7.0GB (79%) swap=0.5/2.0GB (23%) cpu=43% browser_rss=0.21GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=10\n Frame 5 saved (frame_004.jpg, t=47.5s)\n [capture-periodic] freeze=7ms shot=196ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3InteractiveCollector done (41.76s): result: NodeOutput\n [ComfyUI] Prompt executed in 49.97 seconds\n Node executed (1 total), capturing...\n Frame 6 saved (frame_005.jpg, t=51.5s)\n [capture-node] freeze=352ms shot=331ms unfreeze=3ms saved=True"}, {"file": "frame_007.jpg", "time": 55.09786677360535, "log": "Final screenshot"}], "total_time": 52.61}, "image_seg_point": {"frames": [{"file": "frame_000.jpg", "time": 0.0, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version."}, {"file": "frame_001.jpg", "time": 2.28, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True"}, {"file": "frame_002.jpg", "time": 4.39, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace..."}, {"file": "frame_003.jpg", "time": 6.56, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_004.jpg", "time": 8.7, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_005.jpg", "time": 10.85, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_006.jpg", "time": 13.01, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_007.jpg", "time": 15.16, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_008.jpg", "time": 17.32, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%"}, {"file": "frame_009.jpg", "time": 19.48, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_010.jpg", "time": 21.61, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_011.jpg", "time": 23.79, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_012.jpg", "time": 25.96, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_013.jpg", "time": 28.14, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_014.jpg", "time": 30.27, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_015.jpg", "time": 32.49, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_016.jpg", "time": 34.61, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB"}, {"file": "frame_017.jpg", "time": 36.74, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_018.jpg", "time": 38.88, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_019.jpg", "time": 41.05, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_020.jpg", "time": 43.27, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_021.jpg", "time": 45.43, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_022.jpg", "time": 47.62, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_023.jpg", "time": 49.75, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_024.jpg", "time": 51.88, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%"}, {"file": "frame_025.jpg", "time": 54.06, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%\n Frame 25 saved (frame_024.jpg, t=51.9s)\n [capture-periodic] freeze=8ms shot=94ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_026.jpg", "time": 56.18, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%\n Frame 25 saved (frame_024.jpg, t=51.9s)\n [capture-periodic] freeze=8ms shot=94ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 26 saved (frame_025.jpg, t=54.1s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_027.jpg", "time": 58.35, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%\n Frame 25 saved (frame_024.jpg, t=51.9s)\n [capture-periodic] freeze=8ms shot=94ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 26 saved (frame_025.jpg, t=54.1s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 27 saved (frame_026.jpg, t=56.2s)\n [capture-periodic] freeze=6ms shot=102ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=500 t=57.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=47% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 90%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_028.jpg", "time": 60.51, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%\n Frame 25 saved (frame_024.jpg, t=51.9s)\n [capture-periodic] freeze=8ms shot=94ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 26 saved (frame_025.jpg, t=54.1s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 27 saved (frame_026.jpg, t=56.2s)\n [capture-periodic] freeze=6ms shot=102ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=500 t=57.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=47% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 90%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 28 saved (frame_027.jpg, t=58.4s)\n [capture-periodic] freeze=3ms shot=98ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2"}, {"file": "frame_029.jpg", "time": 62.73, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%\n Frame 25 saved (frame_024.jpg, t=51.9s)\n [capture-periodic] freeze=8ms shot=94ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 26 saved (frame_025.jpg, t=54.1s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 27 saved (frame_026.jpg, t=56.2s)\n [capture-periodic] freeze=6ms shot=102ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=500 t=57.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=47% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 90%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 28 saved (frame_027.jpg, t=58.4s)\n [capture-periodic] freeze=3ms shot=98ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 29 saved (frame_028.jpg, t=60.5s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=2ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000017078f000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1166 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1314 in recv_into\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/socket.py\", line 718 in readinto\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/http/client.py\", line 478 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1005 in _fp_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1022 in _raw_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1110 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1267 in stream\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/requests/models.py\", line 822 in generate\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 128 in _download_from_huggingface\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 73 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=550 t=62.5s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=50% browser_rss=0.48GB"}, {"file": "frame_030.jpg", "time": 64.89, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%\n Frame 25 saved (frame_024.jpg, t=51.9s)\n [capture-periodic] freeze=8ms shot=94ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 26 saved (frame_025.jpg, t=54.1s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 27 saved (frame_026.jpg, t=56.2s)\n [capture-periodic] freeze=6ms shot=102ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=500 t=57.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=47% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 90%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 28 saved (frame_027.jpg, t=58.4s)\n [capture-periodic] freeze=3ms shot=98ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 29 saved (frame_028.jpg, t=60.5s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=2ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000017078f000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1166 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1314 in recv_into\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/socket.py\", line 718 in readinto\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/http/client.py\", line 478 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1005 in _fp_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1022 in _raw_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1110 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1267 in stream\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/requests/models.py\", line 822 in generate\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 128 in _download_from_huggingface\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 73 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=550 t=62.5s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=50% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 30 saved (frame_029.jpg, t=62.7s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=6ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 100%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloaded sam3.safetensors\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model downloaded successfully\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (59.17s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3Segmentation: refinement_iterations: 0, use_multimask: True, output_best_mask: True, sam3_model_config: dict, image: torch.float32 [1,720,1280,3] cpu, positive_points: dict, negative_points: dict\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3Segmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=3 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] objc[2924]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x113d707a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x14d1083a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[2924]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x113d707f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x14d1083f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed."}, {"file": "frame_031.jpg", "time": 111.67, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%\n Frame 25 saved (frame_024.jpg, t=51.9s)\n [capture-periodic] freeze=8ms shot=94ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 26 saved (frame_025.jpg, t=54.1s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 27 saved (frame_026.jpg, t=56.2s)\n [capture-periodic] freeze=6ms shot=102ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=500 t=57.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=47% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 90%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 28 saved (frame_027.jpg, t=58.4s)\n [capture-periodic] freeze=3ms shot=98ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 29 saved (frame_028.jpg, t=60.5s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=2ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000017078f000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1166 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1314 in recv_into\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/socket.py\", line 718 in readinto\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/http/client.py\", line 478 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1005 in _fp_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1022 in _raw_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1110 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1267 in stream\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/requests/models.py\", line 822 in generate\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 128 in _download_from_huggingface\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 73 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=550 t=62.5s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=50% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 30 saved (frame_029.jpg, t=62.7s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=6ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 100%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloaded sam3.safetensors\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model downloaded successfully\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (59.17s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3Segmentation: refinement_iterations: 0, use_multimask: True, output_best_mask: True, sam3_model_config: dict, image: torch.float32 [1,720,1280,3] cpu, positive_points: dict, negative_points: dict\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3Segmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=3 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] objc[2924]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x113d707a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x14d1083a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[2924]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x113d707f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x14d1083f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n Frame 31 saved (frame_030.jpg, t=64.9s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=2ms saved=True\n [capture-loop] iter=600 t=68.2s 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=53% browser_rss=0.45GB\n [capture-loop] iter=650 t=73.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=4 ram=3.3/7.0GB (66%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.43GB\n [capture-loop] iter=700 t=79.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.8/7.0GB (73%) swap=0.0/0.0GB (0%) cpu=52% browser_rss=0.25GB\n [capture-loop] iter=750 t=85.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.6/7.0GB (76%) swap=0.0/0.0GB (0%) cpu=34% browser_rss=0.26GB\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=3\n [ComfyUI] [comfy-env] VRAM request: 1.84GB, free before eviction: 1.78GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.77GB\n [capture-loop] iter=800 t=91.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.4/7.0GB (70%) swap=0.0/0.0GB (0%) cpu=51% browser_rss=0.25GB\n [capture-loop] iter=850 t=103.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=4.4/7.0GB (83%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.22GB\n [capture-loop] iter=900 t=109.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.9/7.0GB (74%) swap=0.0/0.0GB (0%) cpu=54% browser_rss=0.23GB\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3Segmentation done (47.92s): result: NodeOutput\n [ComfyUI] Prompt executed in 111.16 seconds"}, {"file": "frame_032.jpg", "time": 112.84, "log": "Capturing execution frames: image_seg_point.json\n [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version.\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 6 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"example_image.jpg\"}\n [ComfyUI] Node 15: SAM3PointCollector\n [ComfyUI] Inputs: {\"points_store\": \"{\\\"positive\\\":[{\\\"x\\\":426.27735719657574,\\\"y\\\":321.42611685978835},{\\\"x\\\":417.13743597288953,\\\"y\\\":407.3413796907987},{\\\"x\\\":431.76130993078743,\\\"y\\\":549.9241563039649}],\\\"negative\\\"\n [ComfyUI] Node 28: PreviewImage\n [ComfyUI] Inputs: {\"images\": [\"31\", 2]}\n [ComfyUI] Node 29: MaskPreview\n [ComfyUI] Inputs: {\"mask\": [\"31\", 0]}\n [ComfyUI] Node 30: LoadSAM3Model\n [ComfyUI] Inputs: {\"precision\": \"auto\", \"compile\": false}\n [ComfyUI] Node 31: SAM3Segmentation\n [ComfyUI] Inputs: {\"refinement_iterations\": 0, \"use_multimask\": true, \"output_best_mask\": true, \"sam3_model_config\": [\"30\", 0], \"image\": [\"1\", 0], \"positive_points\": [\"15\", 0], \"negative_points\": [\"15\", 1]}\n [ComfyUI] Generated prompt_id: bb8af4fb-1ba4-46ac-b664-71f9b4b5a2d8\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n Queuing workflow for execution...\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] SubprocessWorker: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [comfy-env] Running SAM3PointCollector: points_store: '{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978..., coordinates: '[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":41..., neg_coordinates: '[]', image: torch.float32 [1,720,1280,3] cpu\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.sam3_interactive.SAM3PointCollector.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] python: /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [ComfyUI-SAM3] sys_path sent to worker: ['/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/bin/python\n [ComfyUI] [SubprocessWorker] launching cmd=['/Users/runner/.pixi/bin/pixi', 'run', '--as-is', '--manifest-path', '/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/pixi.toml', '-e', 'sam3-nodes', 'python', '/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py', 'unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock']...\n [ComfyUI] [SubprocessWorker] socket_addr=unix:///var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfy_worker_0ab63ed92c8f.sock exists=True\n Frame 2 saved (frame_001.jpg, t=2.3s)\n [capture-periodic] freeze=2ms shot=110ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=1 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3PointCollector done (3.89s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSAM3Model: precision: 'auto', compile: False\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSAM3Model.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] 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=2 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model not found at /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace...\n Node executed (1 total), capturing...\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors...\n Frame 3 saved (frame_002.jpg, t=4.4s)\n [capture-node] freeze=2ms shot=96ms unfreeze=2ms saved=True\n [capture-loop] iter=50 t=5.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=49% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 4 saved (frame_003.jpg, t=6.6s)\n [capture-periodic] freeze=3ms shot=90ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 5 saved (frame_004.jpg, t=8.7s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 6 saved (frame_005.jpg, t=10.8s)\n [capture-periodic] freeze=2ms shot=108ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 10%\n [capture-loop] iter=100 t=11.6s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=56% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 7 saved (frame_006.jpg, t=13.0s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 8 saved (frame_007.jpg, t=15.2s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=150 t=17.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 20%\n Frame 9 saved (frame_008.jpg, t=17.3s)\n [capture-periodic] freeze=3ms shot=88ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 10 saved (frame_009.jpg, t=19.5s)\n [capture-periodic] freeze=2ms shot=86ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 11 saved (frame_010.jpg, t=21.6s)\n [capture-periodic] freeze=2ms shot=107ms unfreeze=5ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 30%\n [capture-loop] iter=200 t=22.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.8/7.0GB (60%) swap=0.0/0.0GB (0%) cpu=46% browser_rss=0.58GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 12 saved (frame_011.jpg, t=23.8s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 13 saved (frame_012.jpg, t=26.0s)\n [capture-periodic] freeze=2ms shot=75ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 14 saved (frame_013.jpg, t=28.1s)\n [capture-periodic] freeze=2ms shot=95ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 40%\n [capture-loop] iter=250 t=28.7s 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=47% browser_rss=0.59GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 15 saved (frame_014.jpg, t=30.3s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 16 saved (frame_015.jpg, t=32.5s)\n [capture-periodic] freeze=2ms shot=85ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 50%\n [capture-loop] iter=300 t=34.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=42% browser_rss=0.58GB\n Frame 17 saved (frame_016.jpg, t=34.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 18 saved (frame_017.jpg, t=36.7s)\n [capture-periodic] freeze=2ms shot=98ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 19 saved (frame_018.jpg, t=38.9s)\n [capture-periodic] freeze=3ms shot=94ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=350 t=39.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=35% browser_rss=0.56GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 60%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 20 saved (frame_019.jpg, t=41.0s)\n [capture-periodic] freeze=2ms shot=102ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 21 saved (frame_020.jpg, t=43.3s)\n [capture-periodic] freeze=2ms shot=105ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 22 saved (frame_021.jpg, t=45.4s)\n [capture-periodic] freeze=2ms shot=92ms unfreeze=3ms saved=True\n [capture-loop] iter=400 t=45.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=6 ram=3.8/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.52GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 70%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 23 saved (frame_022.jpg, t=47.6s)\n [capture-periodic] freeze=2ms shot=89ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 24 saved (frame_023.jpg, t=49.8s)\n [capture-periodic] freeze=2ms shot=81ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=450 t=51.2s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 80%\n Frame 25 saved (frame_024.jpg, t=51.9s)\n [capture-periodic] freeze=8ms shot=94ms unfreeze=2ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 26 saved (frame_025.jpg, t=54.1s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 27 saved (frame_026.jpg, t=56.2s)\n [capture-periodic] freeze=6ms shot=102ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=500 t=57.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=47% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 90%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 28 saved (frame_027.jpg, t=58.4s)\n [capture-periodic] freeze=3ms shot=98ms unfreeze=4ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 29 saved (frame_028.jpg, t=60.5s)\n [capture-periodic] freeze=2ms shot=84ms unfreeze=2ms saved=True\n [ComfyUI] [worker:ComfyUI-SAM3]\n [ComfyUI] === WATCHDOG TICK 1 ===\n [ComfyUI] [worker:ComfyUI-SAM3] Current thread 0x000000017078f000 (most recent call first):\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 52 in _watchdog\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 982 in run\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1045 in _bootstrap_inner\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/threading.py\", line 1002 in _bootstrap\n [ComfyUI] \n [ComfyUI] Thread 0x00000001f5ede240 (most recent call first):\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1166 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/ssl.py\", line 1314 in recv_into\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/socket.py\", line 718 in readinto\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/http/client.py\", line 478 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1005 in _fp_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1022 in _raw_read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1110 in read\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/urllib3/response.py\", line 1267 in stream\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/requests/models.py\", line 822 in generate\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 128 in _download_from_huggingface\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/load_model.py\", line 73 in execute\n [ComfyUI] File \"/Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/comfy_api/latest/_io.py\", line 1833 in EXECUTE_NORMALIZED\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1762 in main\n [ComfyUI] File \"/var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/comfyui_pvenv_1h0x1hru/persistent_worker.py\", line 1807 in <module>\n [ComfyUI] \n [ComfyUI] [worker:ComfyUI-SAM3] === END ===\n [ComfyUI] \n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [capture-loop] iter=550 t=62.5s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=3.7/7.0GB (59%) swap=0.0/0.0GB (0%) cpu=50% browser_rss=0.48GB\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n Frame 30 saved (frame_029.jpg, t=62.7s)\n [capture-periodic] freeze=2ms shot=78ms unfreeze=6ms saved=True\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Download progress: 100%\n [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=2\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Downloaded sam3.safetensors\n [ComfyUI] [worker:ComfyUI-SAM3] [SAM3] Model downloaded successfully\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSAM3Model done (59.17s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SAM3Segmentation: refinement_iterations: 0, use_multimask: True, output_best_mask: True, sam3_model_config: dict, image: torch.float32 [1,720,1280,3] cpu, positive_points: dict, negative_points: dict\n [ComfyUI] [SubprocessWorker] call_method: nodes.segmentation.SAM3Segmentation.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-SAM3] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-SAM3] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 720, 1280, 3])\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=3 sending call_method\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 720, 1280, 3]\n [ComfyUI] [worker:ComfyUI-SAM3] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 720, 1280, 3])\n [ComfyUI] objc[2924]: Class AVFFrameReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x113d707a8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x14d1083a8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n [ComfyUI] objc[2924]: Class AVFAudioReceiver is implemented in both /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/libavdevice.62.3.101.dylib (0x113d707f8) and /Users/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2121/ComfyUI/.ce/.pixi/envs/sam3-nodes/lib/python3.11/site-packages/cv2/.dylibs/libavdevice.61.3.100.dylib (0x14d1083f8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed.\n Frame 31 saved (frame_030.jpg, t=64.9s)\n [capture-periodic] freeze=2ms shot=99ms unfreeze=2ms saved=True\n [capture-loop] iter=600 t=68.2s 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=53% browser_rss=0.45GB\n [capture-loop] iter=650 t=73.9s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=4 ram=3.3/7.0GB (66%) swap=0.0/0.0GB (0%) cpu=44% browser_rss=0.43GB\n [capture-loop] iter=700 t=79.7s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=2.8/7.0GB (73%) swap=0.0/0.0GB (0%) cpu=52% browser_rss=0.25GB\n [capture-loop] iter=750 t=85.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=2 ram=2.6/7.0GB (76%) swap=0.0/0.0GB (0%) cpu=34% browser_rss=0.26GB\n [ComfyUI] [SubprocessWorker] callback 'request_vram_budget' from call_id=3\n [ComfyUI] [comfy-env] VRAM request: 1.84GB, free before eviction: 1.78GB\n [ComfyUI] [comfy-env] VRAM after eviction: 1.77GB\n [capture-loop] iter=800 t=91.4s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.4/7.0GB (70%) swap=0.0/0.0GB (0%) cpu=51% browser_rss=0.25GB\n [capture-loop] iter=850 t=103.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=4.4/7.0GB (83%) swap=0.0/0.0GB (0%) cpu=41% browser_rss=0.22GB\n [capture-loop] iter=900 t=109.0s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=3 ram=3.9/7.0GB (74%) swap=0.0/0.0GB (0%) cpu=54% browser_rss=0.23GB\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] SAM3Segmentation done (47.92s): result: NodeOutput\n [ComfyUI] Prompt executed in 111.16 seconds\n Node executed (2 total), capturing...\n Frame 32 saved (frame_031.jpg, t=111.7s)\n [capture-node] freeze=3ms shot=557ms unfreeze=3ms saved=True"}, {"file": "frame_033.jpg", "time": 115.29827904701233, "log": "Final screenshot"}], "total_time": 113.1}};
|
|
|
|
const inIframe = window !== window.top;
|
|
let currentWorkflow = null;
|
|
let playInterval = null;
|
|
let originalLogContent = '';
|
|
let currentFrameIndex = 0;
|
|
let currentFrames = [];
|
|
let currentTotalTime = 0;
|
|
|
|
function openLightboxByName(name) {
|
|
const w = workflowData[name];
|
|
if (w) openLightbox(w.src, w.title, w.status, w.duration, w.log, w.hardware);
|
|
}
|
|
|
|
function openLightbox(src, title, status, duration, logContent, hardware) {
|
|
document.getElementById('lightbox-img').src = src;
|
|
document.getElementById('lightbox-title').textContent = title;
|
|
currentWorkflow = title;
|
|
originalLogContent = logContent;
|
|
|
|
const badge = document.getElementById('lightbox-badge');
|
|
badge.textContent = status;
|
|
badge.className = 'lightbox-badge ' + status;
|
|
|
|
document.getElementById('lightbox-duration').textContent = duration + 's';
|
|
document.getElementById('lightbox-log').textContent = logContent || '(No log available)';
|
|
|
|
const hwEl = document.getElementById('lightbox-hardware');
|
|
if (hardware) {
|
|
const parts = [];
|
|
if (hardware.os) parts.push(hardware.os);
|
|
if (hardware.cpu) parts.push(hardware.cpu);
|
|
if (hardware.gpu) parts.push(hardware.gpu);
|
|
hwEl.textContent = parts.join(' | ');
|
|
} else {
|
|
hwEl.textContent = status === 'skipped' ? '(Did not run on this machine)' : '';
|
|
}
|
|
|
|
const data = videoData[title];
|
|
const videoPlayer = document.getElementById('video-player');
|
|
const lightboxImg = document.getElementById('lightbox-img');
|
|
const lightboxVideo = document.getElementById('lightbox-video');
|
|
|
|
// Reset both modes; the branch below activates one.
|
|
videoPlayer.classList.remove('active');
|
|
lightboxVideo.style.display = 'none';
|
|
lightboxVideo.removeAttribute('src');
|
|
lightboxImg.style.display = '';
|
|
|
|
if (data && data.mp4) {
|
|
// Playable mp4 (desktop runs). Show <video>, hide the
|
|
// frame-slideshow img + slider.
|
|
lightboxVideo.src = 'videos/' + encodeURIComponent(title) + '/' + data.mp4;
|
|
lightboxVideo.style.display = '';
|
|
lightboxImg.style.display = 'none';
|
|
} else if (data && data.frames && data.frames.length > 1) {
|
|
currentFrames = data.frames;
|
|
currentTotalTime = data.total_time || data.frames[data.frames.length - 1].time;
|
|
setupVideoSlider(data.frames, currentTotalTime);
|
|
updateVideoFrameByIndex(title, data.frames.length - 1);
|
|
videoPlayer.classList.add('active');
|
|
}
|
|
|
|
loadResourceGraph(title);
|
|
|
|
// Close image overlay if open
|
|
closeImgOverlay();
|
|
|
|
document.getElementById('lightbox').classList.add('active');
|
|
history.replaceState(null, '', '#' + encodeURIComponent(title));
|
|
|
|
// Notify parent frames for deep linking
|
|
if (inIframe) {
|
|
window.parent.postMessage({ type: 'comfytest-open', name: title }, '*');
|
|
}
|
|
}
|
|
|
|
function buildSliderRange(frames, totalTime) {
|
|
const range = { 'min': frames[0].time };
|
|
frames.forEach((frame, idx) => {
|
|
if (idx > 0 && idx < frames.length - 1) {
|
|
const pct = (frame.time / totalTime * 100).toFixed(1) + '%';
|
|
range[pct] = frame.time;
|
|
}
|
|
});
|
|
range['max'] = frames[frames.length - 1].time;
|
|
return range;
|
|
}
|
|
|
|
function setupVideoSlider(frames, totalTime) {
|
|
const sliderEl = document.getElementById('video-slider');
|
|
|
|
if (sliderEl.noUiSlider) {
|
|
sliderEl.noUiSlider.destroy();
|
|
}
|
|
|
|
const range = buildSliderRange(frames, totalTime);
|
|
|
|
noUiSlider.create(sliderEl, {
|
|
start: frames[frames.length - 1].time,
|
|
snap: true,
|
|
range: range,
|
|
pips: {
|
|
mode: 'range',
|
|
density: 100
|
|
}
|
|
});
|
|
|
|
sliderEl.noUiSlider.on('update', function(values) {
|
|
const time = parseFloat(values[0]);
|
|
const frameIdx = frames.findIndex(f => Math.abs(f.time - time) < 0.01);
|
|
if (frameIdx >= 0 && frameIdx !== currentFrameIndex) {
|
|
currentFrameIndex = frameIdx;
|
|
showFrame(currentWorkflow, frameIdx);
|
|
}
|
|
});
|
|
}
|
|
|
|
function showFrame(workflowName, frameIndex) {
|
|
const data = videoData[workflowName];
|
|
if (!data || !data.frames) return;
|
|
|
|
const frame = data.frames[frameIndex];
|
|
const img = document.getElementById('lightbox-img');
|
|
|
|
const isLastFrame = frameIndex === data.frames.length - 1;
|
|
if (isLastFrame && workflowData[workflowName] && workflowData[workflowName].src) {
|
|
img.src = workflowData[workflowName].src;
|
|
} else {
|
|
img.src = 'videos/' + workflowName + '/' + frame.file;
|
|
}
|
|
|
|
const counter = document.getElementById('video-frame-counter');
|
|
const totalTime = data.total_time || data.frames[data.frames.length - 1].time;
|
|
counter.textContent = frame.time.toFixed(1) + 's / ' + totalTime.toFixed(1) + 's';
|
|
|
|
const logEl = document.getElementById('lightbox-log');
|
|
if (frame.log) {
|
|
logEl.textContent = frame.log;
|
|
logEl.scrollTop = logEl.scrollHeight;
|
|
}
|
|
}
|
|
|
|
function updateVideoFrameByIndex(workflowName, frameIndex) {
|
|
currentFrameIndex = frameIndex;
|
|
showFrame(workflowName, frameIndex);
|
|
|
|
const sliderEl = document.getElementById('video-slider');
|
|
if (sliderEl.noUiSlider && currentFrames[frameIndex]) {
|
|
sliderEl.noUiSlider.set(currentFrames[frameIndex].time);
|
|
}
|
|
}
|
|
|
|
function toggleVideoPlay() {
|
|
const btn = document.getElementById('video-play-btn');
|
|
if (playInterval) {
|
|
clearInterval(playInterval);
|
|
playInterval = null;
|
|
btn.innerHTML = '▶ Play';
|
|
} else {
|
|
btn.innerHTML = '■ Stop';
|
|
playInterval = setInterval(() => {
|
|
if (!currentFrames.length) return;
|
|
currentFrameIndex = (currentFrameIndex + 1) % currentFrames.length;
|
|
updateVideoFrameByIndex(currentWorkflow, currentFrameIndex);
|
|
}, 500);
|
|
}
|
|
}
|
|
|
|
let resourceGraphState = null;
|
|
|
|
async function loadResourceGraph(workflowName) {
|
|
const graphContainer = document.getElementById('resource-graph');
|
|
const canvas = document.getElementById('resource-canvas');
|
|
const gpuLegend = document.getElementById('gpu-legend');
|
|
|
|
resourceGraphState = null;
|
|
|
|
try {
|
|
const csvResponse = await fetch('logs/' + workflowName + '_resources.csv');
|
|
|
|
if (!csvResponse.ok) {
|
|
graphContainer.classList.remove('active');
|
|
return;
|
|
}
|
|
|
|
const text = await csvResponse.text();
|
|
const allLines = text.trim().split('\n');
|
|
|
|
let totalRamGb = 32;
|
|
if (allLines[0].startsWith('#')) {
|
|
const metaMatch = allLines[0].match(/total_ram_gb=([\d.]+)/);
|
|
if (metaMatch) {
|
|
totalRamGb = parseFloat(metaMatch[1]);
|
|
}
|
|
}
|
|
|
|
const dataLines = allLines.slice(2);
|
|
|
|
if (dataLines.length < 2) {
|
|
graphContainer.classList.remove('active');
|
|
return;
|
|
}
|
|
|
|
const data = dataLines.map(line => {
|
|
const [t, ram, vram] = line.split(',');
|
|
return {
|
|
t: parseFloat(t),
|
|
ram: parseFloat(ram),
|
|
vram: vram ? parseFloat(vram) : null
|
|
};
|
|
});
|
|
|
|
const hasVram = data.some(d => d.vram !== null);
|
|
gpuLegend.style.display = hasVram ? 'flex' : 'none';
|
|
|
|
graphContainer.classList.add('active');
|
|
await new Promise(r => setTimeout(r, 10));
|
|
|
|
const ctx = canvas.getContext('2d');
|
|
const dpr = window.devicePixelRatio || 1;
|
|
const rect = canvas.getBoundingClientRect();
|
|
canvas.width = rect.width * dpr;
|
|
canvas.height = rect.height * dpr;
|
|
ctx.scale(dpr, dpr);
|
|
|
|
const w = rect.width;
|
|
const h = rect.height;
|
|
const padding = { top: 10, right: 40, bottom: 20, left: 45 };
|
|
const graphW = w - padding.left - padding.right;
|
|
const graphH = h - padding.top - padding.bottom;
|
|
|
|
const maxRam = Math.max(...data.map(d => d.ram), 0.5);
|
|
const maxVram = hasVram ? Math.max(...data.filter(d => d.vram !== null).map(d => d.vram), 0.5) : 1;
|
|
const maxTime = data[data.length - 1].t;
|
|
|
|
resourceGraphState = { data, padding, w, h, graphW, graphH, maxRam, maxVram, maxTime, hasVram, dpr };
|
|
|
|
drawResourceGraph();
|
|
} catch (e) {
|
|
console.error('Resource graph error:', e);
|
|
graphContainer.classList.remove('active');
|
|
}
|
|
}
|
|
|
|
function drawResourceGraph(hoverX) {
|
|
if (!resourceGraphState) return;
|
|
const { data, padding, w, h, graphW, graphH, maxRam, maxVram, maxTime, hasVram, dpr } = resourceGraphState;
|
|
|
|
const canvas = document.getElementById('resource-canvas');
|
|
const ctx = canvas.getContext('2d');
|
|
ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
|
|
ctx.clearRect(0, 0, w, h);
|
|
|
|
// Grid lines
|
|
ctx.strokeStyle = '#1c2d44';
|
|
ctx.lineWidth = 0.5;
|
|
for (let i = 1; i < 4; i++) {
|
|
const y = padding.top + (graphH * i / 4);
|
|
ctx.beginPath();
|
|
ctx.moveTo(padding.left, y);
|
|
ctx.lineTo(w - padding.right, y);
|
|
ctx.stroke();
|
|
}
|
|
|
|
// Axes
|
|
ctx.strokeStyle = '#243656';
|
|
ctx.lineWidth = 1;
|
|
ctx.beginPath();
|
|
ctx.moveTo(padding.left, padding.top);
|
|
ctx.lineTo(padding.left, h - padding.bottom);
|
|
ctx.lineTo(w - padding.right, h - padding.bottom);
|
|
ctx.lineTo(w - padding.right, padding.top);
|
|
ctx.stroke();
|
|
|
|
// Left axis: RAM
|
|
ctx.fillStyle = '#3fb950';
|
|
ctx.font = '9px sans-serif';
|
|
ctx.textAlign = 'right';
|
|
const ramMax = Math.ceil(maxRam * 10) / 10;
|
|
ctx.fillText(ramMax.toFixed(1) + ' GB', padding.left - 3, padding.top + 4);
|
|
ctx.fillText('0', padding.left - 3, h - padding.bottom + 4);
|
|
|
|
// Right axis: VRAM (if present)
|
|
if (hasVram) {
|
|
ctx.fillStyle = '#d29922';
|
|
ctx.textAlign = 'left';
|
|
const vramMax = Math.ceil(maxVram * 10) / 10;
|
|
ctx.fillText(vramMax.toFixed(1) + ' GB', w - padding.right + 3, padding.top + 4);
|
|
ctx.fillText('0', w - padding.right + 3, h - padding.bottom + 4);
|
|
}
|
|
|
|
// Time labels
|
|
ctx.fillStyle = '#4a6282';
|
|
ctx.textAlign = 'center';
|
|
ctx.fillText('0s', padding.left, h - padding.bottom + 12);
|
|
ctx.fillText(maxTime.toFixed(0) + 's', w - padding.right, h - padding.bottom + 12);
|
|
|
|
function drawLine(values, maxVal, color) {
|
|
if (values.every(v => v === null || isNaN(v))) return;
|
|
ctx.strokeStyle = color;
|
|
ctx.lineWidth = 1.5;
|
|
ctx.beginPath();
|
|
let started = false;
|
|
data.forEach((d, i) => {
|
|
const val = values[i];
|
|
if (val === null || isNaN(val)) return;
|
|
const x = padding.left + (d.t / maxTime) * graphW;
|
|
const y = padding.top + (1 - val / maxVal) * graphH;
|
|
if (!started) { ctx.moveTo(x, y); started = true; }
|
|
else { ctx.lineTo(x, y); }
|
|
});
|
|
ctx.stroke();
|
|
}
|
|
|
|
drawLine(data.map(d => d.ram), ramMax, '#3fb950');
|
|
if (hasVram) {
|
|
drawLine(data.map(d => d.vram), Math.ceil(maxVram * 10) / 10, '#d29922');
|
|
}
|
|
|
|
// Hover crosshair
|
|
if (hoverX !== undefined && hoverX >= padding.left && hoverX <= w - padding.right) {
|
|
const timeAtCursor = ((hoverX - padding.left) / graphW) * maxTime;
|
|
let closest = data[0], closestDist = Infinity;
|
|
for (const d of data) {
|
|
const dist = Math.abs(d.t - timeAtCursor);
|
|
if (dist < closestDist) { closestDist = dist; closest = d; }
|
|
}
|
|
|
|
const snapX = padding.left + (closest.t / maxTime) * graphW;
|
|
|
|
// Vertical line
|
|
ctx.strokeStyle = 'rgba(230,237,243,0.2)';
|
|
ctx.lineWidth = 1;
|
|
ctx.beginPath();
|
|
ctx.moveTo(snapX, padding.top);
|
|
ctx.lineTo(snapX, h - padding.bottom);
|
|
ctx.stroke();
|
|
|
|
// Readout
|
|
ctx.font = '10px sans-serif';
|
|
ctx.textAlign = 'left';
|
|
const readoutX = snapX + 6;
|
|
let readoutY = padding.top + 14;
|
|
|
|
ctx.fillStyle = '#8ba3c1';
|
|
ctx.fillText(closest.t.toFixed(1) + 's', readoutX, readoutY);
|
|
readoutY += 13;
|
|
|
|
ctx.fillStyle = '#3fb950';
|
|
ctx.fillText('RAM: ' + closest.ram.toFixed(2) + ' GB', readoutX, readoutY);
|
|
readoutY += 13;
|
|
|
|
if (hasVram && closest.vram !== null) {
|
|
ctx.fillStyle = '#d29922';
|
|
ctx.fillText('VRAM: ' + closest.vram.toFixed(2) + ' GB', readoutX, readoutY);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Canvas hover handler
|
|
document.getElementById('resource-canvas').addEventListener('mousemove', function(e) {
|
|
if (!resourceGraphState) return;
|
|
const rect = this.getBoundingClientRect();
|
|
drawResourceGraph(e.clientX - rect.left);
|
|
});
|
|
document.getElementById('resource-canvas').addEventListener('mouseleave', function() {
|
|
drawResourceGraph();
|
|
});
|
|
|
|
function closeImgOverlay() {
|
|
const overlay = document.getElementById('img-overlay');
|
|
overlay.classList.remove('active', 'zoomed');
|
|
}
|
|
|
|
function closeLightbox() {
|
|
if (playInterval) {
|
|
clearInterval(playInterval);
|
|
playInterval = null;
|
|
document.getElementById('video-play-btn').innerHTML = '▶ Play';
|
|
}
|
|
closeImgOverlay();
|
|
document.getElementById('resource-graph').classList.remove('active');
|
|
document.getElementById('lightbox').classList.remove('active');
|
|
history.replaceState(null, '', window.location.pathname);
|
|
|
|
if (inIframe) {
|
|
window.parent.postMessage({ type: 'comfytest-close' }, '*');
|
|
}
|
|
}
|
|
|
|
document.getElementById('lightbox').onclick = (e) => {
|
|
if (e.target.id === 'lightbox') closeLightbox();
|
|
};
|
|
|
|
function navigateLightbox(delta) {
|
|
if (workflowNames.length === 0) return;
|
|
const idx = workflowNames.indexOf(currentWorkflow);
|
|
if (idx === -1) return;
|
|
const newIdx = (idx + delta + workflowNames.length) % workflowNames.length;
|
|
openLightboxByName(workflowNames[newIdx]);
|
|
}
|
|
|
|
function handleKey(key) {
|
|
const overlay = document.getElementById('img-overlay');
|
|
if (key === 'Escape') {
|
|
if (overlay.classList.contains('active')) {
|
|
closeImgOverlay();
|
|
} else {
|
|
closeLightbox();
|
|
}
|
|
return;
|
|
}
|
|
if (document.getElementById('lightbox').classList.contains('active') && !overlay.classList.contains('active')) {
|
|
if (key === 'ArrowLeft') { navigateLightbox(-1); }
|
|
if (key === 'ArrowRight') { navigateLightbox(1); }
|
|
if ((key === 'ArrowUp' || key === 'ArrowDown') && inIframe) {
|
|
window.parent.postMessage({
|
|
type: 'comfytest-platform-shift',
|
|
delta: key === 'ArrowUp' ? -1 : 1,
|
|
workflow: currentWorkflow,
|
|
}, '*');
|
|
}
|
|
}
|
|
}
|
|
|
|
document.onkeydown = (e) => {
|
|
if (['Escape', 'ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'].includes(e.key)) {
|
|
e.preventDefault();
|
|
handleKey(e.key);
|
|
}
|
|
};
|
|
|
|
// Click lightbox image -> open in fullscreen overlay (fit mode)
|
|
document.getElementById('lightbox-img').addEventListener('click', function(e) {
|
|
e.stopPropagation();
|
|
const overlay = document.getElementById('img-overlay');
|
|
const overlayImg = document.getElementById('img-overlay-content');
|
|
overlayImg.src = this.src;
|
|
overlay.classList.add('active');
|
|
overlay.classList.remove('zoomed');
|
|
});
|
|
|
|
// Click overlay image: fit -> zoomed -> close
|
|
document.getElementById('img-overlay-content').addEventListener('click', function(e) {
|
|
e.stopPropagation();
|
|
const overlay = document.getElementById('img-overlay');
|
|
if (overlay.classList.contains('zoomed')) {
|
|
closeImgOverlay();
|
|
} else {
|
|
overlay.classList.add('zoomed');
|
|
}
|
|
});
|
|
|
|
// Click overlay background -> close overlay
|
|
document.getElementById('img-overlay').addEventListener('click', function(e) {
|
|
if (e.target === this) closeImgOverlay();
|
|
});
|
|
|
|
function openFromHash() {
|
|
const hash = decodeURIComponent(window.location.hash.slice(1));
|
|
if (hash && workflowData[hash]) {
|
|
const w = workflowData[hash];
|
|
openLightbox(w.src, w.title, w.status, w.duration, w.log, w.hardware);
|
|
}
|
|
}
|
|
|
|
window.addEventListener('hashchange', openFromHash);
|
|
window.addEventListener('load', openFromHash);
|
|
|
|
// Listen for messages from parent frames
|
|
window.addEventListener('message', function(e) {
|
|
if (!e.data || !e.data.type) return;
|
|
if (e.data.type === 'comfytest-open' && e.data.name) {
|
|
openLightboxByName(e.data.name);
|
|
}
|
|
if (e.data.type === 'comfytest-key') {
|
|
handleKey(e.data.key);
|
|
}
|
|
});
|
|
|
|
// Detect iframe: hide header and move meta chips into summary
|
|
if (inIframe) {
|
|
document.body.classList.add('in-iframe');
|
|
const chips = document.querySelector('.meta-chips');
|
|
const summary = document.querySelector('.summary');
|
|
if (chips && summary) {
|
|
const wrapper = document.createElement('div');
|
|
wrapper.className = 'summary-meta';
|
|
while (chips.firstChild) wrapper.appendChild(chips.firstChild);
|
|
summary.insertBefore(wrapper, summary.firstChild);
|
|
}
|
|
}
|
|
</script>
|
|
</body>
|
|
</html>
|