@cotal-ai/auth 0.90.1 → 0.91.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 (80) hide show
  1. package/dist/authority-client.d.ts.map +1 -1
  2. package/dist/authority-client.js +4 -1
  3. package/dist/authority-client.js.map +1 -1
  4. package/dist/chat-parent-pin.d.ts +43 -0
  5. package/dist/chat-parent-pin.d.ts.map +1 -0
  6. package/dist/chat-parent-pin.js +115 -0
  7. package/dist/chat-parent-pin.js.map +1 -0
  8. package/dist/chat-session-authority.d.ts +120 -0
  9. package/dist/chat-session-authority.d.ts.map +1 -0
  10. package/dist/chat-session-authority.js +924 -0
  11. package/dist/chat-session-authority.js.map +1 -0
  12. package/dist/chat-session-row.d.ts +117 -0
  13. package/dist/chat-session-row.d.ts.map +1 -0
  14. package/dist/chat-session-row.js +358 -0
  15. package/dist/chat-session-row.js.map +1 -0
  16. package/dist/chat-session-store.d.ts +126 -0
  17. package/dist/chat-session-store.d.ts.map +1 -0
  18. package/dist/chat-session-store.js +392 -0
  19. package/dist/chat-session-store.js.map +1 -0
  20. package/dist/commands.d.ts +3 -1
  21. package/dist/commands.d.ts.map +1 -1
  22. package/dist/commands.js +497 -122
  23. package/dist/commands.js.map +1 -1
  24. package/dist/continuity.js +1 -1
  25. package/dist/continuity.js.map +1 -1
  26. package/dist/daemon-flags.d.ts +42 -0
  27. package/dist/daemon-flags.d.ts.map +1 -0
  28. package/dist/daemon-flags.js +12 -0
  29. package/dist/daemon-flags.js.map +1 -0
  30. package/dist/handle-inspect.d.ts +101 -0
  31. package/dist/handle-inspect.d.ts.map +1 -0
  32. package/dist/handle-inspect.js +50 -0
  33. package/dist/handle-inspect.js.map +1 -0
  34. package/dist/handle-verification.d.ts +75 -0
  35. package/dist/handle-verification.d.ts.map +1 -0
  36. package/dist/handle-verification.js +135 -0
  37. package/dist/handle-verification.js.map +1 -0
  38. package/dist/idp.d.ts +23 -1
  39. package/dist/idp.d.ts.map +1 -1
  40. package/dist/idp.js +54 -8
  41. package/dist/idp.js.map +1 -1
  42. package/dist/index.d.ts +3 -2
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +3 -2
  45. package/dist/index.js.map +1 -1
  46. package/dist/ledger.d.ts +58 -5
  47. package/dist/ledger.d.ts.map +1 -1
  48. package/dist/ledger.js +126 -6
  49. package/dist/ledger.js.map +1 -1
  50. package/dist/lifecycle-registry.d.ts +1 -70
  51. package/dist/lifecycle-registry.d.ts.map +1 -1
  52. package/dist/lifecycle-registry.js +4 -35
  53. package/dist/lifecycle-registry.js.map +1 -1
  54. package/dist/login.d.ts +9 -0
  55. package/dist/login.d.ts.map +1 -1
  56. package/dist/login.js +53 -8
  57. package/dist/login.js.map +1 -1
  58. package/dist/permissions.js +4 -0
  59. package/dist/permissions.js.map +1 -1
  60. package/dist/provider.d.ts +23 -0
  61. package/dist/provider.d.ts.map +1 -1
  62. package/dist/provider.js +244 -44
  63. package/dist/provider.js.map +1 -1
  64. package/dist/service-adapter.d.ts +6 -0
  65. package/dist/service-adapter.d.ts.map +1 -0
  66. package/dist/service-adapter.js +120 -0
  67. package/dist/service-adapter.js.map +1 -0
  68. package/dist/service.d.ts +61 -2
  69. package/dist/service.d.ts.map +1 -1
  70. package/dist/service.js +385 -79
  71. package/dist/service.js.map +1 -1
  72. package/dist/store.d.ts +10 -0
  73. package/dist/store.d.ts.map +1 -1
  74. package/dist/store.js +25 -8
  75. package/dist/store.js.map +1 -1
  76. package/dist/token.d.ts +1 -1
  77. package/dist/token.d.ts.map +1 -1
  78. package/dist/token.js +4 -1
  79. package/dist/token.js.map +1 -1
  80. package/package.json +11 -7
