@cotal-ai/connector-core 0.69.0 → 0.70.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.
@@ -19,6 +19,61 @@
19
19
  */
20
20
  import type { CotalMeta } from "./agui.js";
21
21
  import type { AguiEmitter } from "./agui-emitter.js";
22
+ /**
23
+ * The connector's hooks into an {@link AguiEmitterHolder}.
24
+ *
25
+ * Named rather than positional because the types cannot tell them apart: a `runMeta` provider is
26
+ * assignable to `onRunClosed`, so a position would let it land there, typecheck, and lose its
27
+ * metadata with nothing reporting why.
28
+ */
29
+ export interface AguiEmitterHolderHooks {
30
+ /** Where a failure goes. Required, and not defaulted to a swallow: the holder runs behind a hook
31
+ * that must not throw, so the only way a failure reaches a human is if the caller is made to say
32
+ * where it goes. */
33
+ onError: (e: Error) => void;
34
+ /**
35
+ * Told which run {@link AguiEmitterHolder.closeRun} closed, so the connector's own mapper can
36
+ * forget the run it will no longer attribute records to. Optional, and it is NOT the holder
37
+ * doing the forgetting: which state a record mapper keeps is the connector's business, and a
38
+ * holder that reached into it would be a second place that decides what a run is. Without it a
39
+ * mapper that still believes the run is open would emit under a `runId` the published stream has
40
+ * already closed, and the emitter would refuse the batch.
41
+ */
42
+ onRunClosed?: (runId: string) => void;
43
+ /**
44
+ * Rides out a transient endpoint rebuild window before a step pumps or closes a run. Called once
45
+ * per queued step that needs the broker (a flush, or a close with something open); it resolves
46
+ * when the endpoint's event plane is live, or rejects to make the whole step fail terminally
47
+ * exactly as any other emitter failure does. This is the seam the connectors'
48
+ * `MeshAgent`-adjacent wiring owns: the holder knows WHEN to publish, the caller knows HOW to
49
+ * observe liveness. Without it, a rebuild window between two pumps reads `max_payload` off a
50
+ * connection that is not there and kills the seat (#1868).
51
+ */
52
+ waitLive?: () => Promise<void>;
53
+ /**
54
+ * The Cotal metadata for the run {@link AguiEmitterHolder.closeRun} is about to close, such as
55
+ * its stop reason or usage, put on whichever terminal closes it. Asked inside the queued close
56
+ * rather than taken at call time, because the hook calls `closeRun` before the flush queued
57
+ * ahead of it has mapped the turn's last records, and those are what the metadata comes from.
58
+ * Keyed on the run id, so a provider that only knows a different run answers `undefined`
59
+ * instead of attributing its numbers to this one.
60
+ */
61
+ runMeta?: (runId: string) => CotalMeta | undefined;
62
+ }
63
+ /**
64
+ * The one answer every connector gives when its event plane stops for good, used as a holder's
65
+ * `onError`.
66
+ *
67
+ * Whether a seat may outlive its event plane is the space's policy, so it is decided here and not
68
+ * by each harness: on a space that requires events the seat stops, because a seat that kept taking
69
+ * turns would be on the roster while breaking the policy that admitted it. Any other space keeps
70
+ * the seat running with the reason in its log.
71
+ */
72
+ export declare function eventPlaneStopped(opts: {
73
+ required: boolean;
74
+ log: (line: string) => void;
75
+ stopSeat: () => void;
76
+ }): (e: Error) => void;
22
77
  /**
23
78
  * Holds at most one {@link AguiEmitter}, started on first adopt.
24
79
  *
@@ -29,10 +84,7 @@ import type { AguiEmitter } from "./agui-emitter.js";
29
84
  */
