@cotal-ai/auth 0.149.0 → 0.151.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-host.js","sourceRoot":"","sources":["../src/registry-host.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { type Identity, type SecretStore } from "@cotal-ai/core";
2
+ interface RegistryIdentity {
3
+ instanceId: string;
4
+ serveIdentity: Identity;
5
+ }
6
+ /** Registry identity is separate from auth's own identity and pinned to the tenant account.
7
+ * Registration operation and repair progress stay in the native epgate/eprepair records. */
8
+ export declare function claimRegistryIdentity(store: SecretStore, space: string, accountPublicKey: string): Promise<RegistryIdentity>;
9
+ export {};
10
+ //# sourceMappingURL=registry-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-state.d.ts","sourceRoot":"","sources":["../src/registry-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuD,KAAK,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGtH,UAAU,gBAAgB;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,QAAQ,CAAC;CACzB;AAED;4FAC4F;AAC5F,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoBlI"}
@@ -0,0 +1,34 @@
1
+ import { assertLifecycleToken, mintLifecycleUid, newIdentity } from "@cotal-ai/core";
2
+ import { identityOf, spaceSegment } from "@cotal-ai/workspace";
3
+ /** Registry identity is separate from auth's own identity and pinned to the tenant account.
4
+ * Registration operation and repair progress stay in the native epgate/eprepair records. */
5
+ export async function claimRegistryIdentity(store, space, accountPublicKey) {
6
+ const key = `auth/${spaceSegment(space)}/registry-instance.json`;
7
+ const parse = (raw) => {
8
+ let value;
9
+ try {
10
+ value = JSON.parse(raw);
11
+ }
12
+ catch {
13
+ throw new Error("the registry identity is not valid JSON; restore the original identity");
14
+ }
15
+ if (!value || value.v !== 1 || value.space !== space || value.accountPublicKey !== accountPublicKey
16
+ || Object.keys(value).sort().join(",") !== "accountPublicKey,instanceId,serveIdentity,space,v")
17
+ throw new Error("the registry identity is malformed or belongs to another account; it was not replaced");
18
+ const serveIdentity = identityOf(value.serveIdentity);
19
+ if (!serveIdentity)
20
+ throw new Error("the registry serving identity is malformed; restore the original identity");
21
+ return { instanceId: assertLifecycleToken(value.instanceId, "registry instanceId"), serveIdentity };
22
+ };
23
+ const prior = await store.get(key);
24
+ if (prior !== undefined)
25
+ return parse(prior);
26
+ const value = { v: 1, space, accountPublicKey, instanceId: mintLifecycleUid(), serveIdentity: newIdentity() };
27
+ if (await store.create(key, JSON.stringify(value)))
28
+ return { instanceId: value.instanceId, serveIdentity: value.serveIdentity };
29
+ const winner = await store.get(key);
30
+ if (winner === undefined)
31
+ throw new Error("the registry identity create was not confirmed; no replacement was minted");
32
+ return parse(winner);
33
+ }
34
+ //# sourceMappingURL=registry-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-state.js","sourceRoot":"","sources":["../src/registry-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,WAAW,EAAmC,MAAM,gBAAgB,CAAC;AACtH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAO/D;4FAC4F;AAC5F,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,KAAkB,EAAE,KAAa,EAAE,gBAAwB;IACrG,MAAM,GAAG,GAAG,QAAQ,YAAY,CAAC,KAAK,CAAC,yBAAyB,CAAC;IACjE,MAAM,KAAK,GAAG,CAAC,GAAW,EAAoB,EAAE;QAC9C,IAAI,KAA8B,CAAC;QACnC,IAAI,CAAC;YAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;QAAC,CAAC;QAC3D,MAAM,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAAC,CAAC;QACpG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,IAAI,KAAK,CAAC,gBAAgB,KAAK,gBAAgB;eAC9F,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,mDAAmD;YAC9F,MAAM,IAAI,KAAK,CAAC,uFAAuF,CAAC,CAAC;QAC3G,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;QACjH,OAAO,EAAE,UAAU,EAAE,oBAAoB,CAAC,KAAK,CAAC,UAAoB,EAAE,qBAAqB,CAAC,EAAE,aAAa,EAAE,CAAC;IAChH,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,CAAC;IAC9G,IAAI,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC;IAChI,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,MAAM,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IACvH,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC;AACvB,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { type KV } from "@nats-io/kv";
2
+ import type { NatsConnection } from "@nats-io/transport-node";
3
+ import { reconcileEndpointGate, registerServiceInstance, type ServiceNameAuthority } from "@cotal-ai/core";
4
+ /** The signing holder authorizes one built-in name for DEV_OWNER; no guest receives this seam. */
5
+ export declare function selfNameAuthority(endpoint: string): ServiceNameAuthority;
6
+ /** Read the exact published contract closure used by a self-authorized registration. */
7
+ export declare function contractArtifactReader(values: unknown[]): (digest: string) => unknown;
8
+ /** Register an auth-owned endpoint through the native gate ceremony. Optional recovery uses the
9
+ * native holder-gone guard and retained repair cursor before starting a new registration. */
10
+ export declare function registerSelfAuthorizedInstance<R extends {
11
+ registrationRevision: number;
12
+ processEpoch: number;
13
+ }>(nc: NatsConnection, args: {
14
+ space: string;
15
+ endpoint: string;
16
+ instanceId: string;
17
+ principal: string;
18
+ clusterDigest: string;
19
+ artifacts: unknown[];
20
+ recovery?: Pick<Parameters<typeof reconcileEndpointGate>[0], "probeHolder" | "evictHolders" | "log">;
21
+ }, register: (kv: KV, args: Parameters<typeof registerServiceInstance>[1]) => Promise<R>): Promise<R>;
22
+ //# sourceMappingURL=service-registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-registration.d.ts","sourceRoot":"","sources":["../src/service-registration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,EAAE,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAGoB,qBAAqB,EAAiB,uBAAuB,EACjE,KAAK,oBAAoB,EAC/C,MAAM,gBAAgB,CAAC;AAExB,kGAAkG;AAClG,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,CAExE;AAED,wFAAwF;AACxF,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAGrF;AAED;6FAC6F;AAC7F,wBAAsB,8BAA8B,CAAC,CAAC,SAAS;IAAE,oBAAoB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE;IAC/I,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,GAAG,cAAc,GAAG,KAAK,CAAC,CAAC;CACtG,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA2BpG"}
@@ -0,0 +1,44 @@
1
+ import { Kvm } from "@nats-io/kv";
2
+ import { DEV_OWNER, EpEnvelopeError, contractArtifactCanonicalBytes, contractDigest, contractStoreContext, endpointRegistrationBarrier, epAuthBucket, mintLifecycleUid, provisionEndpointGateOpen, publishContractArtifact, reconcileEndpointGate, recordsBucket, registerServiceInstance, serveIssuanceGateKv, } from "@cotal-ai/core";
3
+ /** The signing holder authorizes one built-in name for DEV_OWNER; no guest receives this seam. */
4
+ export function selfNameAuthority(endpoint) {
5
+ return { authorize: (name, owner) => ({ authorized: name === endpoint && owner === DEV_OWNER, revision: 0 }) };
6
+ }
7
+ /** Read the exact published contract closure used by a self-authorized registration. */
8
+ export function contractArtifactReader(values) {
9
+ const store = new Map(values.map((v) => [contractDigest(v), v]));
10
+ return (digest) => store.get(digest);
11
+ }
12
+ /** Register an auth-owned endpoint through the native gate ceremony. Optional recovery uses the
13
+ * native holder-gone guard and retained repair cursor before starting a new registration. */
14
+ export async function registerSelfAuthorizedInstance(nc, args, register) {
15
+ const { space, endpoint, instanceId } = args;
16
+ const authKv = await new Kvm(nc).open(epAuthBucket(space));
17
+ const recordsKv = await new Kvm(nc).open(recordsBucket(space));
18
+ const storeCtx = await contractStoreContext(nc, space);
19
+ for (const value of args.artifacts)
20
+ await publishContractArtifact(storeCtx, contractArtifactCanonicalBytes(value));
21
+ const gate = serveIssuanceGateKv(authKv, space, { endpoint, instanceId });
22
+ const prior = await gate.observe();
23
+ if (args.recovery && prior !== null && prior.principal !== args.principal)
24
+ throw new EpEnvelopeError("permission-denied", "the registry's retained identity does not own its registration gate");
25
+ if (prior === null)
26
+ await provisionEndpointGateOpen(authKv, { endpoint, instanceId, principal: args.principal });
27
+ else if (prior.state === "frozen" && args.recovery)
28
+ await reconcileEndpointGate({ kv: authKv, recordsKv, space, endpoint, instanceId, ...args.recovery });
29
+ const barrier = endpointRegistrationBarrier(authKv, space, {
30
+ endpoint, instanceId, opId: mintLifecycleUid(),
31
+ ...(args.recovery ? { evict: args.recovery.evictHolders } : {}),
32
+ });
33
+ const spec = { endpoint, owner: DEV_OWNER, clusterDigests: [args.clusterDigest], protocol: { v: 1 } };
34
+ const registered = await register(recordsKv, {
35
+ space, spec, instanceId, registrant: { owner: DEV_OWNER }, authority: selfNameAuthority(endpoint), barrier,
36
+ readClusterArtifact: contractArtifactReader(args.artifacts),
37
+ });
38
+ const { registrationRevision, processEpoch } = registered;
39
+ const observed = await gate.observe();
40
+ if (observed?.state !== "open" || observed.processEpoch !== processEpoch || observed.registrationRevision !== registrationRevision)
41
+ throw new EpEnvelopeError("conflict", `the issuance gate of ${endpoint}/${instanceId} is no longer open at this registration (process epoch ${processEpoch}, revision ${registrationRevision}); a later barrier fenced this start (SPEC 13.1)`);
42
+ return registered;
43
+ }
44
+ //# sourceMappingURL=service-registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-registration.js","sourceRoot":"","sources":["../src/service-registration.ts"],"names":[],"mappings":"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"}
package/dist/service.d.ts CHANGED
@@ -22,6 +22,7 @@ import { type PlaneLivenessOracle } from "./plane-claim.js";
22
22
  import { type EvictPrincipal } from "./credential-ledger.js";
