@cotal-ai/core 0.58.0 → 0.60.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.
- package/dist/acls.d.ts +7 -0
- package/dist/acls.d.ts.map +1 -1
- package/dist/acls.js +10 -0
- package/dist/acls.js.map +1 -1
- package/dist/auth-provider.d.ts +13 -1
- package/dist/auth-provider.d.ts.map +1 -1
- package/dist/auth-provider.js.map +1 -1
- package/dist/backup-config.d.ts +10 -2
- package/dist/backup-config.d.ts.map +1 -1
- package/dist/backup-config.js +12 -3
- package/dist/backup-config.js.map +1 -1
- package/dist/broker-tls.d.ts +15 -0
- package/dist/broker-tls.d.ts.map +1 -1
- package/dist/broker-tls.js +6 -6
- package/dist/broker-tls.js.map +1 -1
- package/dist/checkpoint-answer.d.ts +24 -0
- package/dist/checkpoint-answer.d.ts.map +1 -1
- package/dist/checkpoint-answer.js +45 -4
- package/dist/checkpoint-answer.js.map +1 -1
- package/dist/command.d.ts +4 -3
- package/dist/command.d.ts.map +1 -1
- package/dist/command.js +20 -4
- package/dist/command.js.map +1 -1
- package/dist/connector-setup.d.ts +27 -0
- package/dist/connector-setup.d.ts.map +1 -1
- package/dist/connector.d.ts +25 -3
- package/dist/connector.d.ts.map +1 -1
- package/dist/connector.js.map +1 -1
- package/dist/endpoint-reconcile.d.ts +5 -1
- package/dist/endpoint-reconcile.d.ts.map +1 -1
- package/dist/endpoint-reconcile.js +43 -21
- package/dist/endpoint-reconcile.js.map +1 -1
- package/dist/endpoint-service.d.ts +25 -0
- package/dist/endpoint-service.d.ts.map +1 -1
- package/dist/endpoint-service.js +25 -25
- package/dist/endpoint-service.js.map +1 -1
- package/dist/endpoint.d.ts +105 -8
- package/dist/endpoint.d.ts.map +1 -1
- package/dist/endpoint.js +349 -43
- package/dist/endpoint.js.map +1 -1
- package/dist/evict.d.ts +27 -0
- package/dist/evict.d.ts.map +1 -1
- package/dist/evict.js +99 -42
- package/dist/evict.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/issued-authority.d.ts +0 -2
- package/dist/issued-authority.d.ts.map +1 -1
- package/dist/issued-authority.js +0 -2
- package/dist/issued-authority.js.map +1 -1
- package/dist/launch-artifacts.d.ts +42 -0
- package/dist/launch-artifacts.d.ts.map +1 -0
- package/dist/launch-artifacts.js +155 -0
- package/dist/launch-artifacts.js.map +1 -0
- package/dist/launch.d.ts +5 -1
- package/dist/launch.d.ts.map +1 -1
- package/dist/lease.d.ts +5 -0
- package/dist/lease.d.ts.map +1 -1
- package/dist/lease.js.map +1 -1
- package/dist/lifecycle-state.d.ts +1 -1
- package/dist/lifecycle-state.js +3 -3
- package/dist/lifecycle-state.js.map +1 -1
- package/dist/liveness.d.ts +180 -0
- package/dist/liveness.d.ts.map +1 -0
- package/dist/liveness.js +114 -0
- package/dist/liveness.js.map +1 -0
- package/dist/provision.d.ts +24 -11
- package/dist/provision.d.ts.map +1 -1
- package/dist/provision.js +127 -42
- package/dist/provision.js.map +1 -1
- package/dist/remote-manager-authority.d.ts +109 -2
- package/dist/remote-manager-authority.d.ts.map +1 -1
- package/dist/remote-manager-authority.js +104 -0
- package/dist/remote-manager-authority.js.map +1 -1
- package/dist/run-driver-grants.d.ts +1 -0
- package/dist/run-driver-grants.d.ts.map +1 -1
- package/dist/run-driver-grants.js +3 -2
- package/dist/run-driver-grants.js.map +1 -1
- package/dist/run-host.d.ts +66 -2
- package/dist/run-host.d.ts.map +1 -1
- package/dist/run-journal.d.ts +14 -6
- package/dist/run-journal.d.ts.map +1 -1
- package/dist/run-journal.js +14 -14
- package/dist/run-journal.js.map +1 -1
- package/dist/run-record.d.ts +5 -5
- package/dist/runtime.d.ts +6 -1
- package/dist/runtime.d.ts.map +1 -1
- package/dist/schema-profile.d.ts.map +1 -1
- package/dist/schema-profile.js +4 -3
- package/dist/schema-profile.js.map +1 -1
- package/dist/streams.d.ts +22 -16
- package/dist/streams.d.ts.map +1 -1
- package/dist/streams.js +26 -6
- package/dist/streams.js.map +1 -1
- package/dist/subjects.d.ts +65 -8
- package/dist/subjects.d.ts.map +1 -1
- package/dist/subjects.js +76 -9
- package/dist/subjects.js.map +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/command.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { parseArgs } from "node:util";
|
|
2
|
-
/** Parse `argv` against a command's declared flags — strict: an undeclared flag
|
|
3
|
-
* positional (when the command declares none)
|
|
4
|
-
* dispatcher renders as one red line plus
|
|
2
|
+
/** Parse `argv` against a command's declared flags — strict: an undeclared flag, a stray
|
|
3
|
+
* positional (when the command declares none), or a repeat of a flag not declared `multiple`
|
|
4
|
+
* throws an `ERR_PARSE_ARGS*` usage error, which the dispatcher renders as one red line plus
|
|
5
|
+
* the command's help. */
|
|
5
6
|
export function parseCommandArgs(cmd, argv) {
|
|
6
7
|
if (cmd.rawArgs)
|
|
7
8
|
return { values: {}, positionals: [...argv], raw: argv };
|
|
@@ -13,12 +14,27 @@ export function parseCommandArgs(cmd, argv) {
|
|
|
13
14
|
...(f.multiple ? { multiple: true } : {}),
|
|
14
15
|
};
|
|
15
16
|
}
|
|
16
|
-
const { values, positionals } = parseArgs({
|
|
17
|
+
const { values, positionals, tokens } = parseArgs({
|
|
17
18
|
args: [...argv],
|
|
18
19
|
options,
|
|
19
20
|
allowPositionals: cmd.positionals !== undefined,
|
|
20
21
|
strict: true,
|
|
22
|
+
tokens: true,
|
|
21
23
|
});
|
|
24
|
+
// parseArgs keeps the last value of a repeated option with no error. Count the option tokens
|
|
25
|
+
// (`-f` and `--file` are the same option; words after `--` are positionals) and refuse a repeat.
|
|
26
|
+
const seen = new Set();
|
|
27
|
+
for (const t of tokens) {
|
|
28
|
+
if (t.kind !== "option" || options[t.name]?.multiple)
|
|
29
|
+
continue;
|
|
30
|
+
if (seen.has(t.name)) {
|
|
31
|
+
const short = options[t.name]?.short;
|
|
32
|
+
throw Object.assign(new TypeError(`Option '${short ? `-${short}, ` : ""}--${t.name}' cannot be repeated`), {
|
|
33
|
+
code: "ERR_PARSE_ARGS_REPEATED_OPTION",
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
seen.add(t.name);
|
|
37
|
+
}
|
|
22
38
|
return { values: values, positionals, raw: argv };
|
|
23
39
|
}
|
|
24
40
|
/** The generated usage line: `cotal <name> [<positionals>] [flags…]`, honoring an explicit
|
package/dist/command.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA+B,MAAM,WAAW,CAAC;AAwGnE
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,30 @@ export interface ConnectorSkillsSetupInput {
|
|
|
15
15
|
readonly version: string;
|
|
16
16
|
readonly stateDir: string;
|
|
17
17
|
}
|
|
18
|
+
/** An interactive debug session a connector's harness can host when a setup step fails. The CLI
|
|
19
|
+
* builds the prompt and owns the menu; the provider owns the executable, its flags, and any session
|
|
20
|
+
* it keeps across handoffs in one setup run. */
|
|
21
|
+
export interface ConnectorAssist {
|
|
22
|
+
/** Harness name the recovery menu shows ("Debug it with <title>"). */
|
|
23
|
+
readonly title: string;
|
|
24
|
+
/** Hand the terminal to the harness primed with `prompt`. Resolves when the operator exits it;
|
|
25
|
+
* rejects when the harness cannot be launched. */
|
|
26
|
+
run(prompt: string): Promise<void>;
|
|
27
|
+
}
|
|
28
|
+
/** Generic Cotal inputs a provider's status check compares against. */
|
|
29
|
+
export interface ConnectorStatusInput {
|
|
30
|
+
/** The running CLI's release, the version connector-installed assets are expected at. */
|
|
31
|
+
readonly version: string;
|
|
32
|
+
/** The command that repairs connector skills on this machine. */
|
|
33
|
+
readonly skillsRemedy: string;
|
|
34
|
+
}
|
|
35
|
+
/** One machine-status row a provider reports for its harness. `ok` renders green, `warn` yellow,
|
|
36
|
+
* `error` red and `off` dim. */
|
|
37
|
+
export interface ConnectorStatusRow {
|
|
38
|
+
readonly label: string;
|
|
39
|
+
readonly state: "ok" | "warn" | "error" | "off";
|
|
40
|
+
readonly text: string;
|
|
41
|
+
}
|
|
18
42
|
/** Optional setup surface declared by a connector through {@link Connector.setup}. A missing or
|
|
19
43
|
* broken declared provider is always a loud registry error; the CLI never substitutes a built-in
|
|
20
44
|
* harness implementation. */
|
|
@@ -26,5 +50,8 @@ export interface ConnectorSetupProvider extends Extension {
|
|
|
26
50
|
readonly requires?: readonly string[];
|
|
27
51
|
readonly connector?: ConnectorSetupAction;
|
|
28
52
|
readonly skills?: ConnectorSetupAction<ConnectorSkillsSetupInput>;
|
|
53
|
+
readonly assist?: ConnectorAssist;
|
|
54
|
+
/** Read-only health of what this provider installs, for `cotal status` and the setup card. */
|
|
55
|
+
status?(input: ConnectorStatusInput): readonly ConnectorStatusRow[];
|
|
29
56
|
}
|
|
30
57
|
//# sourceMappingURL=connector-setup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connector-setup.d.ts","sourceRoot":"","sources":["../src/connector-setup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C;oGACoG;AACpG,MAAM,WAAW,oBAAoB,CAAC,KAAK,GAAG,IAAI;IAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAC7C;AAED;yFACyF;AACzF,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;6BAE6B;AAC7B,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;wEACoE;IACpE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAC,yBAAyB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"connector-setup.d.ts","sourceRoot":"","sources":["../src/connector-setup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C;oGACoG;AACpG,MAAM,WAAW,oBAAoB,CAAC,KAAK,GAAG,IAAI;IAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAC7C;AAED;yFACyF;AACzF,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;gDAEgD;AAChD,MAAM,WAAW,eAAe;IAC9B,sEAAsE;IACtE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;sDACkD;IAClD,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED,uEAAuE;AACvE,MAAM,WAAW,oBAAoB;IACnC,yFAAyF;IACzF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED;gCACgC;AAChC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;IAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;6BAE6B;AAC7B,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;wEACoE;IACpE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAC,yBAAyB,CAAC,CAAC;IAClE,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC;IAClC,8FAA8F;IAC9F,MAAM,CAAC,CAAC,KAAK,EAAE,oBAAoB,GAAG,SAAS,kBAAkB,EAAE,CAAC;CACrE"}
|
package/dist/connector.d.ts
CHANGED
|
@@ -90,6 +90,12 @@ export interface LaunchOpts {
|
|
|
90
90
|
* CLI/manifest/model-provided field. A connector that cannot preserve its mesh surface across
|
|
91
91
|
* same-session continuation throws rather than silently launching fresh. */
|
|
92
92
|
continueSession?: string;
|
|
93
|
+
/** Existing host session to reopen for a manifest `continuity: exact` agent. Unlike
|
|
94
|
+
* {@link continueSession}, the session must already exist: a connector that honors it fails the
|
|
95
|
+
* launch when the host has no such session, never creating an empty one under that id. Crash
|
|
96
|
+
* recovery keeps `continueSession`, because a seat that never took a turn has no stored session
|
|
97
|
+
* yet. Manager-internal only, never a CLI/manifest/model-provided field. */
|
|
98
|
+
reopenSession?: string;
|
|
93
99
|
/** Publish this session's AG-UI event plane to the agent's own event channel (see
|
|
94
100
|
* {@link Connector.eventChannel}), so an external observer or UI can read what the agent actually
|
|
95
101
|
* did as structured events rather than as prose (sets `COTAL_EVENTS`). Defaults to ON for a
|
|
@@ -151,6 +157,18 @@ export interface LaunchSpec {
|
|
|
151
157
|
* path after process exit, then verifies the successor reports the same session over `control`.
|
|
152
158
|
* Contains no transcript or credential; currently used by Pi for its current session id. */
|
|
153
159
|
sessionStatePath?: string;
|
|
160
|
+
/** Where a `resume` launch records its fork's provenance, for a connector whose seat makes the fork
|
|
161
|
+
* after launch: a JSON file the seat writes holding `source` (the session id it forked),
|
|
162
|
+
* `transcriptSha256` (SHA-256 over the source transcript as it read it) and `title` when the
|
|
163
|
+
* source has one. The manager records it on the seat's resume document, and `cotal ps` shows it.
|
|
164
|
+
* The manager keeps a title of at most 1024 characters, so the connector refuses before launch a
|
|
165
|
+
* source whose title is longer. */
|
|
166
|
+
resumeRecordPath?: string;
|
|
167
|
+
/** Private temporary directories this launch wrote for its child to read (a persona carrier, an
|
|
168
|
+
* MCP config file), from `writeLaunchArtifact`. The launcher that spawns this spec owns them: it
|
|
169
|
+
* removes them with `discardLaunchArtifacts` once it has proved the child gone (see core
|
|
170
|
+
* launch-artifacts). */
|
|
171
|
+
artifacts?: string[];
|
|
154
172
|
}
|
|
155
173
|
/** One provider-specific model variant. `options` is opaque connector metadata for UIs; core never
|
|
156
174
|
* interprets it or feeds it back into launch. */
|
|
@@ -234,9 +252,13 @@ export interface Connector extends Extension {
|
|
|
234
252
|
/** Whether this connector can reopen the exact host session named by
|
|
235
253
|
* {@link LaunchOpts.continueSession} after a supervised process crash. Default-deny. */
|
|
236
254
|
readonly supportsSessionContinuation?: boolean;
|
|
237
|
-
/** Whether
|
|
238
|
-
*
|
|
239
|
-
|
|
255
|
+
/** Whether this connector honors {@link LaunchOpts.reopenSession}: it reopens that existing host
|
|
256
|
+
* session or fails the launch when it does not exist. Default-deny. */
|
|
257
|
+
readonly supportsSessionReopen?: boolean;
|
|
258
|
+
/** Whether a launch without {@link LaunchOpts.resume}, {@link LaunchOpts.continueSession} or
|
|
259
|
+
* {@link LaunchOpts.reopenSession} creates a new host session. This is the first-cutover
|
|
260
|
+
* continuity declaration: a manager may describe it as `fresh`, but must never infer it by
|
|
261
|
+
* connector name or by probing a live host. */
|
|
240
262
|
readonly supportsFreshStart?: boolean;
|
|
241
263
|
/**
|
|
242
264
|
* Whether this connector can tell its host that the advertised `cotal_*` list changed.
|
package/dist/connector.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../src/connector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,oFAAoF;AACpF,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;8EAE0E;IAC1E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;mDAC+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;uGAImG;IACnG,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC5F;;+EAE2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;wGAEoG;IACpG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;sGAEkG;IAClG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;wFAMoF;IACpF,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;;;uDAImD;IACnD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;wEAEoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;0GAEsG;IACtG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;iEAG6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;qFAGiF;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC;;;;2CAIuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;uFAMmF;IACnF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;iFAI6E;IAC7E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;4BAQwB;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;qDAEiD;IACjD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;qEAIiE;IACjE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC3C;;;;sBAIkB;IAClB,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B;;qGAEiG;IACjG,gBAAgB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD;;;4FAGwF;IACxF,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,oFAAoF;AACpF,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B;;;+CAG2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;wBAMoB;IACpB,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C;;iGAE6F;IAC7F,gBAAgB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../src/connector.ts"],"names":[],"mappings":"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"}
|
package/dist/connector.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connector.js","sourceRoot":"","sources":["../src/connector.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"connector.js","sourceRoot":"","sources":["../src/connector.ts"],"names":[],"mappings":"AA2SA;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,SAAmG;IAEnG,IAAI,SAAS,CAAC,2BAA2B;QAAE,OAAO,OAAO,CAAC;IAC1D,IAAI,SAAS,CAAC,cAAc;QAAE,OAAO,MAAM,CAAC;IAC5C,OAAO,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC;AAC/D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,+BAA+B,CAAC,SAAsD;IACpG,IAAI,SAAS,CAAC,wBAAwB,KAAK,IAAI;QAAE,OAAO;IACxD,MAAM,IAAI,KAAK,CACb,qIAAqI,CACtI,CAAC;AACJ,CAAC"}
|
|
@@ -78,6 +78,8 @@ export interface GateReconcileReport {
|
|
|
78
78
|
repairCursorCleanup: "deleted" | "retained";
|
|
79
79
|
reopenedAtGeneration: number;
|
|
80
80
|
}
|
|
81
|
+
/** How many family ledger rows one repair revokes at a time. */
|
|
82
|
+
export declare const REVOKE_CONCURRENCY = 16;
|
|
81
83
|
/**
|
|
82
84
|
* Reconcile ONE frozen gate. Every seam the guard depends on is injected, so the command wires the
|
|
83
85
|
* real ones and the smoke drives the real barrier against an ephemeral broker.
|
|
@@ -93,7 +95,9 @@ export declare function reconcileEndpointGate(opts: {
|
|
|
93
95
|
endpoint: string;
|
|
94
96
|
instanceId: string;
|
|
95
97
|
probeHolder: (principal: string) => Promise<HolderLiveness>;
|
|
96
|
-
evict
|
|
98
|
+
/** Verify-evict a SET of holders in one shared sweep, answering `verifiedGone` per holder in
|
|
99
|
+
* input order. Throwing means nothing in the set is verified. */
|
|
100
|
+
evictHolders: (holderPrincipals: readonly string[]) => Promise<boolean[]>;
|
|
97
101
|
log: (line: string) => void;
|
|
98
102
|
/** Records store: same-op Phase-3 completion reads the spec key. Required so a missing store cannot silently abort-reopen a committed write. */
|
|
99
103
|
recordsKv: KV;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoint-reconcile.d.ts","sourceRoot":"","sources":["../src/endpoint-reconcile.ts"],"names":[],"mappings":"AAiCA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEtC;;mDAEmD;AACnD,MAAM,MAAM,sBAAsB;AAChC,2FAA2F;AACzF,SAAS;AACX,wEAAwE;GACtE,YAAY;AACd,qGAAqG;GACnG,eAAe;AACjB,2FAA2F;GACzF,cAAc;AAChB,qGAAqG;GACnG,gBAAgB;AAClB;wEACwE;GACtE,0BAA0B;AAC5B,sFAAsF;GACpF,qBAAqB;AACvB,wFAAwF;GACtF,OAAO,CAAC;AAEZ,2EAA2E;AAC3E,qBAAa,oBAAqB,SAAQ,KAAK;IAE3C,QAAQ,CAAC,SAAS,EAAE,sBAAsB;gBAAjC,SAAS,EAAE,sBAAsB,EAC1C,OAAO,EAAE,MAAM;CAKlB;AAED;;4EAE4E;AAC5E,MAAM,MAAM,cAAc,GACtB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,KAAK,EAAE,iBAAiB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjD,0FAA0F;AAC1F,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAC;QAAC,qBAAqB,EAAE,MAAM,CAAA;KAAE,CAAC;IAClH,kHAAkH;IAClH,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAC;QAAC,qBAAqB,EAAE,MAAM,CAAA;KAAE,CAAC;IACjH,QAAQ,EAAE,cAAc,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,+DAA+D;IAC/D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,mEAAmE;IACnE,4BAA4B,EAAE,MAAM,EAAE,CAAC;IACvC,kDAAkD;IAClD,0BAA0B,EAAE,MAAM,EAAE,CAAC;IACrC,oEAAoE;IACpE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,iGAAiG;IACjG,mBAAmB,EAAE,SAAS,GAAG,UAAU,CAAC;IAC5C,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,EAAE,EAAE,EAAE,CAAC;IACP,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IAC5D,
|
|
1
|
+
{"version":3,"file":"endpoint-reconcile.d.ts","sourceRoot":"","sources":["../src/endpoint-reconcile.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,8 @@ export class GateReconcileRefused extends Error {
|
|
|
37
37
|
this.name = "GateReconcileRefused";
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
+
/** How many family ledger rows one repair revokes at a time. */
|
|
41
|
+
export const REVOKE_CONCURRENCY = 16;
|
|
40
42
|
/**
|
|
41
43
|
* Reconcile ONE frozen gate. Every seam the guard depends on is injected, so the command wires the
|
|
42
44
|
* real ones and the smoke drives the real barrier against an ephemeral broker.
|
|
@@ -72,18 +74,29 @@ export async function reconcileEndpointGate(opts) {
|
|
|
72
74
|
if (liveness.state === "unestablishable")
|
|
73
75
|
throw new GateReconcileRefused("liveness-unestablishable", `liveness for freeze-holder "${row.principal}" CANNOT BE ESTABLISHED (${liveness.detail}) — without the oracle this repair has no affirmative check to stand on, and it will not infer death from silence.`);
|
|
74
76
|
// ---- 3. Only now: the shipped composition, in the §13.1 order, over the DEAD op's own id.
|
|
75
|
-
|
|
77
|
+
// The repair evicts the family as one set below, so the barrier is built without a per-holder
|
|
78
|
+
// evictor (its own default is fail-closed) and is used here for enumerate, revoke and reopen.
|
|
79
|
+
const barrier = endpointRegistrationBarrier(kv, space, { endpoint, instanceId, opId });
|
|
76
80
|
const rows = await barrier.enumerate();
|
|
77
81
|
log(`family: ${rows.length} ledger row(s)`);
|
|
82
|
+
// Deny-new BEFORE kill-live — the precondition eviction's name carries. Revocations are
|
|
83
|
+
// independent per row, so they run REVOKE_CONCURRENCY at a time; every one of them settles before
|
|
84
|
+
// a failure is reported, so no write is still in flight when the repair refuses.
|
|
78
85
|
const revoked = [];
|
|
79
|
-
for (
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
86
|
+
for (let i = 0; i < rows.length; i += REVOKE_CONCURRENCY) {
|
|
87
|
+
const batch = rows.slice(i, i + REVOKE_CONCURRENCY);
|
|
88
|
+
const settled = await Promise.allSettled(batch.map((r) => (r.state === "active" ? barrier.revoke(r) : undefined)));
|
|
89
|
+
const failed = settled.find((x) => x.status === "rejected");
|
|
90
|
+
if (failed)
|
|
91
|
+
throw failed.reason;
|
|
92
|
+
for (const r of batch) {
|
|
93
|
+
if (r.state === "active") {
|
|
94
|
+
revoked.push(r.credentialId);
|
|
95
|
+
log(` revoked ${r.credentialId} (${r.holderPrincipal})`);
|
|
96
|
+
}
|
|
97
|
+
else
|
|
98
|
+
log(` ${r.state}: ${r.credentialId} (${r.holderPrincipal})`);
|
|
84
99
|
}
|
|
85
|
-
else
|
|
86
|
-
log(` ${r.state}: ${r.credentialId} (${r.holderPrincipal})`);
|
|
87
100
|
}
|
|
88
101
|
// Evict every distinct family holder, and the freeze-holder itself even when it staged no rows —
|
|
89
102
|
// the probe proved it gone, and the barrier's verify is what makes that durable rather than a
|
|
@@ -107,25 +120,34 @@ export async function reconcileEndpointGate(opts) {
|
|
|
107
120
|
}
|
|
108
121
|
const skipped = new Set(cursor.verified);
|
|
109
122
|
const holdersVerifiedBeforeAttempt = [...cursor.verified];
|
|
110
|
-
const
|
|
111
|
-
|
|
112
|
-
if (skipped.has(h)) {
|
|
123
|
+
for (const h of boundHolders)
|
|
124
|
+
if (skipped.has(h))
|
|
113
125
|
log(` already verified (durable): ${h}`);
|
|
114
|
-
|
|
115
|
-
|
|
126
|
+
// Every holder still required is verify-evicted as ONE set: one shared scan → KICK → verify sweep
|
|
127
|
+
// instead of one per holder. The verified ones are recorded in one CAS-pinned cursor write, so a
|
|
128
|
+
// partial answer still leaves durable progress, and any unverified holder keeps the gate frozen.
|
|
129
|
+
const pendingHolders = boundHolders.filter((h) => !skipped.has(h));
|
|
130
|
+
const evicted = [];
|
|
131
|
+
if (pendingHolders.length > 0) {
|
|
116
132
|
let verified;
|
|
117
133
|
try {
|
|
118
|
-
verified = await
|
|
134
|
+
verified = await opts.evictHolders(pendingHolders);
|
|
135
|
+
if (verified.length !== pendingHolders.length)
|
|
136
|
+
throw new Error(`the evictor answered ${verified.length} verdict(s) for ${pendingHolders.length} holder(s)`);
|
|
119
137
|
}
|
|
120
138
|
catch (e) {
|
|
121
|
-
throw new GateReconcileRefused("eviction-unverified", `eviction verification for
|
|
139
|
+
throw new GateReconcileRefused("eviction-unverified", `eviction verification for ${pendingHolders.length} holder(s) was interrupted — the gate stays frozen (fail-closed, SPEC 13.1). Durable progress: ${cursor.verified.length} completed, ${boundHolders.length - cursor.verified.length} remaining. Cause: ${e?.message ?? String(e)}`);
|
|
122
140
|
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
141
|
+
evicted.push(...pendingHolders.filter((_, i) => verified[i] === true));
|
|
142
|
+
if (evicted.length > 0) {
|
|
143
|
+
cursor = { ...cursor, verified: [...new Set([...cursor.verified, ...evicted])].sort() };
|
|
144
|
+
cursorRevision = await saveEndpointRepairCursor(kv, endpoint, instanceId, cursor, cursorRevision);
|
|
145
|
+
for (const h of evicted)
|
|
146
|
+
log(` verified evicted: ${h} (${cursor.verified.length}/${boundHolders.length})`);
|
|
147
|
+
}
|
|
148
|
+
const unverified = pendingHolders.filter((_, i) => verified[i] !== true);
|
|
149
|
+
if (unverified.length > 0)
|
|
150
|
+
throw new GateReconcileRefused("eviction-unverified", `eviction of ${unverified.map((h) => `"${h}"`).join(", ")} was NOT verified gone — the gate stays frozen (fail-closed, SPEC 13.1). Nothing was reopened; the revocations above are deny-new and safe to leave. Durable progress: ${cursor.verified.length} completed, ${boundHolders.length - cursor.verified.length} remaining.`);
|
|
129
151
|
}
|
|
130
152
|
const holdersRemaining = boundHolders.filter((h) => !cursor.verified.includes(h));
|
|
131
153
|
if (holdersRemaining.length !== 0)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoint-reconcile.js","sourceRoot":"","sources":["../src/endpoint-reconcile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,mBAAmB,GACpG,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAmD,MAAM,sBAAsB,CAAC;AACrH,OAAO,EAAE,kCAAkC,EAAE,MAAM,uBAAuB,CAAC;AAyB3E,2EAA2E;AAC3E,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAElC;IADX,YACW,SAAiC,EAC1C,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,cAAS,GAAT,SAAS,CAAwB;QAI1C,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAuCD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,
|
|
1
|
+
{"version":3,"file":"endpoint-reconcile.js","sourceRoot":"","sources":["../src/endpoint-reconcile.ts"],"names":[],"mappings":"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"}
|
|
@@ -116,6 +116,31 @@ export interface ServiceNameAuthority {
|
|
|
116
116
|
* the caller binds it into the issuance gate so a transfer between decision and mint is fenced,
|
|
117
117
|
* never a torn owner-vs-revision read. */
|
|
118
118
|
export declare function assertServiceNameAuthority(endpoint: string, owner: string, authority: ServiceNameAuthority): Promise<number>;
|
|
119
|
+
/** Register (or re-register) a service instance: authenticated-registrant binding, name
|
|
120
|
+
* authority, then the spec-key CAS. The returned `registrationRevision` is the spec key's
|
|
121
|
+
* store revision (§13.7) — a re-registration advances it, which is exactly what invalidates a
|
|
122
|
+
* frozen scatter slot (§13.5 `churn`). A concurrent registration race is a loud `conflict`
|
|
123
|
+
* (§13.8: re-read and re-decide).
|
|
124
|
+
*
|
|
125
|
+
* `registrant` is the BROKER-AUTHENTICATED caller of the registration request (its subject
|
|
126
|
+
* principal, §13.9 — never a payload claim): the descriptor owner must BE that caller, so a
|
|
127
|
+
* privileged owner's descriptor cannot be registered by anyone else, and a re-registration can
|
|
128
|
+
* never change an instance's ownership. `instanceId` MUST be provisioner-minted and never
|
|
129
|
+
* reused (§13.1); the allocator that enforces non-reuse is the lifecycle registry (D13) — this
|
|
130
|
+
* seam enforces what is checkable at the record: grammar, ownership stability, and CAS.
|
|
131
|
+
*
|
|
132
|
+
* ISSUANCE-GATE BARRIER (§13.1). A registration is a WRITER on the instance's issuance gate: to
|
|
133
|
+
* be linearizable against an in-flight serve mint it MUST run the barrier protocol on the SAME
|
|
134
|
+
* `gate.<lifecycleUid>` key, in order: freeze the gate (so a fresh mint observes `frozen` and
|
|
135
|
+
* refuses, and a staged-but-uncommitted mint loses its revision-pinned CAS), authorize the owner
|
|
136
|
+
* under the frozen gate, revoke + VERIFIED-evict the superseded credential family, THEN advance
|
|
137
|
+
* the spec, then reopen at the successor `registrationRevision`. Old authority dies before new
|
|
138
|
+
* authority is published. This is REQUIRED, not documented: core exports no bare spec-key advance
|
|
139
|
+
* that could leave a mint's observed `registrationRevision` permanently equal to its snapshot,
|
|
140
|
+
* win a never-frozen CAS, and silently release a superseded-surface credential. The gate is
|
|
141
|
+
* created by the provisioner at instance mint (D13); a missing gate is `failed-precondition`. The
|
|
142
|
+
* production `barrier` wires to the durable KV CAS (D13/D14); the D4 seam is the typed protocol
|
|
143
|
+
* and its faithful in-memory model, so the barrier's writes serialize with the mint's on one key. */
|
|
119
144
|
export declare function registerServiceInstance(kv: KV, args: {
|
|
120
145
|
space: string;
|
|
121
146
|
spec: ServiceSpec;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoint-service.d.ts","sourceRoot":"","sources":["../src/endpoint-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAqC,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAKzF,OAAO,EAAyG,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACvK,OAAO,EAAqB,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAIjE;;;uBAGuB;AACvB,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,4FAA4F;IAC5F,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,wEAAwE;IACxE,QAAQ,EAAE;QAAE,CAAC,EAAE,CAAC,CAAA;KAAE,CAAC;IACnB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED;;;;iCAIiC;AACjC,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB,EAAE,MAAM,CAAC;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,8DAA8D;AAC9D,eAAO,MAAM,aAAa,UAAU,CAAC;AACrC,eAAO,MAAM,cAAc,WAAW,CAAC;AACvC;;;;sFAIsF;AACtF,eAAO,MAAM,iBAAiB,cAAc,CAAC;AAE7C;;;gFAGgF;AAChF,eAAO,MAAM,6BAA6B,aAAa,CAAC;AACxD,eAAO,MAAM,0BAA0B,cAAc,CAAC;AAEtD;;;;+DAI+D;AAC/D,YAAY,EAAE,oBAAoB,EAAE,CAAC;AAErC;;;sFAGsF;AACtF,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,uBAAuB,CAQ3E;AAWD;;qFAEqF;AACrF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CAgBrF;AAED,gEAAgE;AAChE,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa,CAsB9D;AAID;;;8BAG8B;AAC9B,MAAM,WAAW,oBAAoB;IACnC;;;;;;;;+EAQ2E;IAC3E,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG;QAAE,UAAU,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CACxI;AAED;;;;;2CAK2C;AAC3C,wBAAsB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CASlI;AA0LD,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,EAAE,EACN,IAAI,EAAE;IACJ,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,SAAS,EAAE,oBAAoB,CAAC;IAAC,OAAO,EAAE,iBAAiB,CAAC;IACjJ;;;;;mDAK+C;IAC/C,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACpE;;;;;;gEAM4D;IAC5D,uBAAuB,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAClF,GACA,OAAO,CAAC;IAAE,oBAAoB,EAAE,MAAM,CAAA;CAAE,CAAC,CAwS3C;AAmCD;;yGAEyG;AACzG,wBAAsB,kCAAkC,CACtD,SAAS,EAAE,EAAE,EACb,IAAI,EAAE;IACJ,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAC;QAAC,qBAAqB,EAAE,MAAM,CAAA;KAAE,CAAC;CACjH,GACA,OAAO,CAAC;IAAE,SAAS,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,SAAS,EAAE,IAAI,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CA+BzG;AA4JD;;;;;;;;;;;;;;;;;;;;;;+DAsB+D;AAC/D,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,EAAE,EACN,IAAI,EAAE;IACJ,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;IACtB,gBAAgB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACjD,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,oBAAoB,CAAC;CACnC,GACA,OAAO,CAAC,MAAM,CAAC,CAoEjB;AAID;;;4FAG4F;AAC5F,MAAM,MAAM,qBAAqB,GAC7B;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE;AAClE,qFAAqF;GACnF;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAA;CAAE;AACtC;;0FAE0F;GACxF;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,YAAY,CAAA;CAAE;AAC1C;+FAC+F;GAC7F;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,wBAAwB,CAAA;CAAE,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAsB,yBAAyB,CAC7C,EAAE,EAAE,EAAE,EACN,IAAI,EAAE;IACJ,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,iBAAiB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CACnD,GACA,OAAO,CAAC,qBAAqB,CAAC,CAoDhC;AAID,oFAAoF;AACpF,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;6CAO6C;AAC7C,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAiDzH;AAED;;;;;6FAK6F;AAC7F,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,IAAI,CAAA;CAAE,GAAG,SAAS,CAAC,CAc/E;AAED;;;;;;;;;wCASwC;AACxC,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,cAAc,EAAE,GAChC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAejD;AAED;;;;;;+EAM+E;AAC/E,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAQlI;AAID;;wDAEwD;AACxD,MAAM,WAAW,kBAAkB;IACjC,0EAA0E;IAC1E,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,2EAA2E;IAC3E,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB;;sFAEkF;IAClF,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3B;AAED;;;;;;;;4BAQ4B;AAC5B,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAC;IACd;;2CAEuC;IACvC,oBAAoB,EAAE,MAAM,CAAC;IAC7B;mGAC+F;IAC/F,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,qDAAqD;IACrD,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACtD;;;+CAG2C;IAC3C,YAAY,EAAE,OAAO,CAAC;IACtB;;;;kGAI8F;IAC9F,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB;8BAC0B;IAC1B,UAAU,EAAE,kBAAkB,CAAC;CAChC;AAED;;2FAE2F;AAC3F,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAGD;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC5C,UAAU,EAAE,kBAAkB,CAAC;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,GAAG,YAAY,CAwCf;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,EAAE,EACN,IAAI,EAAE;IACJ,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1B,SAAS,EAAE,oBAAoB,CAAC;IAChC,gBAAgB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACjD;;;yEAGqE;IACrE,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACpE;;;qDAGiD;IACjD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,GACA,OAAO,CAAC,YAAY,CAAC,CA0HvB;AAED;;;;8DAI8D;AAC9D,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,YAAY,GAAG,eAAe,CAY/E;AAED;;;;2DAI2D;AAC3D,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,eAAe,CAO3H;AAID;;;;;;;yFAOyF;AACzF,MAAM,WAAW,WAAW;IAC1B;;;;4BAIwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;;;;;;;4CAYwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;8FAI0F;IAC1F,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,0FAA0F;IAC1F,EAAE,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,YAAY,GAAG,UAAU,GAAG,cAAc,GAAG,YAAY,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5G;AAED;;sGAEsG;AACtG,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;gGAgBgG;AAChG,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB;oGACgG;IAChG,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;sFAMsF;AACtF,MAAM,WAAW,cAAc;IAC7B;2EACuE;IACvE,OAAO,EAAE,MAAM,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,WAAW,GAAG,IAAI,CAAC;IAChE;;;;sGAIkG;IAClG,KAAK,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACvD;;;qBAGiB;IACjB,MAAM,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACjE,0FAA0F;IAC1F,MAAM,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACzD;AAED;;;;;;;gGAOgG;AAChG,MAAM,WAAW,iBAAiB;IAChC,4FAA4F;IAC5F,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,8FAA8F;IAC9F,OAAO,EAAE,MAAM,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,WAAW,GAAG,IAAI,CAAC;IAChE;;;;qFAIiF;IACjF,MAAM,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC;IAC7E;8EAC0E;IAC1E,SAAS,EAAE,MAAM,OAAO,CAAC,gBAAgB,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC;IAClE,4FAA4F;IAC5F,MAAM,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACxD;;;;2EAIuE;IACvE,KAAK,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAC/D;;;mEAG+D;IAC/D,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAClF;wFACoF;IACpF,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,MAAM,OAAO,CAAC;YAAE,MAAM,EAAE,oBAAoB,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC,CAAC;QAC/E,IAAI,EAAE,CAAC,MAAM,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;QACzF,KAAK,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACpD,CAAC;CACH;AAED;;;;yDAIyD;AACzD,MAAM,WAAW,iBAAiB;IAChC;2DACuD;IACvD,YAAY,EAAE,MAAM,CAAC;IACrB,qFAAqF;IACrF,aAAa,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,WAAW,EAAE,MAAM,CAAC;IACpB;mEAC+D;IAC/D,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,4FAA4F;IAC5F,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAWD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+EnI"}
|
|
1
|
+
{"version":3,"file":"endpoint-service.d.ts","sourceRoot":"","sources":["../src/endpoint-service.ts"],"names":[],"mappings":"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"}
|
package/dist/endpoint-service.js
CHANGED
|
@@ -115,31 +115,6 @@ export async function assertServiceNameAuthority(endpoint, owner, authority) {
|
|
|
115
115
|
return snapshot.revision;
|
|
116
116
|
}
|
|
117
117
|
// ---- registration (spec writes, the `provisioner-registration` principal) ---------------------
|
|
118
|
-
/** Register (or re-register) a service instance: authenticated-registrant binding, name
|
|
119
|
-
* authority, then the spec-key CAS. The returned `registrationRevision` is the spec key's
|
|
120
|
-
* store revision (§13.7) — a re-registration advances it, which is exactly what invalidates a
|
|
121
|
-
* frozen scatter slot (§13.5 `churn`). A concurrent registration race is a loud `conflict`
|
|
122
|
-
* (§13.8: re-read and re-decide).
|
|
123
|
-
*
|
|
124
|
-
* `registrant` is the BROKER-AUTHENTICATED caller of the registration request (its subject
|
|
125
|
-
* principal, §13.9 — never a payload claim): the descriptor owner must BE that caller, so a
|
|
126
|
-
* privileged owner's descriptor cannot be registered by anyone else, and a re-registration can
|
|
127
|
-
* never change an instance's ownership. `instanceId` MUST be provisioner-minted and never
|
|
128
|
-
* reused (§13.1); the allocator that enforces non-reuse is the lifecycle registry (D13) — this
|
|
129
|
-
* seam enforces what is checkable at the record: grammar, ownership stability, and CAS.
|
|
130
|
-
*
|
|
131
|
-
* ISSUANCE-GATE BARRIER (§13.1). A registration is a WRITER on the instance's issuance gate: to
|
|
132
|
-
* be linearizable against an in-flight serve mint it MUST run the barrier protocol on the SAME
|
|
133
|
-
* `gate.<lifecycleUid>` key, in order: freeze the gate (so a fresh mint observes `frozen` and
|
|
134
|
-
* refuses, and a staged-but-uncommitted mint loses its revision-pinned CAS), authorize the owner
|
|
135
|
-
* under the frozen gate, revoke + VERIFIED-evict the superseded credential family, THEN advance
|
|
136
|
-
* the spec, then reopen at the successor `registrationRevision`. Old authority dies before new
|
|
137
|
-
* authority is published. This is REQUIRED, not documented: core exports no bare spec-key advance
|
|
138
|
-
* that could leave a mint's observed `registrationRevision` permanently equal to its snapshot,
|
|
139
|
-
* win a never-frozen CAS, and silently release a superseded-surface credential. The gate is
|
|
140
|
-
* created by the provisioner at instance mint (D13); a missing gate is `failed-precondition`. The
|
|
141
|
-
* production `barrier` wires to the durable KV CAS (D13/D14); the D4 seam is the typed protocol
|
|
142
|
-
* and its faithful in-memory model, so the barrier's writes serialize with the mint's on one key. */
|
|
143
118
|
/** Reconstruct a registered spec's command surface from trusted registry + content-addressed
|
|
144
119
|
* store state (§13.7): EVERY command name -> the set of governed URNs its verified cluster
|
|
145
120
|
* document declares (an empty set for an un-governed command; the full command set is needed so
|
|
@@ -277,6 +252,31 @@ function serializeGovernanceCommands(commands) {
|
|
|
277
252
|
out[command] = [...urns].sort();
|
|
278
253
|
return out;
|
|
279
254
|
}
|
|
255
|
+
/** Register (or re-register) a service instance: authenticated-registrant binding, name
|
|
256
|
+
* authority, then the spec-key CAS. The returned `registrationRevision` is the spec key's
|
|
257
|
+
* store revision (§13.7) — a re-registration advances it, which is exactly what invalidates a
|
|
258
|
+
* frozen scatter slot (§13.5 `churn`). A concurrent registration race is a loud `conflict`
|
|
259
|
+
* (§13.8: re-read and re-decide).
|
|
260
|
+
*
|
|
261
|
+
* `registrant` is the BROKER-AUTHENTICATED caller of the registration request (its subject
|
|
262
|
+
* principal, §13.9 — never a payload claim): the descriptor owner must BE that caller, so a
|
|
263
|
+
* privileged owner's descriptor cannot be registered by anyone else, and a re-registration can
|
|
264
|
+
* never change an instance's ownership. `instanceId` MUST be provisioner-minted and never
|
|
265
|
+
* reused (§13.1); the allocator that enforces non-reuse is the lifecycle registry (D13) — this
|
|
266
|
+
* seam enforces what is checkable at the record: grammar, ownership stability, and CAS.
|
|
267
|
+
*
|
|
268
|
+
* ISSUANCE-GATE BARRIER (§13.1). A registration is a WRITER on the instance's issuance gate: to
|
|
269
|
+
* be linearizable against an in-flight serve mint it MUST run the barrier protocol on the SAME
|
|
270
|
+
* `gate.<lifecycleUid>` key, in order: freeze the gate (so a fresh mint observes `frozen` and
|
|
271
|
+
* refuses, and a staged-but-uncommitted mint loses its revision-pinned CAS), authorize the owner
|
|
272
|
+
* under the frozen gate, revoke + VERIFIED-evict the superseded credential family, THEN advance
|
|
273
|
+
* the spec, then reopen at the successor `registrationRevision`. Old authority dies before new
|
|
274
|
+
* authority is published. This is REQUIRED, not documented: core exports no bare spec-key advance
|
|
275
|
+
* that could leave a mint's observed `registrationRevision` permanently equal to its snapshot,
|
|
276
|
+
* win a never-frozen CAS, and silently release a superseded-surface credential. The gate is
|
|
277
|
+
* created by the provisioner at instance mint (D13); a missing gate is `failed-precondition`. The
|
|
278
|
+
* production `barrier` wires to the durable KV CAS (D13/D14); the D4 seam is the typed protocol
|
|
279
|
+
* and its faithful in-memory model, so the barrier's writes serialize with the mint's on one key. */
|
|
280
280
|
export async function registerServiceInstance(kv, args) {
|
|
281
281
|
if (typeof args.readClusterArtifact !== "function")
|
|
282
282
|
throw new EpEnvelopeError("failed-precondition", "registerServiceInstance requires a content-store reader (readClusterArtifact); governed-continuity is not an optional seam (SPEC 13.7)");
|