@cotal-ai/core 0.23.0 → 0.24.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.
Files changed (39) hide show
  1. package/dist/checkpoint-answer.d.ts +46 -0
  2. package/dist/checkpoint-answer.d.ts.map +1 -0
  3. package/dist/checkpoint-answer.js +112 -0
  4. package/dist/checkpoint-answer.js.map +1 -0
  5. package/dist/endpoint-binding.d.ts +61 -0
  6. package/dist/endpoint-binding.d.ts.map +1 -1
  7. package/dist/endpoint-binding.js +109 -0
  8. package/dist/endpoint-binding.js.map +1 -1
  9. package/dist/endpoint-checkpoint.d.ts +21 -0
  10. package/dist/endpoint-checkpoint.d.ts.map +1 -1
  11. package/dist/endpoint-checkpoint.js +41 -3
  12. package/dist/endpoint-checkpoint.js.map +1 -1
  13. package/dist/endpoint-records.d.ts.map +1 -1
  14. package/dist/endpoint-records.js +86 -0
  15. package/dist/endpoint-records.js.map +1 -1
  16. package/dist/index.d.ts +5 -0
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +5 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/provision.d.ts.map +1 -1
  21. package/dist/provision.js +7 -2
  22. package/dist/provision.js.map +1 -1
  23. package/dist/run-journal.d.ts +337 -0
  24. package/dist/run-journal.d.ts.map +1 -0
  25. package/dist/run-journal.js +703 -0
  26. package/dist/run-journal.js.map +1 -0
  27. package/dist/run-migration.d.ts +85 -0
  28. package/dist/run-migration.d.ts.map +1 -0
  29. package/dist/run-migration.js +201 -0
  30. package/dist/run-migration.js.map +1 -0
  31. package/dist/run-notice.d.ts +84 -0
  32. package/dist/run-notice.d.ts.map +1 -0
  33. package/dist/run-notice.js +212 -0
  34. package/dist/run-notice.js.map +1 -0
  35. package/dist/run-record.d.ts +104 -0
  36. package/dist/run-record.d.ts.map +1 -0
  37. package/dist/run-record.js +58 -0
  38. package/dist/run-record.js.map +1 -0
  39. package/package.json +1 -1
