@cotal-ai/core 0.15.0 → 0.17.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 (146) hide show
  1. package/dist/acls.d.ts +21 -0
  2. package/dist/acls.d.ts.map +1 -1
  3. package/dist/acls.js +75 -12
  4. package/dist/acls.js.map +1 -1
  5. package/dist/artifact.d.ts +45 -0
  6. package/dist/artifact.d.ts.map +1 -0
  7. package/dist/artifact.js +82 -0
  8. package/dist/artifact.js.map +1 -0
  9. package/dist/backup-config.d.ts +9 -2
  10. package/dist/backup-config.d.ts.map +1 -1
  11. package/dist/backup-config.js +6 -2
  12. package/dist/backup-config.js.map +1 -1
  13. package/dist/broker-tls.d.ts +70 -0
  14. package/dist/broker-tls.d.ts.map +1 -0
  15. package/dist/broker-tls.js +195 -0
  16. package/dist/broker-tls.js.map +1 -0
  17. package/dist/canonical.d.ts +14 -1
  18. package/dist/canonical.d.ts.map +1 -1
  19. package/dist/canonical.js +21 -1
  20. package/dist/canonical.js.map +1 -1
  21. package/dist/channels.d.ts.map +1 -1
  22. package/dist/channels.js +18 -9
  23. package/dist/channels.js.map +1 -1
  24. package/dist/endpoint-action.d.ts +108 -3
  25. package/dist/endpoint-action.d.ts.map +1 -1
  26. package/dist/endpoint-action.js +209 -20
  27. package/dist/endpoint-action.js.map +1 -1
  28. package/dist/endpoint-binding.d.ts +138 -8
  29. package/dist/endpoint-binding.d.ts.map +1 -1
  30. package/dist/endpoint-binding.js +233 -26
  31. package/dist/endpoint-binding.js.map +1 -1
  32. package/dist/endpoint-contract-store.d.ts +24 -1
  33. package/dist/endpoint-contract-store.d.ts.map +1 -1
  34. package/dist/endpoint-contract-store.js +79 -27
  35. package/dist/endpoint-contract-store.js.map +1 -1
  36. package/dist/endpoint-envelope.d.ts +15 -37
  37. package/dist/endpoint-envelope.d.ts.map +1 -1
  38. package/dist/endpoint-envelope.js +93 -44
  39. package/dist/endpoint-envelope.js.map +1 -1
  40. package/dist/endpoint-error.d.ts +33 -0
  41. package/dist/endpoint-error.d.ts.map +1 -0
  42. package/dist/endpoint-error.js +34 -0
  43. package/dist/endpoint-error.js.map +1 -0
  44. package/dist/endpoint-grants.d.ts +48 -7
  45. package/dist/endpoint-grants.d.ts.map +1 -1
  46. package/dist/endpoint-grants.js +97 -9
  47. package/dist/endpoint-grants.js.map +1 -1
  48. package/dist/endpoint-invoke.d.ts +138 -0
  49. package/dist/endpoint-invoke.d.ts.map +1 -0
  50. package/dist/endpoint-invoke.js +340 -0
  51. package/dist/endpoint-invoke.js.map +1 -0
  52. package/dist/endpoint-records.d.ts.map +1 -1
  53. package/dist/endpoint-records.js +17 -0
  54. package/dist/endpoint-records.js.map +1 -1
  55. package/dist/endpoint-serve-kv.d.ts +97 -0
  56. package/dist/endpoint-serve-kv.d.ts.map +1 -0
  57. package/dist/endpoint-serve-kv.js +336 -0
  58. package/dist/endpoint-serve-kv.js.map +1 -0
  59. package/dist/endpoint-serve.d.ts.map +1 -1
  60. package/dist/endpoint-serve.js +21 -1
  61. package/dist/endpoint-serve.js.map +1 -1
  62. package/dist/endpoint-service.d.ts +1 -1
  63. package/dist/endpoint-service.d.ts.map +1 -1
  64. package/dist/endpoint-service.js +34 -10
  65. package/dist/endpoint-service.js.map +1 -1
  66. package/dist/endpoint-session-rail.d.ts +127 -0
  67. package/dist/endpoint-session-rail.d.ts.map +1 -0
  68. package/dist/endpoint-session-rail.js +325 -0
  69. package/dist/endpoint-session-rail.js.map +1 -0
  70. package/dist/endpoint-session.d.ts +1 -115
  71. package/dist/endpoint-session.d.ts.map +1 -1
  72. package/dist/endpoint-session.js +4 -316
  73. package/dist/endpoint-session.js.map +1 -1
  74. package/dist/endpoint-subjects.d.ts +10 -1
  75. package/dist/endpoint-subjects.d.ts.map +1 -1
  76. package/dist/endpoint-subjects.js +10 -1
  77. package/dist/endpoint-subjects.js.map +1 -1
  78. package/dist/endpoint-verbs.d.ts +1 -2
  79. package/dist/endpoint-verbs.d.ts.map +1 -1
  80. package/dist/endpoint-verbs.js +6 -6
  81. package/dist/endpoint-verbs.js.map +1 -1
  82. package/dist/endpoint.d.ts +169 -15
  83. package/dist/endpoint.d.ts.map +1 -1
  84. package/dist/endpoint.js +491 -43
  85. package/dist/endpoint.js.map +1 -1
  86. package/dist/identity.d.ts +19 -0
  87. package/dist/identity.d.ts.map +1 -1
  88. package/dist/identity.js +12 -0
  89. package/dist/identity.js.map +1 -1
  90. package/dist/index.d.ts +9 -0
  91. package/dist/index.d.ts.map +1 -1
  92. package/dist/index.js +9 -0
  93. package/dist/index.js.map +1 -1
  94. package/dist/kv-scan.d.ts +105 -0
  95. package/dist/kv-scan.d.ts.map +1 -0
  96. package/dist/kv-scan.js +192 -0
  97. package/dist/kv-scan.js.map +1 -0
  98. package/dist/lease.d.ts +12 -5
  99. package/dist/lease.d.ts.map +1 -1
  100. package/dist/lease.js.map +1 -1
  101. package/dist/lifecycle-saga.d.ts +174 -0
  102. package/dist/lifecycle-saga.d.ts.map +1 -0
  103. package/dist/lifecycle-saga.js +418 -0
  104. package/dist/lifecycle-saga.js.map +1 -0
  105. package/dist/lifecycle-state.d.ts +202 -0
  106. package/dist/lifecycle-state.d.ts.map +1 -0
  107. package/dist/lifecycle-state.js +347 -0
  108. package/dist/lifecycle-state.js.map +1 -0
  109. package/dist/members.d.ts +8 -4
  110. package/dist/members.d.ts.map +1 -1
  111. package/dist/members.js +19 -9
  112. package/dist/members.js.map +1 -1
  113. package/dist/parts.d.ts +13 -0
  114. package/dist/parts.d.ts.map +1 -0
  115. package/dist/parts.js +17 -0
  116. package/dist/parts.js.map +1 -0
  117. package/dist/provision.d.ts +106 -9
  118. package/dist/provision.d.ts.map +1 -1
  119. package/dist/provision.js +506 -110
  120. package/dist/provision.js.map +1 -1
  121. package/dist/schema-profile.d.ts +3 -2
  122. package/dist/schema-profile.d.ts.map +1 -1
  123. package/dist/schema-profile.js +242 -18
  124. package/dist/schema-profile.js.map +1 -1
  125. package/dist/session-browser.d.ts +15 -0
  126. package/dist/session-browser.d.ts.map +1 -0
  127. package/dist/session-browser.js +14 -0
  128. package/dist/session-browser.js.map +1 -0
  129. package/dist/session-terminal-frames.d.ts +36 -0
  130. package/dist/session-terminal-frames.d.ts.map +1 -0
  131. package/dist/session-terminal-frames.js +149 -0
  132. package/dist/session-terminal-frames.js.map +1 -0
  133. package/dist/spaces.d.ts.map +1 -1
  134. package/dist/spaces.js +6 -1
  135. package/dist/spaces.js.map +1 -1
  136. package/dist/streams.d.ts +53 -1
  137. package/dist/streams.d.ts.map +1 -1
  138. package/dist/streams.js +135 -8
  139. package/dist/streams.js.map +1 -1
  140. package/dist/subjects.d.ts +32 -26
  141. package/dist/subjects.d.ts.map +1 -1
  142. package/dist/subjects.js +38 -25
  143. package/dist/subjects.js.map +1 -1
  144. package/dist/types.d.ts +27 -1
  145. package/dist/types.d.ts.map +1 -1
  146. package/package.json +6 -1