23
23
  import { type RunCancelLimits } from "./run-cancel-observation.js";
24
24
  import type { DelegatedUserIntentIncarnation } from "./delegated-user-intent.js";
25
+ import { type RegistryService } from "@cotal-ai/core";
25
26
  import { ledgerAuthorizeGrant } from "./ledger.js";
26
27
  import { type ServiceKeys } from "./store.js";
27
28
  /** JWKS max-age seconds — the cache contract's knob. Exported so a rotation tool can compute the
@@ -266,6 +267,10 @@ export interface AuthServiceRuntimeOptions {
266
267
  interactiveManagerSelection?: "local-primary";
267
268
  /** Process-lifetime cancellation custody quotas. No eviction or automatic restart on exhaustion. */
268
269
  runCancelLimits?: RunCancelLimits;
270
+ /** Default off. The composition root supplies the registry data plane; auth retains its authority. */
271
+ registry?: RegistryService;
272
+ /** Trusted-host only, 5..900 seconds. The native credential source owns renewal. */
273
+ registryCredentialTtlSeconds?: number;
269
274
  }
270
275
  /** Inputs to the sealed authority-plane composition. */
271
276
  export interface OpenAuthAuthorityPlaneOptions extends AuthServiceRuntimeOptions {
@@ -280,6 +285,8 @@ export interface OpenAuthAuthorityPlaneOptions extends AuthServiceRuntimeOptions
280
285
  /** A hosted context's injected store, which then keeps the restart identity with the other auth
281
286
  * secret kinds: its serve seed is a private key. */
282
287
  identityStore?: SecretStore;
288
+ /** Required with registry. Explicit on both CLI and hosted paths; no ambient store is discovered. */
289
+ registryStore?: SecretStore;
283
290
  dataAccount: ServiceKeys["dataAccount"];
284
291
  log: (line: string) => void;
285
292
  /** SMOKE-ONLY eviction override for the barrier executor's boot resume. Production
@@ -359,6 +366,7 @@ export declare function authServiceConfiguration(args: ParsedArgs): {
359
366
  agentProvisioningUrl: string | undefined;
360
367
  } | undefined;
361
368
  serviceEndpoints: boolean;
369
+ registry: boolean;
362
370
  calloutOnly: boolean;
363
371
  calloutLimits: AuthCalloutLimits | undefined;
364
372
  };
@@ -389,6 +397,8 @@ export interface AuthHostEntry {
389
397
  /** Whether the space's lane hosts service endpoints, as `--service-endpoints` does for one space.
390
398
  * An absent field is `false`. */
391
399
  serviceEndpoints: boolean;
400
+ /** Default off; only this lane hosts the registry when true. */
401
+ registry?: boolean;
392
402
  }