@@ -0,0 +1,46 @@
1
+ import type { KV } from "@nats-io/kv";
2
+ /** One answer to one checkpoint. `value` is the program's payload; `artifact` is the digest of
3
+ * what the answerer actually saw, which is what makes an approval evidence rather than a claim. */
4
+ export interface CheckpointAnswerValue {
5
+ readonly v: 1;
6
+ readonly token: string;
7
+ readonly answerId: string;
8
+ /** Absent when the answer carries no payload — an approval that is only a "yes". */
9
+ readonly value?: unknown;
10
+ readonly artifact?: string;
11
+ /** WHO answered, as the run's own ACL knows them — never the presenting principal, which is the
12
+ * driver for every answer and therefore discriminates nothing. */
13
+ readonly by: string;
14
+ readonly at: number;
15
+ }
16
+ /**
17
+ * The id an answer is filed under, DERIVED rather than random.
18
+ *
19
+ * A resolver that wrote its record and then crashed before presenting the token has to be able to
20
+ * retry, and a fresh random id on the retry would file a second answer and leave the first one
21
+ * unnameable. Deriving from the answer's own content makes the retry land on the same key with the
22
+ * same bytes; two resolvers who genuinely answer the same thing are then indistinguishable, which
23
+ * is correct, and two who answer differently get different ids and race on the settle, which is
24
+ * what the settle is for.
25
+ */
26
+ export declare function checkpointAnswerId(a: {
27
+ token: string;
28
+ by: string;
29
+ value?: unknown;
30
+ artifact?: string;
31
+ }): string;
32
+ /**
33
+ * File an answer, create-only.
34
+ *
35
+ * A retry of the SAME answer is not a conflict: the id is derived from the content, so an existing
36
+ * record under this id with identical bytes is this resolver's own earlier attempt and the call
37
+ * succeeds. Different bytes under the same id would be a digest collision, which is refused rather
38
+ * than overwritten.
39
+ */
40
+ export declare function recordCheckpointAnswer(kv: KV, endpoint: string, value: CheckpointAnswerValue): Promise<{
41
+ key: string;
42
+ created: boolean;
43
+ }>;
44
+ /** Read one answer. `undefined` = no answer was filed under this id. */
45
+ export declare function readCheckpointAnswer(kv: KV, endpoint: string, token: string, answerId: string): Promise<CheckpointAnswerValue | undefined>;
46
+ //# sourceMappingURL=checkpoint-answer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoint-answer.d.ts","sourceRoot":"","sources":["../src/checkpoint-answer.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAMtC;oGACoG;AACpG,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;IACd,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,oFAAoF;IACpF,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;uEACmE;IACnE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AA6BD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAU/G;AAED;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAe5C;AAED,wEAAwE;AACxE,wBAAsB,oBAAoB,CACxC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAO5C"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * The CHECKPOINT ANSWER record: what somebody actually answered, beside the settle fact that says
3
+ * a checkpoint was answered at all.
4
+ *
5
+ * `endpoint-checkpoint`'s one-use settle fact is the arbiter of a race between a resume and the
6
+ * deadline. It is deliberately small and its keys are closed, so an answer's `value` and the
7
+ * `artifact` digest of what the answerer actually saw do not belong in it. They live here.
8
+ *
9
+ * **Keyed `(endpoint, token, answerId)`, and the settle fact NAMES the id it accepted.** The
10
+ * obvious key — `(token, presenter)` — does not work, and the reason is not about this record: a
11
+ * workflow checkpoint's holder is the run driver, every resolver reaches the checkpoint through
12
+ * the driver's own `resolveCheckpoint` command, so every presenter is the SAME principal. That key
13
+ * collapses to one slot, two resolvers racing overwrite it, and the settle fact then selects
14
+ * whichever answer was written LAST rather than the one belonging to the resolver that won. So the
15
+ * id is minted per answer, written here first, and carried into the settle: the answer that counts
16
+ * is the one the winning settlement names. A loser's record is orphaned and read by nothing.
17
+ *
18
+ * **Written BEFORE the token is presented.** The record is the payload and the settle is the fact
19
+ * that releases the waiting run; a payload written after the release is a payload the run can
20
+ * already have looked for and not found. Same order, and the same reason, as minting a checkpoint
21
+ * before arming its timer.
22
+ *
23
+ * Create-only, never updated, never deleted: an answer is something that happened.
24
+ */
25
+ import { createHash } from "node:crypto";
26
+ import { EpEnvelopeError } from "./endpoint-envelope.js";
27
+ import { assertIdToken } from "./endpoint-subjects.js";
28
+ import { RECORD_KINDS, createRecordEntry, recordAtomicKey } from "./endpoint-records.js";
29
+ import { canonicalJson } from "./canonical.js";
30
+ function answerQualifiers(endpoint, token, answerId) {
31
+ return [endpoint, token, answerId];
32
+ }
33
+ function parseAnswer(raw, key) {
34
+ if (raw === null || typeof raw !== "object" || Array.isArray(raw))
35
+ throw new EpEnvelopeError("internal", `checkpoint answer ${key} is not an object; garbled state never authorizes`);
36
+ const o = raw;
37
+ for (const k of Object.keys(o))
38
+ if (!["v", "token", "answerId", "value", "artifact", "by", "at"].includes(k))
39
+ throw new EpEnvelopeError("internal", `checkpoint answer ${key} carries the unknown field "${k}"; record schemas are closed`);
40
+ if (o.v !== 1 || typeof o.token !== "string" || typeof o.answerId !== "string"
41
+ || typeof o.by !== "string" || o.by.length === 0
42
+ || typeof o.at !== "number" || !Number.isSafeInteger(o.at) || o.at < 0
43
+ || (o.artifact !== undefined && typeof o.artifact !== "string"))
44
+ throw new EpEnvelopeError("internal", `checkpoint answer ${key} is malformed; garbled state never authorizes`);
45
+ return {
46
+ v: 1,
47
+ token: o.token,
48
+ answerId: o.answerId,
49
+ ...(o.value !== undefined ? { value: o.value } : {}),
50
+ ...(o.artifact !== undefined ? { artifact: o.artifact } : {}),
51
+ by: o.by,
52
+ at: o.at,
53
+ };
54
+ }
55
+ /**
56
+ * The id an answer is filed under, DERIVED rather than random.
57
+ *
58
+ * A resolver that wrote its record and then crashed before presenting the token has to be able to
59
+ * retry, and a fresh random id on the retry would file a second answer and leave the first one
60
+ * unnameable. Deriving from the answer's own content makes the retry land on the same key with the
61
+ * same bytes; two resolvers who genuinely answer the same thing are then indistinguishable, which
62
+ * is correct, and two who answer differently get different ids and race on the settle, which is
63
+ * what the settle is for.
64
+ */
65
+ export function checkpointAnswerId(a) {
66
+ const canonical = canonicalJson({
67
+ token: a.token,
68
+ by: a.by,
69
+ value: a.value ?? null,
70
+ artifact: a.artifact ?? null,
71
+ });
72
+ // base64url of the sha256, truncated to 43 chars — the same shape and alphabet the run's own
73
+ // request ids use, so an answer id is a `<token>` by construction rather than by hope.
74
+ return createHash("sha256").update(canonical, "utf8").digest("base64url").slice(0, 43);
75
+ }
76
+ /**
77
+ * File an answer, create-only.
78
+ *
79
+ * A retry of the SAME answer is not a conflict: the id is derived from the content, so an existing
80
+ * record under this id with identical bytes is this resolver's own earlier attempt and the call
81
+ * succeeds. Different bytes under the same id would be a digest collision, which is refused rather
82
+ * than overwritten.
83
+ */
84
+ export async function recordCheckpointAnswer(kv, endpoint, value) {
85
+ assertIdToken(value.answerId, "answerId");
86
+ const key = recordAtomicKey(RECORD_KINDS.answer, answerQualifiers(endpoint, value.token, value.answerId));
87
+ try {
88
+ await createRecordEntry(kv, key, value);
89
+ return { key, created: true };
90
+ }
91
+ catch (e) {
92
+ if (!(e instanceof EpEnvelopeError && e.code === "conflict"))
93
+ throw e;
94
+ const existing = await readCheckpointAnswer(kv, endpoint, value.token, value.answerId);
95
+ if (existing === undefined)
96
+ throw new EpEnvelopeError("internal", `checkpoint answer ${key} lost its create CAS but is not readable; reconcile the store`);
97
+ if (canonicalJson(existing) !== canonicalJson(value))
98
+ throw new EpEnvelopeError("conflict", `checkpoint answer ${key} already exists with different content; an answer id is derived from its answer, so a differing one under the same id is never overwritten`);
99
+ return { key, created: false };
100
+ }
101
+ }
102
+ /** Read one answer. `undefined` = no answer was filed under this id. */
103
+ export async function readCheckpointAnswer(kv, endpoint, token, answerId) {
104
+ const key = recordAtomicKey(RECORD_KINDS.answer, answerQualifiers(endpoint, token, answerId));
105
+ const entry = await kv.get(key);
106
+ if (!entry)
107
+ return undefined;
108
+ if (entry.operation !== "PUT")
109
+ throw new EpEnvelopeError("failed-precondition", `the checkpoint answer ${key} carries a ${entry.operation} marker; an answer is something that happened and is never erased - reconcile the store`);
110
+ return parseAnswer(JSON.parse(new TextDecoder().decode(entry.value)), key);
111
+ }
112
+ //# sourceMappingURL=checkpoint-answer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoint-answer.js","sourceRoot":"","sources":["../src/checkpoint-answer.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,26 @@ export declare function eptStreamName(space: string): string;
23
23
  export declare function eprStreamName(space: string): string;