30
85
  export declare class AguiEmitterHolder<T, StartContext = undefined> {
31
86
  private readonly startEmitter;
32
- private readonly onError;
33
- private readonly onRunClosed?;
34
- private readonly waitLive?;
35
- private readonly runMeta?;
87
+ private readonly hooks;
36
88
  private emitter?;
37
89
  /** The path this holder is BOUND to. Set before `starting`, so a second path is refused even
38
90
  * while the first start is still in flight. */
@@ -67,30 +119,8 @@ export declare class AguiEmitterHolder<T, StartContext = undefined> {
67
119
  * decides what it means. Injected rather than assembled here: the WAL location, the source, and
68
120
  * the record mapper are all connector decisions, and a holder that made them would be a second
69
121
  * place they are decided.
70
- * @param onError Where a failure goes. Required, and not defaulted to a swallow: this class runs
71
- * behind a hook that must not throw, so the only way a failure reaches a human is if the caller
72
- * is made to say where it goes.
73
- * @param onRunClosed Told which run {@link closeRun} closed, so the connector's own mapper can
74
- * forget the run it will no longer attribute records to. Optional, and it is NOT the holder
75
- * doing the forgetting: which state a record mapper keeps is the connector's business, and a
76
- * holder that reached into it would be a second place that decides what a run is. Without it a
77
- * mapper that still believes the run is open would emit under a `runId` the published stream has
78
- * already closed, and the emitter would refuse the batch.
79
- * @param waitLive Rides out a transient endpoint rebuild window before a step pumps or closes a
80
- * run. Called once per queued step that needs the broker (a flush, or a close with something
81
- * open); it resolves when the endpoint's event plane is live, or rejects to make the whole
82
- * step fail terminally exactly as any other emitter failure does. This is the seam the
83
- * connectors' `MeshAgent`-adjacent wiring owns: the holder knows WHEN to publish, the caller
84
- * knows HOW to observe liveness. Without it, a rebuild window between two pumps reads
85
- * `max_payload` off a connection that is not there and kills the seat (#1868).
86
- * @param runMeta The Cotal metadata for the run {@link closeRun} is about to close, such as its
87
- * stop reason or usage, put on whichever terminal closes it. Asked inside the queued close
88
- * rather than taken at call time, because the hook calls `closeRun` before the flush queued
89
- * ahead of it has mapped the turn's last records, and those are what the metadata comes from.
90
- * Keyed on the run id, so a provider that only knows a different run answers `undefined`
91
- * instead of attributing its numbers to this one.
92
122
  */
93
- constructor(startEmitter: (path: string, context: StartContext | undefined) => Promise<AguiEmitter<T>>, onError: (e: Error) => void, onRunClosed?: ((runId: string) => void) | undefined, waitLive?: (() => Promise<void>) | undefined, runMeta?: ((runId: string) => CotalMeta | undefined) | undefined);
123
+ constructor(startEmitter: (path: string, context: StartContext | undefined) => Promise<AguiEmitter<T>>, hooks: AguiEmitterHolderHooks);
94
124
  /** True once an emitter is running here. False while a start is still in flight — it reports what
95
125
  * IS, never what is about to be. A dead holder is not running: after {@link die} what IS, is
96
126
  * that this holder is finished, whatever its unstopped emitter still says. */
@@ -1 +1 @@
1
- {"version":3,"file":"agui-holder.d.ts","sourceRoot":"","sources":["../src/agui-holder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;;;;;GAOG;AACH,qBAAa,iBAAiB,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS;IA4DtD,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IA/D3B,OAAO,CAAC,OAAO,CAAC,CAAiB;IACjC;oDACgD;IAChD,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B;;;;;;;;;OASG;IACH,OAAO,CAAC,IAAI,CAAC,CAAQ;IACrB;;;;;OAKG;IACH,OAAO,CAAC,IAAI,CAAS;IACrB;2EACuE;IACvE,OAAO,CAAC,KAAK,CAAoC;IACjD;qFACiF;IACjF,OAAO,CAAC,QAAQ,CAAC,CAAgB;IAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;gBAEgB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,SAAS,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAC1F,OAAO,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,EAC3B,WAAW,CAAC,GAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,aAAA,EACrC,QAAQ,CAAC,GAAE,MAAM,OAAO,CAAC,IAAI,CAAC,aAAA,EAC9B,OAAO,CAAC,GAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,GAAG,SAAS,aAAA;IAGrE;;mFAE+E;IAC/E,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,uDAAuD;IACvD,IAAI,OAAO,IAAI,KAAK,GAAG,SAAS,CAE/B;IAED,4FAA4F;IAC5F,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B,uEAAuE;IACvE,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI;IAOlD;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAS1B;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAc7E;;;;;OAKG;YACW,aAAa;IAqE3B,OAAO,CAAC,GAAG;IAQX;;;;;wFAKoF;IACpF,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,OAAO;IAOf,4FAA4F;IACtF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B"}
1
+ {"version":3,"file":"agui-holder.d.ts","sourceRoot":"","sources":["../src/agui-holder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC;;yBAEqB;IACrB,OAAO,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAC5B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,GAAG,SAAS,CAAC;CACpD;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB,GAAG,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CASrB;AAED;;;;;;;GAOG;AACH,qBAAa,iBAAiB,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS;IAsCtD,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK;IAtCxB,OAAO,CAAC,OAAO,CAAC,CAAiB;IACjC;oDACgD;IAChD,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B;;;;;;;;;OASG;IACH,OAAO,CAAC,IAAI,CAAC,CAAQ;IACrB;;;;;OAKG;IACH,OAAO,CAAC,IAAI,CAAS;IACrB;2EACuE;IACvE,OAAO,CAAC,KAAK,CAAoC;IACjD;qFACiF;IACjF,OAAO,CAAC,QAAQ,CAAC,CAAgB;IAEjC;;;;;;OAMG;gBAEgB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,SAAS,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAC1F,KAAK,EAAE,sBAAsB;IAGhD;;mFAE+E;IAC/E,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,uDAAuD;IACvD,IAAI,OAAO,IAAI,KAAK,GAAG,SAAS,CAE/B;IAED,4FAA4F;IAC5F,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B,uEAAuE;IACvE,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI;IAOlD;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAS1B;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAc7E;;;;;OAKG;YACW,aAAa;IAqE3B,OAAO,CAAC,GAAG;IAQX;;;;;wFAKoF;IACpF,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,OAAO;IAOf,4FAA4F;IACtF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B"}
@@ -1,3 +1,24 @@
1
+ /**
2
+ * The one answer every connector gives when its event plane stops for good, used as a holder's
3
+ * `onError`.
4
+ *
5
+ * Whether a seat may outlive its event plane is the space's policy, so it is decided here and not
6
+ * by each harness: on a space that requires events the seat stops, because a seat that kept taking
7
+ * turns would be on the roster while breaking the policy that admitted it. Any other space keeps
8
+ * the seat running with the reason in its log.
9
+ */
10
+ export function eventPlaneStopped(opts) {
11
+ return (e) => {
12
+ // A sink that throws must not keep a seat running that the policy says must stop.
13
+ try {
14
+ opts.log(`AG-UI emitter stopped: ${e.message}`);
15
+ }
16
+ finally {
17
+ if (opts.required)
18
+ opts.stopSeat();
19
+ }
20
+ };
21
+ }
1
22
  /**
2
23
  * Holds at most one {@link AguiEmitter}, started on first adopt.
3
24
  *
@@ -8,10 +29,7 @@
8
29
  */
9
30
  export class AguiEmitterHolder {
10
31
  startEmitter;
11
- onError;
12
- onRunClosed;
13
- waitLive;
14
- runMeta;
32
+ hooks;
15
33
  emitter;
16
34
  /** The path this holder is BOUND to. Set before `starting`, so a second path is refused even
17
35
  * while the first start is still in flight. */
@@ -46,35 +64,10 @@ export class AguiEmitterHolder {
46
64
  * decides what it means. Injected rather than assembled here: the WAL location, the source, and
47
65
  * the record mapper are all connector decisions, and a holder that made them would be a second
48
66
  * place they are decided.
49
- * @param onError Where a failure goes. Required, and not defaulted to a swallow: this class runs
50
- * behind a hook that must not throw, so the only way a failure reaches a human is if the caller
51
- * is made to say where it goes.
52
- * @param onRunClosed Told which run {@link closeRun} closed, so the connector's own mapper can
53
- * forget the run it will no longer attribute records to. Optional, and it is NOT the holder
54
- * doing the forgetting: which state a record mapper keeps is the connector's business, and a
55
- * holder that reached into it would be a second place that decides what a run is. Without it a
56
- * mapper that still believes the run is open would emit under a `runId` the published stream has
57
- * already closed, and the emitter would refuse the batch.
58
- * @param waitLive Rides out a transient endpoint rebuild window before a step pumps or closes a
59
- * run. Called once per queued step that needs the broker (a flush, or a close with something
60
- * open); it resolves when the endpoint's event plane is live, or rejects to make the whole
61
- * step fail terminally exactly as any other emitter failure does. This is the seam the
62
- * connectors' `MeshAgent`-adjacent wiring owns: the holder knows WHEN to publish, the caller
63
- * knows HOW to observe liveness. Without it, a rebuild window between two pumps reads
64
- * `max_payload` off a connection that is not there and kills the seat (#1868).
65
- * @param runMeta The Cotal metadata for the run {@link closeRun} is about to close, such as its
66
- * stop reason or usage, put on whichever terminal closes it. Asked inside the queued close
67
- * rather than taken at call time, because the hook calls `closeRun` before the flush queued
68
- * ahead of it has mapped the turn's last records, and those are what the metadata comes from.
69
- * Keyed on the run id, so a provider that only knows a different run answers `undefined`
70
- * instead of attributing its numbers to this one.
71
67
  */
72
- constructor(startEmitter, onError, onRunClosed, waitLive, runMeta) {
68
+ constructor(startEmitter, hooks) {
73
69
  this.startEmitter = startEmitter;
74
- this.onError = onError;
75
- this.onRunClosed = onRunClosed;
76
- this.waitLive = waitLive;
77
- this.runMeta = runMeta;
70
+ this.hooks = hooks;
78
71
  }
79
72
  /** True once an emitter is running here. False while a start is still in flight — it reports what
80
73
  * IS, never what is about to be. A dead holder is not running: after {@link die} what IS, is
@@ -169,12 +162,12 @@ export class AguiEmitterHolder {
169
162
  return;
170
163
  await this.holdForLive();
171
164
  const open = emitter.openRunId;
172
- const cotal = open === undefined ? undefined : this.runMeta?.(open);
165
+ const cotal = open === undefined ? undefined : this.hooks.runMeta?.(open);
173
166
  const runId = await emitter.closeRun({ timestamp, ...(cotal ? { cotal } : {}), ...(error ? { error } : {}) });
174
167
  // Reported for EITHER terminal. The mapper's job here is to stop attributing records to a run
175
168
  // the published stream has closed, and an error close closes it exactly as a finish does.
176
169
  if (runId !== null)
177
- this.onRunClosed?.(runId);
170
+ this.hooks.onRunClosed?.(runId);
178
171
  });
179
172
  }
180
173
  /**
@@ -254,7 +247,7 @@ export class AguiEmitterHolder {
254
247
  if (this.dead)
255
248
  return;
256
249
  this.dead = e;
257
- this.onError(e);
250
+ this.hooks.onError(e);
258
251
  }
259
252
  /** Wait for the endpoint to be live, if the caller supplied a wait. SHARED: while one step
260
253
  * waits, every later step joins the same promise, so a burst of flushes during one outage
@@ -263,9 +256,9 @@ export class AguiEmitterHolder {
263
256
  * reorder anything). A wait that rejects fails the step, which is the existing terminal path:
264
257
  * liveness-waiting must never swallow an error the emitter would have surfaced. */
265
258
  holdForLive() {
266
- if (!this.waitLive)
259
+ if (!this.hooks.waitLive)
267
260
  return Promise.resolve();
268
- this.liveWait ??= this.waitLive().finally(() => {
261
+ this.liveWait ??= this.hooks.waitLive().finally(() => {
269
262
  this.liveWait = undefined;
270
263
  });
271
264
  return this.liveWait;
@@ -1 +1 @@
1
- {"version":3,"file":"agui-holder.js","sourceRoot":"","sources":["../src/agui-holder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agui-holder.js","sourceRoot":"","sources":["../src/agui-holder.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { DocsBundle } from "./docs.js";
2
2
  /** The installed Cotal version, for stamping the orientation card and other surfaces. */
3
- export declare const DOCS_VERSION = "0.69.0";
3
+ export declare const DOCS_VERSION = "0.70.0";
4
4
  export declare function loadDocsBundle(): DocsBundle;
5
5
  //# sourceMappingURL=docs-bundle.generated.d.ts.map