393
403
  /** Parse an `auth-service --spaces` manifest with the rules the host applies to every read of it:
394
404
  * the version 2 grammar, each entry's fields and the checks across entries. Throws naming what is
@@ -516,6 +526,10 @@ export declare function startAuthService(inputs: HostedContextInputs & {
516
526
  toolResultConsents?: ToolResultConsentSignerOptions;
517
527
  /** Default off. Forwarded unchanged to {@link openAuthAuthorityPlane}. No CLI flag sets it. */
518
528
  serviceEndpoints?: OpenAuthAuthorityPlaneOptions["serviceEndpoints"];
529
+ /** Default off. Auth hosts this registry using this context's own assigned secret store. */
530
+ registry?: RegistryService;
531
+ /** Trusted-host-only credential lifetime for registry renewal rehearsal, 5..900 seconds. */
532
+ registryCredentialTtlSeconds?: number;
519
533
  /** This context's callout limits. `authTimeoutMs` must match the broker's `authorization
520
534
  * { timeout }`. Absent: every default. No CLI flag sets it. */
521
535
  calloutLimits?: AuthCalloutLimits;
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
package/dist/service.js CHANGED
@@ -66,7 +66,7 @@ import { resolve } from "node:path";
66
66
  import { credsAuthenticator } from "@nats-io/transport-node";
67
67
  import { jetstream, jetstreamManager } from "@nats-io/jetstream";
68
68
  import { Kvm } from "@nats-io/kv";