24
24
  export declare function epwStreamName(space: string): string;
25
25
  export declare function epcStreamName(space: string): string;
26
+ /** The workflow STEP JOURNAL stream. Deliberately outside the `ep*` plane letters: the step
27
+ * journal is a runtime layer over the control surface, not part of the normative §13 endpoint
28
+ * contract, and a reader that confuses the two would take a run's private trace for a decision
29
+ * fact. It sits beside the §13 decision-fact journal, never on top of it. */
30
+ export declare function wfjStreamName(space: string): string;
31
+ /**
32
+ * The ONE subject a run's journal entries append to.
33
+ *
34
+ * ONE SUBJECT PER RUN, not one per entry — a deviation from the per-entry subject first sketched
35
+ * for it, and a CHOICE rather than a necessity. Per-entry subjects can be fenced:
36
+ * `Nats-Expected-Last-Subject-Sequence-Subject` evaluates the expectation against a wildcard
37
+ * comparator, measured working on the repo's broker floor. They are not used because the three
38
+ * properties a subject range is wanted for here — per-run ordering, replay by consumer filter, and
39
+ * retirement by subject purge — are all properties of the RUN subject, while the entry level buys
40
+ * only per-entry point reads, which an append-only journal replayed in full never issues. Against
41
+ * that it costs one stream subject per entry forever in a stream with no age eviction, and a second
42
+ * header whose absence degrades silently to a per-publish-subject comparison — on a fresh entry
43
+ * subject that is `0`, i.e. no fence at all.
44
+ */
45
+ export declare function wfjSubject(space: string, runId: string): string;
26
46
  /** The CLOSED set of streams a §13.1 retirement may record a frontier cutoff over: exactly the
27
47
  * per-space streams that carry a retired lifecycle's durable data a later durable reader can
28
48
  * replay (facts EPF, work EPW, events EPE, and the records KV). A retirement intent's
@@ -323,6 +343,47 @@ export declare function canonicalizerGrants(space: string, endpoint: string): st
323
343
  * canonicalizer aggregate for an endpoint with pool routes is
324
344
  * `[...canonicalizerGrants(...), ...canonicalizerWorkGrants(...)]`. */
