@cotal-ai/runtime 0.41.4 → 0.43.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.
@@ -24,10 +24,11 @@
24
24
  * distinction is the whole reason `RunJournalStore` maps those to L5010: a driver that reported them
25
25
  * as an outcome would be writing down a conclusion about work it can no longer see.
26
26
  */
27
- import { activateRun, readRunRecord, createRunSpec, writeRunStatus, assertJournalTailIntact, RunJournalTailTruncated, RunSuperseded, RunJournalStalled, StaleLeaseToken, ActivationNotAuthorized, RunNotResumable, RunAlreadyStarted, RunJournalPrefixTruncated, } from "@cotal-ai/core";
28
- import { Journal, JournalAppendRejected, run as runProgram, resume as resumeProgram, RunReleased, RunHeld, resolvePins, RuntimeFault, ENGINE_LANGUAGE_VERSION, WALKER_LANGUAGE_VERSION, PIN_DEFAULTS, } from "@cotal-ai/lang";
27
+ import { wfjStreamName, wfjSubject, EpEnvelopeError, activateRun, readRunRecord, listRunMigrations, createRunSpec, writeRunStatus, assertJournalTailIntact, RunJournalTailTruncated, RunSuperseded, RunJournalStalled, StaleLeaseToken, ActivationNotAuthorized, RunNotResumable, RunAlreadyStarted, RunJournalPrefixTruncated, } from "@cotal-ai/core";
28
+ import { Journal, JournalAppendRejected, run as runProgram, resume as resumeProgram, RunReleased, RunHeld, resolvePins, RuntimeFault, ENGINE_LANGUAGE_VERSION, WALKER_LANGUAGE_VERSION, PIN_DEFAULTS, journalEntryKeyString, } from "@cotal-ai/lang";
29
29
  import { runOnHostedEngine } from "./engine-host.js";
30
30
  import { RunJournalStore } from "./journal-store.js";
31
+ import { migrationSeats } from "./migrate.js";
31
32
  /** The compiled engine consumes the same request either way: pins plus the activated entries say
32
33
  * whether this is a fresh run or a resume, exactly as they say it to the walker underneath. */