69
- import { VOID_SCHEMA, CotalEndpoint, isDerivedOwner, dialerFor, deprovisionAgent, fenceLifecycleAcl, singleDocumentClosure, dlvDurable, dlvStream, dmDurable, dmStream, isChannelFamily, isConcreteChannel, provisionAgentDurables, contractDigest, contractRefToHex, contractStoreContext, endpointToken, fetchContractArtifact, verifyClusterManifest, verifyClusterRoot, admissionBucket, admissionMediatorGrants, assertDerivedOwnerToken, assertLifecycleToken, assertValidOwnerToken, authorizeTrustedServeSnapshot, commitSiblingIssuance, credsClaims, EpEnvelopeError, ensureAuthorityStores, epAuthBucket, isReachable, jwtFromCreds, managedRetirementOpId, mintCreds, mintPublicUserJwt, newIdentity, newTakeoverId, observeHostedRunAttempt, openRecordsBucket, parseEndpointGate, parseServiceSpec, credentialIdOf, parseSecretStoreIdentity, readCheckpointStatus, readRunAdmission, readRunRevocation, readRunRecord, readSvcRecordLeader, reconcileEndpointGate, replayRunJournal, sameSecretStoreIdentity, recordSpecKey, RECORD_KINDS, recordsBucket, remoteManagerActors, remoteManagerServePrincipal, retirementFrontierStreams, runDriverCaller, serveIssuanceGateKv, standaloneConnectOpts, STANDING_RENEWABLE_TTL_SEC, withIssuerSession, holdIssuerSession, acceptedReadGrant, connectionAcceptedToken, importNativeSubjectPermissions, mintGeneration, parseActorLedgerSource, writeAcceptedRow, invokeCommand, resolveService, contractArtifactCanonicalBytes, DEV_OWNER, endpointRegistrationBarrier, mintLifecycleUid, principalKey, provisionEndpointGateOpen, publishContractArtifact, registerServiceInstance, registerServingInstance, parseServiceAuthorityEnvelope, SERVICE_AUTHORITY_MAX_BYTES, epgateKey, isCasLoss, sameManagedGrantCustody, parseServiceRegistrationWitness, serviceWitnessDigest } from "@cotal-ai/core";
69
+ import { VOID_SCHEMA, CotalEndpoint, isDerivedOwner, dialerFor, deprovisionAgent, fenceLifecycleAcl, singleDocumentClosure, dlvDurable, dlvStream, dmDurable, dmStream, isChannelFamily, isConcreteChannel, provisionAgentDurables, contractDigest, contractRefToHex, contractStoreContext, endpointToken, fetchContractArtifact, verifyClusterManifest, verifyClusterRoot, admissionBucket, admissionMediatorGrants, assertDerivedOwnerToken, assertLifecycleToken, assertValidOwnerToken, authorizeTrustedServeSnapshot, commitSiblingIssuance, credsClaims, EpEnvelopeError, ensureAuthorityStores, epAuthBucket, isReachable, jwtFromCreds, managedRetirementOpId, mintCreds, mintPublicUserJwt, newIdentity, newTakeoverId, observeHostedRunAttempt, openRecordsBucket, parseEndpointGate, parseServiceSpec, credentialIdOf, parseSecretStoreIdentity, readCheckpointStatus, readRunAdmission, readRunRevocation, readRunRecord, readSvcRecordLeader, reconcileEndpointGate, replayRunJournal, sameSecretStoreIdentity, recordSpecKey, RECORD_KINDS, recordsBucket, remoteManagerActors, remoteManagerServePrincipal, retirementFrontierStreams, runDriverCaller, serveIssuanceGateKv, standaloneConnectOpts, STANDING_RENEWABLE_TTL_SEC, withIssuerSession, holdIssuerSession, acceptedReadGrant, connectionAcceptedToken, importNativeSubjectPermissions, mintGeneration, parseActorLedgerSource, writeAcceptedRow, invokeCommand, resolveService, contractArtifactCanonicalBytes, DEV_OWNER, mintLifecycleUid, principalKey, provisionEndpointGateOpen, publishContractArtifact, registerServiceInstance, registerServingInstance, parseServiceAuthorityEnvelope, SERVICE_AUTHORITY_MAX_BYTES, epgateKey, isCasLoss, sameManagedGrantCustody, parseServiceRegistrationWitness, serviceWitnessDigest } from "@cotal-ai/core";
70
70
  import { findCotalRoot, loadManagerInstanceIdentity, parseSpaceManifest, runSpaceHost, userAuthStateDir, workspaceSecretStore, createAuthInstanceIdentity } from "@cotal-ai/workspace";
71
71
  import { decodeJwt } from "jose";
72
72
  import { deriveOwnerForIdpSubject, platformControlOwner } from "./derive.js";
@@ -116,6 +116,9 @@ import { serializedFor } from "./serialized.js";
116
116
  import { RunCancelObservations } from "./run-cancel-observation.js";
117
117
  import { jitteredBackoffMs, readCancellationAdmission, resolveReadAcl } from "@cotal-ai/core";
118
118
  import { joinOrStartRetirement, openAuthAdminListener } from "./auth-admin.js";