325
345
  export declare function canonicalizerWorkGrants(space: string, endpoint: string): string[];
346
+ /** A run's journal replay durable on WFJ (`wfj_<runId>`, filter the run's own subject): the
347
+ * driver reads the run's entries in append order to reproduce the deterministic prefix. Filtered
348
+ * to ONE run, because a driver that can read every run's journal can read every run's effect
349
+ * results, and a journal entry carries what an agent said.
350
+ *
351
+ * It is named rather than ephemeral so the create row can pin the durable AND the filter (an
352
+ * ephemeral's server-generated name would need a `*` in the name token), and it is DELETED and
353
+ * recreated at every takeover rather than resumed — see `replayRunJournal`: a durable remembers
354
+ * how far it delivered, and a successor needs the prefix from the top, so a reused one would hand
355
+ * it the empty tail. That is why the driver's grants carry a delete row. */
356
+ export declare function runJournalConsumerConfig(space: string, runId: string,
357
+ /**
358
+ * A token unique to ONE takeover attempt. A per-run durable is shared by contenders, and sharing
359
+ * it makes replay a race with itself: `add` on an existing durable returns it, so one driver
360
+ * inherits another's half-read consumer, and each contender's delete tears down the other's live
361
+ * fetch. A consumer nobody else names cannot be inherited, nor deleted out from under its owner.
362
+ * The grant pins this token EXACTLY — a consumer name is one
363
+ * subject token and no pattern covers part of one — so it is chosen when the rows are minted, with
364
+ * the lease, and not afterwards by the driver.
365
+ */
366
+ takeoverId: string, opts?: {
367
+ ackWaitMs?: number;
368
+ maxAckPending?: number;
369
+ inactiveThresholdMs?: number;
370
+ }): Partial<ConsumerConfig>;
371
+ /**
372
+ * The RUN DRIVER's journal rows, minted per RUN and never per space.
373
+ *
374
+ * Publish on exactly one subject — the run's — plus the replay durable it owns on that same
375
+ * subject, create, bind and DELETE, because every takeover recreates it to read the prefix from the
376
+ * top. There is no row here for reading the subject's current sequence, and there does not need to
377
+ * be one: the activation barrier's expectation is the last sequence the driver REPLAYED, so the
378
+ * read it would otherwise make is the replay it makes anyway.
379
+ *
380
+ * There is no wildcard form of this on purpose. A space-wide `wfj.>` publish would let one run's
381
+ * driver append to another run's journal, which is not a read leak but a corruption: the other run
382
+ * would replay a step it never took. And the barrier's whole premise is that the run subject has
383
+ * exactly one authoritative appender at a time; a grant that spans runs describes a different
384
+ * system.
385
+ */
386
+ export declare function runDriverJournalGrants(space: string, runId: string, takeoverId: string): string[];
326
387
  /** A serving instance's effects rows: BIND-ONLY on the provisioner-pre-created shared `eff_<e>`
327
388
  * (INFO/MSG.NEXT/ACK, never create) — instances pull-compete, none owns the durable (§13.9). */
