comfyui-mcp 0.52.0 → 0.52.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -7
- package/dist/boot.js +41 -0
- package/dist/boot.js.map +1 -1
- package/dist/comfyui/client.js +6 -27
- package/dist/comfyui/client.js.map +1 -1
- package/dist/comfyui/cloud-client.js +9 -1
- package/dist/comfyui/cloud-client.js.map +1 -1
- package/dist/comfyui/upload-target.js +38 -0
- package/dist/comfyui/upload-target.js.map +1 -0
- package/dist/orchestrator/agent-backend.js.map +1 -1
- package/dist/orchestrator/blind-native-gate.js +138 -0
- package/dist/orchestrator/blind-native-gate.js.map +1 -0
- package/dist/orchestrator/claude-backend.js +172 -50
- package/dist/orchestrator/claude-backend.js.map +1 -1
- package/dist/orchestrator/codex-backend.js +67 -11
- package/dist/orchestrator/codex-backend.js.map +1 -1
- package/dist/orchestrator/grok-backend.js +24 -14
- package/dist/orchestrator/grok-backend.js.map +1 -1
- package/dist/orchestrator/index.js +23 -1
- package/dist/orchestrator/index.js.map +1 -1
- package/dist/orchestrator/mcp-session-health.js +88 -7
- package/dist/orchestrator/mcp-session-health.js.map +1 -1
- package/dist/orchestrator/panel-agent.js +159 -6
- package/dist/orchestrator/panel-agent.js.map +1 -1
- package/dist/orchestrator/panel-tools.js +62 -14
- package/dist/orchestrator/panel-tools.js.map +1 -1
- package/dist/orchestrator/preview-budget.js +41 -0
- package/dist/orchestrator/preview-budget.js.map +1 -0
- package/dist/orchestrator/session-store.js +43 -0
- package/dist/orchestrator/session-store.js.map +1 -1
- package/dist/orchestrator/turn-origins.js +68 -26
- package/dist/orchestrator/turn-origins.js.map +1 -1
- package/dist/services/download-cache.js +17 -4
- package/dist/services/download-cache.js.map +1 -1
- package/dist/services/download-jobs.js +136 -1
- package/dist/services/download-jobs.js.map +1 -1
- package/dist/services/extra-paths.js +57 -4
- package/dist/services/extra-paths.js.map +1 -1
- package/dist/services/image-management.js +9 -2
- package/dist/services/image-management.js.map +1 -1
- package/dist/services/listener-ownership.js +17 -5
- package/dist/services/listener-ownership.js.map +1 -1
- package/dist/services/model-resolver.js +106 -45
- package/dist/services/model-resolver.js.map +1 -1
- package/dist/services/node-management.js +85 -10
- package/dist/services/node-management.js.map +1 -1
- package/dist/services/process-control.js +110 -8
- package/dist/services/process-control.js.map +1 -1
- package/dist/services/queue-monitor.js +54 -7
- package/dist/services/queue-monitor.js.map +1 -1
- package/dist/services/queue-monitor.stall.test.js +86 -1
- package/dist/services/queue-monitor.stall.test.js.map +1 -1
- package/dist/services/registry-client.js +31 -18
- package/dist/services/registry-client.js.map +1 -1
- package/dist/services/ui-bridge.js +80 -0
- package/dist/services/ui-bridge.js.map +1 -1
- package/dist/services/workflow-settings-extractor.js +1 -1
- package/dist/services/workflow-settings-extractor.js.map +1 -1
- package/dist/tools/image-management.js +20 -6
- package/dist/tools/image-management.js.map +1 -1
- package/dist/tools/model-management.js +21 -2
- package/dist/tools/model-management.js.map +1 -1
- package/locales/ar/main.json +1 -0
- package/locales/en/main.json +1 -0
- package/locales/es/main.json +1 -0
- package/locales/fa/main.json +1 -0
- package/locales/fr/main.json +1 -0
- package/locales/ja/main.json +1 -0
- package/locales/ko/main.json +1 -0
- package/locales/pt-BR/main.json +1 -0
- package/locales/ru/main.json +1 -0
- package/locales/tr/main.json +1 -0
- package/locales/zh/main.json +1 -0
- package/locales/zh-TW/main.json +1 -0
- package/package.json +3 -5
- package/plugin/skills/model-registry/SKILL.md +1 -1
- package/scripts/check-docs-links.mjs +23 -0
- package/scripts/check-docs-mdx.mjs +71 -0
- package/scripts/smoke-install.mjs +10 -9
- package/dist/services/download-root-correspondence.js +0 -64
- package/dist/services/download-root-correspondence.js.map +0 -1
- package/model-settings.json +0 -509
- package/model-settings.user.jsonc.example +0 -97
- package/scripts/postinstall.mjs +0 -29
|
@@ -47,9 +47,26 @@ const HISTORY_TAIL_ITEMS = 32;
|
|
|
47
47
|
// Absolute floor of zero-forward-progress time after which a running job is
|
|
48
48
|
// flagged as stalled EVEN when the server still looks alive here — the backstop
|
|
49
49
|
// for a genuine in-node deadlock on a reachable ComfyUI (#183). Far beyond any
|
|
50
|
-
// legitimate single-node runtime (a long tiled VAE decode / video
|
|
51
|
-
// minutes, not half an hour), so it never trips on a healthy render.
|
|
50
|
+
// legitimate single-node NON-training runtime (a long tiled VAE decode / video
|
|
51
|
+
// sample is minutes, not half an hour), so it never trips on a healthy render.
|
|
52
|
+
// Training nodes legitimately exceed it (hours of silent tqdm), which is why
|
|
53
|
+
// report() exempts runs whose graph contains a known trainer class (#1652).
|
|
52
54
|
const HARD_STALL_FLOOR_MS = 30 * 60 * 1000; // 30 minutes
|
|
55
|
+
// Node classes whose HEALTHY runtime legitimately exceeds the hard floor with
|
|
56
|
+
// ZERO forward-progress frames: ComfyUI's built-in LoRA training only rewrites
|
|
57
|
+
// a tqdm bar on stdout — no per-step `progress` WS frames — so lastActivityTs
|
|
58
|
+
// never bumps and idleFor grows monotonically for the whole run (#1652). A
|
|
59
|
+
// 1500-step SDXL LoRA at ~2.6 s/it runs ~65 minutes and crossed the 30-minute
|
|
60
|
+
// floor every single time; the false STALLED note (whose remedy is to CANCEL
|
|
61
|
+
// the run) was structural, not a race. Best-effort list of known trainer
|
|
62
|
+
// classes — deliberately narrow: a class that also appears in ordinary render
|
|
63
|
+
// graphs (e.g. LoraModelLoader) must NOT be added, or common renders would
|
|
64
|
+
// silently lose the deadlock backstop.
|
|
65
|
+
const TRAINING_NODE_CLASS_TYPES = new Set([
|
|
66
|
+
"TrainLoraNode", // ComfyUI core
|
|
67
|
+
"TrainLoraNodeAdvanced", // core advanced variant
|
|
68
|
+
"LoraTrainer", // common community trainer packs
|
|
69
|
+
]);
|
|
53
70
|
class QueueMonitorImpl {
|
|
54
71
|
ws = null;
|
|
55
72
|
url = null;
|
|
@@ -70,6 +87,7 @@ class QueueMonitorImpl {
|
|
|
70
87
|
progressValue: null,
|
|
71
88
|
progressMax: null,
|
|
72
89
|
queueRemaining: 0,
|
|
90
|
+
runningNodeClassTypes: {},
|
|
73
91
|
lastActivityTs: null,
|
|
74
92
|
lastFrameTs: null,
|
|
75
93
|
lastServerAliveTs: null,
|
|
@@ -389,6 +407,7 @@ class QueueMonitorImpl {
|
|
|
389
407
|
this.state.currentNode = null;
|
|
390
408
|
this.state.progressValue = null;
|
|
391
409
|
this.state.progressMax = null;
|
|
410
|
+
this.state.runningNodeClassTypes = {};
|
|
392
411
|
this.state.lastActivityTs = null;
|
|
393
412
|
}
|
|
394
413
|
onMessage(text) {
|
|
@@ -619,6 +638,20 @@ class QueueMonitorImpl {
|
|
|
619
638
|
const first = running[0];
|
|
620
639
|
if (Array.isArray(first) && typeof first[1] === "string") {
|
|
621
640
|
this.adoptRunningPrompt(first[1]);
|
|
641
|
+
// Index 2 is the full prompt graph (node id → { class_type, ... }) — the
|
|
642
|
+
// ONLY place this passive client learns the running run's class types.
|
|
643
|
+
// Captured so report() can tell a long TRAINING node (no per-step
|
|
644
|
+
// progress frames by design, #1652) from a wedge.
|
|
645
|
+
const prompt = first[2];
|
|
646
|
+
const types = {};
|
|
647
|
+
if (prompt && typeof prompt === "object" && !Array.isArray(prompt)) {
|
|
648
|
+
for (const [nodeId, def] of Object.entries(prompt)) {
|
|
649
|
+
const ct = def?.class_type;
|
|
650
|
+
if (typeof ct === "string")
|
|
651
|
+
types[nodeId] = ct;
|
|
652
|
+
}
|
|
653
|
+
}
|
|
654
|
+
this.state.runningNodeClassTypes = types;
|
|
622
655
|
}
|
|
623
656
|
else if (running.length === 0 && this.state.runningPromptId !== null) {
|
|
624
657
|
// Empty queue → the tracked run is over. Skip the clear if a run was
|
|
@@ -739,11 +772,25 @@ class QueueMonitorImpl {
|
|
|
739
772
|
// also freezes ComfyUI's own HTTP handler → the /queue heartbeat lapses and
|
|
740
773
|
// `serverAlive` catches it at stallMs without this floor; the floor only
|
|
741
774
|
// covers the rarer non-GIL wedge (a node stuck in a network/IO wait) that
|
|
742
|
-
// keeps HTTP alive.
|
|
743
|
-
//
|
|
744
|
-
//
|
|
745
|
-
//
|
|
746
|
-
|
|
775
|
+
// keeps HTTP alive.
|
|
776
|
+
//
|
|
777
|
+
// TRAINING EXEMPTION (#1652): a run whose CURRENT node is a known trainer —
|
|
778
|
+
// or, when the current node is unknown here (the reported case: attaching
|
|
779
|
+
// mid-run sees no progress_state transition, so currentNode stays null for
|
|
780
|
+
// the whole training), whose GRAPH contains one — legitimately sits silent
|
|
781
|
+
// for HOURS, so the floor must not override liveness for it: while the
|
|
782
|
+
// server keeps answering, it is not stalled. The tradeoff, stated plainly:
|
|
783
|
+
// a genuinely wedged trainer on a still-reachable server is no longer
|
|
784
|
+
// hard-flagged — but a GIL-holding deadlock freezes ComfyUI's HTTP too, and
|
|
785
|
+
// `serverAlive` catches that at stallMs regardless of node class. When the
|
|
786
|
+
// graph was never captured (poll never succeeded), nothing is exempt and
|
|
787
|
+
// the floor applies exactly as before.
|
|
788
|
+
const types = this.state.runningNodeClassTypes;
|
|
789
|
+
const currentType = this.state.currentNode !== null ? types[this.state.currentNode] : undefined;
|
|
790
|
+
const trainingRun = currentType !== undefined
|
|
791
|
+
? TRAINING_NODE_CLASS_TYPES.has(currentType)
|
|
792
|
+
: Object.values(types).some((t) => TRAINING_NODE_CLASS_TYPES.has(t));
|
|
793
|
+
const hardStalled = running && !trainingRun && idleFor >= Math.max(stallMs, HARD_STALL_FLOOR_MS);
|
|
747
794
|
const stalled = running && idleFor >= stallMs && (!serverAlive || hardStalled);
|
|
748
795
|
const progress = this.state.progressValue !== null && this.state.progressMax !== null
|
|
749
796
|
? `${this.state.progressValue}/${this.state.progressMax}`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue-monitor.js","sourceRoot":"","sources":["../../src/services/queue-monitor.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,EAAE;AACF,gFAAgF;AAChF,kFAAkF;AAClF,iFAAiF;AACjF,iFAAiF;AACjF,uEAAuE;AACvE,EAAE;AACF,4EAA4E;AAC5E,6EAA6E;AAC7E,2EAA2E;AAC3E,yEAAyE;AACzE,mEAAmE;AACnE,+EAA+E;AAC/E,wEAAwE;AACxE,8EAA8E;AAC9E,8EAA8E;AAC9E,wEAAwE;AACxE,6EAA6E;AAC7E,gFAAgF;AAChF,gFAAgF;AAChF,0EAA0E;AAC1E,2EAA2E;AAC3E,+EAA+E;AAC/E,4BAA4B;AAC5B,EAAE;AACF,gFAAgF;AAChF,8EAA8E;AAC9E,4BAA4B;AAE5B,OAAO,SAAS,MAAM,IAAI,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAuFnD,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,iFAAiF;AACjF,gFAAgF;AAChF,kFAAkF;AAClF,iFAAiF;AACjF,+EAA+E;AAC/E,yBAAyB;AACzB,MAAM,oBAAoB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AAC1D,6EAA6E;AAC7E,6EAA6E;AAC7E,4EAA4E;AAC5E,8BAA8B;AAC9B,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,4EAA4E;AAC5E,gFAAgF;AAChF,+EAA+E;AAC/E,4EAA4E;AAC5E,qEAAqE;AACrE,MAAM,mBAAmB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AAEzD,MAAM,gBAAgB;IACZ,EAAE,GAAqB,IAAI,CAAC;IAC5B,GAAG,GAAkB,IAAI,CAAC;IAC1B,OAAO,GAAG,KAAK,CAAC;IAChB,cAAc,GAAyC,IAAI,CAAC;IACpE,8EAA8E;IAC9E,2EAA2E;IAC3E,+EAA+E;IAC/E,+EAA+E;IACvE,IAAI,GAAG,KAAK,CAAC;IACb,UAAU,GAAwB,IAAI,CAAC;IACvC,QAAQ,GAAwB,IAAI,CAAC;IACrC,KAAK,GAAiB;QAC5B,SAAS,EAAE,KAAK;QAChB,eAAe,EAAE,IAAI;QACrB,gBAAgB,EAAE,EAAE;QACpB,WAAW,EAAE,IAAI;QACjB,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;QACjB,cAAc,EAAE,CAAC;QACjB,cAAc,EAAE,IAAI;QACpB,WAAW,EAAE,IAAI;QACjB,iBAAiB,EAAE,IAAI;QACvB,aAAa,EAAE,IAAI;KACpB,CAAC;IACF,iFAAiF;IACzE,YAAY,GAAG,KAAK,CAAC;IAC7B,yEAAyE;IACzE,6EAA6E;IAC7E,yEAAyE;IACzE,yBAAyB;IACjB,cAAc,GAAG,CAAC,CAAC;IAC3B,4EAA4E;IAC5E,8EAA8E;IAC9E,2EAA2E;IACnE,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACpC,yDAAyD;IACjD,aAAa,GAAG,KAAK,CAAC;IACtB,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,0EAA0E;IAC1E,wDAAwD;IAChD,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9C,2DAA2D;IACnD,kBAAkB,GAAsB,EAAE,CAAC;IACnD,4DAA4D;IAC5D,8EAA8E;IAC9E,gFAAgF;IAChF,iFAAiF;IACjF,qEAAqE;IAC7D,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,eAAe,GAAkB,IAAI,CAAC;IAE9C;;;;8EAI0E;IAC1E,KAAK,CAAC,UAAkB;QACtB,IAAI,IAAI,CAAC,GAAG,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,CAAC,2BAA2B;QACjF,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,kEAAkE;QAC/E,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,2EAA2E;QAC3E,wEAAwE;QACxE,yEAAyE;QACzE,2DAA2D;QAC3D,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;QAChC,+EAA+E;QAC/E,qEAAqE;QACrE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,2EAA2E;QAC3E,2EAA2E;QAC3E,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED;iFAC6E;IAC7E,qBAAqB,CAAC,CAAqD;QACzE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC;IACrC,CAAC;IAEO,SAAS;QACf,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,qCAAqC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxG,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,6EAA6E;QAC7E,6EAA6E;QAC7E,oEAAoE;QACpE,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,KAAK,IAAI;YAAE,OAAO;QAChD,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC;YAAE,OAAO;QAC1C,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,mCAAmC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtG,CAAC;IACH,CAAC;IAED,0DAA0D;IAC1D,MAAM;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;;yEAGqE;IACrE,cAAc,CAAC,QAAwB;QACrC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAC7C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACjC,sEAAsE;YACtE,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;gBACxD,IAAI,MAAM,KAAK,SAAS;oBAAE,MAAM;gBAChC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,YAAY,CAAC,QAAwB;QACnC,MAAM,EAAE,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,IAAI,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO,MAAM,CAAC;QACpD,yEAAyE;QACzE,yEAAyE;QACzE,uCAAuC;QACvC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI;YAAE,OAAO,UAAU,CAAC;QACtF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;;;;oBAWgB;IACR,gBAAgB;QACtB,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe;YAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC1E,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC9C,MAAM,eAAe,GACnB,IAAI,CAAC,eAAe,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,GAAG,oBAAoB,CAAC;QAE3F,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvD,6EAA6E;YAC7E,wEAAwE;YACxE,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAC;YACrE,gFAAgF;YAChF,iFAAiF;YACjF,iFAAiF;YACjF,4EAA4E;YAC5E,iFAAiF;YACjF,kFAAkF;YAClF,6DAA6D;YAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;YAChF,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK;gBAAE,OAAO,IAAI,CAAC;YAC1C,OAAO,eAAe,CAAC;QACzB,CAAC;QACD,iFAAiF;QACjF,uEAAuE;QACvE,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;uDAYmD;IAC3C,sBAAsB;QAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe;YAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC1E,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC9C,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACzE,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QACrE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QAChF,OAAO,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC;IAClC,CAAC;IAED,IAAI;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,gDAAgD;QACvE,IAAI,IAAI,CAAC,cAAc;YAAE,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,YAAY;QACd,CAAC;QACD,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACf,4EAA4E;QAC5E,8EAA8E;QAC9E,8EAA8E;QAC9E,2EAA2E;QAC3E,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;IAC/B,CAAC;IAEO,KAAK;QACX,4DAA4D;QAC5D,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,uBAAuB,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9F,OAAO,GAAG,IAAI,mCAAmC,CAAC;IACpD,CAAC;IAEO,OAAO;QACb,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,EAAa,CAAC;QAClB,IAAI,CAAC;YACH,yEAAyE;YACzE,yEAAyE;YACzE,kFAAkF;YAClF,MAAM,WAAW,GAAG,qBAAqB,EAAE,CAAC;YAC5C,EAAE,GAAG,IAAI,SAAS,CAChB,IAAI,CAAC,KAAK,EAAE,EACZ,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CACvE,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,wCAAwC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACzG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,+EAA+E;QAC/E,2EAA2E;QAC3E,8EAA8E;QAC9E,4CAA4C;QAC5C,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACjB,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE;gBAAE,OAAO;YAC3B,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;YAC5B,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAsB,EAAE,QAAiB,EAAE,EAAE;YAC7D,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE;gBAAE,OAAO;YAC3B,IAAI,QAAQ;gBAAE,OAAO,CAAC,gCAAgC;YACtD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE;gBAAE,OAAO,CAAC,uCAAuC;YACnE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;YAC7B,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;YACf,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;YAC5B,MAAM,CAAC,KAAK,CAAC,6BAA6B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,IAAI,CAAC;gBACH,EAAE,CAAC,KAAK,EAAE,CAAC;YACb,CAAC;YAAC,MAAM,CAAC;gBACP,2CAA2C;YAC7C,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,iBAAiB;QACvB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO;QAChD,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,EAAE,YAAY,CAAC,CAAC;QACjB,kEAAkE;QAClE,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC;IAChC,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzC,CAAC;IAED;;8EAE0E;IAClE,kBAAkB,CAAC,QAAiB;QAC1C,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,eAAe;YAAE,OAAO;QACpF,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC;QACtC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IACnC,CAAC;IAEO,SAAS,CAAC,IAAY;QAC5B,IAAI,GAAsD,CAAC;QAC3D,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QACD,6EAA6E;QAC7E,4EAA4E;QAC5E,qCAAqC;QACrC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;QACzD,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,MAAM,GAAG,IAAI,CAAC,MAA6C,CAAC;gBAClE,MAAM,QAAQ,GAAG,MAAM,EAAE,SAAgD,CAAC;gBAC1E,MAAM,EAAE,GAAG,QAAQ,EAAE,eAAe,CAAC;gBACrC,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;oBAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,EAAE,CAAC;oBAC/B,gEAAgE;oBAChE,+DAA+D;oBAC/D,8DAA8D;oBAC9D,gEAAgE;oBAChE,+DAA+D;oBAC/D,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;wBACb,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,KAAK,IAAI;4BAAE,IAAI,CAAC,YAAY,EAAE,CAAC;wBAC7D,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAC,+BAA+B;wBACjE,IAAI,CAAC,aAAa,EAAE,CAAC;oBACvB,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;gBACxF,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC9B,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;gBAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,MAAM;YACR,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACvB,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACxC,8DAA8D;oBAC9D,IAAI,CAAC,YAAY,EAAE,CAAC;oBACpB,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;oBACvB,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW;wBAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,6BAA6B;oBACrF,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;oBAC3B,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;wBAAE,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;gBACtF,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;gBACjE,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC3D,yEAAyE;gBACzE,0DAA0D;gBAC1D,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,aAAa;oBAAE,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC/E,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;gBACjC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC;gBAC7B,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;oBAAE,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;gBACtE,oEAAoE;gBACpE,wEAAwE;gBACxE,uCAAuC;gBACvC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxC,MAAM;YACR,CAAC;YACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,wEAAwE;gBACxE,wEAAwE;gBACxE,mEAAmE;gBACnE,iEAAiE;gBACjE,uEAAuE;gBACvE,qEAAqE;gBACrE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;gBACzB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACvC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAgC,CAAC,EAAE,CAAC;wBACpE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;4BAAE,SAAS;wBAClD,MAAM,CAAC,GAAG,KAA+C,CAAC;wBAC1D,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;4BAC3D,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW;gCAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,gBAAgB;4BAChF,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC;wBACrC,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,mBAAmB,CAAC;YACzB,KAAK,iBAAiB,CAAC;YACvB,KAAK,uBAAuB,CAAC,CAAC,CAAC;gBAC7B,qEAAqE;gBACrE,oEAAoE;gBACpE,kEAAkE;gBAClE,wCAAwC;gBACxC,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;oBACvC,IAAI,CAAC,gBAAgB,CACnB,IAAI,CAAC,SAAS,EACd,GAAG,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,uBAAuB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAC9G,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,MAAM;YACR,CAAC;YACD;gBACE,MAAM;QACV,CAAC;IACH,CAAC;IAED;;8CAE0C;IAClC,gBAAgB,CAAC,QAAgB,EAAE,MAAwB;QACjE,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO;QACjD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrC,sEAAsE;QACtE,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAC5D,IAAI,MAAM,KAAK,SAAS;gBAAE,MAAM;YAChC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,MAAM,EAAE,GAAoB,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACjE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjC,2EAA2E;QAC3E,0EAA0E;QAC1E,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,GAAG,kBAAkB;YAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChG,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YAC5C,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED;sCACkC;IAClC,gBAAgB;QACd,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED;6EACyE;IACjE,KAAK,CAAC,SAAS,CAAC,IAAY;QAClC,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC;QAClD,KAAgC,CAAC,KAAK,EAAE,EAAE,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAClG,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC;YACzB,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAY,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED;;;;;;;2EAOuE;IACvE,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO;QAC3D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC;QAChC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC/B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACxB,IAAI,CAAC,SAAS,CAAC,sBAAsB,kBAAkB,EAAE,CAAC;aAC3D,CAAC,CAAC;YACH,sEAAsE;YACtE,qEAAqE;YACrE,0DAA0D;YAC1D,IAAI,GAAG,KAAK,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,OAAO;gBAAE,OAAO;YACxD,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;YAC/B,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,gCAAgC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnG,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,UAAU,CAAC,GAAY,EAAE,UAAkB;QACjD,MAAM,CAAC,GAAG,GAAkE,CAAC;QAC7E,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO;QACxC,4EAA4E;QAC5E,2EAA2E;QAC3E,wEAAwE;QACxE,wDAAwD;QACxD,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,UAAU,CAAC;QAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC5D,8EAA8E;QAC9E,yDAAyD;QACzD,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,OAAO;aAClC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aACxF,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QAC7C,0EAA0E;QAC1E,sEAAsE;QACtE,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;YACzD,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;YACvE,qEAAqE;YACrE,uEAAuE;YACvE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC;gBACnD,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;;;mEAI+D;IACvD,iBAAiB,CACvB,EAAU,EACV,GAAY;QAEZ,MAAM,KAAK,GAAG,GAGN,CAAC;QACT,MAAM,EAAE,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAE,EAAE,CAAC,QAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,IAAI,MAAwB,CAAC;QAC7B,IAAI,EAAE,EAAE,SAAS,KAAK,IAAI,IAAI,EAAE,EAAE,UAAU,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YAC/E,MAAM,GAAG,SAAS,CAAC;QACrB,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,uBAAuB,CAAC,EAAE,CAAC;YACtF,MAAM,GAAG,aAAa,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,OAAO,CAAC;QACnB,CAAC;QACD,IAAI,WAAW,GAAkB,IAAI,CAAC;QACtC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBAAE,SAAS;YAChC,MAAM,EAAE,GAAI,CAAC,CAAC,CAAC,CAAyC,EAAE,SAAS,CAAC;YACpE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,EAAE,GAAG,WAAW,CAAC;gBAAE,WAAW,GAAG,EAAE,CAAC;QAC7F,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,MAAM,QAAQ,GACZ,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAC/F,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAC/C,CAAC;IAEO,YAAY,CAAC,GAAY;QAC/B,MAAM,CAAC,GAAG,GAAqC,CAAC;QAChD,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAAE,OAAO;QAC5D,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,oEAAoE;YACpE,iEAAiE;YACjE,wEAAwE;YACxE,qEAAqE;YACrE,yEAAyE;YACzE,yEAAyE;YACzE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,KAAK,GAAG,GAAG;iBACd,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBAC9C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,IAAI,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC;iBAC5E,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC3C,KAAK,MAAM,CAAC,IAAI,KAAK;gBAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,GAAG;aACf,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aACzC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/C,yEAAyE;YACzE,qEAAqE;aACpE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC3C,qEAAqE;QACrE,0EAA0E;QAC1E,8CAA8C;QAC9C,IAAI,MAAM,CAAC,MAAM,IAAI,kBAAkB,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;YACxE,MAAM,CAAC,IAAI,CACT,2CAA2C,MAAM,CAAC,MAAM,qFAAqF,CAC9I,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,MAAM;YAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAED;mFAC+E;IAC/E,QAAQ;QACN,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;YAC/B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,KAAK,IAAI;YAC5C,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;YAC3C,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAClD,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW;YACnC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa;YACvC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW;YACnC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa;YACvC,cAAc,EAAE,IAAI,CAAC,gBAAgB,EAAE;YACvC,oBAAoB,EAAE,IAAI,CAAC,sBAAsB,EAAE;SACpD,CAAC;IACJ,CAAC;IAED,wDAAwD;IACxD,MAAM,CAAC,OAAe;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,KAAK,IAAI,CAAC;QACpD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3F,2EAA2E;QAC3E,6EAA6E;QAC7E,4EAA4E;QAC5E,4EAA4E;QAC5E,0EAA0E;QAC1E,4EAA4E;QAC5E,wEAAwE;QACxE,uCAAuC;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;QAC7F,MAAM,WAAW,GAAG,WAAW,GAAG,CAAC,IAAI,GAAG,GAAG,WAAW,GAAG,OAAO,CAAC;QACnE,2EAA2E;QAC3E,6EAA6E;QAC7E,4EAA4E;QAC5E,4EAA4E;QAC5E,yEAAyE;QACzE,0EAA0E;QAC1E,6EAA6E;QAC7E,4EAA4E;QAC5E,2EAA2E;QAC3E,qDAAqD;QACrD,MAAM,WAAW,GAAG,OAAO,IAAI,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACjF,MAAM,OAAO,GAAG,OAAO,IAAI,OAAO,IAAI,OAAO,IAAI,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC;QAC/E,MAAM,QAAQ,GACZ,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,IAAI;YAClE,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YACzD,CAAC,CAAC,IAAI,CAAC;QACX,OAAO;YACL,OAAO;YACP,OAAO,EAAE,UAAU,GAAG,CAAC;YACvB,cAAc,EAAE,IAAI,CAAC,gBAAgB,EAAE;YACvC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;YAC3C,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW;YACnC,UAAU;YACV,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACnC,QAAQ;SACT,CAAC;IACJ,CAAC;CACF;AAED,6DAA6D;AAC7D,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"queue-monitor.js","sourceRoot":"","sources":["../../src/services/queue-monitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,10 @@
|
|
|
8
8
|
// here (no ws frame + no successful /queue poll within the window). A reachable
|
|
9
9
|
// ComfyUI keeps the 1 Hz poll fresh, so a busy decode stays live; a crashed /
|
|
10
10
|
// wedged server lets the heartbeat lapse → a real stall still surfaces. A hard
|
|
11
|
-
// floor of 30 min backstops a genuine in-node deadlock on a reachable server
|
|
11
|
+
// floor of 30 min backstops a genuine in-node deadlock on a reachable server —
|
|
12
|
+
// but NOT for runs whose graph contains a known TRAINING node class (#1652):
|
|
13
|
+
// TrainLoraNode & co. emit no per-step progress frames for hours by design, so
|
|
14
|
+
// the floor fired on every healthy long training run.
|
|
12
15
|
import { beforeEach, describe, expect, it } from "vitest";
|
|
13
16
|
import { QueueMonitor } from "./queue-monitor.js";
|
|
14
17
|
const priv = QueueMonitor;
|
|
@@ -23,6 +26,7 @@ function primeRunning(opts) {
|
|
|
23
26
|
priv.state.progressValue = 4;
|
|
24
27
|
priv.state.progressMax = 8;
|
|
25
28
|
priv.state.queueRemaining = 1;
|
|
29
|
+
priv.state.runningNodeClassTypes = opts.nodeClassTypes ?? {};
|
|
26
30
|
priv.state.lastActivityTs = now - opts.idleForMs;
|
|
27
31
|
priv.state.lastServerAliveTs = opts.serverAliveAgoMs == null ? null : now - opts.serverAliveAgoMs;
|
|
28
32
|
priv.state.lastFrameTs = opts.wsFrameAgoMs == null ? null : now - opts.wsFrameAgoMs;
|
|
@@ -36,6 +40,7 @@ beforeEach(() => {
|
|
|
36
40
|
priv.state.progressValue = null;
|
|
37
41
|
priv.state.progressMax = null;
|
|
38
42
|
priv.state.queueRemaining = 0;
|
|
43
|
+
priv.state.runningNodeClassTypes = {};
|
|
39
44
|
priv.state.lastActivityTs = null;
|
|
40
45
|
priv.state.lastFrameTs = null;
|
|
41
46
|
priv.state.lastServerAliveTs = null;
|
|
@@ -75,4 +80,84 @@ describe("QueueMonitor.report — liveness-gated stall (#183)", () => {
|
|
|
75
80
|
expect(priv.report(STALL_MS).stalled).toBe(false);
|
|
76
81
|
});
|
|
77
82
|
});
|
|
83
|
+
describe("QueueMonitor.report — training exemption from the hard floor (#1652)", () => {
|
|
84
|
+
// A TrainLoraNode run emits no per-step progress frames: idleFor grows for
|
|
85
|
+
// the whole run while ComfyUI stays perfectly responsive. The hard floor
|
|
86
|
+
// fired on EVERY training run past 30 minutes and the injected note told the
|
|
87
|
+
// agent to cancel it — killing a healthy 65-minute job.
|
|
88
|
+
const TRAINING_GRAPH = {
|
|
89
|
+
"3": "LoadImageTextDataSetFromFolder",
|
|
90
|
+
"5": "MakeTrainingDataset",
|
|
91
|
+
"7": "TrainLoraNode",
|
|
92
|
+
"9": "SaveLoRA",
|
|
93
|
+
};
|
|
94
|
+
it("does NOT flag a healthy training run past the hard floor — current node unknown (the reported case)", () => {
|
|
95
|
+
// Attached mid-run: no progress_state transition ever arrives, so
|
|
96
|
+
// currentNode stays null and only the /queue graph names the trainer.
|
|
97
|
+
primeRunning({
|
|
98
|
+
idleForMs: HARD_FLOOR_MS + 15 * 60_000, // 45 min in — mid-training
|
|
99
|
+
serverAliveAgoMs: 800, // /queue poll fresh: server fully responsive
|
|
100
|
+
wsFrameAgoMs: null,
|
|
101
|
+
currentNode: null,
|
|
102
|
+
nodeClassTypes: TRAINING_GRAPH,
|
|
103
|
+
});
|
|
104
|
+
const rep = priv.report(STALL_MS);
|
|
105
|
+
expect(rep.stalled).toBe(false);
|
|
106
|
+
expect(rep.stalledForMs).toBe(0);
|
|
107
|
+
});
|
|
108
|
+
it("does NOT flag when the current node IS the trainer", () => {
|
|
109
|
+
primeRunning({
|
|
110
|
+
idleForMs: HARD_FLOOR_MS + 60_000,
|
|
111
|
+
serverAliveAgoMs: 800,
|
|
112
|
+
wsFrameAgoMs: null,
|
|
113
|
+
currentNode: "7",
|
|
114
|
+
nodeClassTypes: TRAINING_GRAPH,
|
|
115
|
+
});
|
|
116
|
+
expect(priv.report(STALL_MS).stalled).toBe(false);
|
|
117
|
+
});
|
|
118
|
+
it("still hard-flags a NON-training node past the floor, even inside a training graph", () => {
|
|
119
|
+
// Stuck on an ordinary node in a graph that also trains: the exemption is
|
|
120
|
+
// scoped to the trainer itself, so the deadlock backstop is preserved.
|
|
121
|
+
primeRunning({
|
|
122
|
+
idleForMs: HARD_FLOOR_MS + 60_000,
|
|
123
|
+
serverAliveAgoMs: 500,
|
|
124
|
+
wsFrameAgoMs: null,
|
|
125
|
+
currentNode: "9", // SaveLoRA
|
|
126
|
+
nodeClassTypes: TRAINING_GRAPH,
|
|
127
|
+
});
|
|
128
|
+
expect(priv.report(STALL_MS).stalled).toBe(true);
|
|
129
|
+
});
|
|
130
|
+
it("still hard-flags an ordinary render past the floor when class types were captured", () => {
|
|
131
|
+
primeRunning({
|
|
132
|
+
idleForMs: HARD_FLOOR_MS + 60_000,
|
|
133
|
+
serverAliveAgoMs: 500,
|
|
134
|
+
wsFrameAgoMs: null,
|
|
135
|
+
currentNode: "4",
|
|
136
|
+
nodeClassTypes: { "4": "KSampler", "6": "SaveImage" },
|
|
137
|
+
});
|
|
138
|
+
expect(priv.report(STALL_MS).stalled).toBe(true);
|
|
139
|
+
});
|
|
140
|
+
it("still flags a training run when the server has gone DARK (liveness gate is untouched)", () => {
|
|
141
|
+
primeRunning({
|
|
142
|
+
idleForMs: STALL_MS + 60_000,
|
|
143
|
+
serverAliveAgoMs: STALL_MS + 60_000,
|
|
144
|
+
wsFrameAgoMs: STALL_MS + 60_000,
|
|
145
|
+
currentNode: null,
|
|
146
|
+
nodeClassTypes: TRAINING_GRAPH,
|
|
147
|
+
});
|
|
148
|
+
expect(priv.report(STALL_MS).stalled).toBe(true);
|
|
149
|
+
});
|
|
150
|
+
it("applies the floor as before when the /queue graph was never captured", () => {
|
|
151
|
+
// No class types on record (poll never succeeded / pre-fix state) → nothing
|
|
152
|
+
// is exempt; behaviour is exactly the pre-fix backstop.
|
|
153
|
+
primeRunning({
|
|
154
|
+
idleForMs: HARD_FLOOR_MS + 60_000,
|
|
155
|
+
serverAliveAgoMs: 500,
|
|
156
|
+
wsFrameAgoMs: null,
|
|
157
|
+
currentNode: null,
|
|
158
|
+
nodeClassTypes: {},
|
|
159
|
+
});
|
|
160
|
+
expect(priv.report(STALL_MS).stalled).toBe(true);
|
|
161
|
+
});
|
|
162
|
+
});
|
|
78
163
|
//# sourceMappingURL=queue-monitor.stall.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue-monitor.stall.test.js","sourceRoot":"","sources":["../../src/services/queue-monitor.stall.test.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,EAAE;AACF,yEAAyE;AACzE,2EAA2E;AAC3E,+EAA+E;AAC/E,iFAAiF;AACjF,gFAAgF;AAChF,gFAAgF;AAChF,8EAA8E;AAC9E,+EAA+E;AAC/E,
|
|
1
|
+
{"version":3,"file":"queue-monitor.stall.test.js","sourceRoot":"","sources":["../../src/services/queue-monitor.stall.test.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,EAAE;AACF,yEAAyE;AACzE,2EAA2E;AAC3E,+EAA+E;AAC/E,iFAAiF;AACjF,gFAAgF;AAChF,gFAAgF;AAChF,8EAA8E;AAC9E,+EAA+E;AAC/E,+EAA+E;AAC/E,6EAA6E;AAC7E,+EAA+E;AAC/E,sDAAsD;AACtD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,EAAE,YAAY,EAA0C,MAAM,oBAAoB,CAAC;AAoB1F,MAAM,IAAI,GAAG,YAA+B,CAAC;AAE7C,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,6BAA6B;AACvD,MAAM,aAAa,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAErC;uEACuE;AACvE,SAAS,YAAY,CAAC,IAMrB;IACC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,UAAU,CAAC;IACxC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC;IAClD,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;IAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;IAC7D,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;IACjD,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC;IAClG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;AACtF,CAAC;AAED,UAAU,CAAC,GAAG,EAAE;IACd,IAAI,CAAC,GAAG,GAAG,uBAAuB,CAAC;IACnC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACrB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;IAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC;IACtC,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IACjC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC;IACpC,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mDAAmD,EAAE,GAAG,EAAE;IACjE,EAAE,CAAC,kFAAkF,EAAE,GAAG,EAAE;QAC1F,6EAA6E;QAC7E,8EAA8E;QAC9E,YAAY,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,GAAG,EAAE;QACzF,YAAY,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;QAClF,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+EAA+E,EAAE,GAAG,EAAE;QACvF,4EAA4E;QAC5E,uEAAuE;QACvE,YAAY,CAAC,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM,EAAE,gBAAgB,EAAE,QAAQ,GAAG,MAAM,EAAE,YAAY,EAAE,QAAQ,GAAG,MAAM,EAAE,CAAC,CAAC;QACrH,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,GAAG,EAAE;QACjG,6EAA6E;QAC7E,4DAA4D;QAC5D,YAAY,CAAC,EAAE,SAAS,EAAE,aAAa,GAAG,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/F,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,aAAa,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,sEAAsE,EAAE,GAAG,EAAE;IACpF,2EAA2E;IAC3E,yEAAyE;IACzE,6EAA6E;IAC7E,wDAAwD;IACxD,MAAM,cAAc,GAAG;QACrB,GAAG,EAAE,gCAAgC;QACrC,GAAG,EAAE,qBAAqB;QAC1B,GAAG,EAAE,eAAe;QACpB,GAAG,EAAE,UAAU;KAChB,CAAC;IAEF,EAAE,CAAC,qGAAqG,EAAE,GAAG,EAAE;QAC7G,kEAAkE;QAClE,sEAAsE;QACtE,YAAY,CAAC;YACX,SAAS,EAAE,aAAa,GAAG,EAAE,GAAG,MAAM,EAAE,2BAA2B;YACnE,gBAAgB,EAAE,GAAG,EAAE,6CAA6C;YACpE,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE,cAAc;SAC/B,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,YAAY,CAAC;YACX,SAAS,EAAE,aAAa,GAAG,MAAM;YACjC,gBAAgB,EAAE,GAAG;YACrB,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,GAAG;YAChB,cAAc,EAAE,cAAc;SAC/B,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;QAC3F,0EAA0E;QAC1E,uEAAuE;QACvE,YAAY,CAAC;YACX,SAAS,EAAE,aAAa,GAAG,MAAM;YACjC,gBAAgB,EAAE,GAAG;YACrB,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,GAAG,EAAE,WAAW;YAC7B,cAAc,EAAE,cAAc;SAC/B,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;QAC3F,YAAY,CAAC;YACX,SAAS,EAAE,aAAa,GAAG,MAAM;YACjC,gBAAgB,EAAE,GAAG;YACrB,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,GAAG;YAChB,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE;SACtD,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uFAAuF,EAAE,GAAG,EAAE;QAC/F,YAAY,CAAC;YACX,SAAS,EAAE,QAAQ,GAAG,MAAM;YAC5B,gBAAgB,EAAE,QAAQ,GAAG,MAAM;YACnC,YAAY,EAAE,QAAQ,GAAG,MAAM;YAC/B,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE,cAAc;SAC/B,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC9E,4EAA4E;QAC5E,wDAAwD;QACxD,YAAY,CAAC;YACX,SAAS,EAAE,aAAa,GAAG,MAAM;YACjC,gBAAgB,EAAE,GAAG;YACrB,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE,EAAE;SACnB,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -112,8 +112,14 @@ export async function searchNodes(query, options = {}) {
|
|
|
112
112
|
// the fallback has no pagination of its own, so it must not answer for a
|
|
113
113
|
// later page (an out-of-window exact match would otherwise surface ON page 2).
|
|
114
114
|
if (lowerQuery && filtered.length === 0 && page === 1) {
|
|
115
|
-
const
|
|
116
|
-
|
|
115
|
+
const candidates = registryIdCandidatesFromQuery(query);
|
|
116
|
+
// The candidates are guesses, not one answer: a 404 only rules out THAT id,
|
|
117
|
+
// so keep trying the rest. A non-404 failure means absence was never
|
|
118
|
+
// established for that candidate — remember it; if no candidate resolves,
|
|
119
|
+
// reporting "no matches" would be an unearned negative, so refuse with the
|
|
120
|
+
// reason instead of returning the empty page.
|
|
121
|
+
let unresolved;
|
|
122
|
+
for (const candidate of candidates) {
|
|
117
123
|
try {
|
|
118
124
|
const details = await getNodePackDetails(candidate);
|
|
119
125
|
logger.info(`Registry search "${query}" matched nothing in the fetched window, ` +
|
|
@@ -121,41 +127,48 @@ export async function searchNodes(query, options = {}) {
|
|
|
121
127
|
return [normalizeSearchResult(details)];
|
|
122
128
|
}
|
|
123
129
|
catch (err) {
|
|
124
|
-
// Only an observed 404 establishes "no pack with that id". Anything
|
|
125
|
-
// else (500, network) means the fallback could not answer — and the
|
|
126
|
-
// window search cannot establish absence on its own (that is why the
|
|
127
|
-
// fallback exists), so reporting "no matches" would be an unearned
|
|
128
|
-
// negative. Refuse with the reason instead.
|
|
129
130
|
const status = err instanceof RegistryError
|
|
130
131
|
? err.details?.status
|
|
131
132
|
: undefined;
|
|
132
133
|
if (status !== 404) {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
`(${err instanceof Error ? err.message : String(err)}) — so "no matches" ` +
|
|
136
|
-
`cannot be confirmed. Retry, or look the pack up directly with ` +
|
|
137
|
-
`search_custom_nodes (action:"details").`);
|
|
134
|
+
unresolved ??= err;
|
|
135
|
+
continue;
|
|
138
136
|
}
|
|
139
137
|
logger.debug(`Registry exact-id fallback for "${query}": no pack with id "${candidate}" (404)`);
|
|
140
138
|
}
|
|
141
139
|
}
|
|
140
|
+
if (unresolved !== undefined) {
|
|
141
|
+
throw new RegistryError(`Registry search "${query}" matched nothing in the fetched pack window, ` +
|
|
142
|
+
`and the exact-id fallback could not be resolved ` +
|
|
143
|
+
`(${unresolved instanceof Error ? unresolved.message : String(unresolved)}) — so "no matches" ` +
|
|
144
|
+
`cannot be confirmed. Retry, or look the pack up directly with ` +
|
|
145
|
+
`search_custom_nodes (action:"details").`);
|
|
146
|
+
}
|
|
142
147
|
}
|
|
143
148
|
logger.info(`Registry search "${query}": fetched ${allNodes.length}, matched ${filtered.length}, returning ${paged.length} (page ${page}, limit ${limit})`);
|
|
144
149
|
return paged.map(normalizeSearchResult);
|
|
145
150
|
}
|
|
146
151
|
/**
|
|
147
|
-
* Normalize a free-text query to
|
|
148
|
-
* runs of non-alphanumerics collapsed to single
|
|
149
|
-
* ("comfyui kjnodes" → "comfyui-kjnodes").
|
|
150
|
-
*
|
|
152
|
+
* Normalize a free-text query to candidate Comfy Registry pack ids, most
|
|
153
|
+
* literal first: lowercase, runs of non-alphanumerics collapsed to single
|
|
154
|
+
* hyphens, edges trimmed ("comfyui kjnodes" → "comfyui-kjnodes").
|
|
155
|
+
*
|
|
156
|
+
* #773 recurrence (0.52.1): one slug is not enough. Registry ids are derived
|
|
157
|
+
* from GitHub repo names, and most packs live under a "ComfyUI-" repo prefix —
|
|
158
|
+
* so "WanVideoWrapper" slugs to "wanvideowrapper" while the real pack is
|
|
159
|
+
* "comfyui-wanvideowrapper" (same for VideoHelperSuite, SAM3). The endpoint is
|
|
160
|
+
* case-insensitive but not prefix-insensitive, so the prefixed form is offered
|
|
161
|
+
* as a second candidate unless the slug already carries it.
|
|
151
162
|
*/
|
|
152
|
-
export function
|
|
163
|
+
export function registryIdCandidatesFromQuery(query) {
|
|
153
164
|
const slug = query
|
|
154
165
|
.trim()
|
|
155
166
|
.toLowerCase()
|
|
156
167
|
.replace(/[^a-z0-9]+/g, "-")
|
|
157
168
|
.replace(/^-+|-+$/g, "");
|
|
158
|
-
|
|
169
|
+
if (slug.length === 0)
|
|
170
|
+
return [];
|
|
171
|
+
return slug.startsWith("comfyui-") ? [slug] : [slug, `comfyui-${slug}`];
|
|
159
172
|
}
|
|
160
173
|
/** Coerce the registry's object-shaped `latest_version` into a string. */
|
|
161
174
|
function normalizeSearchResult(node) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry-client.js","sourceRoot":"","sources":["../../src/services/registry-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"registry-client.js","sourceRoot":"","sources":["../../src/services/registry-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -713,6 +713,52 @@ export function requiresWorkflowStampEnforcement(cmd) {
|
|
|
713
713
|
return true;
|
|
714
714
|
return ACTIVE_WORKFLOW_MUTATORS.has(name);
|
|
715
715
|
}
|
|
716
|
+
/** #602 — commands whose execution and reply never reference a canvas (Manager
|
|
717
|
+
* registry/server operations, ComfyUI-server controls). Mirrors the panel's
|
|
718
|
+
* CANVAS_INDEPENDENT_COMMANDS: a stale stamp/target pairing is irrelevant to
|
|
719
|
+
* them, so the dispatch-time agreement gate must not refuse them. */
|
|
720
|
+
const STAMP_TARGET_CANVAS_INDEPENDENT = new Set([
|
|
721
|
+
"nodes_search",
|
|
722
|
+
"nodes_list",
|
|
723
|
+
"nodes_install",
|
|
724
|
+
"nodes_queue_status",
|
|
725
|
+
"graph_update_node",
|
|
726
|
+
"comfy_reboot",
|
|
727
|
+
"free_vram",
|
|
728
|
+
]);
|
|
729
|
+
/** #1656 — commands that read or mutate whichever canvas the routed tab has ACTIVE,
|
|
730
|
+
* and therefore may only be dispatched when the session's workflow stamp and the
|
|
731
|
+
* tab's reported active workflow AGREE (see the dispatch gate in send()).
|
|
732
|
+
*
|
|
733
|
+
* Mirrors the panel's activeWorkflowFenceApplies as far as the server can evaluate
|
|
734
|
+
* it. Exempt, deliberately:
|
|
735
|
+
* - canvas-independent server/Manager commands (#602): no canvas to get wrong;
|
|
736
|
+
* - workflow_list: the fence-EXEMPT recovery probe — gating it would make the
|
|
737
|
+
* documented rebind depend on the fence being already-correct (panel #932's
|
|
738
|
+
* circularity), and its handler reads the live binding at execution time, so a
|
|
739
|
+
* stale pairing cannot make it report a stale answer;
|
|
740
|
+
* - workflow_open / workflow_new: navigation/creation with their own explicit or
|
|
741
|
+
* new target — they are how a diverged session re-selects;
|
|
742
|
+
* - workflow_rename / workflow_close carrying a path selector: the selector may
|
|
743
|
+
* name a genuinely NON-active workflow, which the panel resolves precisely and
|
|
744
|
+
* exempts; the server cannot evaluate that, so those stay with the panel's
|
|
745
|
+
* fence rather than risk a false refusal of a legitimate background op. */
|
|
746
|
+
export function requiresStampTargetAgreement(cmd) {
|
|
747
|
+
const name = typeof cmd.cmd === "string" ? cmd.cmd : "";
|
|
748
|
+
if (!name)
|
|
749
|
+
return false;
|
|
750
|
+
if (STAMP_TARGET_CANVAS_INDEPENDENT.has(name))
|
|
751
|
+
return false;
|
|
752
|
+
if (name === "workflow_list" || name === "workflow_open" || name === "workflow_new")
|
|
753
|
+
return false;
|
|
754
|
+
if (name === "workflow_rename" || name === "workflow_close") {
|
|
755
|
+
const path = cmd.path;
|
|
756
|
+
return !(typeof path === "string" && path.trim());
|
|
757
|
+
}
|
|
758
|
+
if (name.startsWith("graph_"))
|
|
759
|
+
return true;
|
|
760
|
+
return name === "workflow_save" || name === "workflow_save_as";
|
|
761
|
+
}
|
|
716
762
|
/**
|
|
717
763
|
* Default reply timeout for a MUTATING command with no explicit timeout.
|
|
718
764
|
*
|
|
@@ -3912,6 +3958,40 @@ export class UiBridge {
|
|
|
3912
3958
|
return Promise.reject(capabilityMissing ? markCapabilityRefusal(refusal) : refusal);
|
|
3913
3959
|
}
|
|
3914
3960
|
}
|
|
3961
|
+
// #1656 — the stamp and the routing target are resolved from DIFFERENT inputs,
|
|
3962
|
+
// and after a tab switch they can name different canvases. Routing follows the
|
|
3963
|
+
// panel's re-hello at once (the migration alias / last-active carry move the
|
|
3964
|
+
// connection onto the NEW canvas), while the stamp is resolved from the
|
|
3965
|
+
// CALLER'S address — for the shared scope, the conversation's issue-time
|
|
3966
|
+
// workflow, which is deliberately never re-resolved at dispatch (#570/#884) and
|
|
3967
|
+
// so still names the PREVIOUS canvas. The panel-side fence is meant to refuse
|
|
3968
|
+
// that pairing, but it compares the stamp against the frontend's LIVE identity,
|
|
3969
|
+
// which can lag the very switch the hello already reported — and in that window
|
|
3970
|
+
// the command executes on the previous canvas instead of being refused
|
|
3971
|
+
// (observed: outline + save ran on the prior workflow after the switch and
|
|
3972
|
+
// returned its uuid/path, with no error).
|
|
3973
|
+
//
|
|
3974
|
+
// This side sees both halves: the session's stamp (the caller-address answer)
|
|
3975
|
+
// and the identity the routed tab last advertised (the canonical-id answer,
|
|
3976
|
+
// refreshed by every hello). When BOTH are known and they DISAGREE, the
|
|
3977
|
+
// command's fence provably does not name the canvas it would land on, so refuse
|
|
3978
|
+
// BEFORE the socket write — nothing is dispatched, and the refusal names the
|
|
3979
|
+
// documented rebind. With a settled panel this changes no outcome (a
|
|
3980
|
+
// mismatched stamp is refused there too); it closes the window in which the
|
|
3981
|
+
// refusal does not happen. An UNREADABLE side is not evidence of divergence:
|
|
3982
|
+
// either value missing keeps the existing behaviour and lets the panel fence
|
|
3983
|
+
// judge. And a caller addressing the connection by its canonical id is skipped
|
|
3984
|
+
// outright — both answers then come from the same lookup and can only agree.
|
|
3985
|
+
if (opts.tabId && opts.tabId !== conn.tabId && requiresStampTargetAgreement(cmd)) {
|
|
3986
|
+
const issuedFor = this.resolveTabWorkflowUuid?.(opts.tabId);
|
|
3987
|
+
const landedOn = this.resolveTabWorkflowUuid?.(conn.tabId);
|
|
3988
|
+
if (issuedFor && landedOn && issuedFor !== landedOn) {
|
|
3989
|
+
return Promise.reject(markDispatched(new Error(`workflow instance mismatch: this command was issued for workflow instance ${issuedFor}, ` +
|
|
3990
|
+
`but the tab it routed to has since reported a different active workflow (${landedOn}). ` +
|
|
3991
|
+
`Nothing was dispatched. Re-target with panel_set_workflow_target({mode:"current"}), ` +
|
|
3992
|
+
`then retry.`), false));
|
|
3993
|
+
}
|
|
3994
|
+
}
|
|
3915
3995
|
if (conn.sock.readyState !== WebSocket.OPEN) {
|
|
3916
3996
|
if (opts.tabId && UiBridge.isMailboxable(cmd)) {
|
|
3917
3997
|
this.storeMailbox(opts.tabId, cmd);
|