zcode-acp-server 0.47.10 → 0.48.1
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 +1 -1
- package/dist/backend/adapter.d.ts +129 -0
- package/dist/backend/adapter.d.ts.map +1 -0
- package/dist/backend/adapter.js +71 -0
- package/dist/backend/adapter.js.map +1 -0
- package/dist/backend/client.d.ts +14 -103
- package/dist/backend/client.d.ts.map +1 -1
- package/dist/backend/client.js +63 -413
- package/dist/backend/client.js.map +1 -1
- package/dist/backend/index.d.ts +3 -1
- package/dist/backend/index.d.ts.map +1 -1
- package/dist/backend/index.js +2 -0
- package/dist/backend/index.js.map +1 -1
- package/dist/backend/jsonrpc-child.d.ts +128 -0
- package/dist/backend/jsonrpc-child.d.ts.map +1 -0
- package/dist/backend/jsonrpc-child.js +397 -0
- package/dist/backend/jsonrpc-child.js.map +1 -0
- package/dist/code-fingerprint.json +2 -2
- package/dist/config/options.d.ts.map +1 -1
- package/dist/config/options.js +14 -4
- package/dist/config/options.js.map +1 -1
- package/dist/config/workflow-gate.d.ts +97 -0
- package/dist/config/workflow-gate.d.ts.map +1 -0
- package/dist/config/workflow-gate.js +159 -0
- package/dist/config/workflow-gate.js.map +1 -0
- package/dist/handlers/background-tasks.d.ts.map +1 -1
- package/dist/handlers/background-tasks.js +56 -0
- package/dist/handlers/background-tasks.js.map +1 -1
- package/dist/handlers/dispatch.js +4 -0
- package/dist/handlers/dispatch.js.map +1 -1
- package/dist/handlers/session.d.ts +11 -0
- package/dist/handlers/session.d.ts.map +1 -1
- package/dist/handlers/session.js +80 -32
- package/dist/handlers/session.js.map +1 -1
- package/dist/handlers/slash.d.ts +7 -2
- package/dist/handlers/slash.d.ts.map +1 -1
- package/dist/handlers/slash.js +115 -4
- package/dist/handlers/slash.js.map +1 -1
- package/dist/i18n.d.ts +2 -0
- package/dist/i18n.d.ts.map +1 -1
- package/dist/i18n.js +6 -0
- package/dist/i18n.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -3
- package/dist/index.js.map +1 -1
- package/dist/remote/session-close-endpoint.d.ts.map +1 -1
- package/dist/remote/session-close-endpoint.js +6 -0
- package/dist/remote/session-close-endpoint.js.map +1 -1
- package/dist/remote/settings-endpoint.d.ts.map +1 -1
- package/dist/remote/settings-endpoint.js +380 -3
- package/dist/remote/settings-endpoint.js.map +1 -1
- package/dist/server.d.ts +49 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +80 -0
- package/dist/server.js.map +1 -1
- package/dist/settings/workflow.d.ts +139 -0
- package/dist/settings/workflow.d.ts.map +1 -0
- package/dist/settings/workflow.js +443 -0
- package/dist/settings/workflow.js.map +1 -0
- package/dist/translators/tool-helpers.d.ts.map +1 -1
- package/dist/translators/tool-helpers.js +4 -0
- package/dist/translators/tool-helpers.js.map +1 -1
- package/dist/utils.d.ts +9 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +8 -0
- package/dist/utils.js.map +1 -1
- package/dist/workflow/poller.d.ts +68 -0
- package/dist/workflow/poller.d.ts.map +1 -0
- package/dist/workflow/poller.js +290 -0
- package/dist/workflow/poller.js.map +1 -0
- package/docs/ARCHITECTURE.md +8 -6
- package/docs/BACKLOG.md +20 -2
- package/package.json +1 -1
package/dist/server.d.ts
CHANGED
|
@@ -7,7 +7,8 @@
|
|
|
7
7
|
* every handler layer can reach it without globals.
|
|
8
8
|
*/
|
|
9
9
|
import type * as acp from "@agentclientprotocol/sdk";
|
|
10
|
-
import { ZcodeBackend } from "./backend/index.js";
|
|
10
|
+
import { type BackendKind, ZcodeBackend } from "./backend/index.js";
|
|
11
|
+
import { type WorkflowGate } from "./config/workflow-gate.js";
|
|
11
12
|
import { BackgroundTaskListener } from "./handlers/background-tasks.js";
|
|
12
13
|
import { SandboxRestartBatcher } from "./handlers/sandbox-allow.js";
|
|
13
14
|
import { ClientRegistry } from "./remote/broadcast.js";
|
|
@@ -87,6 +88,13 @@ export declare const BACKEND_RESIDENT_TTL_MS: number;
|
|
|
87
88
|
export declare class ZcodeAcpServer {
|
|
88
89
|
/** The ZCode subprocess client (lazy — spawned on first use). */
|
|
89
90
|
backend: ZcodeBackend | null;
|
|
91
|
+
/**
|
|
92
|
+
* Backend kind this bridge serves (ADR-0023): fixed "zcode" until the dsh
|
|
93
|
+
* adapter lands (its port wires --backend / ZCODE_ACP_BACKEND selection).
|
|
94
|
+
* Capability gates read `backendCapabilities(backendKind)` — the single
|
|
95
|
+
* enforcement point — so flipping the kind flips every gated surface.
|
|
96
|
+
*/
|
|
97
|
+
readonly backendKind: BackendKind;
|
|
90
98
|
/** acp_sid → zcode session id (usually identical, but kept for clarity). */
|
|
91
99
|
readonly sessionMap: Map<string, string>;
|
|
92
100
|
/**
|
|
@@ -214,6 +222,30 @@ export declare class ZcodeAcpServer {
|
|
|
214
222
|
* evidence only — no version sniffing. Reset on backend respawn.
|
|
215
223
|
*/
|
|
216
224
|
observedSendBusyReject: boolean;
|
|
225
|
+
/**
|
|
226
|
+
* Dynamic-workflow gate verdict for the CURRENT backend generation
|
|
227
|
+
* (desktop-host parity, src/config/workflow-gate.ts): an anonymous remote
|
|
228
|
+
* read resolved ONCE per backend spawn and pinned to that instance — a
|
|
229
|
+
* server-side mode flip lands at the next respawn. session/create·resume
|
|
230
|
+
* params await it (workflowFlag in handlers/session.ts); the process-wide
|
|
231
|
+
* policy push chains off it in ensureBackend. Null before the first spawn
|
|
232
|
+
* reads as disabled (fail-closed).
|
|
233
|
+
*/
|
|
234
|
+
backendWorkflowGate: Promise<WorkflowGate> | null;
|
|
235
|
+
/**
|
|
236
|
+
* The full slash-command list (set once by buildAgentApp in index.ts).
|
|
237
|
+
* Read by the gate-aware menu catch-up (resendMenuAfterGateSettled in
|
|
238
|
+
* handlers/session.ts): a cold bridge's session/new snapshot predates the
|
|
239
|
+
* workflow verdict, so the materialization path re-sends the menu once the
|
|
240
|
+
* gate has settled.
|
|
241
|
+
*/
|
|
242
|
+
allCommands: Array<{
|
|
243
|
+
name: string;
|
|
244
|
+
description: string;
|
|
245
|
+
input?: {
|
|
246
|
+
hint: string;
|
|
247
|
+
};
|
|
248
|
+
}> | null;
|
|
217
249
|
/**
|
|
218
250
|
* Sandbox dynamic-allow state (ADR-0011): realpaths granted for this
|
|
219
251
|
* bridge lifetime ("仅此一次" answers) — folded into the Seatbelt profile
|
|
@@ -457,6 +489,15 @@ export declare class ZcodeAcpServer {
|
|
|
457
489
|
* short command with no progress, so the result emits output once).
|
|
458
490
|
*/
|
|
459
491
|
readonly terminalSentData: Map<string, string>;
|
|
492
|
+
/**
|
|
493
|
+
* Backend toolCallIds whose ACP tool card has been dispatched to clients
|
|
494
|
+
* (backend callId → acp card id; identical on the live dispatch path). Feeds
|
|
495
|
+
* the workflow-run guard in BackgroundTaskListener: a workflow background
|
|
496
|
+
* task folds its progress into the CreateWorkflow card only when that card
|
|
497
|
+
* is actually visible — otherwise the generic [background] card remains.
|
|
498
|
+
* Bounded FIFO (old ids age out; callIds are never reused by the backend).
|
|
499
|
+
*/
|
|
500
|
+
readonly dispatchedToolCalls: Map<string, string>;
|
|
460
501
|
/** Monotonic id counter; base 10_000_000 to avoid collisions with zcode-originated ids. */
|
|
461
502
|
private msgCounter;
|
|
462
503
|
/**
|
|
@@ -472,6 +513,13 @@ export declare class ZcodeAcpServer {
|
|
|
472
513
|
});
|
|
473
514
|
/** Next JSON-RPC id for messages we send to zcode. */
|
|
474
515
|
nextId(): number;
|
|
516
|
+
/**
|
|
517
|
+
* Record that the ACP card for a backend tool call was dispatched (called
|
|
518
|
+
* from dispatchEvent's ToolCallNew branch). Bounded: when the cap is hit the
|
|
519
|
+
* oldest id ages out — a workflow run arms its poller within seconds of the
|
|
520
|
+
* card appearing, so stale entries are irrelevant.
|
|
521
|
+
*/
|
|
522
|
+
noteDispatchedToolCall(backendCallId: string, acpCallId: string): void;
|
|
475
523
|
/**
|
|
476
524
|
* Lazily spawn the zcode backend on first use (initialize doesn't need it).
|
|
477
525
|
* With the sandbox armed (ZCODE_ACP_SANDBOX=1 globally, or any live
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAErD,OAAO,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { builtinProviderEnv, loadZcodeCredentials, mergeEnvWithCreds, resolveZcodeCommand, zcodeDataBaseDirEnv, ZcodeBackend, } from "./backend/index.js";
|
|
10
10
|
import { armSandboxArgv, collectSandboxWorkspaces, sandboxActive } from "./backend/sandbox.js";
|
|
11
|
+
import { captureGate, pushDynamicWorkflowPolicy, resolveWorkflowGate, } from "./config/workflow-gate.js";
|
|
11
12
|
import { BackgroundTaskListener } from "./handlers/background-tasks.js";
|
|
12
13
|
import { enqueueSessionSend } from "./handlers/io.js";
|
|
13
14
|
import { SandboxRestartBatcher, flushSandboxGrants } from "./handlers/sandbox-allow.js";
|
|
@@ -15,6 +16,7 @@ import { answerProviderRuntimeHeaders } from "./handlers/server-requests.js";
|
|
|
15
16
|
import { SessionTitleListener } from "./handlers/session-titles.js";
|
|
16
17
|
import { ClientRegistry } from "./remote/broadcast.js";
|
|
17
18
|
import { envWithLoginShell } from "./remote/login-shell-env.js";
|
|
19
|
+
import { stopAllWorkflowRunPollers } from "./workflow/poller.js";
|
|
18
20
|
import { AGENT_INFO, clientConnectionRoot, PROTOCOL_VERSION, log, warn } from "./utils.js";
|
|
19
21
|
/**
|
|
20
22
|
* How long a "loaded in backend" verification stays trusted. The backend
|
|
@@ -29,6 +31,13 @@ export const BACKEND_RESIDENT_TTL_MS = 5 * 60_000;
|
|
|
29
31
|
export class ZcodeAcpServer {
|
|
30
32
|
/** The ZCode subprocess client (lazy — spawned on first use). */
|
|
31
33
|
backend = null;
|
|
34
|
+
/**
|
|
35
|
+
* Backend kind this bridge serves (ADR-0023): fixed "zcode" until the dsh
|
|
36
|
+
* adapter lands (its port wires --backend / ZCODE_ACP_BACKEND selection).
|
|
37
|
+
* Capability gates read `backendCapabilities(backendKind)` — the single
|
|
38
|
+
* enforcement point — so flipping the kind flips every gated surface.
|
|
39
|
+
*/
|
|
40
|
+
backendKind = "zcode";
|
|
32
41
|
/** acp_sid → zcode session id (usually identical, but kept for clarity). */
|
|
33
42
|
sessionMap = new Map();
|
|
34
43
|
/**
|
|
@@ -140,6 +149,24 @@ export class ZcodeAcpServer {
|
|
|
140
149
|
* evidence only — no version sniffing. Reset on backend respawn.
|
|
141
150
|
*/
|
|
142
151
|
observedSendBusyReject = false;
|
|
152
|
+
/**
|
|
153
|
+
* Dynamic-workflow gate verdict for the CURRENT backend generation
|
|
154
|
+
* (desktop-host parity, src/config/workflow-gate.ts): an anonymous remote
|
|
155
|
+
* read resolved ONCE per backend spawn and pinned to that instance — a
|
|
156
|
+
* server-side mode flip lands at the next respawn. session/create·resume
|
|
157
|
+
* params await it (workflowFlag in handlers/session.ts); the process-wide
|
|
158
|
+
* policy push chains off it in ensureBackend. Null before the first spawn
|
|
159
|
+
* reads as disabled (fail-closed).
|
|
160
|
+
*/
|
|
161
|
+
backendWorkflowGate = null;
|
|
162
|
+
/**
|
|
163
|
+
* The full slash-command list (set once by buildAgentApp in index.ts).
|
|
164
|
+
* Read by the gate-aware menu catch-up (resendMenuAfterGateSettled in
|
|
165
|
+
* handlers/session.ts): a cold bridge's session/new snapshot predates the
|
|
166
|
+
* workflow verdict, so the materialization path re-sends the menu once the
|
|
167
|
+
* gate has settled.
|
|
168
|
+
*/
|
|
169
|
+
allCommands = null;
|
|
143
170
|
/**
|
|
144
171
|
* Sandbox dynamic-allow state (ADR-0011): realpaths granted for this
|
|
145
172
|
* bridge lifetime ("仅此一次" answers) — folded into the Seatbelt profile
|
|
@@ -375,6 +402,15 @@ export class ZcodeAcpServer {
|
|
|
375
402
|
* short command with no progress, so the result emits output once).
|
|
376
403
|
*/
|
|
377
404
|
terminalSentData = new Map();
|
|
405
|
+
/**
|
|
406
|
+
* Backend toolCallIds whose ACP tool card has been dispatched to clients
|
|
407
|
+
* (backend callId → acp card id; identical on the live dispatch path). Feeds
|
|
408
|
+
* the workflow-run guard in BackgroundTaskListener: a workflow background
|
|
409
|
+
* task folds its progress into the CreateWorkflow card only when that card
|
|
410
|
+
* is actually visible — otherwise the generic [background] card remains.
|
|
411
|
+
* Bounded FIFO (old ids age out; callIds are never reused by the backend).
|
|
412
|
+
*/
|
|
413
|
+
dispatchedToolCalls = new Map();
|
|
378
414
|
/** Monotonic id counter; base 10_000_000 to avoid collisions with zcode-originated ids. */
|
|
379
415
|
msgCounter = 10_000_000;
|
|
380
416
|
/**
|
|
@@ -392,6 +428,20 @@ export class ZcodeAcpServer {
|
|
|
392
428
|
nextId() {
|
|
393
429
|
return ++this.msgCounter;
|
|
394
430
|
}
|
|
431
|
+
/**
|
|
432
|
+
* Record that the ACP card for a backend tool call was dispatched (called
|
|
433
|
+
* from dispatchEvent's ToolCallNew branch). Bounded: when the cap is hit the
|
|
434
|
+
* oldest id ages out — a workflow run arms its poller within seconds of the
|
|
435
|
+
* card appearing, so stale entries are irrelevant.
|
|
436
|
+
*/
|
|
437
|
+
noteDispatchedToolCall(backendCallId, acpCallId) {
|
|
438
|
+
this.dispatchedToolCalls.set(backendCallId, acpCallId);
|
|
439
|
+
if (this.dispatchedToolCalls.size > 2048) {
|
|
440
|
+
const oldest = this.dispatchedToolCalls.keys().next().value;
|
|
441
|
+
if (oldest !== undefined)
|
|
442
|
+
this.dispatchedToolCalls.delete(oldest);
|
|
443
|
+
}
|
|
444
|
+
}
|
|
395
445
|
/**
|
|
396
446
|
* Lazily spawn the zcode backend on first use (initialize doesn't need it).
|
|
397
447
|
* With the sandbox armed (ZCODE_ACP_SANDBOX=1 globally, or any live
|
|
@@ -408,6 +458,23 @@ export class ZcodeAcpServer {
|
|
|
408
458
|
async ensureBackend() {
|
|
409
459
|
if (this.backend && !this.backend.isDead)
|
|
410
460
|
return this.backend;
|
|
461
|
+
// Dynamic-workflow gate (desktop-host parity): kick the remote verdict off
|
|
462
|
+
// FIRST so the fetch parallels the login-shell probe and the spawn; the
|
|
463
|
+
// verdict is pinned to THIS backend generation. The assignment happens
|
|
464
|
+
// only in this spawn branch (re-entry on a live backend returns above),
|
|
465
|
+
// so exactly one gate resolution — and one policy push (below) — exists
|
|
466
|
+
// per backend instance. resolveWorkflowGate is fail-closed by design; the
|
|
467
|
+
// catch is belt-and-braces so the field can never hold a rejected
|
|
468
|
+
// promise (create/resume params await it). captureGate attaches the
|
|
469
|
+
// settled-value collector AT CREATION so the first workflowGateNow read
|
|
470
|
+
// after settlement sees the verdict (a read-time collector would be one
|
|
471
|
+
// microtask late — enough to filter the first `/` menu of a session).
|
|
472
|
+
const workflowGate = captureGate(resolveWorkflowGate().catch(() => ({
|
|
473
|
+
mode: "unknown",
|
|
474
|
+
enabled: false,
|
|
475
|
+
source: "default",
|
|
476
|
+
})));
|
|
477
|
+
this.backendWorkflowGate = workflowGate;
|
|
411
478
|
// builtinProviderEnv injects the CLI's built-in provider table the way the
|
|
412
479
|
// desktop host does — a bare .app-bundle CLI cannot find it on its own.
|
|
413
480
|
// zcodeDataBaseDirEnv translates the bridge's ZCODE_HOME into the CLI's
|
|
@@ -458,6 +525,16 @@ export class ZcodeAcpServer {
|
|
|
458
525
|
// …and the send-semantics evidence: the respawned process may be an
|
|
459
526
|
// older build that still accepts mid-turn sends as steer.
|
|
460
527
|
this.observedSendBusyReject = false;
|
|
528
|
+
// First enable channel for an ENABLED gate: push the process-wide
|
|
529
|
+
// dynamic-workflow policy once, fire-and-forget — never awaited here (the
|
|
530
|
+
// per-session create/resume flag is the second channel and must not
|
|
531
|
+
// depend on this flight). A backend that dies before the gate resolves
|
|
532
|
+
// just fails the push best-effort inside the helper.
|
|
533
|
+
void workflowGate.then((gate) => {
|
|
534
|
+
if (gate.enabled) {
|
|
535
|
+
void pushDynamicWorkflowPolicy(backend, () => this.nextId(), process.cwd());
|
|
536
|
+
}
|
|
537
|
+
});
|
|
461
538
|
// Answer the provider runtime-headers handshake the moment it ARRIVES:
|
|
462
539
|
// the backend asks before every model request on a zhipu-account provider,
|
|
463
540
|
// and outside a turn loop (compact's internal turn, session/goal set) the
|
|
@@ -669,6 +746,9 @@ export class ZcodeAcpServer {
|
|
|
669
746
|
* in_progress forever (#194). Best-effort; called from shutdown paths.
|
|
670
747
|
*/
|
|
671
748
|
async emitBackgroundTaskShutdownRecords() {
|
|
749
|
+
// Workflow-run pollers poll the backend — stop them before the pipe
|
|
750
|
+
// closes (mirrors the listener records below).
|
|
751
|
+
stopAllWorkflowRunPollers();
|
|
672
752
|
for (const listener of this.backgroundListeners.values()) {
|
|
673
753
|
try {
|
|
674
754
|
await listener.emitShutdownRecords();
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dynamic-workflow management plane — the backend-facing half (plan §7).
|
|
3
|
+
*
|
|
4
|
+
* The desktop manages saved workflows over its private v4 channel + GUI; ACP
|
|
5
|
+
* has no resource-management family at all, so the Settings API is the ONLY
|
|
6
|
+
* surface a remote App has. This module owns the wire translation:
|
|
7
|
+
*
|
|
8
|
+
* - `workflows/*` (session-less file ops) carry the bridge's primary project
|
|
9
|
+
* cwd as the workspace ref — the same derivation the hub discovery payload
|
|
10
|
+
* uses (collectSessions → server.projectCwd()).
|
|
11
|
+
* - `v4/conversation/workflowRun*` queries are session-scoped: callers hand
|
|
12
|
+
* over an ACP session id, this module resolves the backend zcodeSid.
|
|
13
|
+
* - start/resume go through `v4/command` with `request()` so the response IS
|
|
14
|
+
* the terminal CommandAck — the gateway awaits the side effect (script
|
|
15
|
+
* compile included), which is why those timeouts are the longest here.
|
|
16
|
+
*
|
|
17
|
+
* Every RPC goes through `backend.request`, which NEVER throws — it resolves
|
|
18
|
+
* `{error}`. Errors surface as {@link WorkflowApiError} carrying the HTTP
|
|
19
|
+
* status in `code` and a short machine-readable `reason` token, so the route
|
|
20
|
+
* layer never has to re-classify.
|
|
21
|
+
*/
|
|
22
|
+
import { type WorkflowGate } from "../config/workflow-gate.js";
|
|
23
|
+
import type { ZcodeAcpServer } from "../server.js";
|
|
24
|
+
/** Workflow scope vocabulary (upstream workflows/* `scope`). */
|
|
25
|
+
export type WorkflowScope = "project" | "global";
|
|
26
|
+
/**
|
|
27
|
+
* A workflow failure the route layer can map directly: `code` is the HTTP
|
|
28
|
+
* status, `reason` a short token for clients ("session_busy",
|
|
29
|
+
* "workflow_disabled", …), and `message` the human-readable detail (for
|
|
30
|
+
* `compile_failed` it carries the backend's bounded diagnostics).
|
|
31
|
+
*/
|
|
32
|
+
export declare class WorkflowApiError extends Error {
|
|
33
|
+
readonly code: number;
|
|
34
|
+
readonly reason: string;
|
|
35
|
+
constructor(code: number, reason: string, message?: string);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Await the per-backend gate verdict and refuse when the feature is off.
|
|
39
|
+
* The upstream v4 start/resume commands are NOT gated by the backend policy
|
|
40
|
+
* (port presence is their only gate), so the bridge guards itself — a
|
|
41
|
+
* headless backend would otherwise happily run workflows the remote config
|
|
42
|
+
* disabled. A null gate means NO backend was ever spawned (an App-only flow
|
|
43
|
+
* that never chatted): spawn one — ensureBackend starts the gate fetch — and
|
|
44
|
+
* await the fresh verdict, so a cold bridge reports the real answer instead
|
|
45
|
+
* of a false 403. An actual fetch failure still settles disabled
|
|
46
|
+
* (fail-closed, like the gate itself).
|
|
47
|
+
*/
|
|
48
|
+
export declare function requireWorkflowEnabled(server: ZcodeAcpServer): Promise<WorkflowGate>;
|
|
49
|
+
/** `workflows/list` — entries + `invalid[]` + `dir` (present even when missing). */
|
|
50
|
+
export declare function listWorkflows(server: ZcodeAcpServer, scope?: WorkflowScope): Promise<Record<string, unknown>>;
|
|
51
|
+
/** `workflows/get` — script + meta for one saved workflow (directed scope). */
|
|
52
|
+
export declare function getWorkflow(server: ZcodeAcpServer, scope: WorkflowScope, name: string): Promise<Record<string, unknown>>;
|
|
53
|
+
/** `workflows/updateMeta` — read-modify-write of the frontmatter only. */
|
|
54
|
+
export declare function updateWorkflowMeta(server: ZcodeAcpServer, scope: WorkflowScope, name: string, meta: Record<string, unknown>): Promise<Record<string, unknown>>;
|
|
55
|
+
/** `workflows/delete` — unlink by scope root (name validated before path join). */
|
|
56
|
+
export declare function deleteWorkflow(server: ZcodeAcpServer, scope: WorkflowScope, name: string): Promise<Record<string, unknown>>;
|
|
57
|
+
/**
|
|
58
|
+
* `workflows/move` — global→project ONLY (upstream design: promoting the
|
|
59
|
+
* other way goes through SaveWorkflow in a project session). The scope path
|
|
60
|
+
* segment exists for URL symmetry; the wire params carry no scope key
|
|
61
|
+
* (upstream schema is `{workspace, name}`).
|
|
62
|
+
*/
|
|
63
|
+
export declare function moveWorkflow(server: ZcodeAcpServer, scope: WorkflowScope, name: string): Promise<Record<string, unknown>>;
|
|
64
|
+
/**
|
|
65
|
+
* `workflows/runs` — journal-backed run history (survives restarts), scoped
|
|
66
|
+
* by name when given. Limit clamps to the upstream 1..50 window.
|
|
67
|
+
*/
|
|
68
|
+
export declare function listRuns(server: ZcodeAcpServer, opts?: {
|
|
69
|
+
scope?: WorkflowScope;
|
|
70
|
+
name?: string;
|
|
71
|
+
limit?: number;
|
|
72
|
+
}): Promise<Record<string, unknown>>;
|
|
73
|
+
/**
|
|
74
|
+
* Resolve an ACP session id to the backend zcodeSid for READ-ONLY run
|
|
75
|
+
* queries — without materializing anything. In-memory mappings first, then
|
|
76
|
+
* the durable alias store's recorded zcodeSid; a lazy placeholder that was
|
|
77
|
+
* never used has no backend session and no run history, so 404 is the honest
|
|
78
|
+
* answer (and cheaper than a create).
|
|
79
|
+
*/
|
|
80
|
+
export declare function resolveWorkflowZcodeSid(server: ZcodeAcpServer, acpSid: string): string;
|
|
81
|
+
/** `v4/conversation/workflowRuns` — restart-discovery list incl. `resumable`. */
|
|
82
|
+
export declare function conversationRuns(server: ZcodeAcpServer, zcodeSid: string, limit?: number): Promise<Record<string, unknown>>;
|
|
83
|
+
/** `v4/conversation/workflowRunEvents` — journal events, cursor never expires. */
|
|
84
|
+
export declare function runEvents(server: ZcodeAcpServer, zcodeSid: string, runId: string, afterSequence?: number): Promise<Record<string, unknown>>;
|
|
85
|
+
/** `v4/conversation/workflowRunArtifacts` — artifact inventory with versions. */
|
|
86
|
+
export declare function runArtifacts(server: ZcodeAcpServer, zcodeSid: string, runId: string): Promise<Record<string, unknown>>;
|
|
87
|
+
/** `v4/conversation/workflowRunArtifactData` — board item pagination. */
|
|
88
|
+
export declare function runArtifactData(server: ZcodeAcpServer, zcodeSid: string, runId: string, artifactId: string, afterSequence?: number, limit?: number): Promise<Record<string, unknown>>;
|
|
89
|
+
/** `v4/conversation/workflowRunArtifactRead` — raw bytes in ≤512KiB chunks. */
|
|
90
|
+
export declare function runArtifactRead(server: ZcodeAcpServer, zcodeSid: string, runId: string, artifactId: string, version: number, offset: number, limit?: number): Promise<Record<string, unknown>>;
|
|
91
|
+
/** `v4/conversation/workflowRunWorkspace` — world-read/world-run rows. */
|
|
92
|
+
export declare function runWorkspace(server: ZcodeAcpServer, zcodeSid: string, runId: string): Promise<Record<string, unknown>>;
|
|
93
|
+
/** `v4/conversation/workflowRunNodeResult` — one node's bounded result. */
|
|
94
|
+
export declare function runNodeResult(server: ZcodeAcpServer, zcodeSid: string, runId: string, siteId: string, ordinal: number): Promise<Record<string, unknown>>;
|
|
95
|
+
export interface StartSavedWorkflowInput {
|
|
96
|
+
scope?: WorkflowScope;
|
|
97
|
+
name: string;
|
|
98
|
+
args?: Record<string, unknown>;
|
|
99
|
+
/** Existing session to launch in (must be idle). Absent → new session. */
|
|
100
|
+
acpSessionId?: string;
|
|
101
|
+
}
|
|
102
|
+
export interface StartSavedWorkflowResult {
|
|
103
|
+
acpSessionId: string;
|
|
104
|
+
runId?: string;
|
|
105
|
+
toolCallId?: string;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Launch a saved workflow in a session the App can see and attach to.
|
|
109
|
+
*
|
|
110
|
+
* 1. Resolve the launch session: the caller's `acpSessionId`, or a NEWLY
|
|
111
|
+
* minted placeholder materialized through the bridge's own session
|
|
112
|
+
* registration path (`ensureRealSession`) — so the create carries the
|
|
113
|
+
* workflow flag, the alias mapping + durable record exist, and the App's
|
|
114
|
+
* session list / a later load-resume work like any editor-created session.
|
|
115
|
+
* 2. `v4/command startSavedWorkflow` on that session; await the ack.
|
|
116
|
+
* 3. `accepted` → `{acpSessionId, runId, toolCallId}` straight from the ack's
|
|
117
|
+
* result (the App's progress card joins on toolCallId).
|
|
118
|
+
* 4. anything else — a non-accepted ack or a THROWN send (timeout, -32601,
|
|
119
|
+
* transport) — → close/discard a session WE created (never an
|
|
120
|
+
* APP-provided one) and rethrow with the reasonCode-mapped status.
|
|
121
|
+
*
|
|
122
|
+
* Consent semantics (upstream: "the hub click IS the consent"): calling this
|
|
123
|
+
* API deliberately skips the backend's permission popup, matching the
|
|
124
|
+
* desktop's launch button.
|
|
125
|
+
*/
|
|
126
|
+
export declare function startSavedWorkflow(server: ZcodeAcpServer, input: StartSavedWorkflowInput): Promise<StartSavedWorkflowResult>;
|
|
127
|
+
/**
|
|
128
|
+
* Resume a stopped run (resumable set: cancelled ∪ failed-Interrupted — the
|
|
129
|
+
* `resumable` flag on the run list is the caller's judgment source). Runs in
|
|
130
|
+
* the caller-named session; success is a bare `accepted` ack (no result).
|
|
131
|
+
*/
|
|
132
|
+
export declare function resumeWorkflowRun(server: ZcodeAcpServer, input: {
|
|
133
|
+
runId: string;
|
|
134
|
+
acpSessionId: string;
|
|
135
|
+
name?: string;
|
|
136
|
+
}): Promise<void>;
|
|
137
|
+
/** The prefilled prompt for the "create via conversation" entry point. */
|
|
138
|
+
export declare function workflowCreatePrompt(scope?: WorkflowScope): string;
|
|
139
|
+
//# sourceMappingURL=workflow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../src/settings/workflow.ts"],"names":[],"mappings":"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"}
|