328
389
  export declare function effectsBindGrants(space: string, endpoint: string): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-binding.d.ts","sourceRoot":"","sources":["../src/endpoint-binding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint-binding.d.ts","sourceRoot":"","sources":["../src/endpoint-binding.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,28 @@ export function eptStreamName(space) { return `EPT_${token(space)}`; }
26
26
  export function eprStreamName(space) { return `EPR_${token(space)}`; }
27
27
  export function epwStreamName(space) { return `EPW_${token(space)}`; }
28
28
  export function epcStreamName(space) { return `EPC_${token(space)}`; }
29
+ /** The workflow STEP JOURNAL stream. Deliberately outside the `ep*` plane letters: the step
30
+ * journal is a runtime layer over the control surface, not part of the normative §13 endpoint
31
+ * contract, and a reader that confuses the two would take a run's private trace for a decision
32
+ * fact. It sits beside the §13 decision-fact journal, never on top of it. */
33
+ export function wfjStreamName(space) { return `WFJ_${token(space)}`; }
34
+ /**
35
+ * The ONE subject a run's journal entries append to.
36
+ *
37
+ * ONE SUBJECT PER RUN, not one per entry — a deviation from the per-entry subject first sketched
38
+ * for it, and a CHOICE rather than a necessity. Per-entry subjects can be fenced:
39
+ * `Nats-Expected-Last-Subject-Sequence-Subject` evaluates the expectation against a wildcard
40
+ * comparator, measured working on the repo's broker floor. They are not used because the three
41
+ * properties a subject range is wanted for here — per-run ordering, replay by consumer filter, and
42
+ * retirement by subject purge — are all properties of the RUN subject, while the entry level buys
43
+ * only per-entry point reads, which an append-only journal replayed in full never issues. Against
44
+ * that it costs one stream subject per entry forever in a stream with no age eviction, and a second
45
+ * header whose absence degrades silently to a per-publish-subject comparison — on a fresh entry
46
+ * subject that is `0`, i.e. no fence at all.
47
+ */
48
+ export function wfjSubject(space, runId) {
49
+ return `${spacePrefix(space)}.wfj.${assertIdToken(runId, "runId")}`;
50
+ }
29
51
  /** The CLOSED set of streams a §13.1 retirement may record a frontier cutoff over: exactly the
30
52
  * per-space streams that carry a retired lifecycle's durable data a later durable reader can
31
53
  * replay (facts EPF, work EPW, events EPE, and the records KV). A retirement intent's
@@ -215,6 +237,20 @@ export async function createEndpointStreams(jsm, kvm, space, opts = {}) {
215
237
  storage: StorageType.File,
216
238
  allow_direct: false,
217
239
  });
240
+ // WFJ — the workflow step journal, one subject per run (see wfjSubject: the activation barrier
241
+ // is per-subject, so the subject is the run). NO max_age: a run's journal must outlive any
242
+ // retention window a control-surface plane wants, because a run that sleeps for a month resumes
243
+ // by re-reading it, and an evicted prefix is not a shorter journal, it is a run that will
244
+ // re-perform effects it already performed. Retirement is by subject purge, deliberately.
245
+ // NO allow_direct: a resume must read its own predecessor's last appends, and Direct Get is
246
+ // follower-servable — a stale miss there reads as "this step never ran".
247
+ await jsm.streams.add({
248
+ name: wfjStreamName(space),
249
+ subjects: [`${p}.wfj.*`],
250
+ retention: RetentionPolicy.Limits,
251
+ storage: StorageType.File,
252
+ allow_direct: false,
253
+ });
218
254
  await ensureContractStore(jsm, space);
219
255
  await ensureAuthorityStores(jsm, kvm, space);
220
256
  // P2 item 6: the DEDICATED §13.6 session ledger bucket. The eps byte SUBJECTS stay core-only and
@@ -676,6 +712,9 @@ const JSAPI = "$JS.API";
676
712
  * the wildcard matches (a `*` durable grants INFO/MSG.NEXT/ACK on ALL durables of the stream).
677
713
  * Every grammar in this module emits `[A-Za-z0-9_-]`, so anything else is refused loudly. */
