comfyui-mcp 0.50.2 → 0.50.4
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/comfyui/client.js +52 -4
- package/dist/comfyui/client.js.map +1 -1
- package/dist/orchestrator/civitai-filter-guard.js +85 -0
- package/dist/orchestrator/civitai-filter-guard.js.map +1 -0
- package/dist/orchestrator/cli-remedy.js +144 -0
- package/dist/orchestrator/cli-remedy.js.map +1 -0
- package/dist/orchestrator/index.js +30 -5
- package/dist/orchestrator/index.js.map +1 -1
- package/dist/orchestrator/panel-agent.js +7 -3
- package/dist/orchestrator/panel-agent.js.map +1 -1
- package/dist/orchestrator/panel-tools.js +159 -9
- package/dist/orchestrator/panel-tools.js.map +1 -1
- package/dist/orchestrator/pi-backend.js +8 -3
- package/dist/orchestrator/pi-backend.js.map +1 -1
- package/dist/services/comfy-view-ref.js +46 -0
- package/dist/services/comfy-view-ref.js.map +1 -1
- package/dist/services/model-resolver.js +63 -8
- package/dist/services/model-resolver.js.map +1 -1
- package/dist/services/queue-monitor.js +33 -0
- package/dist/services/queue-monitor.js.map +1 -1
- package/dist/services/session-scope.js +31 -0
- package/dist/services/session-scope.js.map +1 -1
- package/dist/services/workflow-slicer.js +73 -1
- package/dist/services/workflow-slicer.js.map +1 -1
- package/package.json +1 -1
package/dist/comfyui/client.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Client } from "@stable-canvas/comfyui-client";
|
|
2
2
|
import { config, getComfyUIApiHost, getComfyUIBasePath, getComfyUIBaseUrl, isCloudMode, isRemoteMode, } from "../config.js";
|
|
3
3
|
import { logger } from "../utils/logger.js";
|
|
4
|
-
import { ComfyUIError, ConnectionError, WorkflowExecutionError } from "../utils/errors.js";
|
|
4
|
+
import { ComfyUIError, ConnectionError, ValidationError, WorkflowExecutionError, } from "../utils/errors.js";
|
|
5
5
|
import { comfyuiFetch } from "./fetch.js";
|
|
6
|
-
import { fetchComfyJson, looksLikeHtmlParsedAsJson, redactErrorMessage, rethrowWithJsonDiagnosis, } from "./json-guard.js";
|
|
6
|
+
import { fetchComfyJson, looksLikeHtmlParsedAsJson, readComfyJson, redactErrorMessage, rethrowWithJsonDiagnosis, } from "./json-guard.js";
|
|
7
7
|
import * as cloudClient from "./cloud-client.js";
|
|
8
8
|
// Functions that fundamentally require a local ComfyUI process (WebSocket-bound
|
|
9
9
|
// session, local `client.fetchApi` paths, etc.) throw via this guard when the
|
|
@@ -710,11 +710,21 @@ export async function uploadImageHttp(filename, data, mimeType = "image/png") {
|
|
|
710
710
|
if (isCloudMode())
|
|
711
711
|
return cloudClient.uploadImageHttp(filename, data, mimeType);
|
|
712
712
|
const client = getClient();
|
|
713
|
+
// #946 — a `filename` carrying a path ("assets/clip.mp4") is a SUBFOLDER
|
|
714
|
+
// request, and ComfyUI's /upload/image takes that as its own form field, not
|
|
715
|
+
// as a slash inside the multipart filename. Sending the whole path as the
|
|
716
|
+
// filename put it somewhere between the transport and ComfyUI's handler and
|
|
717
|
+
// came back as a bare `Unexpected non-whitespace character after JSON at
|
|
718
|
+
// position 4` — no upload, no usable error. Split it and use the field the
|
|
719
|
+
// API actually has, which is also what the caller was asking for.
|
|
720
|
+
const { subfolder, name } = splitUploadTarget(filename);
|
|
713
721
|
const formData = new FormData();
|
|
714
722
|
const blob = new Blob([data], { type: mimeType });
|
|
715
|
-
formData.append("image", blob,
|
|
723
|
+
formData.append("image", blob, name);
|
|
716
724
|
formData.append("type", "input");
|
|
717
725
|
formData.append("overwrite", "true");
|
|
726
|
+
if (subfolder)
|
|
727
|
+
formData.append("subfolder", subfolder);
|
|
718
728
|
const res = await client.fetchApi("/upload/image", {
|
|
719
729
|
method: "POST",
|
|
720
730
|
body: formData,
|
|
@@ -723,6 +733,44 @@ export async function uploadImageHttp(filename, data, mimeType = "image/png") {
|
|
|
723
733
|
const text = await res.text().catch(() => "");
|
|
724
734
|
throw new Error(`ComfyUI /upload/image returned ${res.status}: ${text}`);
|
|
725
735
|
}
|
|
726
|
-
|
|
736
|
+
// Never let a parser message stand in for a diagnosis: a proxy or a
|
|
737
|
+
// still-starting server answering 200 with HTML used to surface as a raw
|
|
738
|
+
// SyntaxError with no mention of what was requested (#946, and the same class
|
|
739
|
+
// as #918/#952).
|
|
740
|
+
return readComfyJson(res, {
|
|
741
|
+
url: "/upload/image",
|
|
742
|
+
expectShape: (v) => !!v && typeof v === "object" && typeof v.name === "string",
|
|
743
|
+
shapeHint: 'the upload result ({ name, subfolder, type })',
|
|
744
|
+
});
|
|
745
|
+
}
|
|
746
|
+
/**
|
|
747
|
+
* Split an upload target into ComfyUI's two fields (#946).
|
|
748
|
+
*
|
|
749
|
+
* `filename` is the caller's whole intent — "clip.mp4" or "assets/clip.mp4" —
|
|
750
|
+
* while ComfyUI's /upload/image wants a bare filename plus a separate
|
|
751
|
+
* `subfolder`. Backslashes count as separators too: a caller on Windows
|
|
752
|
+
* naturally writes "assets\clip.mp4".
|
|
753
|
+
*
|
|
754
|
+
* Traversal is REFUSED rather than sanitised. Silently rewriting "../../x.png"
|
|
755
|
+
* into something safe would upload to a place the caller did not name and then
|
|
756
|
+
* report the name they asked for — a wrong answer dressed as a right one. The
|
|
757
|
+
* caller gets told instead.
|
|
758
|
+
*/
|
|
759
|
+
export function splitUploadTarget(filename) {
|
|
760
|
+
// A TRAILING separator has to be caught before the empty segments are filtered
|
|
761
|
+
// out: "assets/" would otherwise leave ["assets"], and the directory would be
|
|
762
|
+
// adopted as the filename — an upload to a name the caller never wrote.
|
|
763
|
+
const endsInSeparator = /[/\\]\s*$/.test(filename);
|
|
764
|
+
const parts = filename.split(/[/\\]+/).filter((p) => p !== "" && p !== ".");
|
|
765
|
+
const name = endsInSeparator ? "" : (parts.pop() ?? "");
|
|
766
|
+
if (name === "" || name === "..") {
|
|
767
|
+
throw new ValidationError(`"${filename}" does not name a file to upload — it ends in a path separator or a "..". ` +
|
|
768
|
+
`Pass a filename, optionally prefixed with a subfolder (e.g. "assets/clip.mp4").`);
|
|
769
|
+
}
|
|
770
|
+
if (parts.some((p) => p === "..")) {
|
|
771
|
+
throw new ValidationError(`"${filename}" walks outside ComfyUI's input directory with "..". ` +
|
|
772
|
+
`A subfolder prefix may only go downwards (e.g. "assets/clip.mp4").`);
|
|
773
|
+
}
|
|
774
|
+
return { subfolder: parts.join("/"), name };
|
|
727
775
|
}
|
|
728
776
|
//# sourceMappingURL=client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/comfyui/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/comfyui/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
// #935 — a supplied-but-unapplied filter answered with a plausible result set.
|
|
2
|
+
//
|
|
3
|
+
// `panel_civitai_search` already guards ONE parameter. #374 fixed `creator`
|
|
4
|
+
// being silently dropped: the tool echoed `creator:null` with zero results and
|
|
5
|
+
// no explanation, so "filter never applied" and "this creator has no content"
|
|
6
|
+
// were indistinguishable. The guard added there warns on divergence.
|
|
7
|
+
//
|
|
8
|
+
// It covers `creator` and nothing else. `modelSort`, `baseModels` and `period`
|
|
9
|
+
// could be supplied, ignored, and answered with a full, ordinary-looking list —
|
|
10
|
+
// which is what a reporter saw: download counts in no order at all
|
|
11
|
+
// (48, 53, 53, 64, 1468) for a "Most Downloaded" sort. An agent asked for
|
|
12
|
+
// "most-downloaded Flux LoRAs" presents that confidently, and nothing in the
|
|
13
|
+
// reply says the sort never happened.
|
|
14
|
+
//
|
|
15
|
+
// The panel's own CivitAI client documents that an unrecognised `baseModels`
|
|
16
|
+
// value "silently returns nothing", so an EMPTY result here is ambiguous in
|
|
17
|
+
// exactly the way #374 existed to remove. That ambiguity is the part worth
|
|
18
|
+
// closing permanently, independently of wherever the filters actually stop
|
|
19
|
+
// taking effect — which is panel-side and not fixed here.
|
|
20
|
+
/** Compare loosely: the panel may echo a scalar where an array was sent, or
|
|
21
|
+
* differ only in case/whitespace. Only a REAL divergence should warn — a
|
|
22
|
+
* false alarm on every search would train the reader to skip the warning,
|
|
23
|
+
* which is how a guard stops working. */
|
|
24
|
+
function sameValue(want, got) {
|
|
25
|
+
if (want === got)
|
|
26
|
+
return true;
|
|
27
|
+
const norm = (v) => Array.isArray(v)
|
|
28
|
+
? v.map((x) => String(x).trim().toLowerCase()).sort().join("|")
|
|
29
|
+
: String(v ?? "").trim().toLowerCase();
|
|
30
|
+
return norm(want) === norm(got);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The warning for filters the panel did not apply, or "" when there is nothing
|
|
34
|
+
* to say.
|
|
35
|
+
*
|
|
36
|
+
* Deliberately conservative about what it CLAIMS. The panel echoes back an
|
|
37
|
+
* `filters`/`applied_filters` object on newer builds; on an older one it echoes
|
|
38
|
+
* nothing, and absence is NOT evidence the filters were dropped. So:
|
|
39
|
+
*
|
|
40
|
+
* - echoed and equal → silent. Nothing happened worth reporting.
|
|
41
|
+
* - echoed and different → name each one, with asked-vs-applied.
|
|
42
|
+
* - not echoed at all → say the application could not be VERIFIED, and
|
|
43
|
+
* say plainly that this is not the same as knowing
|
|
44
|
+
* it failed. A reader who is told "unverified"
|
|
45
|
+
* re-checks; one told "failed" goes and fixes
|
|
46
|
+
* something that may not be broken.
|
|
47
|
+
*/
|
|
48
|
+
export function describeUnappliedFilters(filters, reply) {
|
|
49
|
+
const supplied = filters && typeof filters === "object" && !Array.isArray(filters)
|
|
50
|
+
? filters
|
|
51
|
+
: undefined;
|
|
52
|
+
const asked = Object.entries(supplied ?? {}).filter(([, v]) => v !== undefined && v !== null && !(Array.isArray(v) && v.length === 0));
|
|
53
|
+
if (asked.length === 0)
|
|
54
|
+
return "";
|
|
55
|
+
if (!reply || typeof reply !== "object")
|
|
56
|
+
return "";
|
|
57
|
+
const r = reply;
|
|
58
|
+
const echoed = (r.applied_filters ?? r.filters);
|
|
59
|
+
if (!echoed || typeof echoed !== "object") {
|
|
60
|
+
return (`This panel build did not echo back which filters it applied, so whether ` +
|
|
61
|
+
`${asked.map(([k]) => `\`${k}\``).join(", ")} took effect is UNVERIFIED — which is not the same as ` +
|
|
62
|
+
`knowing they were ignored. Judge the results before trusting the ordering or the narrowing: if a ` +
|
|
63
|
+
`sort was requested, check that the list is actually in that order. An unrecognised \`baseModels\` ` +
|
|
64
|
+
`value makes CivitAI return nothing at all, so an empty result here is not evidence that no such ` +
|
|
65
|
+
`model exists.`);
|
|
66
|
+
}
|
|
67
|
+
const dropped = asked.filter(([k, v]) => !sameValue(v, echoed[k]));
|
|
68
|
+
if (dropped.length === 0)
|
|
69
|
+
return "";
|
|
70
|
+
const lines = dropped
|
|
71
|
+
.map(([k, v]) => {
|
|
72
|
+
const got = echoed[k];
|
|
73
|
+
const gotStr = got === undefined || got === null
|
|
74
|
+
? "not applied"
|
|
75
|
+
: JSON.stringify(got);
|
|
76
|
+
return ` - ${k}: asked ${JSON.stringify(v)}, applied ${gotStr}`;
|
|
77
|
+
})
|
|
78
|
+
.join("\n");
|
|
79
|
+
return (`${dropped.length} of the ${asked.length} filter(s) you supplied were NOT applied by the CivitAI ` +
|
|
80
|
+
`browser:\n${lines}\n` +
|
|
81
|
+
`The results below were produced WITHOUT them, so do not describe them as sorted or narrowed the way ` +
|
|
82
|
+
`you asked. Re-run with values the browser accepts (an out-of-enum sort/period is rejected outright, ` +
|
|
83
|
+
`and an unrecognised baseModels silently returns nothing), or read the list on its own terms.`);
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=civitai-filter-guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"civitai-filter-guard.js","sourceRoot":"","sources":["../../src/orchestrator/civitai-filter-guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import { QueueMonitor } from "../services/queue-monitor.js";
|
|
2
|
+
// #948 — a correct instruction delivered to the wrong place is a wrong instruction.
|
|
3
|
+
//
|
|
4
|
+
// A user saw `Not logged in, please run /login` in the PANEL CHAT and reported
|
|
5
|
+
// that `/login` "doesn't exist as a command". They were right: `/login` is typed
|
|
6
|
+
// at the `pi` CLI's own prompt. It is not a panel command, not a ComfyUI command,
|
|
7
|
+
// and not a shell command — and the message named none of that.
|
|
8
|
+
//
|
|
9
|
+
// In a chat box a leading `/` reads as "type this here". That is the whole defect:
|
|
10
|
+
// the remedy was accurate and unusable at the same time, and it points the reader
|
|
11
|
+
// at the one place it cannot work.
|
|
12
|
+
//
|
|
13
|
+
// It also misleads ACROSS providers. A user on the Claude or Codex chip has no
|
|
14
|
+
// `/login` at all (`claude setup-token`, `codex login`), so a passed-through
|
|
15
|
+
// string naming it is not merely unhelpful there — it is false.
|
|
16
|
+
//
|
|
17
|
+
// Two rules follow, and both are about the reader's location rather than the
|
|
18
|
+
// text's accuracy:
|
|
19
|
+
// 1. Never let a bare `/command` reach chat. Say where its prompt is.
|
|
20
|
+
// 2. When we wrap a provider's auth failure, name the tool, the place, and the
|
|
21
|
+
// follow-up — not just the keystrokes.
|
|
22
|
+
/** The CLI whose prompt a backend's slash commands belong to, when it has one. */
|
|
23
|
+
const SLASH_CLI_BY_BACKEND = {
|
|
24
|
+
pi: "pi",
|
|
25
|
+
grok: "grok",
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Rewrite bare `/command` mentions so they cannot read as "type this here".
|
|
29
|
+
*
|
|
30
|
+
* Only touches a slash-command that stands as its own word — `/login`,
|
|
31
|
+
* `/status` — and leaves paths (`/usr/bin/pi`), URLs and dates alone, since
|
|
32
|
+
* those are not instructions and rewriting them would corrupt real values.
|
|
33
|
+
*
|
|
34
|
+
* The first occurrence gets the full "at <cli>'s prompt" qualification; later
|
|
35
|
+
* ones in the same message get a shorter form, because repeating the whole
|
|
36
|
+
* clause reads as noise and noise is what gets skimmed past.
|
|
37
|
+
*/
|
|
38
|
+
export function qualifySlashCommands(text, cli) {
|
|
39
|
+
if (!text)
|
|
40
|
+
return text;
|
|
41
|
+
let seen = 0;
|
|
42
|
+
return text.replace(/(^|[\s("'`])\/([a-z][a-z0-9-]{1,24})\b(?!\/)/gi, (match, lead, cmd) => {
|
|
43
|
+
// A path segment (`/foo/bar`) or a URL is not an instruction.
|
|
44
|
+
seen += 1;
|
|
45
|
+
const qualified = seen === 1
|
|
46
|
+
? `\`${cli}\`, then type \`/${cmd}\` at its prompt`
|
|
47
|
+
: `\`/${cmd}\` (at the \`${cli}\` prompt)`;
|
|
48
|
+
return `${lead}${qualified}`;
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/** True when a CLI's failure text is about missing/expired credentials. */
|
|
52
|
+
export function looksLikeAuthFailure(text) {
|
|
53
|
+
return /sign.?in|log.?in|logged.?out|auth|credential|unauthoriz|api.?key|no provider/i.test(text);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* OUR wrapper for a provider's not-authenticated failure.
|
|
57
|
+
*
|
|
58
|
+
* Names the tool, WHERE to run it, and the follow-up — a raw CLI string assumes
|
|
59
|
+
* the reader is already standing in that CLI, which from a panel chat is exactly
|
|
60
|
+
* the assumption that fails.
|
|
61
|
+
*
|
|
62
|
+
* `detail` is the CLI's own tail, kept because it often carries the real reason
|
|
63
|
+
* (an expired token vs a missing file) — but passed through `qualifySlashCommands`
|
|
64
|
+
* first, so the child's phrasing can never smuggle a bare `/login` into chat.
|
|
65
|
+
*/
|
|
66
|
+
export function providerAuthRemedy(backend, detail) {
|
|
67
|
+
const cli = SLASH_CLI_BY_BACKEND[backend];
|
|
68
|
+
const tail = detail?.trim()
|
|
69
|
+
? ` (${cli ? qualifySlashCommands(detail.trim(), cli) : detail.trim()})`
|
|
70
|
+
: "";
|
|
71
|
+
switch (backend) {
|
|
72
|
+
case "pi":
|
|
73
|
+
return (`pi has no usable provider credentials. Fix it in a TERMINAL, not here: either set a provider ` +
|
|
74
|
+
`API key (ANTHROPIC_API_KEY / OPENAI_API_KEY / …), or run \`pi\` once and type \`/login\` at its ` +
|
|
75
|
+
`prompt — that writes ~/.pi/agent/auth.json. Then Disconnect → Connect and send your message ` +
|
|
76
|
+
`again.${tail}`);
|
|
77
|
+
case "codex":
|
|
78
|
+
return (`Codex is not logged in. In a TERMINAL run \`codex login\` (ChatGPT sign-in) or set CODEX_API_KEY, ` +
|
|
79
|
+
`then Disconnect → Connect.${tail}`);
|
|
80
|
+
case "claude":
|
|
81
|
+
return (`Claude has no usable credentials. In a TERMINAL run \`claude setup-token\`, or set ANTHROPIC_API_KEY, ` +
|
|
82
|
+
`then Disconnect → Connect.${tail}`);
|
|
83
|
+
case "gemini":
|
|
84
|
+
return (`Gemini is not authenticated. In a TERMINAL run \`gemini\` once and complete its sign-in, or set ` +
|
|
85
|
+
`GEMINI_API_KEY, then Disconnect → Connect.${tail}`);
|
|
86
|
+
default:
|
|
87
|
+
return (`${backend} has no usable credentials. Set the provider's API key in the API Keys card, or complete ` +
|
|
88
|
+
`its CLI sign-in in a TERMINAL, then Disconnect → Connect.${tail}`);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
// ---------------------------------------------------------------------------
|
|
92
|
+
// #889 — a run-error notification must not assert who queued the run.
|
|
93
|
+
// ---------------------------------------------------------------------------
|
|
94
|
+
/**
|
|
95
|
+
* The ComfyUI prompt id named in a run-error string, when there is one.
|
|
96
|
+
*
|
|
97
|
+
* Best-effort by design: the id travels inside prose ("Render status for prompt
|
|
98
|
+
* 9d70fd9d-… could not be confirmed"), so a miss is normal and simply yields the
|
|
99
|
+
* `unknown` attribution rather than a wrong one. Matches a bare uuid, which is
|
|
100
|
+
* what ComfyUI mints.
|
|
101
|
+
*/
|
|
102
|
+
export function promptIdOf(text) {
|
|
103
|
+
const m = /\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/i.exec(text ?? "");
|
|
104
|
+
return m?.[0];
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* The run-error notification, phrased by what we can actually establish.
|
|
108
|
+
*
|
|
109
|
+
* The three wordings differ in the ONE thing that was wrong before — the claim
|
|
110
|
+
* about authorship — and in how hard they push. An agent told to STOP and to
|
|
111
|
+
* relate a failure to its own work will relate it, so the imperative only
|
|
112
|
+
* belongs on a run we can show is the agent's.
|
|
113
|
+
*/
|
|
114
|
+
export function describeRunError(error, attribution) {
|
|
115
|
+
const details = `(panel_get_errors has the full node-level details)`;
|
|
116
|
+
switch (attribution) {
|
|
117
|
+
case "mine":
|
|
118
|
+
return (`[panel event] ⚠️ The workflow run you queued ERRORED on the user's canvas: ${error}. ` +
|
|
119
|
+
`STOP — do not carry on as if it succeeded. Diagnose it ${details} and fix it.`);
|
|
120
|
+
case "not-mine":
|
|
121
|
+
return (`[panel event] A workflow run ERRORED on the user's canvas: ${error}. ` +
|
|
122
|
+
`You did NOT queue this run — this session has queued none — so do not treat it as your own ` +
|
|
123
|
+
`failure and do not look for a connection to what you were doing. Tell the user briefly. ` +
|
|
124
|
+
`Only investigate ${details} if they ask, or if it is obviously about a graph you just edited.`);
|
|
125
|
+
default:
|
|
126
|
+
return (`[panel event] ⚠️ A workflow run ERRORED on the user's canvas: ${error}. ` +
|
|
127
|
+
`Whether it is one you queued could NOT be determined, so do not assume either way. ` +
|
|
128
|
+
`If you were waiting on a render, treat this as it and diagnose it ${details}; if you were not, ` +
|
|
129
|
+
`it is the user's own run — tell them briefly and carry on.`);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* The run-error notice for a raw error string: extract the prompt id, ask the
|
|
134
|
+
* QueueMonitor whose run it was, and phrase it accordingly.
|
|
135
|
+
*
|
|
136
|
+
* Kept as one named step so the composition is testable. Left inline in
|
|
137
|
+
* PanelAgent it was reachable only through a full agent harness, and a mutation
|
|
138
|
+
* that hardcoded the attribution back to "mine" — the exact #889 regression —
|
|
139
|
+
* broke no test at all.
|
|
140
|
+
*/
|
|
141
|
+
export function runErrorNotice(error) {
|
|
142
|
+
return describeRunError(error, QueueMonitor.attributeRun(promptIdOf(error)));
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=cli-remedy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-remedy.js","sourceRoot":"","sources":["../../src/orchestrator/cli-remedy.ts"],"names":[],"mappings":"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"}
|
|
@@ -3171,14 +3171,39 @@ export async function runPanelOrchestrator() {
|
|
|
3171
3171
|
}
|
|
3172
3172
|
// Record this tab's trusted per-workflow COMMAND STAMP (#570 P0c — a
|
|
3173
3173
|
// ROUTING fence kept under #884: a late command issued for another
|
|
3174
|
-
// workflow must not mutate this one).
|
|
3175
|
-
//
|
|
3174
|
+
// workflow must not mutate this one).
|
|
3175
|
+
//
|
|
3176
|
+
// #689/#688/#607/#702 — an untrusted identity RETAINS the previous stamp
|
|
3177
|
+
// instead of deleting it. Deleting looks like the conservative choice and
|
|
3178
|
+
// is in fact the strictly worse one, because the two outcomes are not
|
|
3179
|
+
// symmetric:
|
|
3180
|
+
//
|
|
3181
|
+
// • The panel authorizes a fenced command IFF stamp === the LIVE active
|
|
3182
|
+
// workflow uuid. So a RETAINED stamp can only ever authorize a command
|
|
3183
|
+
// that names the canvas actually mounted right now — if the workflow
|
|
3184
|
+
// changed, it mismatches and is refused exactly as before. Retaining
|
|
3185
|
+
// therefore permits no write that a correct stamp would not permit.
|
|
3186
|
+
// • A DELETED stamp makes UiBridge send frames with no `workflow_uuid`
|
|
3187
|
+
// at all (`else delete frame.workflow_uuid`), and the panel counts an
|
|
3188
|
+
// unstamped command as a mismatch too (#718, deliberately fail-closed).
|
|
3189
|
+
// So deleting does not relax the fence — it refuses HARDER, and it
|
|
3190
|
+
// refuses everything the fence covers, including `workflow_list`.
|
|
3191
|
+
//
|
|
3192
|
+
// The asymmetry is that a stale stamp is RECOVERABLE (the next hello that
|
|
3193
|
+
// does resolve an identity replaces it) while an absent one is not: the
|
|
3194
|
+
// panel's re-advertise repair is capped at MISMATCH_REHELLO_MAX_PER_IDENTITY
|
|
3195
|
+
// (3) per identity, so once those attempts are spent against an orchestrator
|
|
3196
|
+
// that still cannot derive an identity, nothing retries and every command is
|
|
3197
|
+
// refused permanently. A reconnect hello that lands before the canvas
|
|
3198
|
+
// identity is readable carries no uuid, which is enough to erase the stamp
|
|
3199
|
+
// and wedge the tab for the rest of the session.
|
|
3200
|
+
//
|
|
3201
|
+
// Untrusted identity therefore means "no NEW evidence", not "the previous
|
|
3202
|
+
// evidence is now false". Keep what we last proved and let the fence judge
|
|
3203
|
+
// it on equality, which is the only test that decides authorization.
|
|
3176
3204
|
if (newIdentity) {
|
|
3177
3205
|
tabCommandWorkflowUuid.set(panelTab, newIdentity.uuid);
|
|
3178
3206
|
}
|
|
3179
|
-
else {
|
|
3180
|
-
tabCommandWorkflowUuid.delete(panelTab);
|
|
3181
|
-
}
|
|
3182
3207
|
// Blind content mode rides the hello (issue #90) so the FIRST agent spawn
|
|
3183
3208
|
// already carries the right tool-server env. A CHANGE against a live
|
|
3184
3209
|
// agent also respawns it (codex-review F2: the set_content_mode frame is
|