@@ -0,0 +1,340 @@
1
+ /**
2
+ * The GENERIC caller path (control-surface P2 item 1, item 5): describe an endpoint, fetch its
3
+ * registered contracts from the §13.7 content store, recompile the digest-matching validators,
4
+ * and invoke a named command — WITHOUT the caller compiling the endpoint's schemas ahead of time.
5
+ * This is what a `cotal describe`/`cotal invoke` CLI and every migrated control consumer ride, so
6
+ * a consumer no longer hand-imports the manager's contract module.
7
+ *
8
+ * The trust chain is the §13.7 one, end to end:
9
+ * - `describe` (the reserved, authorization-scoped command every endpoint serves) answers the
10
+ * caller's VISIBLE command set + the registered CLUSTER closure digests;
11
+ * - each cluster document is fetched from the store at its closure digest and VERIFIED
12
+ * (two-stage manifest→root, content-addressed) — the command's input/output CLOSURE digests
13
+ * come from those verified bytes, never a caller assertion;
14
+ * - each schema closure is fetched + PROFILE-recompiled; the recompiled contract's closureDigest
15
+ * MUST equal the registered digest (a store that served the wrong bytes fails here);
16
+ * - the invoke pins those digests, so the responder's digest-bound serve boundary honors exactly
17
+ * the schema the caller validated against.
18
+ */
19
+ import { randomBytes } from "node:crypto";
20
+ import { jetstreamManager } from "@nats-io/jetstream";
21
+ import { EpEnvelopeError } from "./endpoint-envelope.js";
22
+ import { compileContract } from "./schema-profile.js";
23
+ import { contractStoreContext, fetchContractClosure, contractRefToHex, contractArtifactDigestHex, } from "./endpoint-contract-store.js";
24
+ import { parseClusterDocument } from "./endpoint-cluster.js";
25
+ import { epCall, epScatterService } from "./endpoint-verbs.js";
26
+ import { epGoalProgressGrantRow } from "./endpoint-grants.js";
27
+ import { epRequestSubject, epCallerReplyFilter, parseEpSubject } from "./endpoint-subjects.js";
28
+ import { parseEndpointReply } from "./endpoint-envelope.js";
29
+ const dec = new TextDecoder(), enc = new TextEncoder();
30
+ const nonce = () => randomBytes(24).toString("base64url");
31
+ /**
32
+ * The reserved `describe` command as a raw request/reply (§13.7: describe pins NO contract, so it
33
+ * carries no `op` digests — {@link epCall} always stamps digests and the serve boundary rejects a
34
+ * digest-bearing describe as `contract-mismatch`, so this is a purpose-built raw path). It
35
+ * REQUEST-BINDS its reply exactly as {@link epCall}'s `parseAttributedReply` does (§13.2): the
36
+ * responder grant `epResponderReplyPattern` spans EVERY caller suffix, so any live responder can
37
+ * publish on the caller's rail at any nonce — acceptance therefore checks the reply SUBJECT's
38
+ * endpoint + nonce AND the body's echoed request id, not just "first `{ok:true}` on the rail".
39
+ * A reply that fails any of these is IGNORED (not rejected: an attacker racing a wrong-nonce reply
40
+ * must not be able to fail an honest describe), and the wait continues to the deadline.
41
+ */
42
+ export async function describeEndpoint(nc, space, endpoint, caller, opts = {}) {
43
+ const deadlineMs = opts.deadlineMs ?? 10_000;
44
+ const n = nonce();
45
+ const requestId = nonce();
46
+ // P2 item 3 `--on <instance>`: PIN the describe to one instance's `inst` route so a multi-manager
47
+ // space resolves the exact instance addressed, not whichever wins the class `one` queue. Default =
48
+ // class anycast (mode "one"), unchanged for every existing caller.
49
+ const route = opts.instanceId !== undefined ? { mode: "inst", instanceId: opts.instanceId } : { mode: "one" };
50
+ const subject = epRequestSubject(space, { route, endpoint, command: "describe", caller, nonce: n });
51
+ const env = {
52
+ v: 1, id: requestId, op: { endpoint, command: "describe" }, class: "ephemeral",
53
+ replyExpected: true, deadlineMs, from: { id: `${caller.owner}.${caller.actor}`, name: caller.actor },
54
+ };
55
+ let sub;
56
+ let timer;
57
+ try {
58
+ const got = new Promise((resolve, reject) => {
59
+ sub = nc.subscribe(epCallerReplyFilter(space, caller), {
60
+ callback: (err, msg) => {
61
+ if (err) {
62
+ reject(new EpEnvelopeError("unavailable", `describe reply subscription failed: ${err.message}`));
63
+ return;
64
+ }
65
+ // REQUEST-BIND off the reply SUBJECT first (§13.2): the responder triple + nonce are
66
+ // broker-pinned by the serve publish grant. A reply for a DIFFERENT endpoint, or on a
67
+ // nonce that is not the one we published (the rail is shared across our concurrent
68
+ // requests, and a hostile responder can publish at any nonce), is NOT ours — ignore it
69
+ // and keep waiting, never fail the honest describe on an injected reply.
70
+ const parsed = parseEpSubject(msg.subject);
71
+ if (!parsed || parsed.plane !== "reply" || parsed.endpoint !== endpoint || parsed.nonce !== n)
72
+ return;
73
+ // Then the body: it must parse as an EndpointReply and ECHO our request id on this
74
+ // nonce-scoped rail (§13.3) — the second half of the confused-deputy binding.
75
+ let reply;
76
+ try {
77
+ reply = parseEndpointReply(JSON.parse(dec.decode(msg.data)));
78
+ }
79
+ catch {
80
+ return;
81
+ } // a malformed body on our nonce is not a usable answer; wait for a valid one
82
+ if (reply.id !== requestId)
83
+ return;
84
+ resolve({ body: reply, responder: { instanceId: parsed.instanceId, epoch: parsed.epoch } });
85
+ },
86
+ });
87
+ nc.publish(subject, enc.encode(JSON.stringify(env)));
88
+ });
89
+ const timeout = new Promise((_, reject) => { timer = setTimeout(() => reject(new EpEnvelopeError("deadline-exceeded", `no describe reply from ${endpoint} within ${deadlineMs}ms`)), deadlineMs); });
90
+ const { body: reply, responder } = await Promise.race([got, timeout]);
91
+ if (reply.ok !== true) {
92
+ const e = reply.error;
93
+ throw new EpEnvelopeError(e?.code ?? "unavailable", `describe(${endpoint}) failed: ${e?.message ?? "unknown"}`);
94
+ }
95
+ return { answer: reply.data, responder };
96
+ }
97
+ finally {
98
+ sub?.unsubscribe();
99
+ if (timer !== undefined)
100
+ clearTimeout(timer);
101
+ }
102
+ }
103
+ /** Fetch + verify ONE cluster document from the store at its closure digest (two-stage §13.7:
104
+ * the manifest at the closure digest, whose `root` names the document artifact). A cluster
105
+ * document declares no by-digest child references, so its closure is {root}. */
106
+ async function fetchClusterDocument(store, closureDigest) {
107
+ const { manifest, artifacts } = await fetchContractClosure(store, closureDigest, () => []);
108
+ const rootBytes = artifacts.get(contractRefToHex(manifest.root));
109
+ if (rootBytes === undefined)
110
+ throw new EpEnvelopeError("failed-precondition", `the cluster manifest ${closureDigest} names root ${manifest.root} but the root artifact is absent from the fetched closure (SPEC 13.7)`);
111
+ return parseClusterDocument(JSON.parse(dec.decode(rootBytes)));
112
+ }
113
+ /** Fetch a schema CLOSURE from the store and PROFILE-recompile it, binding every by-digest member.
114
+ * The recompiled contract's closureDigest MUST equal the digest we fetched at — a store that
115
+ * served bytes hashing to a different closure is a tamper/bug and fails loud (§13.7). */
116
+ async function recompileClosure(store, closureDigest) {
117
+ // Walk the schema closure, resolving `cotal:sha256:<hex>` refs a document makes (the profile's
118
+ // reference form) so a multi-document schema bundle rebuilds. A recompiled contract carries the
119
+ // registered digest, so an equality check below is the tamper boundary.
120
+ const { manifest, artifacts } = await fetchContractClosure(store, closureDigest, (bytes) => extractSchemaRefs(bytes));
121
+ const members = {};
122
+ for (const [hex, bytes] of artifacts)
123
+ members[`sha256:${hex}`] = JSON.parse(dec.decode(bytes));
124
+ const rootRef = manifest.root;
125
+ const root = members[rootRef];
126
+ if (root === undefined)
127
+ throw new EpEnvelopeError("failed-precondition", `schema closure ${closureDigest} is missing its root ${rootRef} (SPEC 13.7)`);
128
+ // The bundle members are the NON-root artifacts, keyed by their `sha256:` ref (the profile's
129
+ // resolution form); the root is passed separately.
130
+ const bundleMembers = {};
131
+ for (const [ref, value] of Object.entries(members))
132
+ if (ref !== rootRef)
133
+ bundleMembers[ref] = value;
134
+ const compiled = compileContract({ root, members: bundleMembers });
135
+ if (compiled.closureDigest !== closureDigest)
136
+ throw new EpEnvelopeError("internal", `the recompiled schema closure hashes to ${compiled.closureDigest}, not the fetched ${closureDigest}; a store that served the wrong bytes never authorizes (SPEC 13.7)`);
137
+ return compiled;
138
+ }
139
+ /** The by-digest references a stored schema artifact makes: every string value anywhere in the
140
+ * document of the profile's `cotal:sha256:<hex>` `$ref` form, returned as bare `sha256:<hex>`
141
+ * refs for the closure walk. A schema with no refs (the common case) returns none. */
142
+ function extractSchemaRefs(bytes) {
143
+ const refs = [];
144
+ const walk = (v) => {
145
+ if (typeof v === "string") {
146
+ const m = /^cotal:(sha256:[0-9a-f]{64})$/.exec(v);
147
+ if (m)
148
+ refs.push(m[1]);
149
+ }
150
+ else if (Array.isArray(v)) {
151
+ for (const c of v)
152
+ walk(c);
153
+ }
154
+ else if (v !== null && typeof v === "object") {
155
+ for (const c of Object.values(v))
156
+ walk(c);
157
+ }
158
+ };
159
+ walk(JSON.parse(dec.decode(bytes)));
160
+ return refs;
161
+ }
162
+ /**
163
+ * DESCRIBE an endpoint and resolve its full invocation surface: send the reserved `describe`
164
+ * command (untargeted, void args), then for every VISIBLE cluster fetch + verify its document
165
+ * from the store and recompile each command's input/output contracts. The result lets a caller
166
+ * invoke any visible command by name with no compile-time knowledge of the endpoint's schemas.
167
+ *
168
+ * `describe` itself pins no contract (§13.7), so it is issued as a raw void-arg request
169
+ * ({@link describeEndpoint}), never through the digest-stamping {@link epCall}.
170
+ */
171
+ export async function resolveService(nc, space, endpoint, caller, opts = {}) {
172
+ const { answer, responder } = await describeEndpoint(nc, space, endpoint, caller, opts);
173
+ const store = await contractStoreContext(nc, space);
174
+ const commands = new Map();
175
+ const visible = new Set(answer.descriptor.clusters.flatMap((cl) => cl.commands));
176
+ for (const cluster of answer.descriptor.clusters) {
177
+ const doc = await fetchClusterDocument(store, cluster.digest);
178
+ for (const cmd of doc.commands) {
179
+ if (!visible.has(cmd.name))
180
+ continue; // a describe VIEW may narrow a cluster's commands
181
+ commands.set(cmd.name, {
182
+ command: cmd.name,
183
+ contract: { input: await recompileClosure(store, cmd.inputDigest), output: await recompileClosure(store, cmd.outputDigest) },
184
+ class: cmd.class,
185
+ targeted: cmd.targeted,
186
+ modes: cmd.modes ?? [],
187
+ capability: cmd.capability,
188
+ });
189
+ }
190
+ }
191
+ return { endpoint: answer.descriptor.endpoint, owner: answer.descriptor.owner, caller, responder, commands, ...(opts.instanceId !== undefined ? { pinnedInstanceId: opts.instanceId } : {}) };
192
+ }
193
+ /**
194
+ * INVOKE one named command on a resolved service: validate nothing here (the compiled input
195
+ * contract in {@link epCall}'s request builder gates args before publish, and the responder's
196
+ * digest-bound boundary re-validates), route on the `one` rail, return the attributed reply. A
197
+ * command absent from the resolved surface is `not-found` (the caller cannot see it, or it does
198
+ * not exist); a targeted command needs its `target`.
199
+ *
200
+ * Currency: `opts.currentEpoch` (e.g. the registry-read `serviceEpochReader`) when supplied;
201
+ * otherwise the DESCRIBE-BOUND default - accept exactly the incarnation that answered this
202
+ * service's resolve (its broker-authenticated `instanceId`+`epoch` off the describe reply
203
+ * subject) and refuse `failed-precondition` when a DIFFERENT instance wins the `one` queue
204
+ * (a superseded-or-split responder; re-resolve to adopt a legitimate successor). The bind needs
205
+ * no registry read grant, and it is strictly stronger than no check: two live instances of a
206
+ * single-instance endpoint can never both pass one resolved handle.
207
+ */
208
+ export async function invokeCommand(nc, space, service, command, args, opts) {
209
+ const resolved = service.commands.get(command);
210
+ if (resolved === undefined)
211
+ throw new EpEnvelopeError("not-found", `command "${command}" is not in ${service.endpoint}'s visible surface; describe lists ${[...service.commands.keys()].sort().join(", ") || "(none)"}`);
212
+ if (resolved.targeted && opts.target === undefined)
213
+ throw new EpEnvelopeError("bad-request", `command "${command}" is targeted (modes: ${resolved.modes.join(", ")}); an invoke needs its target`);
214
+ if (!resolved.targeted && opts.target !== undefined)
215
+ throw new EpEnvelopeError("bad-request", `command "${command}" is untargeted; an invoke must not carry a target`);
216
+ const caller = service.caller;
217
+ // "No args" marshals to the CONTRACT's canonical empty form: absent args ride as null on the
218
+ // wire, so when this command's input rejects null but accepts the empty object (e.g. an
219
+ // all-optional `{type:"object"}` input like despawn's), send `{}` — that IS the caller's
220
+ // intent in that contract's vocabulary (a targeted CLI stop has nothing left after the alias
221
+ // becomes the target block). Contract-derived, never a guess: an input that requires fields
222
+ // accepts neither form and still refuses loud at the pre-publish validation below.
223
+ let sendArgs = args;
224
+ if (sendArgs === undefined && !resolved.contract.input.validate(null) && resolved.contract.input.validate({}))
225
+ sendArgs = {};
226
+ const describeBound = (instanceId) => {
227
+ if (instanceId !== service.responder.instanceId)
228
+ throw new EpEnvelopeError("failed-precondition", `the ${service.endpoint} instance ${instanceId} answered but this service handle resolved against ${service.responder.instanceId}; a different queue winner is a superseded-or-split responder - re-resolve the service to adopt it (SPEC 13.2)`);
229
+ return service.responder.epoch;
230
+ };
231
+ // P2 item 3 `--on`: a PINNED service routes to its exact instance's `inst` rail (the same instance the
232
+ // describe resolved to, at its resolved epoch), never the class `one` queue — so the command reaches
233
+ // the addressed manager in a multi-manager space. Unpinned ⇒ class anycast `one` (unchanged). The
234
+ // describeBound currency check still holds: an inst-routed reply carries that instance's id.
235
+ const route = service.pinnedInstanceId !== undefined
236
+ ? { mode: "inst", instanceId: service.pinnedInstanceId, epoch: service.responder.epoch }
237
+ : { mode: "one" };
238
+ return epCall(nc, space, route, {
239
+ endpoint: service.endpoint, command, contract: resolved.contract, caller,
240
+ ...(sendArgs !== undefined ? { args: sendArgs } : {}),
241
+ ...(opts.target ? { target: opts.target } : {}),
242
+ }, { deadlineMs: opts.deadlineMs ?? 10_000, currentEpoch: opts.currentEpoch ?? describeBound });
243
+ }
244
+ /** Submit an ACTION command and FOLLOW its goal to the terminal (P2 item 2, 2b): since 2a a
245
+ * spawn/launch reply is the ACCEPTANCE (returned before the agent is live), so a consumer that
246
+ * wants the old block-until-outcome behaviour follows the caller-scoped progress subtree to the
247
+ * terminal here. The subscription opens BEFORE `submit` runs (a fast join could terminalize within
248
+ * milliseconds of the acceptance), buffering terminals by goalId. The reply is then RESOLVED from
249
+ * the terminal: `succeeded` → the terminal's data (today's live reply — name/id/role/agent/mode/
250
+ * lifecycleUid), `failed`/`uncertain`/`cancelled` → a non-ok reply carrying the cause. A reply with
251
+ * NO goalId (a refuse-at-accept, or a non-action command) passes through unchanged. UX is preserved:
252
+ * the call still returns on the real outcome. The caller needs the per-goal progress read row
253
+ * ({@link epGoalProgressGrantRow}) — minted with any goal-bearing capability. */
254
+ export async function submitAndFollowGoal(nc, space, endpoint, caller, deadlineMs, submit) {
255
+ const terminals = new Map();
256
+ const waiters = new Map();
257
+ const sub = nc.subscribe(epGoalProgressGrantRow(space, endpoint, caller), {
258
+ callback: (err, m) => {
259
+ if (err)
260
+ return;
261
+ let ev;
262
+ try {
263
+ ev = JSON.parse(dec.decode(m.data));
264
+ }
265
+ catch {
266
+ return;
267
+ }
268
+ if (ev && ev.phase === "terminal" && typeof ev.goalId === "string") {
269
+ terminals.set(ev.goalId, { state: String(ev.state), data: ev.data });
270
+ waiters.get(ev.goalId)?.();
271
+ }
272
+ },
273
+ });
274
+ try {
275
+ const attributed = await submit();
276
+ if (attributed.reply.ok !== true)
277
+ return attributed; // refuse at accept — surface as-is
278
+ const goalId = attributed.reply.data?.goalId;
279
+ if (typeof goalId !== "string")
280
+ return attributed; // not an action reply — pass through
281
+ const terminal = terminals.get(goalId) ?? await new Promise((resolve) => {
282
+ const t = setTimeout(() => resolve(terminals.get(goalId)), deadlineMs);
283
+ waiters.set(goalId, () => { clearTimeout(t); resolve(terminals.get(goalId)); });
284
+ });
285
+ if (terminal === undefined)
286
+ return { ...attributed, reply: { ...attributed.reply, ok: false, data: undefined, error: { code: "deadline-exceeded", message: `the goal "${goalId}" produced no terminal within ${deadlineMs}ms; read its outcome with 'ps'/'inspect' (SPEC 13.6)` } } };
287
+ if (terminal.state === "succeeded")
288
+ return { ...attributed, reply: { ...attributed.reply, ok: true, ...(terminal.data !== undefined ? { data: terminal.data } : { data: undefined }), error: undefined } };
289
+ const d = (terminal.data ?? {});
290
+ const message = typeof d.error === "string" ? d.error : typeof d.reason === "string" ? d.reason : `the goal settled ${terminal.state}`;
291
+ return { ...attributed, reply: { ...attributed.reply, ok: false, data: undefined, error: { code: terminal.state, message } } };
292
+ }
293
+ finally {
294
+ sub.unsubscribe();
295
+ }
296
+ }
297
+ /**
298
+ * SCATTER one untargeted command to the LIVE class (§13.5): resolve the command's contract off the
299
+ * same digest-verified surface {@link invokeCommand} uses, then run the registry-wired scatter —
300
+ * freeze the expected set from the records registry, publish ONCE on the `all` rail, gather one
301
+ * attributed reply per instance, and reconcile registration currency post-classification. The
302
+ * returned `replies` map is keyed by instanceId (per-instance attribution, SPEC §13.5); a frozen
303
+ * instance that produced no on-time reply is a `missing` slot — reported UNREACHABLE, never silently
304
+ * omitted. The caller's connection carries the §13.9 records-read grant the freeze/reconcile ride (a
305
+ * scoped read of the endpoint's `svc` registry); `jsm`/`kv` are opened over it here.
306
+ *
307
+ * A scatter addresses EVERY instance, so a targeted command is refused (a per-instance target is
308
+ * incoherent with the `all` rail) and a handle PINNED to one instance is refused (a pin is the
309
+ * anti-scatter — use {@link invokeCommand} for `--on`). "No args" marshals to the contract's
310
+ * canonical empty form exactly as {@link invokeCommand}.
311
+ */
312
+ export async function scatterCommand(nc, space, service, command, args, opts) {
313
+ const resolved = service.commands.get(command);
314
+ if (resolved === undefined)
315
+ throw new EpEnvelopeError("not-found", `command "${command}" is not in ${service.endpoint}'s visible surface; describe lists ${[...service.commands.keys()].sort().join(", ") || "(none)"}`);
316
+ if (resolved.targeted)
317
+ throw new EpEnvelopeError("bad-request", `command "${command}" is targeted; a class scatter addresses every instance and cannot carry a per-instance target (SPEC 13.5)`);
318
+ if (service.pinnedInstanceId !== undefined)
319
+ throw new EpEnvelopeError("bad-request", `a class scatter cannot run on a handle pinned to instance ${service.pinnedInstanceId}; resolve the service unpinned (a pin is the anti-scatter, SPEC 13.5)`);
320
+ const caller = service.caller;
321
+ // Same contract-canonical empty-args marshaling as invokeCommand: absent args ride as {} when the
322
+ // command's input rejects null but accepts the empty object (e.g. an all-optional object input).
323
+ let sendArgs = args;
324
+ if (sendArgs === undefined && !resolved.contract.input.validate(null) && resolved.contract.input.validate({}))
325
+ sendArgs = {};
326
+ // `checkAPI: false` so the caller needs NO account `$JS.API.INFO` grant: the freeze's reads are
327
+ // the scoped records-registry rows (`STREAM.INFO` + leader `STREAM.MSG.GET`), never an account
328
+ // probe. The scatter's grant stays exactly the §13.9 records read. No KV handle is opened — the
329
+ // freeze derives the bucket name and reads via jsm only.
330
+ const jsm = await jetstreamManager(nc, { checkAPI: false });
331
+ return epScatterService(nc, jsm, space, {
332
+ endpoint: service.endpoint, command, contract: resolved.contract, caller,
333
+ ...(sendArgs !== undefined ? { args: sendArgs } : {}),
334
+ }, opts);
335
+ }
336
+ /** A digest reference's bare hex, exported so a CLI can print the resolved surface's digests. */
337
+ export function contractDigestHexOf(value) {
338
+ return contractArtifactDigestHex(new TextEncoder().encode(JSON.stringify(value)));
339
+ }
340
+ //# sourceMappingURL=endpoint-invoke.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-invoke.js","sourceRoot":"","sources":["../src/endpoint-invoke.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-records.d.ts","sourceRoot":"","sources":["../src/endpoint-records.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint-records.d.ts","sourceRoot":"","sources":["../src/endpoint-records.ts"],"names":[],"mappings":"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"}
@@ -212,6 +212,23 @@ export const RECORD_KINDS = {
212
212
  writers: { spec: "commit-path", status: "commit-path" },
213
213
  mediation: "mediated",
214
214
  },
