@cotal-ai/runtime 0.44.0 → 0.46.0
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/fork.d.ts +2 -0
- package/dist/fork.d.ts.map +1 -1
- package/dist/fork.js +3 -1
- package/dist/fork.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -10
- package/dist/index.js.map +1 -1
- package/dist/mesh-handler.d.ts +37 -9
- package/dist/mesh-handler.d.ts.map +1 -1
- package/dist/mesh-handler.js +59 -54
- package/dist/mesh-handler.js.map +1 -1
- package/dist/resolve-checkpoint.d.ts +40 -1
- package/dist/resolve-checkpoint.d.ts.map +1 -1
- package/dist/resolve-checkpoint.js +32 -5
- package/dist/resolve-checkpoint.js.map +1 -1
- package/dist/run-command.d.ts +2 -1
- package/dist/run-command.d.ts.map +1 -1
- package/dist/run-command.js +305 -100
- package/dist/run-command.js.map +1 -1
- package/dist/run-driver.d.ts.map +1 -1
- package/dist/run-driver.js +11 -1
- package/dist/run-driver.js.map +1 -1
- package/dist/run-host.d.ts +12 -0
- package/dist/run-host.d.ts.map +1 -0
- package/dist/run-host.js +159 -0
- package/dist/run-host.js.map +1 -0
- package/package.json +5 -5
package/dist/run-command.js
CHANGED
|
@@ -1,32 +1,38 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `cotal run` — the workflow-run operator surface.
|
|
3
3
|
*
|
|
4
|
-
* Five verbs
|
|
5
|
-
* handler, `resume` takes an existing run over and drives it to quiescence, `ps` lists the run
|
|
4
|
+
* Five verbs: `start` drives a new run, `resume` takes an existing run over, `ps` lists the run
|
|
6
5
|
* records of an endpoint, `journal` prints a run's durable step journal, and `answer` resolves an
|
|
7
6
|
* open checkpoint, or an open `ask` attempt, through the run driver, which is the only door an
|
|
8
7
|
* answer has (§14).
|
|
9
8
|
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
9
|
+
* By default every verb is a CLIENT of the mesh's manager (SPEC 14.3): the manager hosts the
|
|
10
|
+
* driver on its own per-run credential, so `start` and `resume` return the run id at once and the
|
|
11
|
+
* run keeps going after this terminal closes, survives a manager restart, and is answered from
|
|
12
|
+
* anywhere. `--local` keeps the older composition, in this process: one raw connection, the mesh
|
|
13
|
+
* handler bound to this process as holder, the drive held until it settles. It is for a bare broker
|
|
14
|
+
* with no manager, for a program a manager cannot host (one recorded before programs were recorded),
|
|
15
|
+
* and for the driver's own tests. Checkpoint EXPIRY rides the mediated timer writer, which the
|
|
16
|
+
* delivery daemon pumps on a live mesh; a local `start` on a bare broker still runs and still
|
|
17
|
+
* resolves, it just cannot expire a pause.
|
|
15
18
|
*/
|
|
16
|
-
import {
|
|
19
|
+
import { randomBytes, randomUUID } from "node:crypto";
|
|
17
20
|
import { readFileSync } from "node:fs";
|
|
18
21
|
import { connect } from "@nats-io/transport-node";
|
|
19
22
|
import { jetstream, jetstreamManager } from "@nats-io/jetstream";
|
|
20
|
-
import {
|
|
23
|
+
import { BASELINE_LIFECYCLE_ENDPOINT, EpEnvelopeError, LANG_PROBLEM_DETAIL_KIND, dialerFor, invokeCommand, newTakeoverId, openRecordsBucket, readRunProgram, readRunRecord, renderLifecycleBlocked, replayRunJournal, resolveService, runDriverCaller, RUN_LAUNCH_DEADLINE_MS, standaloneConnectOpts, unansweredRequest, walkKvEntries, } from "@cotal-ai/core";
|
|
21
24
|
import { journalEntryKeyString } from "@cotal-ai/lang";
|
|
22
|
-
import { connectOrExit, endpointAuth } from "@cotal-ai/workspace";
|
|
25
|
+
import { connectOrExit, controlCaller, endpointAuth, resolveControlTarget } from "@cotal-ai/workspace";
|
|
23
26
|
import { startRun, driveRun } from "./run-driver.js";
|
|
24
27
|
import { MeshHandler, EpfSettleWatcher } from "./mesh-handler.js";
|
|
25
|
-
import {
|
|
26
|
-
const USAGE = 'usage: cotal run <start --file <program> [--timeout <dur>] | resume <runId> --file <program> | ps | journal <runId> | answer <runId> <stepKey>
|
|
27
|
-
/** One raw connection to the resolved mesh, with the planes
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
import { locateOpenCheckpoint, answerOpenCheckpoint } from "./resolve-checkpoint.js";
|
|
29
|
+
const USAGE = 'usage: cotal run <start --file <program> [--timeout <dur>] | resume <runId> [--local --file <program>] | ps [--endpoint <ep>] | journal <runId> [--endpoint <ep>] | answer <runId> <stepKey> [--value <json>] [--artifact <ref>] [--endpoint <ep>] [--local --by <who>]> [--local] [--space <s>] [--server <url>] [--creds <path>]';
|
|
30
|
+
/** One raw connection to the resolved mesh under the verb's OWN profile, with the planes over it.
|
|
31
|
+
* A drive rides the run's `run-driver` credential (SPEC 14.6), minted for the one run and attempt
|
|
32
|
+
* it drives; a read or an answer rides a one-shot `run-operator` credential for that call. An
|
|
33
|
+
* open mesh connects bare either way. */
|
|
34
|
+
async function openPlanes(values, role, mint) {
|
|
35
|
+
const conn = await connectOrExit(values, role, { mint });
|
|
30
36
|
const nc = await connect({
|
|
31
37
|
servers: conn.server,
|
|
32
38
|
...standaloneConnectOpts({ ...endpointAuth(conn), tls: conn.tls }),
|
|
@@ -61,25 +67,37 @@ function cliHolder() {
|
|
|
61
67
|
const uid = randomUUID().replaceAll("-", "");
|
|
62
68
|
return { id: `cli-run-${uid.slice(0, 8)}`, lifecycleUid: `u_${uid.slice(0, 20)}`, instanceId: uid.slice(0, 26) };
|
|
63
69
|
}
|
|
64
|
-
/**
|
|
65
|
-
* The RUN-STABLE caller triple the run's durable actions ride, derived from the run id and nothing
|
|
66
|
-
* else: goal facts key on the submitting triple, so a resume — any host, any invocation — must
|
|
67
|
-
* re-derive the same one or it polls terminals its own submissions never wrote. The holder above is
|
|
68
|
-
* deliberately fresh per invocation (the activation barrier needs that); this is deliberately not.
|
|
69
|
-
* Grammar: actor is `[A-Za-z0-9_]+` and uid `[a-z0-9]{26,32}`, both satisfied by hex slices.
|
|
70
|
-
*/
|
|
71
|
-
function runCaller(runId) {
|
|
72
|
-
const h = createHash("sha256").update(runId, "utf8").digest("hex");
|
|
73
|
-
return { owner: DEV_OWNER, actor: `wf_${h.slice(0, 12)}`, uid: h.slice(12, 38) };
|
|
74
|
-
}
|
|
75
70
|
function readProgram(values) {
|
|
76
71
|
if (values.file === undefined) {
|
|
77
72
|
console.error(USAGE);
|
|
78
|
-
console.error("run: --file <program> is required
|
|
73
|
+
console.error("run start: --file <program> is required");
|
|
79
74
|
process.exit(1);
|
|
80
75
|
}
|
|
81
76
|
return readFileSync(values.file, "utf8");
|
|
82
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* The source a resume runs: the recorded program, or the file when one is given.
|
|
80
|
+
*
|
|
81
|
+
* A file that disagrees with the record is refused: a resume onto different source is a fork or a
|
|
82
|
+
* migration, each of which files its own record, and driving the edited source under the old run id
|
|
83
|
+
* would replay steps whose input hashes the new program does not produce (L5002).
|
|
84
|
+
*/
|
|
85
|
+
async function resumeSource(values, planes, endpoint, runId) {
|
|
86
|
+
const recorded = await readRunProgram(planes.kv, endpoint, runId);
|
|
87
|
+
if (values.file === undefined) {
|
|
88
|
+
if (recorded === undefined) {
|
|
89
|
+
console.error(`run ${runId}: no program is recorded for it (it was started before programs were recorded); pass --file <program> with the source it was started from`);
|
|
90
|
+
process.exit(1);
|
|
91
|
+
}
|
|
92
|
+
return recorded.source;
|
|
93
|
+
}
|
|
94
|
+
const source = readFileSync(values.file, "utf8");
|
|
95
|
+
if (recorded !== undefined && recorded.source !== source) {
|
|
96
|
+
console.error(`run ${runId}: ${values.file} is not the program this run was started from; a resume takes the recorded source (omit --file), and an edited program is a migration or a fork`);
|
|
97
|
+
process.exit(1);
|
|
98
|
+
}
|
|
99
|
+
return source;
|
|
100
|
+
}
|
|
83
101
|
function reportOutcome(runId, out) {
|
|
84
102
|
if (out.status === "completed") {
|
|
85
103
|
const r = out.result;
|
|
@@ -95,7 +113,7 @@ function reportOutcome(runId, out) {
|
|
|
95
113
|
}
|
|
96
114
|
process.exitCode = 2;
|
|
97
115
|
}
|
|
98
|
-
async function start(values
|
|
116
|
+
async function start(values) {
|
|
99
117
|
const source = readProgram(values);
|
|
100
118
|
const endpoint = values.endpoint ?? "manager";
|
|
101
119
|
// Minted here, never caller-supplied: the records table binds run-id minting to the driver.
|
|
@@ -103,81 +121,87 @@ async function start(values, planes) {
|
|
|
103
121
|
// outside any realistic horizon rather than a rare one-shot refusal.
|
|
104
122
|
const runId = `run-${randomBytes(16).toString("hex")}`;
|
|
105
123
|
const who = cliHolder();
|
|
106
|
-
const
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
runId,
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
defaultCheckpointTimeout: values.timeout ?? "1h",
|
|
115
|
-
}, new EpfSettleWatcher(planes.js, planes.jsm, planes.space), () => Date.now());
|
|
116
|
-
console.log(`starting run ${runId} on endpoint ${endpoint} in space ${planes.space}`);
|
|
117
|
-
const out = await startRun(planes.js, planes.jsm, {
|
|
118
|
-
space: planes.space,
|
|
119
|
-
endpoint,
|
|
120
|
-
runId,
|
|
121
|
-
source,
|
|
122
|
-
kv: planes.kv,
|
|
123
|
-
lease: { holder: who.id, epoch: 1, fencingToken: 1, takeoverId: newTakeoverId() },
|
|
124
|
-
handler,
|
|
125
|
-
...(values.file !== undefined ? { file: values.file } : {}),
|
|
126
|
-
...(planes.resultBytes !== undefined ? { resultBytes: planes.resultBytes } : {}),
|
|
127
|
-
});
|
|
128
|
-
reportOutcome(runId, out);
|
|
124
|
+
const takeoverId = newTakeoverId();
|
|
125
|
+
const planes = await openPlanes(values, "run-driver", { runDriver: { endpoint, runId, takeoverId, instanceId: who.instanceId, epoch: 1 } });
|
|
126
|
+
try {
|
|
127
|
+
await drive(values, planes, { endpoint, runId, source, who, epoch: 1, fencingToken: 1, takeoverId, mode: "new" });
|
|
128
|
+
}
|
|
129
|
+
finally {
|
|
130
|
+
await planes.close();
|
|
131
|
+
}
|
|
129
132
|
}
|
|
130
|
-
async function resume(values,
|
|
133
|
+
async function resume(values, runId) {
|
|
131
134
|
if (runId === undefined) {
|
|
132
135
|
console.error(USAGE);
|
|
133
136
|
process.exit(1);
|
|
134
137
|
}
|
|
135
|
-
const source = readProgram(values);
|
|
136
138
|
const endpoint = values.endpoint ?? "manager";
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
139
|
+
// The record and the recorded program are READ under a one-shot operator credential, since the
|
|
140
|
+
// driver's own credential is minted for an epoch the record decides.
|
|
141
|
+
const reader = await openPlanes(values, "run-operator", { runOperator: { endpoint, runId, takeoverId: newTakeoverId() } });
|
|
142
|
+
let source;
|
|
143
|
+
let status;
|
|
144
|
+
try {
|
|
145
|
+
const record = await readRunRecord(reader.kv, endpoint, runId);
|
|
146
|
+
if (record === undefined) {
|
|
147
|
+
console.error(`run ${runId}: no record on endpoint ${endpoint}; a run that was never started cannot be resumed`);
|
|
148
|
+
process.exit(1);
|
|
149
|
+
}
|
|
150
|
+
source = await resumeSource(values, reader, endpoint, runId);
|
|
151
|
+
status = record.status?.value;
|
|
152
|
+
}
|
|
153
|
+
finally {
|
|
154
|
+
await reader.close();
|
|
141
155
|
}
|
|
142
|
-
const status = record.status?.value;
|
|
143
156
|
const who = cliHolder();
|
|
144
157
|
const epoch = (status?.epoch ?? 0) + 1;
|
|
158
|
+
const takeoverId = newTakeoverId();
|
|
159
|
+
const planes = await openPlanes(values, "run-driver", { runDriver: { endpoint, runId, takeoverId, instanceId: who.instanceId, epoch } });
|
|
160
|
+
try {
|
|
161
|
+
await drive(values, planes, { endpoint, runId, source, who, epoch, fencingToken: (status?.fencingToken ?? 0) + 1, takeoverId, mode: "existing" });
|
|
162
|
+
}
|
|
163
|
+
finally {
|
|
164
|
+
await planes.close();
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
/** One drive attempt in this process: the handler bound to this invocation as holder, the run
|
|
168
|
+
* held until it settles. */
|
|
169
|
+
async function drive(values, planes, a) {
|
|
170
|
+
const { endpoint, runId, source, who, epoch, fencingToken, takeoverId } = a;
|
|
145
171
|
const handler = new MeshHandler(planes.nc, planes.kv, planes.js, planes.jsm, {
|
|
146
172
|
space: planes.space,
|
|
147
173
|
endpoint,
|
|
148
174
|
runId,
|
|
149
|
-
caller:
|
|
175
|
+
caller: runDriverCaller(runId),
|
|
150
176
|
instanceId: who.instanceId,
|
|
151
177
|
epoch,
|
|
152
178
|
holder: { id: who.id, lifecycleUid: who.lifecycleUid },
|
|
153
179
|
defaultCheckpointTimeout: values.timeout ?? "1h",
|
|
154
|
-
}, new EpfSettleWatcher(planes.
|
|
155
|
-
const
|
|
180
|
+
}, new EpfSettleWatcher(planes.jsm, planes.space), () => Date.now());
|
|
181
|
+
const req = {
|
|
156
182
|
space: planes.space,
|
|
157
183
|
endpoint,
|
|
158
184
|
runId,
|
|
159
185
|
source,
|
|
160
186
|
kv: planes.kv,
|
|
161
|
-
lease: {
|
|
162
|
-
holder: who.id,
|
|
163
|
-
epoch,
|
|
164
|
-
fencingToken: (status?.fencingToken ?? 0) + 1,
|
|
165
|
-
takeoverId: newTakeoverId(),
|
|
166
|
-
},
|
|
187
|
+
lease: { holder: who.id, epoch, fencingToken, takeoverId },
|
|
167
188
|
handler,
|
|
168
189
|
...(values.file !== undefined ? { file: values.file } : {}),
|
|
169
190
|
...(planes.resultBytes !== undefined ? { resultBytes: planes.resultBytes } : {}),
|
|
170
|
-
}
|
|
191
|
+
};
|
|
192
|
+
if (a.mode === "new")
|
|
193
|
+
console.log(`starting run ${runId} on endpoint ${endpoint} in space ${planes.space}`);
|
|
194
|
+
const out = a.mode === "new" ? await startRun(planes.js, planes.jsm, req) : await driveRun(planes.js, planes.jsm, req);
|
|
171
195
|
reportOutcome(runId, out);
|
|
172
196
|
}
|
|
173
197
|
async function ps(values, planes) {
|
|
174
198
|
// Run record keys are `run.<endpoint>.<runId>.<spec|status>` in the records bucket; the scan is
|
|
175
|
-
// over the spec half, which every run has exactly once.
|
|
199
|
+
// over the spec half, which every run has exactly once. A consumer-free walk: the records bucket
|
|
200
|
+
// is an authority stream whose consumer surface is an exact audited list (SPEC 13.9).
|
|
176
201
|
const seen = new Set();
|
|
177
202
|
const rows = [];
|
|
178
|
-
const
|
|
179
|
-
|
|
180
|
-
const parts = key.split(".");
|
|
203
|
+
for (const e of await walkKvEntries(planes.kv, "run.*.*.spec")) {
|
|
204
|
+
const parts = e.key.split(".");
|
|
181
205
|
if (parts.length !== 4 || parts[3] !== "spec")
|
|
182
206
|
continue;
|
|
183
207
|
const endpoint = parts[1];
|
|
@@ -213,12 +237,13 @@ async function ps(values, planes) {
|
|
|
213
237
|
for (const r of rows)
|
|
214
238
|
console.log(line(r));
|
|
215
239
|
}
|
|
216
|
-
async function journal(planes, runId) {
|
|
240
|
+
async function journal(planes, runId, takeoverId) {
|
|
217
241
|
if (runId === undefined) {
|
|
218
242
|
console.error(USAGE);
|
|
219
243
|
process.exit(1);
|
|
220
244
|
}
|
|
221
|
-
|
|
245
|
+
// The replay durable is named by the takeover id this call's credential was minted for.
|
|
246
|
+
const replay = await replayRunJournal(planes.js, planes.jsm, planes.space, runId, takeoverId);
|
|
222
247
|
if (replay.records.length === 0) {
|
|
223
248
|
console.log(`run ${runId}: no journal records (never started, or retired)`);
|
|
224
249
|
return;
|
|
@@ -246,38 +271,207 @@ async function journal(planes, runId) {
|
|
|
246
271
|
}
|
|
247
272
|
}
|
|
248
273
|
}
|
|
249
|
-
|
|
274
|
+
/** `answer --local`: the pause is found under the READ credential this call was opened on, then
|
|
275
|
+
* the answer rides a second, one-shot credential pinned to that pause's token. */
|
|
276
|
+
async function answer(values, reader, runId, stepKey, takeoverId) {
|
|
250
277
|
if (runId === undefined || stepKey === undefined || values.by === undefined) {
|
|
251
278
|
console.error(USAGE);
|
|
252
279
|
console.error("run answer: <runId> <stepKey> and --by <who> are required");
|
|
253
280
|
process.exit(1);
|
|
254
281
|
}
|
|
255
282
|
const endpoint = values.endpoint ?? "manager";
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
283
|
+
const parsedValue = parseAnswerValue(values);
|
|
284
|
+
const open = await locateOpenCheckpoint({ kv: reader.kv, js: reader.js, jsm: reader.jsm, space: reader.space, endpoint }, { runId, stepKey, takeoverId });
|
|
285
|
+
// Resume is holder-bound (SPEC 13.10) and the CLI is not the driver: the resolver presents as
|
|
286
|
+
// the ARMING holder it read off the checkpoint's own record, so a fresh invocation answers
|
|
287
|
+
// exactly as the minter would have. The answerer's name rides `by`, never the presenter.
|
|
288
|
+
const writer = await openPlanes(values, "run-operator", { runOperator: { endpoint, takeoverId: newTakeoverId(), answers: { token: open.token } } });
|
|
289
|
+
try {
|
|
290
|
+
const result = await answerOpenCheckpoint({ kv: writer.kv, js: writer.js, jsm: writer.jsm, space: writer.space, endpoint }, {
|
|
291
|
+
open,
|
|
292
|
+
by: values.by,
|
|
293
|
+
...(values.value !== undefined ? { value: parsedValue } : {}),
|
|
294
|
+
...(values.artifact !== undefined ? { artifact: values.artifact } : {}),
|
|
295
|
+
now: Date.now(),
|
|
296
|
+
});
|
|
297
|
+
console.log(JSON.stringify(result, null, 2));
|
|
298
|
+
}
|
|
299
|
+
finally {
|
|
300
|
+
await writer.close();
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
/** Parse `--value` as JSON, with the one hint every first-time user needs. */
|
|
304
|
+
function parseAnswerValue(values) {
|
|
305
|
+
if (values.value === undefined)
|
|
306
|
+
return undefined;
|
|
307
|
+
try {
|
|
308
|
+
return JSON.parse(values.value);
|
|
309
|
+
}
|
|
310
|
+
catch {
|
|
311
|
+
console.error(`run answer: --value is not valid JSON: ${values.value}`);
|
|
312
|
+
console.error('a bare string needs its own quotes, e.g. --value \'"yes"\'');
|
|
313
|
+
process.exit(1);
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
// ── the manager-hosted path (SPEC 14.3) ─────────────────────────────────────────────────────
|
|
317
|
+
/** One command to the mesh's manager over the endpoint rails: a fresh resolve (describe, store
|
|
318
|
+
* fetch, digest-verified recompile), then the invoke. The reply's data on success; on a refusal
|
|
319
|
+
* the manager's own sentence, printed, and a non-zero exit. */
|
|
320
|
+
async function askHost(values, command, args) {
|
|
321
|
+
const t = await resolveControlTarget(values, "control-caller-privileged");
|
|
322
|
+
const who = controlCaller(t.auth);
|
|
323
|
+
if ("refusal" in who) {
|
|
324
|
+
console.error(who.refusal);
|
|
325
|
+
process.exit(1);
|
|
326
|
+
}
|
|
327
|
+
const auth = t.auth;
|
|
328
|
+
const nc = await dialerFor(t.server)({
|
|
329
|
+
servers: t.server,
|
|
330
|
+
...standaloneConnectOpts(auth.creds ? { creds: auth.creds, tls: auth.tls === true } : auth.bearer ? { bearer: auth.bearer, sentinelCreds: auth.sentinelCreds, tls: auth.tls === true } : { tls: auth.tls === true }),
|
|
331
|
+
maxReconnectAttempts: 0,
|
|
332
|
+
});
|
|
333
|
+
try {
|
|
334
|
+
const service = await resolveService(nc, t.space, BASELINE_LIFECYCLE_ENDPOINT, who.caller, { deadlineMs: 10_000 });
|
|
335
|
+
// A start or resume is answered only once the drive has activated, which the manager waits on
|
|
336
|
+
// for a bounded time; the deadline here outlives that wait, so the manager's own "still
|
|
337
|
+
// launching" refusal is what a slow activation reads as, never a manager that did not answer.
|
|
338
|
+
const r = await invokeCommand(nc, t.space, service, command, args, { deadlineMs: RUN_LAUNCH_DEADLINE_MS });
|
|
339
|
+
if (r.reply.ok !== true) {
|
|
340
|
+
const err = r.reply.error;
|
|
341
|
+
console.error(`run ${command.slice(4)}: ${renderLifecycleBlocked(err?.message ?? err?.code ?? "the manager refused", err)}`);
|
|
342
|
+
// A validation refusal carries every problem as the language's own records; print them the
|
|
343
|
+
// way the validator would, so the fix is the same edit either way.
|
|
344
|
+
for (const d of err?.details ?? [])
|
|
345
|
+
if (d.kind === LANG_PROBLEM_DETAIL_KIND)
|
|
346
|
+
console.error(renderLangProblem(d));
|
|
347
|
+
process.exit(1);
|
|
260
348
|
}
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
349
|
+
return r.reply.data;
|
|
350
|
+
}
|
|
351
|
+
catch (e) {
|
|
352
|
+
if (e instanceof EpEnvelopeError) {
|
|
353
|
+
console.error(unansweredRequest(e)
|
|
354
|
+
? `no manager answered on the endpoint rails (${e.code}: ${e.message}); is a manager running for this mesh? A run can still be driven from this terminal with --local`
|
|
355
|
+
: `${e.code}: ${e.message}`);
|
|
264
356
|
process.exit(1);
|
|
265
357
|
}
|
|
358
|
+
throw e;
|
|
266
359
|
}
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
360
|
+
finally {
|
|
361
|
+
await nc.drain().catch(() => nc.close());
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
function renderLangProblem(d) {
|
|
365
|
+
const where = d.where;
|
|
366
|
+
const at = where ? `${where.file ?? "<program>"}:${where.line ?? "?"}:${where.column ?? "?"}` : "<program>";
|
|
367
|
+
return ` ${String(d.code ?? "L????")} ${String(d.title ?? "")} (${at})\n ${String(d.cause ?? "")}\n fix: ${String(d.fix ?? "")}`;
|
|
368
|
+
}
|
|
369
|
+
function printJournal(runId, rows) {
|
|
370
|
+
if (rows.length === 0) {
|
|
371
|
+
console.log(`run ${runId}: no journal records (never started, or retired)`);
|
|
372
|
+
return;
|
|
373
|
+
}
|
|
374
|
+
for (const r of rows) {
|
|
375
|
+
if (r.kind === "activation") {
|
|
376
|
+
console.log(`#${r.n} activation holder=${r.holder} epoch=${r.epoch} replayedTo=${r.replayedTo}`);
|
|
377
|
+
continue;
|
|
378
|
+
}
|
|
379
|
+
console.log(`#${r.n} step ${r.step} ${r.outcome}`);
|
|
380
|
+
if (r.asks !== undefined)
|
|
381
|
+
console.log(` asks ${r.asks}${r.addressee !== undefined ? ` (escalates to ${r.addressee})` : ""}`);
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
function printRuns(space, rows) {
|
|
385
|
+
if (rows.length === 0) {
|
|
386
|
+
console.log(`no workflow runs recorded in space ${space}`);
|
|
387
|
+
return;
|
|
388
|
+
}
|
|
389
|
+
const table = rows.map((r) => [
|
|
390
|
+
r.runId,
|
|
391
|
+
r.endpoint,
|
|
392
|
+
r.state ?? "(no status)",
|
|
393
|
+
r.holder ?? "-",
|
|
394
|
+
r.journalHigh === undefined ? "-" : String(r.journalHigh),
|
|
395
|
+
r.forkedFrom === undefined ? "-" : `${r.forkedFrom.run}@${r.forkedFrom.step}`,
|
|
396
|
+
]);
|
|
397
|
+
const header = ["RUN", "ENDPOINT", "STATE", "HOLDER", "JOURNAL", "FORKED-FROM"];
|
|
398
|
+
const widths = header.map((h, i) => Math.max(h.length, ...table.map((r) => r[i].length)));
|
|
399
|
+
const line = (r) => r.map((cell, i) => cell.padEnd(widths[i])).join(" ");
|
|
400
|
+
console.log(line(header));
|
|
401
|
+
for (const r of table)
|
|
402
|
+
console.log(line(r));
|
|
403
|
+
}
|
|
404
|
+
async function hosted(values, verb, a, b) {
|
|
405
|
+
const endpoint = values.endpoint !== undefined ? { endpoint: values.endpoint } : {};
|
|
406
|
+
// A hosted drive is recorded under the manager's own endpoint; a caller cannot choose another,
|
|
407
|
+
// so an `--endpoint` here is refused rather than dropped.
|
|
408
|
+
if ((verb === "start" || verb === "resume") && values.endpoint !== undefined) {
|
|
409
|
+
console.error(`run ${verb}: --endpoint is not taken on the hosted path; the manager records the run under its own endpoint. \`--local\` drives under a chosen endpoint from this process`);
|
|
410
|
+
process.exit(1);
|
|
411
|
+
}
|
|
412
|
+
if (verb === "answer" && values.by !== undefined) {
|
|
413
|
+
console.error("run answer: --by is not taken on the hosted path; the manager records you as the answerer from your credential. `--local --by <who>` names the answerer when driving from this process");
|
|
414
|
+
process.exit(1);
|
|
415
|
+
}
|
|
416
|
+
if (verb === "start") {
|
|
417
|
+
const source = readProgram(values);
|
|
418
|
+
const started = await askHost(values, "run-start", {
|
|
419
|
+
source,
|
|
420
|
+
file: values.file,
|
|
421
|
+
...(values.timeout !== undefined ? { timeout: values.timeout } : {}),
|
|
422
|
+
});
|
|
423
|
+
console.log(`started run ${started.runId} on the manager; it runs there until it completes or is held`);
|
|
424
|
+
console.log(` cotal run journal ${started.runId} # follow its steps`);
|
|
425
|
+
return;
|
|
426
|
+
}
|
|
427
|
+
if (verb === "resume") {
|
|
428
|
+
if (a === undefined) {
|
|
429
|
+
console.error(USAGE);
|
|
430
|
+
process.exit(1);
|
|
431
|
+
}
|
|
432
|
+
if (values.file !== undefined) {
|
|
433
|
+
console.error(`run resume: the manager resumes a run from its recorded program, so --file is not taken; a run with no recorded program is resumed with \`cotal run resume ${a} --local --file <program>\``);
|
|
434
|
+
process.exit(1);
|
|
435
|
+
}
|
|
436
|
+
const resumed = await askHost(values, "run-resume", { runId: a, ...(values.timeout !== undefined ? { timeout: values.timeout } : {}) });
|
|
437
|
+
console.log(`resumed run ${resumed.runId} on the manager`);
|
|
438
|
+
return;
|
|
439
|
+
}
|
|
440
|
+
if (verb === "ps") {
|
|
441
|
+
const rows = await askHost(values, "run-ps", Object.keys(endpoint).length ? endpoint : undefined);
|
|
442
|
+
const t = values.space ?? "(the resolved mesh)";
|
|
443
|
+
printRuns(t, rows);
|
|
444
|
+
return;
|
|
445
|
+
}
|
|
446
|
+
if (verb === "journal") {
|
|
447
|
+
if (a === undefined) {
|
|
448
|
+
console.error(USAGE);
|
|
449
|
+
process.exit(1);
|
|
450
|
+
}
|
|
451
|
+
const view = await askHost(values, "run-status", { runId: a, ...endpoint });
|
|
452
|
+
const st = view.status;
|
|
453
|
+
console.log(`run ${view.runId} on ${view.endpoint}: ${st === undefined ? "(no status)" : `${st.state}, holder ${st.holder}, epoch ${st.epoch}`}`);
|
|
454
|
+
printJournal(view.runId, view.journal);
|
|
455
|
+
return;
|
|
456
|
+
}
|
|
457
|
+
// answer: the manager records the caller as the answerer (SPEC 14.5), so no `--by` rides.
|
|
458
|
+
if (a === undefined || b === undefined) {
|
|
459
|
+
console.error(USAGE);
|
|
460
|
+
console.error("run answer: <runId> <stepKey> are required");
|
|
461
|
+
process.exit(1);
|
|
462
|
+
}
|
|
463
|
+
const value = parseAnswerValue(values);
|
|
464
|
+
const result = await askHost(values, "run-answer", {
|
|
465
|
+
runId: a,
|
|
466
|
+
stepKey: b,
|
|
467
|
+
...endpoint,
|
|
468
|
+
...(values.value !== undefined ? { value } : {}),
|
|
275
469
|
...(values.artifact !== undefined ? { artifact: values.artifact } : {}),
|
|
276
|
-
now: Date.now(),
|
|
277
470
|
});
|
|
278
471
|
console.log(JSON.stringify(result, null, 2));
|
|
279
472
|
}
|
|
280
|
-
/** `cotal run <start|resume|ps|journal|answer>` — dispatch
|
|
473
|
+
/** `cotal run <start|resume|ps|journal|answer>` — dispatch. The manager hosts by default;
|
|
474
|
+
* `--local` drives in this process over one connection per invocation. */
|
|
281
475
|
export async function runWorkflow(args) {
|
|
282
476
|
const values = args.values;
|
|
283
477
|
const [verb, a, b] = args.positionals;
|
|
@@ -285,18 +479,29 @@ export async function runWorkflow(args) {
|
|
|
285
479
|
console.error(USAGE);
|
|
286
480
|
process.exit(1);
|
|
287
481
|
}
|
|
288
|
-
|
|
482
|
+
if (values.local !== true) {
|
|
483
|
+
await hosted(values, verb, a, b);
|
|
484
|
+
return;
|
|
485
|
+
}
|
|
486
|
+
if (verb === "start")
|
|
487
|
+
return start(values);
|
|
488
|
+
if (verb === "resume")
|
|
489
|
+
return resume(values, a);
|
|
490
|
+
// The reads ride a one-shot operator READ credential for that call; a journal or an answer names
|
|
491
|
+
// the run its replay durable is pinned to. An answer finds its pause on this credential and then
|
|
492
|
+
// writes on a second one, minted for that pause alone (see `answer`).
|
|
493
|
+
const endpoint = values.endpoint ?? "manager";
|
|
494
|
+
const takeoverId = newTakeoverId();
|
|
495
|
+
const planes = await openPlanes(values, "run-operator", {
|
|
496
|
+
runOperator: { endpoint, takeoverId, ...(verb !== "ps" && a !== undefined ? { runId: a } : {}) },
|
|
497
|
+
});
|
|
289
498
|
try {
|
|
290
|
-
if (verb === "
|
|
291
|
-
await start(values, planes);
|
|
292
|
-
else if (verb === "resume")
|
|
293
|
-
await resume(values, planes, a);
|
|
294
|
-
else if (verb === "ps")
|
|
499
|
+
if (verb === "ps")
|
|
295
500
|
await ps(values, planes);
|
|
296
501
|
else if (verb === "journal")
|
|
297
|
-
await journal(planes, a);
|
|
502
|
+
await journal(planes, a, takeoverId);
|
|
298
503
|
else
|
|
299
|
-
await answer(values, planes, a, b);
|
|
504
|
+
await answer(values, planes, a, b, takeoverId);
|
|
300
505
|
}
|
|
301
506
|
finally {
|
|
302
507
|
await planes.close();
|
package/dist/run-command.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-command.js","sourceRoot":"","sources":["../src/run-command.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run-command.js","sourceRoot":"","sources":["../src/run-command.ts"],"names":[],"mappings":"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"}
|
package/dist/run-driver.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-driver.d.ts","sourceRoot":"","sources":["../src/run-driver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run-driver.d.ts","sourceRoot":"","sources":["../src/run-driver.ts"],"names":[],"mappings":"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"}
|