package/dist/ledger.js CHANGED
@@ -35,9 +35,10 @@
35
35
  */
36
36
  import { createHash, randomBytes, timingSafeEqual } from "node:crypto";
37
37
  import { closeSync, constants, existsSync, fstatSync, lstatSync, openSync, readdirSync, readFileSync, renameSync, rmSync } from "node:fs";
38
- import { join } from "node:path";
39
- import { assertDerivedOwnerToken, assertValidChannel, assertValidOwnerToken, mintLifecycleUid, mkSecretDir, parseActorLedgerSource, parsePrincipalKey, patternInAllow, writeSecretFile, } from "@cotal-ai/core";
38
+ import { join, resolve } from "node:path";
39
+ import { acquireLock, assertDerivedOwnerToken, assertManagedGrantCustody, assertValidChannel, assertValidOwnerToken, mintLifecycleUid, mkSecretDir, parseActorLedgerSource, parsePrincipalKey, patternInAllow, sameManagedGrantCustody, writeSecretFile, } from "@cotal-ai/core";
40
40
  import { grantCommandLine } from "./grant-command.js";
41
+ import { chatSessionAliasPresent } from "./chat-session-row.js";
41
42
  const ACTORS_DIR = "actors";
42
43
  const MANAGED_DIR = "managed-actors";
43
44
  const LEDGER_VER = 1;
@@ -92,6 +93,16 @@ function readRow(path, kind) {
92
93
  throw new Error(`${path}: an interactive grant must not carry an agent token hash - it was written by the wrong path; remove the row and re-grant (\`cotal actor grant\`)`);
93
94
  if (kind === "managed-agent" && !(typeof parsed.tokenHash === "string" && /^[0-9a-f]{64}$/.test(parsed.tokenHash)))
94
95
  throw new Error(`${path}: managed-agent grant has a missing/corrupted secret hash - respawn the agent (\`cotal spawn\`) to rewrite it`);
96
+ if (kind === "interactive" && parsed.custody !== undefined)
97
+ throw new Error(`${path}: an interactive grant must not carry managed custody - it was written by the wrong path; remove the row and re-grant (\`cotal actor grant\`)`);
98
+ if (kind === "managed-agent" && parsed.custody !== undefined) {
99
+ try {
100
+ assertManagedGrantCustody(parsed.custody);
101
+ }
102
+ catch (e) {
103
+ throw new Error(`${path}: managed-agent grant has a malformed custody record (${e instanceof Error ? e.message : String(e)}) - respawn the agent to rewrite it`);
104
+ }
105
+ }
95
106
  const { ver: _ver, ...row } = parsed;
96
107
  return row;
97
108
  }
