comfyui-mcp 0.52.161 → 0.52.163
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/dist/orchestrator/panel-tools.js +41 -2
- package/dist/orchestrator/panel-tools.js.map +1 -1
- package/dist/orchestrator/promoted-widget.js +34 -0
- package/dist/orchestrator/promoted-widget.js.map +1 -1
- package/dist/services/queue-manager.js +16 -2
- package/dist/services/queue-manager.js.map +1 -1
- package/dist/tools/queue-management.js +1 -1
- package/dist/tools/queue-management.js.map +1 -1
- package/package.json +1 -1
|
@@ -62,7 +62,7 @@ import { tabRouteCarriesPath } from "./turn-origins.js";
|
|
|
62
62
|
import { NODE_ID_MESSAGE, NODE_ID_PATTERN, normalizeNodeId, PLAIN_NODE_ID_PATTERN, unionErrorFor, } from "./node-id.js";
|
|
63
63
|
import { unrecognizedKeysError } from "./unrecognized-keys.js";
|
|
64
64
|
import { FIND_NODES_DEFAULT_FIELDS, FIND_NODES_FIELDS, GROUP_ID_MESSAGE, GROUP_ID_PATTERN, GROUP_REF_MESSAGE, normalizeGroupId, normalizeShowMediaItem, normalizeTodoItemKeys, pickAlias, projectFindNodesPayload, } from "./panel-arg-aliases.js";
|
|
65
|
-
import { addressedNodeMatchesPersistRemedy, parseAmbiguousPromotedWidgetRefusal, parseContradictoryPromotedWidgetRefusal, parseLinkDrivenPromotedWriteWarning, parseSubgraphScopeRefusal, parseUnpromotedControlPersistRemedy, promotedScopeWitnessFromEnvelope, promotedViewingMatchesScope, resolveLegacyInnerPromotedTarget, resolveInnerPromotedTarget, validatePromotedSubgraphEnvelope, isInnerLinkDrivenWriteWarning, shapeParentAuthoritativePromotedWrite, } from "./promoted-widget.js";
|
|
65
|
+
import { addressedNodeMatchesPersistRemedy, parseAmbiguousPromotedWidgetRefusal, parseContradictoryPromotedWidgetRefusal, parseLinkDrivenPromotedWriteWarning, parseSubgraphScopeRefusal, parseUnpromotedControlPersistRemedy, promotedScopeWitnessFromEnvelope, promotedViewingMatchesScope, resolveLegacyInnerPromotedTarget, promotedInnerWidgetIsLinkDriven, resolveInnerPromotedTarget, validatePromotedSubgraphEnvelope, isInnerLinkDrivenWriteWarning, shapeParentAuthoritativePromotedWrite, } from "./promoted-widget.js";
|
|
66
66
|
import { includeRequestedCreateGroupMembers } from "./create-group-membership.js";
|
|
67
67
|
import { sizeForUncollapse } from "./edit-node-uncollapse.js";
|
|
68
68
|
import { fastGroupsFilterPropertyNote, isFastGroupsFilterProperty, } from "./rgthree-fast-groups-property.js";
|
|
@@ -6417,8 +6417,12 @@ const PROMOTED_PRIMITIVE_INNER_TYPES = new Set([
|
|
|
6417
6417
|
/** #2488 — a promoted subgraph INPUT whose inner widget is a different name
|
|
6418
6418
|
* (frame_counts → length) or a linked primitive must be written on the host.
|
|
6419
6419
|
* Same-name proxyWidgets promotions keep the inner write so #2314's known-bad
|
|
6420
|
-
* live probe still runs before any container mutation.
|
|
6420
|
+
* live probe still runs before any container mutation.
|
|
6421
|
+
* #2500 — a Primitive* `value` that exists as a live input is driven by the
|
|
6422
|
+
* promoted rail even when the parent-rail witness is missing; write the host. */
|
|
6421
6423
|
function shouldWritePromotedHostFirst(plan) {
|
|
6424
|
+
if (plan.innerLinkDriven)
|
|
6425
|
+
return true;
|
|
6422
6426
|
if (!plan.inner.parentRail)
|
|
6423
6427
|
return false;
|
|
6424
6428
|
if (plan.hostWidget.toLowerCase() !== plan.inner.widget.toLowerCase())
|
|
@@ -6920,6 +6924,7 @@ async function preparePromotedWidgetWrite(ctx, nodeId, widget) {
|
|
|
6920
6924
|
...(outerNodeIdentity ? { outerNodeIdentity } : {}),
|
|
6921
6925
|
inner,
|
|
6922
6926
|
innerNodeType,
|
|
6927
|
+
innerLinkDriven: promotedInnerWidgetIsLinkDriven(innerNode, inner.widget, inner.terminal),
|
|
6923
6928
|
...(inner.terminal ? { terminal: inner.terminal } : {}),
|
|
6924
6929
|
scope,
|
|
6925
6930
|
binding: {
|
|
@@ -16974,6 +16979,40 @@ export function buildPanelToolDefs() {
|
|
|
16974
16979
|
const afterMappingError = currentPromotedBindingError(ctx, plan.binding);
|
|
16975
16980
|
if (afterMappingError)
|
|
16976
16981
|
return promotedWriteRefusal(args.widget, afterMappingError);
|
|
16982
|
+
// #2500 — a link-driven inner Primitive (duration/value_2, fps/value_3)
|
|
16983
|
+
// accepts a write and warns that rendering still reads the enclosing
|
|
16984
|
+
// subgraph widget. Write that container first, at the caller's current
|
|
16985
|
+
// graph, and do not enter the inner scope. This is the #1655 fallback
|
|
16986
|
+
// path when the #2488 host-rail write already contradicted.
|
|
16987
|
+
if (plan.innerLinkDriven) {
|
|
16988
|
+
if (plan.terminal) {
|
|
16989
|
+
const terminalBlocked = refuseKnownBadPromotedTerminal(plan.terminal);
|
|
16990
|
+
if (terminalBlocked)
|
|
16991
|
+
return terminalBlocked;
|
|
16992
|
+
}
|
|
16993
|
+
const hostWidget = plan.hostWidget;
|
|
16994
|
+
const hostScope = plan.outerScope;
|
|
16995
|
+
const written = await write(plan.outerNodeId, hostWidget, plan.outerNodeType, () => {
|
|
16996
|
+
const error = currentPromotedBindingError(ctx, plan.binding);
|
|
16997
|
+
if (error) {
|
|
16998
|
+
throw new Error(`Refusing promoted container graph_set_widget: ${error}. No graph_set_widget was dispatched.`);
|
|
16999
|
+
}
|
|
17000
|
+
if (hostScope) {
|
|
17001
|
+
const scopeError = currentPromotedExpectedScopeError(ctx, hostScope);
|
|
17002
|
+
if (scopeError) {
|
|
17003
|
+
throw new Error(`Refusing promoted container graph_set_widget: ${scopeError}. No graph_set_widget was dispatched.`);
|
|
17004
|
+
}
|
|
17005
|
+
}
|
|
17006
|
+
}, hostScope, plan.outerNodeIdentity);
|
|
17007
|
+
if (written.isError) {
|
|
17008
|
+
return appendToolResultText(written, `\n\n(Tried the enclosing subgraph widget on node ${plan.outerNodeId} ` +
|
|
17009
|
+
`"${hostWidget}" first because the promoted inner widget is link-driven. ` +
|
|
17010
|
+
`Navigation scope was left unchanged.)`);
|
|
17011
|
+
}
|
|
17012
|
+
markPanelSchemaReady(panelSchemaKey(ctx));
|
|
17013
|
+
const persisted = await persistUnpromotedControlAfterGenerate(written, ctx, plan.outerNodeId);
|
|
17014
|
+
return appendToolResultText(persisted, promotedHostAppliedNote(plan));
|
|
17015
|
+
}
|
|
16977
17016
|
const enter = await ctx.call({ cmd: "graph_enter_subgraph", node_id: plan.outerNodeId }, 15000);
|
|
16978
17017
|
if (enter.isError) {
|
|
16979
17018
|
return promotedWriteRefusal(args.widget, `panel_enter_subgraph failed (${textOfToolResult(enter)})`);
|