@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.
Files changed (103) hide show
  1. package/dist/acls.d.ts +7 -0
  2. package/dist/acls.d.ts.map +1 -1
  3. package/dist/acls.js +10 -0
  4. package/dist/acls.js.map +1 -1
  5. package/dist/auth-provider.d.ts +13 -1
  6. package/dist/auth-provider.d.ts.map +1 -1
  7. package/dist/auth-provider.js.map +1 -1
  8. package/dist/backup-config.d.ts +10 -2
  9. package/dist/backup-config.d.ts.map +1 -1
  10. package/dist/backup-config.js +12 -3
  11. package/dist/backup-config.js.map +1 -1
  12. package/dist/broker-tls.d.ts +15 -0
  13. package/dist/broker-tls.d.ts.map +1 -1
  14. package/dist/broker-tls.js +6 -6
  15. package/dist/broker-tls.js.map +1 -1
  16. package/dist/checkpoint-answer.d.ts +24 -0
  17. package/dist/checkpoint-answer.d.ts.map +1 -1
  18. package/dist/checkpoint-answer.js +45 -4
  19. package/dist/checkpoint-answer.js.map +1 -1
  20. package/dist/command.d.ts +4 -3
  21. package/dist/command.d.ts.map +1 -1
  22. package/dist/command.js +20 -4
  23. package/dist/command.js.map +1 -1
  24. package/dist/connector-setup.d.ts +27 -0
  25. package/dist/connector-setup.d.ts.map +1 -1
  26. package/dist/connector.d.ts +25 -3
  27. package/dist/connector.d.ts.map +1 -1
  28. package/dist/connector.js.map +1 -1
  29. package/dist/endpoint-reconcile.d.ts +5 -1
  30. package/dist/endpoint-reconcile.d.ts.map +1 -1
  31. package/dist/endpoint-reconcile.js +43 -21
  32. package/dist/endpoint-reconcile.js.map +1 -1
  33. package/dist/endpoint-service.d.ts +25 -0
  34. package/dist/endpoint-service.d.ts.map +1 -1
  35. package/dist/endpoint-service.js +25 -25
  36. package/dist/endpoint-service.js.map +1 -1
  37. package/dist/endpoint.d.ts +105 -8
  38. package/dist/endpoint.d.ts.map +1 -1
  39. package/dist/endpoint.js +349 -43
  40. package/dist/endpoint.js.map +1 -1
  41. package/dist/evict.d.ts +27 -0
  42. package/dist/evict.d.ts.map +1 -1
  43. package/dist/evict.js +99 -42
  44. package/dist/evict.js.map +1 -1
  45. package/dist/index.d.ts +2 -0
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +2 -0
  48. package/dist/index.js.map +1 -1
  49. package/dist/issued-authority.d.ts +0 -2
  50. package/dist/issued-authority.d.ts.map +1 -1
  51. package/dist/issued-authority.js +0 -2
  52. package/dist/issued-authority.js.map +1 -1
  53. package/dist/launch-artifacts.d.ts +42 -0
  54. package/dist/launch-artifacts.d.ts.map +1 -0
  55. package/dist/launch-artifacts.js +155 -0
  56. package/dist/launch-artifacts.js.map +1 -0
  57. package/dist/launch.d.ts +5 -1
  58. package/dist/launch.d.ts.map +1 -1
  59. package/dist/lease.d.ts +5 -0
  60. package/dist/lease.d.ts.map +1 -1
  61. package/dist/lease.js.map +1 -1
  62. package/dist/lifecycle-state.d.ts +1 -1
  63. package/dist/lifecycle-state.js +3 -3
  64. package/dist/lifecycle-state.js.map +1 -1
  65. package/dist/liveness.d.ts +180 -0
  66. package/dist/liveness.d.ts.map +1 -0
  67. package/dist/liveness.js +114 -0
  68. package/dist/liveness.js.map +1 -0
  69. package/dist/provision.d.ts +24 -11
  70. package/dist/provision.d.ts.map +1 -1
  71. package/dist/provision.js +127 -42
  72. package/dist/provision.js.map +1 -1
  73. package/dist/remote-manager-authority.d.ts +109 -2
  74. package/dist/remote-manager-authority.d.ts.map +1 -1
  75. package/dist/remote-manager-authority.js +104 -0
  76. package/dist/remote-manager-authority.js.map +1 -1
  77. package/dist/run-driver-grants.d.ts +1 -0
  78. package/dist/run-driver-grants.d.ts.map +1 -1
  79. package/dist/run-driver-grants.js +3 -2
  80. package/dist/run-driver-grants.js.map +1 -1
  81. package/dist/run-host.d.ts +66 -2
  82. package/dist/run-host.d.ts.map +1 -1
  83. package/dist/run-journal.d.ts +14 -6
  84. package/dist/run-journal.d.ts.map +1 -1
  85. package/dist/run-journal.js +14 -14
  86. package/dist/run-journal.js.map +1 -1
  87. package/dist/run-record.d.ts +5 -5
  88. package/dist/runtime.d.ts +6 -1
  89. package/dist/runtime.d.ts.map +1 -1
  90. package/dist/schema-profile.d.ts.map +1 -1
  91. package/dist/schema-profile.js +4 -3
  92. package/dist/schema-profile.js.map +1 -1
  93. package/dist/streams.d.ts +22 -16
  94. package/dist/streams.d.ts.map +1 -1
  95. package/dist/streams.js +26 -6
  96. package/dist/streams.js.map +1 -1
  97. package/dist/subjects.d.ts +65 -8
  98. package/dist/subjects.d.ts.map +1 -1
  99. package/dist/subjects.js +76 -9
  100. package/dist/subjects.js.map +1 -1
  101. package/dist/types.d.ts +4 -0
  102. package/dist/types.d.ts.map +1 -1
  103. 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 or a stray