119
+ import { registerSelfAuthorizedInstance } from "./service-registration.js";
120
+ import { openAuthRegistry } from "./registry-host.js";
121
+ import { registry as extensionRegistry } from "@cotal-ai/core";
119
122
  import { AUTH_SERVICE_ENDPOINT, authClusterArtifacts, authContractArtifactValues } from "./auth-service-contract.js";
120
123
  import { drainTargetForEndpoint, openAdmissionMediator } from "./admission-mediator.js";
121
124
  import { AGENT_BEARER_TTL_SEC, assertWithinRunDelegation, assertWithinSpawnerGrant, findInteractiveActor, findManagedActor, findActorUnified, ledgerActorSourceIsLive, ledgerAuthorizeAgentExchange, ledgerAuthorizeGrant, revokeManagedActorIf, withManagedGrantTransaction, } from "./ledger.js";
@@ -195,50 +198,6 @@ export function authorizeRemoteManagerRetirement(args) {
195
198
  throw new EpEnvelopeError("permission-denied", `manager-service retirement may target only its authenticated owner ${args.owner}, not ${args.targetOwner}`);
196
199
  assertCurrentManagerGate(args.gate, args.instanceId, args.serveEpoch, args.owner, "manager-service retirement");
197
200
  }
198
- /** The §13.9 name authority in static mode: the plane holds the space signing seed, so it
199
- * self-authorizes exactly one endpoint name for exactly DEV_OWNER, as the manager does for
200
- * "manager". */
201
- function selfNameAuthority(endpoint) {
202
- return { authorize: (name, owner) => ({ authorized: name === endpoint && owner === DEV_OWNER, revision: 0 }) };
203
- }
204
- /** Each contract artifact by its §13.7 content digest. */
205
- function contractArtifactReader(values) {
206
- const store = new Map(values.map((v) => [contractDigest(v), v]));
207
- return (digest) => store.get(digest);
208
- }
209
- /** The §13.7 registration ceremony for one instance of an endpoint this plane self-authorizes, on
210
- * a connection scoped to that instance. The contract artifacts are published before the
211
- * registration that advertises them. The issuance gate is provisioned open once, on first sight
212
- * (§13.1); on a restart it already exists and `registerServiceInstance` freezes and re-registers
213
- * it, which advances the process epoch and fences the predecessor. A first registration stays at
214
- * epoch 0. `register` is {@link registerServiceInstance}, or {@link registerServingInstance} for an
215
- * instance that serves. It returns what `register` committed, and refuses when its confirming read
216
- * finds that a later registration of the same instance superseded it. */
217
- async function registerSelfAuthorizedInstance(nc, args, register) {
218
- const { space, endpoint, instanceId } = args;
219
- const authKv = await new Kvm(nc).open(epAuthBucket(space));
220
- const recordsKv = await new Kvm(nc).open(recordsBucket(space));
221
- const storeCtx = await contractStoreContext(nc, space);
222
- for (const value of args.artifacts)
223
- await publishContractArtifact(storeCtx, contractArtifactCanonicalBytes(value));
224
- if ((await serveIssuanceGateKv(authKv, space, { endpoint, instanceId }).observe()) === null)
225
- await provisionEndpointGateOpen(authKv, { endpoint, instanceId, principal: args.principal });
226
- const barrier = endpointRegistrationBarrier(authKv, space, { endpoint, instanceId, opId: mintLifecycleUid() });
227
- const spec = { endpoint, owner: DEV_OWNER, clusterDigests: [args.clusterDigest], protocol: { v: 1 } };
228
- const registered = await register(recordsKv, {
229
- space, spec, instanceId, registrant: { owner: DEV_OWNER }, authority: selfNameAuthority(endpoint), barrier,
230
- readClusterArtifact: contractArtifactReader(args.artifacts),
231
- });
232
- const { registrationRevision, processEpoch } = registered;
233
- // A second start of the same instance can complete between this reopen and this read. Its epoch
234
- // is not this start's to claim, and this start's epoch is already fenced. One that completes after
235
- // the read leaves this start returning its own epoch, which the gate fences as it fences any
236
- // restart's predecessor; no read can close that window.
237
- const observed = await serveIssuanceGateKv(authKv, space, { endpoint, instanceId }).observe();
238
- if (observed?.state !== "open" || observed.processEpoch !== processEpoch || observed.registrationRevision !== registrationRevision)
239
- throw new EpEnvelopeError("conflict", `the issuance gate of ${endpoint}/${instanceId} is no longer open at this registration (process epoch ${processEpoch}, revision ${registrationRevision}); a later barrier fenced this start (SPEC 13.1)`);
240
- return registered;
241
- }
242
201
  /** The accepted-row token one platform supervisor duty's issued generation is recorded under. */