@@ -144,6 +155,11 @@ export function findManagedActor(dir, owner, actor) {
144
155
  export function findActorUnified(dir, owner, actor) {
145
156
  const interactive = findIn(dir, "interactive", owner, actor);
146
157
  const managed = findIn(dir, "managed-agent", owner, actor);
158
+ // THE THIRD SPACE: a principal present in `chat-sessions/` AND in either grant space is a
159
+ // broken ledger and denies. A chat row is never returned here: it is not an actor grant, and its
160
+ // connect authority is the chat arm's closed reader plus the holder index (chat-session-row.ts).
161
+ if ((interactive || managed) && chatSessionAliasPresent(dir, owner, actor))
162
+ throw new Error(`actor "${actor}" is present in BOTH the chat-session row space and a grant row space - a broken ledger denies; a chat alias is never an interactive or managed grant`);
147
163
  if (interactive && managed)
148
164
  throw new Error(`actor "${actor}" is granted in BOTH the interactive and managed row spaces - a broken ledger denies; remove one of ${rowPath(dir, "interactive", owner, actor)} / ${rowPath(dir, "managed-agent", owner, actor)}`);
149
165
  if (interactive)
@@ -160,6 +176,13 @@ function writeRow(dir, kind, row) {
160
176
  writeSecretFile(tmp, JSON.stringify({ ver: LEDGER_VER, ...row }, null, 2));
161
177
  renameSync(tmp, path);
162
178
  }
179
+ /** An alias present in the chat-session row space is never written as an interactive or managed
180
+ * grant. (The ordinary-name `chat_` prefix reservation lives at the static manager's admission
181
+ * boundary, not here.) */
182
+ function assertNotChatAlias(dir, owner, actor, writer) {
183
+ if (chatSessionAliasPresent(dir, owner, actor))
184
+ throw new Error(`${writer}: actor "${actor}" is a chat session - a chat session is admitted only by the auth service, never granted; pick another actor name`);
185
+ }
163
186
  function assertRowInputs(row) {
164
187
  if (row.parent !== undefined) {
165
188
  const parts = row.parent.split(".");
@@ -198,9 +221,15 @@ function assertRowInputs(row) {
198
221
  * the envelope (an interactive row that carries a parent still gets link-checked when a managed
199
222
  * chain passes THROUGH it). */
200
223
  export function grantActor(dir, row) {
224
+ return withManagedGrantTransaction(dir, (tx) => tx.grantInteractive(row));
225
+ }
226
+ function rawGrantInteractive(dir, row) {
201
227
  assertRowInputs(row);
228
+ assertNotChatAlias(dir, row.owner, row.actor, "grantActor");
202
229
  if (row.tokenHash !== undefined)
203
230
  throw new Error("grantActor: an interactive grant cannot carry an agent token hash - managed-agent rows are written by the spawn path only");
231
+ if (row.custody !== undefined)
232
+ throw new Error("grantActor: an interactive grant cannot carry managed custody - only a managed-agent row records who holds its lifecycle");
204
233
  const managedRefusal = () => new Error(`actor "${row.actor}" is a managed agent - its grant is owned by the spawn lifecycle (respawn rewrites it, despawn revokes it); pick another actor name for an interactive grant`);
205
234
  if (findIn(dir, "managed-agent", row.owner, row.actor))
206
235
  throw managedRefusal();
@@ -299,11 +328,20 @@ function widenGrantCommand(pOwner, pActor, parent, addScope, addSub, addPub) {
299
328
  });
300
329
  }
301
330
  /** Author a MANAGED-AGENT row (spawn path only): the same upsert semantics, in the managed space,
302
- * with the secret hash REQUIRED — and never shadowing an interactive row. */
331
+ * with the secret hash and custody REQUIRED — and never shadowing an interactive row. Takes the
332
+ * managed-grant lock for this one write; a caller that must decide on a read first uses
333
+ * {@link withManagedGrantTransaction} instead. */
303
334
  export function grantManagedActor(dir, row) {
335
+ return withManagedGrantTransaction(dir, (tx) => tx.grantManaged(row));
336
+ }
337
+ function rawGrantManaged(dir, row) {
304
338
  assertRowInputs(row);
339
+ assertNotChatAlias(dir, row.owner, row.actor, "grantManagedActor");
305
340
  if (!/^[0-9a-f]{64}$/.test(row.tokenHash))
306
341
  throw new Error("grantManagedActor: tokenHash must be a sha256 hex digest");
342
+ // Custody is checked at runtime as well as by type: an untyped caller must not write a managed
343
+ // row that cannot say who holds its lifecycle.
344
+ assertManagedGrantCustody(row.custody);
307
345
  assertWithinSpawnerGrant(dir, row, "spawn");
308
346
  const shadowRefusal = () => new Error(`actor "${row.actor}" already has an interactive grant - a managed agent cannot shadow it; revoke it first (\`cotal actor revoke ${row.actor}\`) or spawn under another name`);
309
347
  if (findIn(dir, "interactive", row.owner, row.actor))
@@ -313,7 +351,7 @@ export function grantManagedActor(dir, row) {
313
351
  // name a lifecycle nobody runs. Only the interactive grantActor mints its own.
314
352
  if (row.lifecycleUid === undefined || row.lifecycleUid === "")
315
353
  throw new Error("grantManagedActor: a managed grant must carry the lifecycle uid the spawn path provisioned under; the ledger never mints one");
316
- const full = { ...row, lifecycleUid: row.lifecycleUid, grantedAt: new Date().toISOString() };
354
+ const full = { ...row, lifecycleUid: row.lifecycleUid, custody: row.custody, grantedAt: new Date().toISOString() };
317
355
  writeRow(dir, "managed-agent", full);
318
356
  // Symmetric post-write compensation (see grantActor) — at most one surviving row per principal.
319
357
  if (findIn(dir, "interactive", row.owner, row.actor)) {
@@ -326,18 +364,38 @@ export function grantManagedActor(dir, row) {
326
364
  * bearer mints and NEW connects immediately (both boundaries read fresh); an ALREADY-LIVE
327
365
  * connection dies at its bearer-bound JWT expiry — live eviction is the D5 lever, not the ledger's. */
328
366
  export function revokeActor(dir, owner, actor) {
329
- return revokeIn(dir, "interactive", owner, actor);
367
+ return withManagedGrantTransaction(dir, (tx) => tx.revokeInteractive(owner, actor));
330
368
  }
331
369
  export function revokeManagedActor(dir, owner, actor) {
332
- return revokeIn(dir, "managed-agent", owner, actor);
370
+ return withManagedGrantTransaction(dir, (tx) => tx.revokeManaged(owner, actor));
333
371
  }
334
372
  /** Revoke a managed row only while it still names `lifecycleUid`: a caller releasing one lifecycle
335
373
  * must never remove the grant a same-name successor holds. */
336
374
  export function revokeManagedActorAt(dir, owner, actor, lifecycleUid) {
375
+ return withManagedGrantTransaction(dir, (tx) => tx.revokeManagedAt(owner, actor, lifecycleUid));
376
+ }
377
+ /** Revoke a managed row only while it still names BOTH `lifecycleUid` and exactly `custody`, read
378
+ * under the managed-grant lock. A row at another uid is a successor (`superseded`); a row at the
379
+ * same uid with another custody, or with none, is not this caller's (`custody-mismatch`). */
380
+ export function revokeManagedActorIf(dir, owner, actor, expected) {
381
+ return withManagedGrantTransaction(dir, (tx) => tx.revokeManagedIf(owner, actor, expected));
382
+ }
383
+ function rawRevokeManagedAt(dir, owner, actor, lifecycleUid) {
337
384
  if (findIn(dir, "managed-agent", owner, actor)?.lifecycleUid !== lifecycleUid)
338
385
  return false;
339
386
  return revokeIn(dir, "managed-agent", owner, actor);
340
387
  }
388
+ function rawRevokeManagedIf(dir, owner, actor, expected) {
389
+ assertManagedGrantCustody(expected.custody);
390
+ const row = findIn(dir, "managed-agent", owner, actor);
391
+ if (row === undefined)
392
+ return "absent";
393
+ if (row.lifecycleUid !== expected.lifecycleUid)
394
+ return "superseded";
395
+ if (row.custody === undefined || !sameManagedGrantCustody(row.custody, expected.custody))
396
+ return "custody-mismatch";
397
+ return revokeIn(dir, "managed-agent", owner, actor) ? "revoked" : "absent";
398
+ }
341
399
  function revokeIn(dir, kind, owner, actor) {
342
400
  const p = rowPath(dir, kind, owner, actor);
343
401
  if (!existsSync(p))
@@ -345,11 +403,69 @@ function revokeIn(dir, kind, owner, actor) {
345
403
  rmSync(p);
346
404
  return true;
347
405
  }
406
+ // ---- the managed-grant transaction -------------------------------------------------------------
407
+ /** The file every grant-row writer serializes on, across processes. The path and label are the
408
+ * ones the provider used before this lock moved into the ledger. */
409
+ const MANAGED_GRANT_LOCK = "managed-grant.lock";
410
+ /** The ledger directories this process currently holds the lock for. It only REFUSES a second
411
+ * acquisition: nothing reads it to skip a lock, and it grants no reentry. */
412
+ const HELD_GRANT_LOCKS = new Set();
413
+ /**
414
+ * Run one synchronous read-decide-write over the actor ledger under the managed-grant lock,
415
+ * taken exactly once. This is a CALLER CONTRACT, not a sandbox:
416
+ *
417
+ * - The body MUST be synchronous: ledger reads, the decision, and ledger writes only. Async work
418
+ * (callout loading, broker provisioning, footprint removal) runs before or after it.
419
+ * - A body that returns a thenable is refused once it returns: the lock is released and the
420
+ * transaction is closed. That cannot undo or cancel anything the body already started, so it is
421
+ * a refusal, never a rollback.
422
+ * - A second transaction on the same `dir` from inside a body, in this process, throws instead of
423
+ * waiting on its own lock. There is no reentry and no "already locked" option.
424
+ */
425
+ export function withManagedGrantTransaction(dir, body) {
426
+ const key = resolve(dir);
427
+ if (HELD_GRANT_LOCKS.has(key))
428
+ throw new Error(`managed-grant transaction: this process already holds the grant lock for ${key}; a transaction is never nested and the public grant/revoke wrappers are never called from inside one`);
429
+ // The lock file lives in the ledger directory. Create that directory private first, so a
430
+ // revoke-only transaction never leaves it at the process umask (`acquireLock` would mkdir it).
431
+ mkSecretDir(dir);
432
+ const claim = acquireLock(join(dir, MANAGED_GRANT_LOCK), { label: "managed grant mutation" });
433
+ HELD_GRANT_LOCKS.add(key);
434
+ let open = true;
435
+ const live = (fn) => (...args) => {
436
+ if (!open)
437
+ throw new Error("managed-grant transaction: this transaction has ended; its operations are no longer valid");
438
+ return fn(...args);
439
+ };
440
+ const tx = Object.freeze({
441
+ read: live((owner, actor) => findActorUnified(dir, owner, actor)),
442
+ grantManaged: live((row) => rawGrantManaged(dir, row)),
443
+ grantInteractive: live((row) => rawGrantInteractive(dir, row)),
444
+ revokeInteractive: live((owner, actor) => revokeIn(dir, "interactive", owner, actor)),
445
+ revokeManaged: live((owner, actor) => revokeIn(dir, "managed-agent", owner, actor)),
446
+ revokeManagedAt: live((owner, actor, lifecycleUid) => rawRevokeManagedAt(dir, owner, actor, lifecycleUid)),
447
+ revokeManagedIf: live((owner, actor, expected) => rawRevokeManagedIf(dir, owner, actor, expected)),
448
+ });
449
+ try {
450
+ const result = body(tx);
451
+ if (result !== null && (typeof result === "object" || typeof result === "function") && typeof result.then === "function")
452
+ throw new Error("managed-grant transaction: the body returned a promise; a transaction body is synchronous, and its lock was released without waiting for it");
453
+ return result;
454
+ }
455
+ finally {
456
+ open = false;
457
+ HELD_GRANT_LOCKS.delete(key);
458
+ claim.release();
459
+ }
460
+ }
348
461
  /** The IdP bridge's `authorizeActor` hook (bearer-MINT boundary) — INTERACTIVE rows only, by
349
462
  * construction. A name that exists only as a managed agent gets the exact managed-path answer
350
463
  * (never "not granted", which would read as a permissions problem, and never a mint). */
351
464
  export function ledgerAuthorizeGrant(dir) {
352
465
  return (owner, actor) => {
466
+ // Reader isolation: a chat alias never exchanges as an interactive human bearer.
467
+ if (chatSessionAliasPresent(dir, owner, actor))
468
+ throw new Error(`actor "${actor}" is a chat session - it exchanges only through the chat bearer exchange with its holder proof, never as an interactive grant`);
353
469
  const row = findInteractiveActor(dir, owner, actor);
354
470
  if (!row) {
355
471
  if (findManagedActor(dir, owner, actor))
@@ -492,6 +608,10 @@ export function ledgerAuthorizeAgentExchange(dir, owner, actor, actorToken) {
492
608
  const deny = () => new Error("agent exchange refused: unknown agent or wrong secret - if this agent should exist, respawn it (`cotal spawn`) to rotate its grant");
493
609
  let row;
494
610
  try {
611
+ // Reader isolation: a chat alias is refused with the SAME sentence as every other
612
+ // failure here, so this unauthenticated surface never reveals that a chat session exists.
613
+ if (chatSessionAliasPresent(dir, owner, actor))
614
+ throw deny();
495
615
  row = findManagedActor(dir, owner, actor);
496
616
  }
497
617
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"ledger.js","sourceRoot":"","sources":["../src/ledger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ledger.js","sourceRoot":"","sources":["../src/ledger.ts"],"names":[],"mappings":"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"}
@@ -1,50 +1,3 @@
1
- /**
2
- * The D13 lifecycle registry, slice (1)+(2a) (SPEC §13.1, as amended): the sealed storage
3
- * authority for lifecycle identity — the space-global UID reservation, the three-state alias
4
- * head (`active | retiring | retired`), the activation saga over both stores, the leader-served
5
- * mapping reader that backs the `readProcessEpoch` seam D11 (restart supervision, status
6
- * commit) and D7 (session redemption) inject, and the issuance-gate CAS PRIMITIVES
7
- * (create/observe/freeze/op-pinned reopen/retire) for the agent gate family `gate.<lifecycleUid>`.
8
- *
9
- * DELIBERATELY NOT HERE (the later gated slices, §13.1 barrier order):
10
- * - the (3) normative credential ledger and the (2b) takeover barrier live in the SIBLING
11
- * module `credential-ledger.ts` (the same authority over the same stores, reached through
12
- * {@link registryStores}); this module keeps only the barrier's module-internal epoch seam
13
- * ({@link advanceEpochWithinTakeover} — there is still NO public epoch advance);
14
- * - no head retirement: `active → retiring → retired` is a finalization step of the
15
- * RETIREMENT barrier (a later slice), and exposing it without the completed barrier would
16
- * recreate the half-fence D13 exists to remove;
17
- * - no reachable production activation wiring and no credential release (the head is written
18
- * WITHOUT `currentCredentialId` until production issuance mints under the reopened gate).
19
- *
20
- * SURFACE: the activation saga and the gate primitives are PACKAGE-INTERNAL (not exported from
21
- * the package index) until the (3) ledger slice completes them into real operations; "no
22
- * production callsite" is not the same as no reachable API, so the API is not reachable. The
23
- * executor seam is the sealed registry itself: it is constructed only over the minting
24
- * authority's own authenticated connection, so holding a gate's `opId` string grants nothing
25
- * to a caller that cannot open the registry (the opId is an identifier, §13.1).
26
- *
27
- * The model (§13.1):
28
- * - the UID is entropy, never order: before anything else the minting authority WINS the
29
- * create-only, never-deleted, SPACE-GLOBAL reservation `uid.<lifecycleUid>`; a create
30
- * conflict burns the candidate (the alias head alone cannot reject the same UID under a
31
- * different alias), and a DEL/PURGE marker is corruption, never reusable absence;
32
- * - the head is a SINGLE unsplit key and `mappingRevision` IS its STORE revision (one leader
33
- * read returns `{ mapping, revision }`; the value carries no revision field);
34
- * - `active` is the ONLY current state: every currency seam (the epoch reader here) yields no
35
- * current mapping and no current epoch for `retiring` AND `retired` alike;
36
- * - activation is a CROSS-BUCKET SAGA with a durable op intent, in the normative order:
37
- * reserve UID → create the gate `frozen` carrying the activation op (unmintable from
38
- * birth) → CAS the alias head → reopen the gate LAST; a head-CAS loser terminalizes its own
39
- * orphan gate and its UID stays burned; a crash resumes the SAME op ({@link resumeActivation}),
40
- * never minting a second UID for one activation;
41
- * - the head and the reservation are NEVER-DELETED: a reader treats only TRUE ABSENCE as
42
- * virgin, and a deletion marker refuses LOUDLY as corruption;
43
- * - a `frozen` gate MUST carry its durable operation intent `{ opId, kind }`: a resumer
44
- * advances only the SAME `opId` (the opId is an identifier, never a bearer capability — the
45
- * op-pinned CAS plus the caller's own authenticated authority is what advances the gate),
46
- * and a stranger can neither reopen nor terminalize another operation's freeze.
47
- */
48
1
  import { type JetStreamClient, type JetStreamManager } from "@nats-io/jetstream";
49
2
  import { type KV } from "@nats-io/kv";
50
3
  import type { NatsConnection } from "@nats-io/transport-node";
@@ -60,29 +13,7 @@ export interface LifecycleRegistry {
60
13
  export interface LifecycleMappingReader {
61
14
  readonly space: string;
62
15
  }
63
- /** The bucket-config fields the shape proofs inspect (wire names, per the JetStream API).
64
- * PACKAGE-INTERNAL (with {@link assertAuthorityStreamShape}) for the sibling trusted-path
65
- * modules; never re-exported from the package index. */
66
- export interface AuthorityStreamCfg {
67
- allow_direct?: boolean;
68
- retention?: string;
69
- max_age?: number;
70
- max_msgs?: number;
71
- max_bytes?: number;
72
- mirror?: unknown;
73
- sources?: unknown;
74
- subjects?: unknown;
75
- storage?: string;
76
- }
77
- /** Prove an authority store's stream shape at bind (SPEC 13.12): PRIMARY (never a
78
- * mirror/sourced copy), LIMITS retention (an Interest/WorkQueue stream deletes a message once
79
- * consumers have interest/ack it — an authority row would silently vanish after a barrier's
80
- * point-in-time enumeration reads it), and NO silent-eviction limit — no age retention and no
81
- * finite global message/byte cap (under DiscardOld a finite global limit evicts a PRIOR
82
- * authority key's latest row the moment an unrelated key is written). A store that cannot be
83
- * proved never serves. (A per-subject cap is NOT a vector: NATS keeps at least the latest value
84
- * per subject for any cap ≥ 1, and 0/-1 mean unlimited, so no setting drops a key's own row.) */
85
- export declare function assertAuthorityStreamShape(cfg: AuthorityStreamCfg, bucket: string): void;
16
+ export { assertAuthorityStreamShape, type AuthorityStreamCfg } from "@cotal-ai/core";
86
17
  /** Open the minting authority's sealed lifecycle registry: binds the space's primary records
87
18
  * bucket AND its auth bucket. BOTH are shape-proved at bind (SPEC 13.12): primary, un-aged,
88
19
  * no finite global eviction cap; the auth store additionally leader-only `allow_direct=false`. */
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle-registry.d.ts","sourceRoot":"","sources":["../src/lifecycle-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle-registry.d.ts","sourceRoot":"","sources":["../src/lifecycle-registry.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,7 @@
45
45
  * op-pinned CAS plus the caller's own authenticated authority is what advances the gate),
46
46
  * and a stranger can neither reopen nor terminalize another operation's freeze.
47
47
  */
48
+ import { assertAuthorityStreamShape } from "@cotal-ai/core";
48
49
  import { jetstream, jetstreamManager } from "@nats-io/jetstream";
49
50
  import { Kvm } from "@nats-io/kv";
50
51
  import { EpEnvelopeError, assertOrdinaryNativeMutation, recordsBucket as coreRecordsBucket, lifecycleHeadKey as headKey, parseLifecycleHead as parseMapping, headCandidate, gateObserve, gateCreateFrozen, gateFreeze, gateReopen, gateRetire, uidTryReserve, uidReserveFresh, uidReadReservation, headAdvanceEpochWithinTakeover, headSetCurrentRootCredential, headBeginRetirement, headCompleteRetirement, runActivationSaga, runActivationSagaAtUid, resumeActivationSaga, createRecordEntry, updateRecordEntry, readRecordLeader, epAuthBucket, workPoolContext, } from "@cotal-ai/core";
@@ -65,41 +66,9 @@ function readerInternals(rd) {
65
66
  throw new EpEnvelopeError("failed-precondition", "the mapping reader was not constructed by openLifecycleMappingReader(); a hand-assembled context never authorizes (SPEC 13.12)");
66
67
  return i;
67
68
  }
68
- /** Prove an authority store's stream shape at bind (SPEC 13.12): PRIMARY (never a
69
- * mirror/sourced copy), LIMITS retention (an Interest/WorkQueue stream deletes a message once
70
- * consumers have interest/ack it — an authority row would silently vanish after a barrier's
71
- * point-in-time enumeration reads it), and NO silent-eviction limit — no age retention and no
72
- * finite global message/byte cap (under DiscardOld a finite global limit evicts a PRIOR
73
- * authority key's latest row the moment an unrelated key is written). A store that cannot be
74
- * proved never serves. (A per-subject cap is NOT a vector: NATS keeps at least the latest value
75
- * per subject for any cap ≥ 1, and 0/-1 mean unlimited, so no setting drops a key's own row.) */
76
- export function assertAuthorityStreamShape(cfg, bucket) {
77
- if (cfg.mirror !== undefined || (Array.isArray(cfg.sources) && cfg.sources.length > 0))
78
- throw new EpEnvelopeError("failed-precondition", `the store ${bucket} is a mirror/sourced stream; a follower copy cannot serve authority reads or CAS (SPEC 13.12); bind the primary`);
79
- // A KV bucket is Limits-retention by construction, but the backing stream config is what
80
- // actually governs eviction, so prove it (a stream reprovisioned as Interest/WorkQueue under
81
- // the KV_ name would delete authority rows on consumer interest/ack — the barrier's throwaway
82
- // enumeration consumer would itself trigger the deletion).
83
- if (typeof cfg.retention === "string" && cfg.retention !== "limits")
84
- throw new EpEnvelopeError("failed-precondition", `the store ${bucket} has ${cfg.retention} retention, not limits; a non-Limits stream deletes authority rows on consumer interest/ack (SPEC 13.12); reprovision as a KV bucket`);
85
- if (typeof cfg.max_age === "number" && cfg.max_age > 0)
86
- throw new EpEnvelopeError("failed-precondition", `the store ${bucket} carries bucket-wide age eviction (max_age ${cfg.max_age}); an age-evicted authority row silently drops a fence (SPEC 13.12); reprovision`);
87
- if (typeof cfg.max_msgs === "number" && cfg.max_msgs >= 0)
88
- throw new EpEnvelopeError("failed-precondition", `the store ${bucket} carries a finite global message cap (max_msgs ${cfg.max_msgs}); under discard-old it silently evicts never-deleted authority keys (SPEC 13.12); reprovision`);
89
- if (typeof cfg.max_bytes === "number" && cfg.max_bytes >= 0)
90
- throw new EpEnvelopeError("failed-precondition", `the store ${bucket} carries a finite global byte cap (max_bytes ${cfg.max_bytes}); under discard-old it silently evicts never-deleted authority keys (SPEC 13.12); reprovision`);
91
- // STORE-BINDING (SPEC 13.12): the stream must BE the claimed KV bucket, not merely wear its
92
- // name — exactly the one `$KV.<bucket>.>` subject (an extra captured subject would put foreign
93
- // bodies inside every body-selected MSG.GET grant on this stream, breaking the metadata-only
94
- // residual claim) and durable file storage (a memory authority store forgets every fence and
95
- // revocation on broker restart). Both are REQUIRED, not skipped-when-absent: every caller
96
- // proves a real `streams.info` config, and an absent field here is an unproved store.
97
- const expectedSubject = `$KV.${bucket}.>`;
98
- if (!Array.isArray(cfg.subjects) || cfg.subjects.length !== 1 || cfg.subjects[0] !== expectedSubject)
99
- throw new EpEnvelopeError("failed-precondition", `the store ${bucket} does not carry exactly the subject ${expectedSubject} (got ${JSON.stringify(cfg.subjects)}); a stream that captures anything else is not this KV bucket, and its body-selected reads are not bounded to authority metadata (SPEC 13.12); reprovision`);
100
- if (cfg.storage !== "file")
101
- throw new EpEnvelopeError("failed-precondition", `the store ${bucket} has storage ${JSON.stringify(cfg.storage)}, not file; a non-durable authority store forgets fences and revocations on restart (SPEC 13.12); reprovision`);
102
- }
69
+ // Keep the trusted-path module's internal import surface while sharing the pure wire-store
70
+ // check with core schema inspection. No lifecycle/gate operation is exported through core.
71
+ export { assertAuthorityStreamShape } from "@cotal-ai/core";
103
72
  /** Open the minting authority's sealed lifecycle registry: binds the space's primary records
104
73
  * bucket AND its auth bucket. BOTH are shape-proved at bind (SPEC 13.12): primary, un-aged,
105
74
  * no finite global eviction cap; the auth store additionally leader-only `allow_direct=false`. */
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle-registry.js","sourceRoot":"","sources":["../src/lifecycle-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle-registry.js","sourceRoot":"","sources":["../src/lifecycle-registry.ts"],"names":[],"mappings":"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"}
package/dist/login.d.ts CHANGED
@@ -30,6 +30,9 @@ export interface DeviceLoginOpts {
30
30
  * query/hash, no trailing slash — the normalized string is also the session-cache key, so
31
31
  * `…/api/auth` and `…/api/auth/` must land on the same entry. */
32
32
  export declare function normalizeIdpUrl(idpUrl: string): string;
33
+ /** An IdP request that got no answer: the transport failed or the per-request timeout fired. */
34
+ export declare class IdpUnreachableError extends Error {
35
+ }
33
36
  /** Best-effort reachability + shape check of an IdP's JWKS. Used at the FIRST `--user-auth` enable
34
37
  * so a dead or typo'd `--idp` fails loud BEFORE a space is provisioned around it, instead of only
35
38
  * surfacing far away at the first user connect (the pin is written but the JWKS is fetched lazily).
@@ -70,6 +73,12 @@ export declare function hasIdpSpaceCatalog(dir: string, idpUrl: string, sub: str
70
73
  * the goal state, treated as success; any other failure is thrown because a still-live
71
74
  * server-side session is a real leak the operator must hear about. */
72
75
  export declare function revokeIdpSession(idpUrl: string, sessionToken: string): Promise<void>;
76
+ /** Account-picker metadata only. Session tokens never leave this helper. */
77
+ export declare function listIdpAccounts(dir: string): {
78
+ idp: string;
79
+ sub?: string;
80
+ expiresAt: number;
81
+ }[];
73
82
  export declare function loadIdpSession(dir: string, idpUrl: string): IdpSession | undefined;
74
83
  /** Whether this machine carries any cached human login. Enrollment URLs are single-use credentials,
75
84
  * so an unregistered-mesh client must resolve the login-vs-enrollment conflict before it GETs the
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"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"}