215
+ goalidx: {
216
+ // The MANAGER-ENDPOINT reconcile index (P2 item 2 must-5, Q-B): one atomic unsplit key per
217
+ // IN-FLIGHT action goal, `goalidx.<e>.<cOwner>.<cActor>.<cUid>.<goalId>`, written CREATE-ONLY
218
+ // by the goal-writer BEFORE the goal bind and DELETED at the terminal. It is the endpoint's
219
+ // OWN durable list of accepted-but-unterminal goals: a successor incarnation (a manager
220
+ // restart takes a fresh instanceId, so the in-memory acceptance map is gone) enumerates
221
+ // `goalidx.<e>.>` over the provisioner and settles every orphan, never dropping an accepted
222
+ // goal. NARROW by construction: a dedicated index the goal-writer alone writes — NOT a broad
223
+ // read over the caller-scoped `goal.<triple>.>` records (the rejected sealed-scanner option).
224
+ // The value carries the goal ref coordinates so the sweep rebuilds the GoalRef without parsing
225
+ // owner/actor tokens out of the key.
226
+ kind: "goalidx",
227
+ qualifiers: [qEndpoint, qOwner("cOwner"), qOwner("cActor"), qUid("cUid"), qId("goalId")],
228
+ split: false,
229
+ writers: { spec: "commit-path", status: "commit-path" },
230
+ mediation: "mediated",
231
+ },
215
232
  cp: {
216
233
  kind: "cp",
217
234
  qualifiers: [qEndpoint, qId("token")],
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-records.js","sourceRoot":"","sources":["../src/endpoint-records.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint-records.js","sourceRoot":"","sources":["../src/endpoint-records.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * The §13.1 endpoint-serve CREDENTIAL LIFECYCLE over a plain KV — the shared core home for the
3
+ * endpoint credential family (`epgate.<endpoint>.<instanceId>` + `epcred.<endpoint>.<instanceId>.
4
+ * <credentialId>`) so BOTH the auth session ledger and the manager's endpoint-serve wiring drive
5
+ * ONE implementation (fact H3 / P2 item 1 "1a-gate"; the manager cannot import
6
+ * implementations/auth, AGENTS.md one-way deps, so the KV binding lives in core — the same
7
+ * guarded-core lift as the Unit B lifecycle-saga).
8
+ *
9
+ * This module is the raw-KV credential-ledger primitives + the endpoint-serve mint fence + the
10
+ * production issuance barrier. It carries NO auth-store branding: a caller supplies the bound KV +
11
+ * space (the auth session ledger unwraps its `SessionAuthStore`; the manager binds its own auth
12
+ * bucket). The KEY GRAMMAR + row parsers stay in `lifecycle-state.ts`; this module is the CAS
13
+ * operations over them.
14
+ */
15
+ import type { KV } from "@nats-io/kv";
16
+ import type { EpIssuanceGate, EpServeLedgerRow } from "./endpoint-service.js";
17
+ /** Create a credential-ledger row CREATE-ONLY, idempotent iff BYTE-IDENTICAL: staging a key that
18
+ * already exists succeeds only when the stored bytes match (a retry of the SAME issuance), and
19
+ * CONFLICTs when they differ (a staged name never silently re-binds the row revocation/audit
20
+ * relies on). A create loss whose cause is not a CAS conflict fails the mint CLOSED. */
21
+ export declare function createRowByteIdempotent(kv: KV, key: string, value: unknown): Promise<void>;
22
+ /** CAS a credential-ledger row `active` -> `revoked` at its observed revision (retrying on a CAS
23
+ * loss). Idempotent on an already-revoked row; FAILS LOUD on an absent/DEL row — a vanished
24
+ * never-delete ledger row is corruption, never a "never staged" idempotence case. */
25
+ export declare function markLedgerRowRevoked(kv: KV, key: string): Promise<"revoked" | "already-revoked">;
26
+ /** The §13.1 endpoint-serve MINT FENCE over a bound KV — the `EpIssuanceGate` core's serve mint
27
+ * (`mintCreds`, profile `endpoint-serve`) fences its release on: it stages the per-JWT `epcred.
28
+ * <endpoint>.<instanceId>.<credentialId>` row, then a revision-pinned identical-bytes TOUCH of the
29
+ * `epgate.<endpoint>.<instanceId>` key (a barrier that moved the gate since observation makes the
30
+ * mint LOSE). Lifted from the auth session ledger (fact H3) so both the auth session redemption
31
+ * and the manager's endpoint-serve wiring drive ONE fence; the auth `kvServeIssuanceGate` wraps
32
+ * this by unwrapping its branded `SessionAuthStore` to `(kv, space)`. `space` is carried on the
33
+ * observed gate for the core mint's space-bond defense (the KV IS the space bucket). */
34
+ export declare function serveIssuanceGateKv(kv: KV, space: string, args: {
35
+ endpoint: string;
36
+ instanceId: string;
37
+ }): EpIssuanceGate;
38
+ /** Stage a SIBLING credential into an instance's §13.1 family under the SAME open-and-commit fence
39
+ * {@link import("./endpoint-service.js").finalizeServeIssuance} runs for the serve credential
40
+ * itself. A "sibling" is any credential minted beside the serve cred against the same
41
+ * `epgate.<endpoint>.<instanceId>` and staged into the same `epcred.<endpoint>.<instanceId>`
42
+ * family (the manager's goal-writer and its §13.6 session credentials): the family IS the
43
+ * takeover/retirement barrier's revocation unit, so a sibling that joins it without the fence is a
44
+ * credential the barrier can never revoke.
45
+ *
46
+ * THE PASSED-IN OBSERVATION IS THE AUTHORITY AND IS NEVER REPLACED BY A RE-READ. A sibling's grant
47
+ * is built FROM the observed coordinates (the serving epoch above all), so what this commit must
48
+ * fence is the gate the credential was MINTED against. Fencing whatever the gate says NOW would be
49
+ * the hole: the dangerous case is not a frozen gate but a COMPLETED takeover — freeze →
50
+ * revoke/evict → reopen leaves the gate `open` again at a NEW generation, so a mint that re-pinned
51
+ * to the successor would win its CAS and release a JWT minted against the PREDECESSOR's coordinates
52
+ * into the family the barrier has just finished reconciling. This function re-reads the gate ONLY
53
+ * to CLASSIFY a lost CAS, and every field of that re-read is compared against the ORIGINAL
54
+ * observation: a successor coordinate can therefore never be adopted, it can only be refused.
55
+ *
56
+ * Order, identical to the serve mint: require `open` -> stage the row -> revision-pinned commit ->
57
+ * release ONLY on the win. A frozen gate refuses before anything is written; a gate that MOVED
58
+ * between the caller's observe and this commit loses the CAS, and the staged row is revoked so no
59
+ * active row is left in a family the barrier already enumerated. A revoke failure is surfaced, not
60
+ * swallowed — the reconciliation debt must be visible. The caller releases the credential only if
61
+ * this resolves. */
62
+ export declare function commitSiblingIssuance(gate: import("./endpoint-service.js").EpIssuanceGate, observed: import("./endpoint-service.js").EpGateState, row: EpServeLedgerRow): Promise<void>;
63
+ /** Provision the endpoint's issuance gate OPEN (create-only), the §13.1 pre-registration a
64
+ * `registerServiceInstance` writes behind — "a registration writes only behind the
65
+ * provisioner-created gate". Born `open` at generation 0 / epoch 0 / registrationRevision 0 /
66
+ * nameAuthorityRevision 0, bound to the serving connection principal (the eviction target every
67
+ * `epcred` row copies). Create-only + idempotent-if-identical: a second provision of the SAME
68
+ * (endpoint, instanceId, principal) is a retry, a DIFFERENT principal is a conflict (an instance
69
+ * token is never re-bound). */
70
+ export declare function provisionEndpointGateOpen(kv: KV, args: {
71
+ endpoint: string;
72
+ instanceId: string;
73
+ principal: string;
74
+ }): Promise<void>;
75
+ /** The §13.1 endpoint-registration ISSUANCE BARRIER over a bound KV — the production barrier a
76
+ * `registerServiceInstance` drives (observe -> freeze -> enumerate -> revoke -> [evict] -> reopen),
77
+ * freezing this instance's `epgate.<endpoint>.<instanceId>` so no serve mint can win against the
78
+ * surface the registration is about to supersede.
79
+ *
80
+ * For a FRESH first registration the enumerated `epcred` family is EMPTY, so revoke/evict are not
81
+ * exercised — but they are REAL code (a later takeover/re-registration of a LIVE instance MUST
82
+ * revoke the prior serve family and verify-evict its holders; a stub would silently skip that).
83
+ * `evict` is INJECTED: cluster-verified eviction is the $SYS CONNZ+KICK machinery (D5 slice 4),
84
+ * not this module's job. The DEFAULT is FAIL-CLOSED `() => false` — "no evictor ⇒ eviction cannot
85
+ * be VERIFIED ⇒ report not-verified" — so the saga's own guard (`if (!evict) throw`) leaves the
86
+ * gate FROZEN for reconciliation on a takeover with no real evictor, never silently reopening into
87
+ * split-brain. It is ONLY consulted on a NON-EMPTY family (a takeover); a fresh registration's
88
+ * empty family never invokes it, so this default never touches the 1a-gate path — it enforces the
89
+ * guard the moment a live predecessor exists. A caller with the real $SYS evictor injects it. The
90
+ * freeze/reopen CAS is the real fence: a barrier that moved the gate makes a racing mint LOSE. */
91
+ export declare function endpointRegistrationBarrier(kv: KV, space: string, args: {
92
+ endpoint: string;
93
+ instanceId: string;
94
+ opId: string;
95
+ evict?: (holderPrincipal: string) => Promise<boolean> | boolean;
96
+ }): import("./endpoint-service.js").EpIssuanceBarrier;
97
+ //# sourceMappingURL=endpoint-serve-kv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-serve-kv.d.ts","sourceRoot":"","sources":["../src/endpoint-serve-kv.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAKtC,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAK9E;;;yFAGyF;AACzF,wBAAsB,uBAAuB,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAWhG;AAED;;sFAEsF;AACtF,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,iBAAiB,CAAC,CAkBtG;AAED;;;;;;;yFAOyF;AACzF,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,CAyDzH;AAED;;;;;;;;;;;;;;;;;;;;;;;qBAuBqB;AACrB,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,OAAO,uBAAuB,EAAE,cAAc,EACpD,QAAQ,EAAE,OAAO,uBAAuB,EAAE,WAAW,EACrD,GAAG,EAAE,gBAAgB,GACpB,OAAO,CAAC,IAAI,CAAC,CA4Df;AAED;;;;;;gCAMgC;AAChC,wBAAsB,yBAAyB,CAC7C,EAAE,EAAE,EAAE,EACN,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAChE,OAAO,CAAC,IAAI,CAAC,CASf;AAED;;;;;;;;;;;;;;;mGAemG;AACnG,wBAAgB,2BAA2B,CACzC,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;CAAE,GAC5H,OAAO,uBAAuB,EAAE,iBAAiB,CAiFnD"}