678
714
  function assertGrantName(v, what) {
715
+ // No wildcard, not even a partial one. A `*` inside a token is not a wildcard in NATS — it is a
716
+ // literal asterisk that matches only itself — so admitting the shape would mint rows that look
717
+ // like authority and grant none (measured, and it shipped for exactly one round).
679
718
  if (!/^[A-Za-z0-9_-]+$/.test(v))
680
719
  throw new Error(`${what} ${JSON.stringify(v)} must be a literal wildcard-free name component ([A-Za-z0-9_-]+)`);
681
720
  return v;
@@ -741,6 +780,76 @@ export function canonicalizerWorkGrants(space, endpoint) {
741
780
  `${JSAPI}.STREAM.MSG.GET.${epwStreamName(space)}`,
742
781
  ];
743
782
  }
783
+ /** A run's journal replay durable on WFJ (`wfj_<runId>`, filter the run's own subject): the
784
+ * driver reads the run's entries in append order to reproduce the deterministic prefix. Filtered
785
+ * to ONE run, because a driver that can read every run's journal can read every run's effect
786
+ * results, and a journal entry carries what an agent said.
787
+ *
788
+ * It is named rather than ephemeral so the create row can pin the durable AND the filter (an
789
+ * ephemeral's server-generated name would need a `*` in the name token), and it is DELETED and
790
+ * recreated at every takeover rather than resumed — see `replayRunJournal`: a durable remembers
791
+ * how far it delivered, and a successor needs the prefix from the top, so a reused one would hand
792
+ * it the empty tail. That is why the driver's grants carry a delete row. */
793
+ export function runJournalConsumerConfig(space, runId,
794
+ /**
795
+ * A token unique to ONE takeover attempt. A per-run durable is shared by contenders, and sharing
796
+ * it makes replay a race with itself: `add` on an existing durable returns it, so one driver
797
+ * inherits another's half-read consumer, and each contender's delete tears down the other's live
798
+ * fetch. A consumer nobody else names cannot be inherited, nor deleted out from under its owner.
799
+ * The grant pins this token EXACTLY — a consumer name is one
800
+ * subject token and no pattern covers part of one — so it is chosen when the rows are minted, with
801
+ * the lease, and not afterwards by the driver.
802
+ */
803
+ takeoverId, opts = {}) {
804
+ return family(wfjStreamName(space), {
805
+ durable_name: `wfj_${assertIdToken(runId, "runId")}_${assertIdToken(takeoverId, "takeoverId")}`,
806
+ filter_subject: wfjSubject(space, runId),
807
+ ack_policy: AckPolicy.Explicit,
808
+ ack_wait: nanos(opts.ackWaitMs ?? 60_000),
809
+ deliver_policy: DeliverPolicy.All,
810
+ max_ack_pending: opts.maxAckPending ?? 1000,
811
+ // A REAPER, because nothing else is one. This consumer is created, read and deleted inside a
812
+ // single replay, so it should never outlive one — but a delete can fail, and the stream cannot
813
+ // clean up after it: WFJ sets neither `max_consumers` nor `consumer_limits`, which normalize to
814
+ // unlimited and to an inactive threshold of zero, and a durable at zero is given no delete timer
815
+ // at all. Without this, one takeover whose delete failed leaks a durable permanently.
816
+ inactive_threshold: nanos(opts.inactiveThresholdMs ?? 300_000),
817
+ });
818
+ }
819
+ /**
820
+ * The RUN DRIVER's journal rows, minted per RUN and never per space.
821
+ *
822
+ * Publish on exactly one subject — the run's — plus the replay durable it owns on that same
823
+ * subject, create, bind and DELETE, because every takeover recreates it to read the prefix from the
824
+ * top. There is no row here for reading the subject's current sequence, and there does not need to
825
+ * be one: the activation barrier's expectation is the last sequence the driver REPLAYED, so the
826
+ * read it would otherwise make is the replay it makes anyway.
827
+ *
828
+ * There is no wildcard form of this on purpose. A space-wide `wfj.>` publish would let one run's
829
+ * driver append to another run's journal, which is not a read leak but a corruption: the other run
830
+ * would replay a step it never took. And the barrier's whole premise is that the run subject has
831
+ * exactly one authoritative appender at a time; a grant that spans runs describes a different
832
+ * system.
833
+ */
834
+ export function runDriverJournalGrants(space, runId, takeoverId) {
835
+ const stream = wfjStreamName(space);
836
+ // The replay consumer is named per TAKEOVER, and its name is one subject token, so it cannot be
837
+ // covered by a pattern: NATS treats `*` as a wildcard only as a WHOLE token, and `wfj_<run>_*` is
838
+ // a literal that matches nothing (measured: a subscription to `api.WFJ.wfj_r-1_*` received
839
+ // `api.WFJ.wfj_r-1_*` and NOT `api.WFJ.wfj_r-1_ab12cd34`). A whole-token `*` would be every
840
+ // consumer on the stream, i.e. every other run's journal.
841
+ //
842
+ // So the takeover id belongs to the CREDENTIAL: the rows are minted for the one attempt that will
843
+ // use them, exactly as pinned as a per-run name was, and unique the way a shared name was not.
844
+ const cfg = runJournalConsumerConfig(space, runId, takeoverId);
845
+ const durable = cfg.durable_name;
846
+ return [
847
+ wfjSubject(space, runId),
848
+ consumeCreateRow(stream, cfg),
849
+ ...consumeBindRows(stream, durable),
850
+ consumeDeleteRow(stream, durable),
851
+ ];
852
+ }
744
853
  /** A serving instance's effects rows: BIND-ONLY on the provisioner-pre-created shared `eff_<e>`
745
854
  * (INFO/MSG.NEXT/ACK, never create) — instances pull-compete, none owns the durable (§13.9). */