33
34
  const hostedEngineRun = (r) => runOnHostedEngine({
@@ -91,6 +92,40 @@ class RunRecordMalformed extends Error {
91
92
  this.name = "RunRecordMalformed";
92
93
  }
93
94
  }
95
+ /**
96
+ * A resume found no run RECORD. That is two states, and they are repaired differently.
97
+ *
98
+ * NO RECORD IS NOT NO JOURNAL. `RunNotResumable` says the journal was retired or lost, and for a
99
+ * run that never existed that is exactly right. But a fresh run is ACTIVATED before it is pinned —
100
+ * deliberately, because a driver that pinned before winning would pin a run for the winner — so a
101
+ * crash in that window leaves a journal holding an activation and no step, and no spec anywhere.
102
+ * The old message sent an operator looking for a lost journal that is sitting right there, and the
103
+ * repair is the opposite one: nothing was performed, so the program is started again under a NEW
104
+ * id rather than hunted for.
105
+ *
106
+ * Read through the SUBJECT rather than a replay: this is the refusal path, and a replay would
107
+ * create and delete a consumer to answer a question one `getMessage` answers.
108
+ */
109
+ async function noRecordToResume(jsm, req) {
110
+ let journalled = false;
111
+ try {
112
+ const last = await jsm.streams.getMessage(wfjStreamName(req.space), { last_by_subj: wfjSubject(req.space, req.runId) });
113
+ journalled = last !== null && last !== undefined;
114
+ }
115
+ catch (e) {
116
+ // 10037 is the stream saying there is no message on that subject: no journal, which is the
117
+ // first state. Any other error is the broker, and guessing on its behalf would put a
118
+ // fabricated diagnosis in front of an operator.
119
+ if (e?.code !== 10037)
120
+ throw e;
121
+ }
122
+ if (!journalled)
123
+ return new RunNotResumable(req.runId, wfjSubject(req.space, req.runId));
124
+ return new Error(`run ${req.runId} has a journal but no record: it was activated and then never pinned, which is the `
125
+ + `window between a driver winning the run and writing its spec. Nothing was performed under it — the `
126
+ + `journal holds the activation and no step — and the pins a resume would need were never recorded, so `
127
+ + `there is nothing here to resume and nothing to recover. Start the program again under a new run id.`);
128
+ }
94
129
  function unservedLanguage(version) {
95
130
  // A RECORD MAY NAME NO VERSION AT ALL, and it reaches this branch by the same route: written
96
131
  // before the field existed, it matches no engine either. The two cases get different sentences
@@ -125,6 +160,71 @@ export class PauseToken {
125
160
  const adoptionOf = (handler) => typeof handler?.adopted === "function"
126
161
  ? handler
127
162
  : undefined;
163
+ const seatAdoptionOf = (handler) => typeof handler?.adoptMigratedSeats === "function"
164
+ ? handler
165
+ : undefined;
166
+ /**
167
+ * The seats every APPLIED migration of this run handed to its program and that no spawn has
168
+ * received yet, keyed by persona. Read off the migration records and the replayed journal, so a
169
+ * resume on any host hands out the same seats in the same order; a migration filed but never
170
+ * applied moved nothing and hands over nothing.
171
+ */
172
+ async function migratedSeats(req, entries) {
173
+ const out = new Map();
174
+ for (const m of await listRunMigrations(req.kv, req.endpoint, req.runId)) {
175
+ if (m.applied === undefined)
176
+ continue;
177
+ for (const [persona, seats] of migrationSeats(entries, m.spec).adopt)
178
+ out.set(persona, [...(out.get(persona) ?? []), ...seats]);
179
+ }
180
+ return out;
181
+ }
182
+ const dischargeOf = (handler) => typeof handler?.discharge === "function"
183
+ ? handler
184
+ : undefined;
185
+ /**
186
+ * Discharge every recorded cancellation whose flip is still owed: the second half of the design
187
+ * `cancel.issued` stages (#532). A scope that cancels its losers writes the INTENT with its
188
+ * outcome — `cancel: { losers, issued: false }` — because a journal write cancels nothing by
189
+ * itself; this is the runtime acting on that record. For each such scope entry the losers'
190
+ * subtree entries are handed to the handler to end their external state (idempotently — the live
191
+ * path usually cleaned up after itself, and this is the durable backstop for a process that died
192
+ * first), and only then is the entry re-appended with `issued: true`, so a flip in the journal is
193
+ * always DOWNSTREAM of the world being quiet.
194
+ *
195
+ * Two callers, and the premise each brings. At the run's COMPLETION every branch has settled, so
196
+ * the loser subtrees it hands the handler are final. At ADOPTION the prefix is a resumed journal:
197
+ * a recorded cancellation is still a cancellation (the losers' entries are what the crash left,
198
+ * and nothing inside a cancelled arm runs again), so the same walk is sound there, and it is what
199
+ * keeps recovery from waiting on a completion that may be hours away. A released run is not swept
200
+ * by either (this driver no longer holds it, and its appends would be refused), and a crash before
201
+ * either sweep is repaired by whichever comes next reading `issued: false` off the replayed prefix.
202
+ */
203
+ export async function dischargeCancellations(entries, store, handler) {
204
+ const flipped = [];
205
+ const discharger = dischargeOf(handler);
206
+ for (const e of entries) {
207
+ if (e.state !== "settled" || e.cancel === undefined || e.cancel.issued)
208
+ continue;
209
+ const scopeKey = journalEntryKeyString(e);
210
+ if (discharger !== undefined) {
211
+ const prefixes = e.cancel.losers.map((b) => `${scopeKey}/b:${b}/`);
212
+ const losers = entries.filter((x) => x !== e && prefixes.some((p) => journalEntryKeyString(x).startsWith(p)));
213
+ await discharger.discharge(losers);
214
+ }
215
+ try {
216
+ await store.append({ ...e, cancel: { losers: e.cancel.losers, issued: true } });
217
+ }
218
+ catch (err) {
219
+ // The same wrap `Journal.persist` gives every refused append: a flip the store would not
220
+ // take means this driver no longer holds the run, and that travels as L5010 — the caller
221
+ // grades it `released` — never as the completed program having failed.
222
+ throw new JournalAppendRejected(scopeKey, e.state, err);
223
+ }
224
+ flipped.push(scopeKey);
225
+ }
226
+ return flipped;
227
+ }
128
228
  /** Start a run that has never been driven. Refused if the journal already has records. */
129
229
  export async function startRun(js, jsm, req) {
130
230
  return await drive(js, jsm, req, "new");
@@ -163,7 +263,7 @@ async function drive(js, jsm, req, expect) {
163
263
  }
164
264
  else {
165
265
  if (record === undefined)
166
- return { status: "released", reason: new RunNotResumable(req.runId, req.runId) };
266
+ return { status: "released", reason: await noRecordToResume(jsm, req) };
167
267
  // READ BACK, never re-derived. A default is a property of the interpreter, and the interpreter
168
268
  // is the thing that may have changed between attempts.
169
269
  pins = record.spec.value.pins;
@@ -191,7 +291,6 @@ async function drive(js, jsm, req, expect) {
191
291
  if (served === undefined)
192
292
  return { status: "released", reason: unservedLanguage(pins.languageVersion) };
193
293
  engine = served;
194
- statusRevision = record.status?.revision;
195
294
  }
196
295
  let appender;
197
296
  try {
@@ -222,17 +321,55 @@ async function drive(js, jsm, req, expect) {
222
321
  throw e;
223
322
  }
224
323
  const resumed = appender.steps();
225
- // The explicit callback wins; otherwise a handler that declares `adopted` repairs its own state.
226
- // The default is the point: the hook was optional AND unwired, which is indistinguishable at
227
- // runtime from a driver that has nothing to repair.
228
- const adopt = req.onActivated ?? adoptionOf(req.handler)?.adopted.bind(req.handler);
229
- if (adopt !== undefined)
230
- await adopt(resumed);
231
324
  const store = new RunJournalStore(appender);
325
+ let flipped;
326
+ try {
327
+ // The explicit callback wins; otherwise a handler that declares `adopted` repairs its own state.
328
+ // The default is the point: the hook was optional AND unwired, which is indistinguishable at
329
+ // runtime from a driver that has nothing to repair.
330
+ const adopt = req.onActivated ?? adoptionOf(req.handler)?.adopted.bind(req.handler);
331
+ if (adopt !== undefined)
332
+ await adopt(resumed);
333
+ // The seats a committed migration kept for this program (`--adopt`), handed to the handler
334
+ // before the program runs so its next spawn of that persona receives one. Only on a resume: a
335
+ // fresh run has no migration behind it.
336
+ if (expect === "existing") {
337
+ const seats = seatAdoptionOf(req.handler);
338
+ if (seats !== undefined) {
339
+ const kept = await migratedSeats(req, resumed);
340
+ if (kept.size > 0)
341
+ seats.adoptMigratedSeats(kept);
342
+ }
343
+ }
344
+ // ADOPTION-TIME discharge, the recovery half of the `cancel.issued` stages: a crash between a
345
+ // scope's cancel record and its discharge leaves the losers' external state live — a seat still
346
+ // up in its worktree, a pause still armed — for as long as the resumed run keeps running. The
347
+ // completion sweep alone would wait until the END of a run that may hold the lease for hours,
348
+ // so recovery re-issues the owed cancellations before the engine performs any new step.
349
+ // Idempotent by the plane, exactly as the completion sweep is; an empty or fully-issued prefix
350
+ // is a no-op, so a fresh run pays nothing.
351
+ flipped = new Set(await dischargeCancellations(resumed, store, req.handler));
352
+ }
353
+ catch (e) {
354
+ // The same grading the engine's own failures get below, because these two run on the far side
355
+ // of the activation and can lose the run the same way: a flip the store refused (L5010) is a
356
+ // successor holding the journal, and a re-arm the plane refused is that successor holding the
357
+ // pause. Both used to escape `drive()` raw, out of a function whose whole contract is that
358
+ // losing a run is an answer; a takeover between the activation and the first note was a crash.
359
+ if (e instanceof JournalAppendRejected || isNotOurs(e))
360
+ return { status: "released", reason: e };
361
+ throw e;
362
+ }
363
+ // The prefix the barrier validated and activated on, not a second read of the subject — with
364
+ // the flips the sweep just appended applied in place, so the engine's picture of `issued` never
365
+ // lags the store it writes to and the completion sweep finds nothing left to re-issue. Both
366
+ // seeds below take THIS view: the journal, and the engine request that folds its own.
367
+ const seeded = resumed.map((e) => flipped.has(journalEntryKeyString(e)) && e.cancel !== undefined
368
+ ? { ...e, cancel: { losers: e.cancel.losers, issued: true } }
369
+ : e);
232
370
  const journal = new Journal({
233
371
  run: req.runId,
234
- // The prefix the barrier validated and activated on, not a second read of the subject.
235
- entries: resumed,
372
+ entries: seeded,
236
373
  store,
237
374
  ...(req.resultBytes !== undefined ? { resultBytes: req.resultBytes } : {}),
238
375
  });
@@ -266,14 +403,40 @@ async function drive(js, jsm, req, expect) {
266
403
  createdAt: pins.startedAt,
267
404
  });
268
405
  }
269
- const specRevision = expect === "new"
270
- ? (await readRunRecord(req.kv, req.endpoint, req.runId)).spec.revision
271
- : record.spec.revision;
272
- statusRevision = await note(req, "running", appender.journalHigh, specRevision, statusRevision);
406
+ // READ ON THE FAR SIDE OF THE FENCE, both revisions, from one read. The activation is what makes
407
+ // this driver the run's; a revision read BEFORE it is a number the loser was still free to move,
408
+ // and it did: a driver that discovers it lost writes its own `released` on the way out, which
409
+ // bumps the status revision the taker-over pinned, and the taker-over's first CAS then failed —
410
+ // out of the try below, past the outcome contract, as a raw throw from a legitimate takeover.
411
+ const activated = await readRunRecord(req.kv, req.endpoint, req.runId);
412
+ if (activated === undefined) {
413
+ // The spec is written above for a fresh run and existed already for a resume, so its absence
414
+ // here is the store disagreeing with a fact this driver established one line ago.
415
+ return { status: "released", reason: new RunNotResumable(req.runId, req.runId) };
416
+ }
417
+ const specRevision = activated.spec.revision;
418
+ statusRevision = activated.status?.revision;
419
+ try {
420
+ statusRevision = await note(req, "running", appender.journalHigh, specRevision, statusRevision);
421
+ }
422
+ catch (e) {
423
+ // A LOST CAS HERE IS A FACT, not a store hiccup: the only principal entitled to write this
424
+ // run's status is a driver that holds it, so someone moved the revision between this
425
+ // driver's activation and its first note and this driver is not the one running it. It has
426
+ // appended nothing and observed nothing, which is what `released` says. Every other failure
427
+ // is the store's and propagates untranslated.
428
+ if (!isStatusConflict(e))
429
+ throw e;
430
+ return { status: "released", reason: e };
431
+ }
273
432
  try {
274
- const engineReq = { source: req.source, journal, store, entries: resumed, options };
433
+ const engineReq = { source: req.source, journal, store, entries: seeded, options };
275
434
  const result = expect === "new" ? await engine.run(engineReq) : await engine.resume(engineReq);
276
- await note(req, "completed", appender.journalHigh, specRevision, statusRevision);
435
+ // The discharge BEFORE the completed note: `result.journal` is the final folded record on both
436
+ // engines, and a crash between the two leaves `issued: false` for the next completion's sweep
437
+ // rather than a completed run whose discharge silently never happened.
438
+ await dischargeCancellations(result.journal.entries(), store, req.handler);
439
+ await noteFinal(req, "completed", appender.journalHigh, specRevision, statusRevision);
277
440
  return { status: "completed", result };
278
441
  }
279
442
  catch (e) {
@@ -283,26 +446,26 @@ async function drive(js, jsm, req, expect) {
283
446
  // Recorded on a BEST-EFFORT basis and never allowed to mask the real answer: the record is a
284
447
  // projection, and a driver that could not append to the journal may not be able to write here
285
448
  // either. What it must not do is turn a lost run into a different-looking failure.
286
- await noteQuietly(req, "released", appender.journalHigh, specRevision, statusRevision);
449
+ await noteFinal(req, "released", appender.journalHigh, specRevision, statusRevision);
287
450
  return { status: "released", reason: e };
288
451
  }
289
452
  // The host stopping is the same kind of answer: this driver no longer holds the run, and the
290
453
  // program has neither failed nor finished.
291
454
  if (e instanceof RunReleased) {
292
- await note(req, "released", appender.journalHigh, specRevision, statusRevision);
455
+ await noteFinal(req, "released", appender.journalHigh, specRevision, statusRevision);
293
456
  return { status: "released", reason: e };
294
457
  }
295
458
  // A HELD run is released with its refusal already recorded: this host could not perform the
296
459
  // next step (the entry is settled `refused`, L5025), the program has neither failed nor
297
460
  // finished, and a capable host's resume performs the step live.
298
461
  if (e instanceof RunHeld) {
299
- await note(req, "released", appender.journalHigh, specRevision, statusRevision);
462
+ await noteFinal(req, "released", appender.journalHigh, specRevision, statusRevision);
300
463
  return { status: "released", reason: e };
301
464
  }
302
465
  // A program that FAILED is a fact about the program, and the run record is where a reader looks
303
466
  // for it. Recorded, then re-raised: swallowing it here would leave the caller believing the
304
467
  // driver finished normally.
305
- await note(req, "failed", appender.journalHigh, specRevision, statusRevision);
468
+ await noteFinal(req, "failed", appender.journalHigh, specRevision, statusRevision);
306
469
  throw e;
307
470
  }
308
471
  }
@@ -331,13 +494,28 @@ async function note(req, state, journalHigh, observedSpecRevision, expectedRevis
331
494
  at: req.handler.now(),
332
495
  }, expectedRevision);
333
496
  }
334
- /** The same write, where failing to make it must not replace the answer the caller is owed. */
335
- async function noteQuietly(req, state, journalHigh, observedSpecRevision, expectedRevision) {
497
+ /** A CAS this driver lost: the status record moved under it, and the only principal entitled to
498
+ * move it is a driver that holds the run. Every other broker failure is left untranslated. */
499
+ function isStatusConflict(e) {
500
+ return e instanceof EpEnvelopeError && e.code === "conflict";
501
+ }
502
+ /**
503
+ * The TERMINAL status write, where failing to make it must not replace the answer the caller
504
+ * is owed.
505
+ *
506
+ * By the time one of these runs the engine has already produced the run's outcome and the journal
507
+ * already holds it. The record is a projection of that journal; a driver that could not write the
508
+ * projection has still observed what it observed, and throwing here would replace a real answer
509
+ * (a completion, a release, the program's own failure) with a store error about a derived record.
510
+ * Loud on the way past, because a projection silently lagging its journal is worth knowing about.
511
+ */
512
+ async function noteFinal(req, state, journalHigh, observedSpecRevision, expectedRevision) {
336
513
  try {
337
514
  await note(req, state, journalHigh, observedSpecRevision, expectedRevision);
338
515
  }
339
- catch {
340
- /* the record is a projection; the journal is the authority and it has already spoken */
516
+ catch (e) {
517
+ console.error(`run ${req.runId}: the "${state}" status write did not land (${e.message}); `
518
+ + "the journal is the authority and already holds the outcome");
341
519
  }
342
520
  }
343
521
  //# sourceMappingURL=run-driver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-driver.js","sourceRoot":"","sources":["../src/run-driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-driver.js","sourceRoot":"","sources":["../src/run-driver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cotal-ai/runtime",
3
3
  "description": "Cotal workflow runtime: hosts cotal-lang runs on the mesh — the durable step-journal store, the effect handler, and the run driver.",
4
- "version": "0.41.4",
4
+ "version": "0.43.0",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
7
7
  "type": "git",
@@ -21,9 +21,9 @@
21
21
  "@nats-io/jetstream": "^3.4.0",
22
22
  "@nats-io/kv": "^3.4.0",
23
23
  "@nats-io/transport-node": "^3.4.0",
24
- "@cotal-ai/workspace": "0.41.4",
25
- "@cotal-ai/lang": "0.41.4",
26
- "@cotal-ai/core": "0.41.4"
24
+ "@cotal-ai/lang": "0.43.0",
25
+ "@cotal-ai/core": "0.43.0",
26
+ "@cotal-ai/workspace": "0.43.0"
27
27
  },
28
28
  "files": [
29
29
  "dist"
@@ -34,6 +34,6 @@
34
34
  "scripts": {
35
35
  "typecheck": "tsc -p tsconfig.check.json",
36
36
  "build": "tsc -p tsconfig.json",
37
- "test": "tsx smoke/mesh-seam.smoke.ts"
37
+ "test": "tsx smoke/run-command-usage.smoke.ts"
38
38
  }
39
39
  }