243
202
  function supervisorAcceptedToken(owner, instanceId, lifecycleUid, duty) {
244
203
  return connectionAcceptedToken(`platform-supervisor:${owner}:${instanceId}:${lifecycleUid}:${duty}`);
@@ -317,6 +276,10 @@ async function openAuthAuthorityPlaneWithCustody(opts, onConnection) {
317
276
  /** The body of the plane opener, which owns the unwind of a failed construction. */
318
277
  async function buildAuthAuthorityPlane(opts, unwind, onConnection) {
319
278
  const interactiveManagerSelection = runtimeSelection(opts);
279
+ if (opts.registry !== undefined && opts.registryStore === undefined)
280
+ throw new Error("auth-service: registry requires an explicitly assigned secret store");
281
+ if (opts.registry === undefined && opts.registryCredentialTtlSeconds !== undefined)
282
+ throw new Error("auth-service: registryCredentialTtlSeconds requires a registry implementation");
320
283
  const { server, space, dataAccount, log } = opts;
321
284
  const cancelObservations = new RunCancelObservations(space, opts.runCancelLimits);
322
285
  const standingTtl = opts.standingRenewableTtlSeconds ?? STANDING_RENEWABLE_TTL_SEC;
@@ -404,8 +367,15 @@ async function buildAuthAuthorityPlane(opts, unwind, onConnection) {
404
367
  // fence resolves it, every authority operation refuses from then on, and the composition root
405
368
  // downs the daemon. A clean close never resolves it.
406
369
  let fatalReason;
407
- let fireFatal;
408
- const fenced = new Promise((r) => { fireFatal = r; });
370
+ let registryHost;
371
+ const registryFence = new AbortController();
372
+ let settleFatal;
373
+ const fenced = new Promise((r) => { settleFatal = r; });
374
+ const fireFatal = (reason) => {
375
+ registryFence.abort();
376
+ registryHost?.refuse();
377
+ settleFatal(reason);
378
+ };
409
379
  void fenced.then(() => issuer.close());
410
380
  const barrier = await openAuthorityClient({ onConnection, server, space, dataAccount, label: `cotal:auth-barrier:${space}`, grants: (id) => authorityBarrierGrants(space, id), log });
411
381
  unwind.push(() => barrier.close());
@@ -508,6 +478,24 @@ async function buildAuthAuthorityPlane(opts, unwind, onConnection) {
508
478
  // the FRESH space-manager-lease holder check) and dispatches.
509
479
  const authAdmin = await openAuthAdminListener({ onConnection, server, space, dataAccount, reg: barrierReg, retirement, barrierFlight: retirementFlights, instanceId: authServeInstanceId, epoch: authServeGrant.epoch, grant: authServeGrant, log });
510
480
  unwind.push(() => authAdmin.close());
481
+ if (opts.registry !== undefined) {
482
+ unwind.push(async () => { await registryHost?.close(); });
483
+ await openAuthRegistry({
484
+ server, space, dataAccount, log, onConnection, store: opts.registryStore,
485
+ implementation: opts.registry, signal: registryFence.signal,
486
+ ...(opts.registryCredentialTtlSeconds !== undefined ? { ttlSeconds: opts.registryCredentialTtlSeconds } : {}),
487
+ onCustody: (handle) => { registryHost = handle; },
488
+ onFailure: (reason) => {
489
+ if (closing)
490
+ return;
491
+ hold?.fence(reason);
492
+ fatalReason ??= reason;
493
+ serviceHost?.trip(reason);
494
+ fireFatal(reason);
495
+ log(`auth-plane: ${reason}`);
496
+ },
497
+ });
498
+ }
511
499
  const recordToolResultConsent = makeToolResultConsentRecorder(registryStores(registry).authKv, () => refuseIfFenced(), space);
512
500
  // Expired evidence goes at boot and then on the plane's own timer. Corrupt evidence means the
513
501
  // store is inconsistent: it refuses the open, and mid-life it fences the plane like a scanner
@@ -1946,6 +1934,8 @@ async function buildAuthAuthorityPlane(opts, unwind, onConnection) {
1946
1934
  closing = true;
1947
1935
  // Before the first await: no service host call enters once close has begun.
1948
1936
  serviceHost?.refuse();
1937
+ registryHost?.refuse();
1938
+ await registryHost?.close();
1949
1939
  await drainCallerPayload();
1950
1940
  await stopPrune();
1951
1941
  await stopChatSweep();
@@ -2082,6 +2072,8 @@ export function authServiceConfiguration(args) {
2082
2072
  // for every space. The manifest entry alone says it, and the flag refuses rather than defaulting.
2083
2073
  if (!calloutOnly && v["service-endpoints"] !== undefined)
2084
2074
  throw new Error('auth-service: --spaces takes service endpoints per space - set "serviceEndpoints": true on the manifest entry of each space that hosts them and drop --service-endpoints');
2075
+ if (!calloutOnly && v.registry !== undefined)
2076
+ throw new Error('auth-service: --spaces takes registry per space - set "registry": true on each intended manifest entry and drop --registry');
2085
2077
  }
2086
2078
  else if (!v.space) {
2087
2079
  throw new Error("auth-service: --space is required (or --spaces <manifest> to serve several spaces from this one process)");
@@ -2091,7 +2083,7 @@ export function authServiceConfiguration(args) {
2091
2083
  if (!server)
2092
2084
  throw new Error("auth-service: --server is required (the broker this callout serves)");
2093
2085
  if (calloutOnly) {
2094
- const http = ["port", "exchange-public-port", "exchange-public-url", "exchange-trusted-proxy", "advertised-server", "agent-provisioning-url", "service-endpoints"]
2086
+ const http = ["port", "exchange-public-port", "exchange-public-url", "exchange-trusted-proxy", "advertised-server", "agent-provisioning-url", "service-endpoints", "registry"]
2095
2087
  .filter((name) => v[name] !== undefined);
2096
2088
  if (http.length > 0)
2097
2089
  throw new Error(`auth-service: --callout-only answers the callout alone and serves no HTTP or service endpoint - drop ${http.map((name) => `--${name}`).join(", ")}`);
@@ -2132,7 +2124,7 @@ export function authServiceConfiguration(args) {
2132
2124
  const limits = authTimeout === undefined ? undefined : { authTimeoutMs: authTimeout * 1000 };
2133
2125
  if (limits !== undefined)
2134
2126
  calloutLimits(limits);
2135
- return { space, spaces, server, port, publicFace, serviceEndpoints, calloutOnly, calloutLimits: limits };
2127
+ return { space, spaces, server, port, publicFace, serviceEndpoints, registry: v.registry !== undefined, calloutOnly, calloutLimits: limits };
2136
2128
  }
2137
2129
  /** Run the auth service. Flags: `--space` (required), `--server` (broker URL, required), `--port`
2138
2130
  * (loopback HTTP port; default ephemeral). All persisted material must already exist (the
@@ -2149,7 +2141,10 @@ export function authServiceConfiguration(args) {
2149
2141
  export async function runAuthService(args, store, options = {}) {
2150
2142
  const interactiveManagerSelection = runtimeSelection(options);
2151
2143
  const lifecycle = "root" in options ? options : undefined;
2152
- const { space, spaces, server, port, publicFace, serviceEndpoints, calloutOnly, calloutLimits: limits } = authServiceConfiguration(args);
2144
+ const { space, spaces, server, port, publicFace, serviceEndpoints, registry: registryEnabled, calloutOnly, calloutLimits: limits } = authServiceConfiguration(args);
2145
+ if (calloutOnly && (options.registry !== undefined || options.registryCredentialTtlSeconds !== undefined))
2146
+ throw new Error("auth-service: a callout-only replica cannot host a registry");
2147
+ const registry = options.registry ?? (registryEnabled ? await extensionRegistry.load("registry-service", "builtin") : undefined);
2153
2148
  // The provider's space-scoped state dir for NON-SEAM material (ledger, IdP pin, discovery). The
2154
2149
  // layout fact is workspace-owned (userAuthStateDir); this daemon never touches `.cotal/auth/auth.json`.
2155
2150
  const root = lifecycle?.root ?? findCotalRoot();
@@ -2203,6 +2198,8 @@ export async function runAuthService(args, store, options = {}) {
2203
2198
  localManager: () => loadManagerInstanceIdentity(root, space),
2204
2199
  ...(interactiveManagerSelection !== undefined ? { interactiveManagerSelection } : {}),
2205
2200
  ...(options.runCancelLimits !== undefined ? { runCancelLimits: options.runCancelLimits } : {}),
2201
+ ...(registry !== undefined ? { registry } : {}),
2202
+ ...(options.registryCredentialTtlSeconds !== undefined ? { registryCredentialTtlSeconds: options.registryCredentialTtlSeconds } : {}),
2206
2203
  ...(limits !== undefined ? { calloutLimits: limits } : {}),
2207
2204
  }).catch((e) => {
2208
2205
  // The launching `up` sees only this process exit. Leave a typed refusal (a plane-claim
@@ -2269,7 +2266,7 @@ export async function runAuthService(args, store, options = {}) {
2269
2266
  const AUTH_HOST_FACE_FIELDS = ["exchangePublicPort", "exchangePublicUrl", "exchangeTrustedProxy", "advertisedServer", "agentProvisioningUrl"];
2270
2267
  /** The fields of an `auth-service --spaces` manifest entry besides `space`: the public face, and
2271
2268
  * `serviceEndpoints`, the per-space form of `--service-endpoints`. */
2272
- const AUTH_HOST_ENTRY_FIELDS = [...AUTH_HOST_FACE_FIELDS, "serviceEndpoints"];
2269
+ const AUTH_HOST_ENTRY_FIELDS = [...AUTH_HOST_FACE_FIELDS, "serviceEndpoints", "registry"];
2273
2270
  /** Reads one space's public face from its entry's public-face fields, under the rules the flags
2274
2271
  * follow. `null` is a space with no public face. */
2275
2272
  function authHostPublicFace(fields) {
@@ -2307,10 +2304,12 @@ const authHostSettings = {
2307
2304
  if (unknown.length)
2308
2305
  throw new Error(`unknown field(s) ${unknown.join(", ")}; an entry takes space, ${AUTH_HOST_ENTRY_FIELDS.join(", ")}`);
2309
2306
  const publicFace = authHostPublicFace(fields);
2310
- const { serviceEndpoints } = fields;
2307
+ const { serviceEndpoints, registry } = fields;
2311
2308
  if (serviceEndpoints !== undefined && typeof serviceEndpoints !== "boolean")
2312
2309
  throw new Error(`serviceEndpoints must be true or false, got ${JSON.stringify(serviceEndpoints)}`);
2313
- return { publicFace, serviceEndpoints: serviceEndpoints === true };
2310
+ if (registry !== undefined && typeof registry !== "boolean")
2311
+ throw new Error("registry must be true or false");
2312
+ return { publicFace, serviceEndpoints: serviceEndpoints === true, registry: registry === true };
2314
2313
  },
2315
2314
  across(settings) {
2316
2315
  const ports = new Map();
@@ -2343,6 +2342,7 @@ async function openAuthServiceLane(o) {
2343
2342
  if (endpoints.log !== undefined)
2344
2343
  log(`auth-service: ${endpoints.log}`);
2345
2344
  const selection = runtimeSelection(o.runtime);
2345
+ const registry = o.registry ? o.runtime.registry ?? await extensionRegistry.load("registry-service", "builtin") : undefined;
2346
2346
  const started = await startAuthContext({
2347
2347
  space,
2348
2348
  server: o.server,
@@ -2356,6 +2356,7 @@ async function openAuthServiceLane(o) {
2356
2356
  localManager: () => loadManagerInstanceIdentity(root, space),
2357
2357
  ...(selection !== undefined ? { interactiveManagerSelection: selection } : {}),
2358
2358
  ...(o.runtime.runCancelLimits !== undefined ? { runCancelLimits: o.runtime.runCancelLimits } : {}),
2359
+ ...(registry !== undefined ? { registry, ...(o.runtime.registryCredentialTtlSeconds !== undefined ? { registryCredentialTtlSeconds: o.runtime.registryCredentialTtlSeconds } : {}) } : {}),
2359
2360
  ...(o.limits !== undefined ? { calloutLimits: o.limits } : {}),
2360
2361
  log,
2361
2362
  });
@@ -2412,7 +2413,7 @@ async function runAuthServiceHost(args, store) {
2412
2413
  startup: "servable",
2413
2414
  open: (space, entry) => openAuthServiceLane({
2414
2415
  space, server, root, secrets, hostedStore: store !== undefined, publicFace: entry.publicFace,
2415
- serviceEndpoints: entry.serviceEndpoints, runtime: args.runtime, log: (l) => log(`[${space}] ${l}`),
2416
+ serviceEndpoints: entry.serviceEndpoints, registry: entry.registry === true, runtime: args.runtime, log: (l) => log(`[${space}] ${l}`),
2416
2417
  ...(args.limits !== undefined ? { limits: args.limits } : {}),
2417
2418
  }),
2418
2419
  label: "auth service host",
@@ -2483,6 +2484,8 @@ export async function startAuthService(inputs) {
2483
2484
  ...(inputs.issuerSessionTtlSeconds !== undefined ? { issuerSessionTtlSeconds: inputs.issuerSessionTtlSeconds } : {}),
2484
2485
  ...(inputs.toolResultConsents !== undefined ? { toolResultConsents: inputs.toolResultConsents } : {}),
2485
2486
  ...(inputs.serviceEndpoints !== undefined ? { serviceEndpoints: inputs.serviceEndpoints } : {}),
2487
+ ...(inputs.registry !== undefined ? { registry: inputs.registry } : {}),
2488
+ ...(inputs.registryCredentialTtlSeconds !== undefined ? { registryCredentialTtlSeconds: inputs.registryCredentialTtlSeconds } : {}),
2486
2489
  ...(inputs.calloutLimits !== undefined ? { calloutLimits: inputs.calloutLimits } : {}),
2487
2490
  ...(inputs.connectLimits !== undefined ? { connectLimits: inputs.connectLimits } : {}),
2488
2491
  });
@@ -2530,6 +2533,8 @@ async function startAuthContext(o) {
2530
2533
  ...(o.standingRenewableTtlSeconds !== undefined ? { standingRenewableTtlSeconds: o.standingRenewableTtlSeconds } : {}),
2531
2534
  ...(o.issuerSessionTtlSeconds !== undefined ? { issuerSessionTtlSeconds: o.issuerSessionTtlSeconds } : {}),
2532
2535
  ...(o.serviceEndpoints !== undefined ? { serviceEndpoints: o.serviceEndpoints } : {}),
2536
+ ...(o.registry !== undefined ? { registry: o.registry, registryStore: secrets } : {}),
2537
+ ...(o.registryCredentialTtlSeconds !== undefined ? { registryCredentialTtlSeconds: o.registryCredentialTtlSeconds } : {}),
2533
2538
  }, onConnection);
2534
2539
  let nc;
2535
2540
  let http;