746
855
  export function effectsBindGrants(space, endpoint) {
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-binding.js","sourceRoot":"","sources":["../src/endpoint-binding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint-binding.js","sourceRoot":"","sources":["../src/endpoint-binding.ts"],"names":[],"mappings":"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"}
@@ -108,6 +108,13 @@ export interface CheckpointStatusValue extends Record<string, unknown> {
108
108
  lifecycleUid: string;
109
109
  };
110
110
  settledTs?: number;
111
+ /**
112
+ * WHICH answer a resume accepted (the checkpoint-answer record's id), recorded so the derived
113
+ * settle fact is reconstructable field-for-field after a crash between the CAS and the publish.
114
+ * Present only on a `resumed` settlement, and OPTIONAL there: a plain approval hold carries no
115
+ * answer payload, and inventing an id for it would name a record that does not exist.
116
+ */
117
+ settledAnswerId?: string;
111
118
  }
112
119
  /** The one-use settlement: resume and expiry race for this single create-only CAS. */
113
120
  export interface CheckpointSettleFact {
@@ -119,6 +126,19 @@ export interface CheckpointSettleFact {
119
126
  id: string;
120
127
  lifecycleUid: string;
121
128
  };
129
+ /**
130
+ * The ANSWER this settlement accepted.
131
+ *
132
+ * The payload of an answer — its value, its artifact — deliberately does NOT live here: these
133
+ * keys are closed and this fact is the small arbiter of a race. But the arbiter has to NAME what
134
+ * it chose. Every resolver reaches a workflow checkpoint through the run driver and therefore
135
+ * presents as the SAME principal, so an answer cannot be matched back to the winning settle by
136
+ * its presenter: the key `(token, answerId)` and this field are what discriminate. A loser's
137
+ * answer record is orphaned and read by nothing.
138
+ *
139
+ * Absent on an expiry (nothing was accepted) and on a resume that carried no answer.
140
+ */
141
+ answerId?: string;
122
142
  ts: number;
123
143
  }
124
144
  /** Read the checkpoint's current status (`undefined` = unknown token). Fail-closed on DEL. */
@@ -257,6 +277,7 @@ export declare function resumeCheckpoint(kv: KV, js: JetStreamClient, jsm: JetSt
257
277
  lifecycleUid: string;
258
278
  };
259
279
  now: number;
280
+ answerId?: string;
260
281
  }): Promise<CheckpointSettleFact>;
261
282
  /** Read the recorded settlement (`undefined` = still waiting). */
262
283
  export declare function readCheckpointSettle(jsm: JetStreamManager, space_: string, ref: CheckpointRef): Promise<CheckpointSettleFact | undefined>;