3
- * positional (when the command declares none) throws `parseArgs`' usage error, which the
4
- * dispatcher renders as one red line plus the command's help. */
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
@@ -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;;kEAEkE;AAClE,MAAM,UAAU,gBAAgB,CAAC,GAAY,EAAE,IAAc;IAC3D,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IAC1E,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QAChC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG;YAChB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1C,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;QACxC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACf,OAAO;QACP,gBAAgB,EAAE,GAAG,CAAC,WAAW,KAAK,SAAS;QAC/C,MAAM,EAAE,IAAI;KACb,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,EAAE,MAA8B,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AAC5E,CAAC;AAED;gFACgF;AAChF,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,IAAI,GAAG,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC;IAChC,MAAM,KAAK,GAAG,CAAC,SAAS,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IACpC,IAAI,GAAG,CAAC,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,GAAG,OAAO,GAAG,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
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;CACnE"}
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"}
@@ -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 a launch without {@link LaunchOpts.resume} or {@link LaunchOpts.continueSession}
238
- * creates a new host session. This is the first-cutover continuity declaration: a manager may
239
- * describe it as `fresh`, but must never infer it by connector name or by probing a live host. */
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.
@@ -1 +1 @@
1
- {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../src/connector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../src/connector.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"connector.js","sourceRoot":"","sources":["../src/connector.ts"],"names":[],"mappings":"AAqRA;;;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"}
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: (holderPrincipal: string) => Promise<boolean>;
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,KAAK,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,gJAAgJ;IAChJ,SAAS,EAAE,EAAE,CAAC;CACf,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAkL/B"}
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
- const barrier = endpointRegistrationBarrier(kv, space, { endpoint, instanceId, opId, evict: opts.evict });
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 (const r of rows) {
80
- if (r.state === "active") {
81
- await barrier.revoke(r); // deny-new BEFORE kill-live — the precondition eviction's name carries
82
- revoked.push(r.credentialId);
83
- log(` revoked ${r.credentialId} (${r.holderPrincipal})`);
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 evicted = [];
111
- for (const h of boundHolders) {
112
- if (skipped.has(h)) {
123
+ for (const h of boundHolders)
124
+ if (skipped.has(h))
113
125
  log(` already verified (durable): ${h}`);
114
- continue;
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 barrier.evict(h);
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 "${h}" 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)}`);
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
- if (!verified)
124
- throw new GateReconcileRefused("eviction-unverified", `eviction of "${h}" 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.`);
125
- evicted.push(h);
126
- cursor = { ...cursor, verified: [...new Set([...cursor.verified, h])].sort() };
127
- cursorRevision = await saveEndpointRepairCursor(kv, endpoint, instanceId, cursor, cursorRevision);
128
- log(` verified evicted: ${h} (${cursor.verified.length}/${boundHolders.length})`);
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":"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"}
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":"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"}
1
+ {"version":3,"file":"endpoint-service.d.ts","sourceRoot":"","sources":["../src/endpoint-service.ts"],"names":[],"mappings":"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"}
@@ -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)");