@tickernelz/paperclip-pro-adapter-utils 2026.1016.1 → 2026.1017.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.
@@ -14,9 +14,11 @@ export interface AdapterSteerTarget {
14
14
  correlationId?: string;
15
15
  ackTimeoutMs?: number;
16
16
  }): Promise<void>;
17
+ onceTurnActive?(listener: () => void): () => void;
17
18
  }
18
19
  /** Subscribes to steer target registrations; returns the unsubscribe function. */
19
20
  export declare function onAdapterSteerTargetRegistered(listener: (runId: string) => void): () => void;
20
21
  export declare function registerAdapterSteerTarget(runId: string, target: AdapterSteerTarget): () => void;
22
+ export declare function deferUntilAdapterTurnActive(runId: string, task: () => Promise<void>): boolean;
21
23
  export declare function getAdapterSteerTarget(runId: string): AdapterSteerTarget | undefined;
22
24
  //# sourceMappingURL=adapter-steer-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-steer-registry.d.ts","sourceRoot":"","sources":["../src/adapter-steer-registry.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,YAAY,IAAI,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC/C,QAAQ,IAAI,OAAO,CAAC;QAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACtD,KAAK,CAAC,KAAK,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QACxC,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnB;AAKD,kFAAkF;AAClF,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAChC,MAAM,IAAI,CAKZ;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,kBAAkB,GACzB,MAAM,IAAI,CAmBZ;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,GACZ,kBAAkB,GAAG,SAAS,CAEhC"}
1
+ {"version":3,"file":"adapter-steer-registry.d.ts","sourceRoot":"","sources":["../src/adapter-steer-registry.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,YAAY,IAAI,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC/C,QAAQ,IAAI,OAAO,CAAC;QAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACtD,KAAK,CAAC,KAAK,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QACxC,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;CACnD;AAUD,kFAAkF;AAClF,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAChC,MAAM,IAAI,CAKZ;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,kBAAkB,GACzB,MAAM,IAAI,CAqBZ;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACxB,OAAO,CAsBT;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,GACZ,kBAAkB,GAAG,SAAS,CAEhC"}
@@ -1,5 +1,7 @@
1
1
  const adapterSteerTargets = new Map();
2
2
  const registrationListeners = new Set();
3
+ const turnActiveWaits = new Map();
4
+ const turnActiveFlushes = new Map();
3
5
  /** Subscribes to steer target registrations; returns the unsubscribe function. */
4
6
  export function onAdapterSteerTargetRegistered(listener) {
5
7
  registrationListeners.add(listener);
@@ -25,9 +27,38 @@ export function registerAdapterSteerTarget(runId, target) {
25
27
  return () => {
26
28
  if (adapterSteerTargets.get(runId) === target) {
27
29
  adapterSteerTargets.delete(runId);
30
+ turnActiveWaits.get(runId)?.cancel();
31
+ turnActiveWaits.delete(runId);
28
32
  }
29
33
  };
30
34
  }
35
+ export function deferUntilAdapterTurnActive(runId, task) {
36
+ const target = adapterSteerTargets.get(runId);
37
+ if (!target?.onceTurnActive)
38
+ return false;
39
+ const waiting = turnActiveWaits.get(runId);
40
+ if (waiting) {
41
+ waiting.tasks.push(task);
42
+ return true;
43
+ }
44
+ const tasks = [task];
45
+ const cancel = target.onceTurnActive(() => {
46
+ if (turnActiveWaits.get(runId)?.tasks !== tasks)
47
+ return;
48
+ turnActiveWaits.delete(runId);
49
+ const flush = (turnActiveFlushes.get(runId) ?? Promise.resolve()).then(async () => {
50
+ for (const run of tasks)
51
+ await run().catch(() => undefined);
52
+ });
53
+ turnActiveFlushes.set(runId, flush);
54
+ void flush.finally(() => {
55
+ if (turnActiveFlushes.get(runId) === flush)
56
+ turnActiveFlushes.delete(runId);
57
+ });
58
+ });
59
+ turnActiveWaits.set(runId, { tasks, cancel });
60
+ return true;
61
+ }
31
62
  export function getAdapterSteerTarget(runId) {
32
63
  return adapterSteerTargets.get(runId);
33
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-steer-registry.js","sourceRoot":"","sources":["../src/adapter-steer-registry.ts"],"names":[],"mappings":"AAWA,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA8B,CAAC;AAClE,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAA2B,CAAC;AAEjE,kFAAkF;AAClF,MAAM,UAAU,8BAA8B,CAC5C,QAAiC;IAEjC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,OAAO,GAAG,EAAE;QACV,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,KAAa,EACb,MAA0B;IAE1B,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,QAAQ,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IACD,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,KAAK,MAAM,QAAQ,IAAI,qBAAqB,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,QAAQ,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;YAAC,MAAM,CAAC;YACT,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,GAAG,EAAE;QACV,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,MAAM,EAAE,CAAC;YAC9C,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,KAAa;IAEb,OAAO,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"adapter-steer-registry.js","sourceRoot":"","sources":["../src/adapter-steer-registry.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { describe, expect, it } from "vitest";
2
- import { getAdapterSteerTarget, registerAdapterSteerTarget, } from "./adapter-steer-registry.js";
2
+ import { deferUntilAdapterTurnActive, getAdapterSteerTarget, registerAdapterSteerTarget, } from "./adapter-steer-registry.js";
3
3
  function target(label) {
4
4
  return {
5
5
  capabilities: async () => ({ steering: true }),
@@ -46,5 +46,76 @@ describe("adapter steer registry", () => {
46
46
  expect(() => registerAdapterSteerTarget("run-registry-f", reused)).not.toThrow();
47
47
  expect(getAdapterSteerTarget("run-registry-f")).toBe(reused);
48
48
  });
49
+ function turnSignallingTarget() {
50
+ const listeners = new Set();
51
+ const signalling = {
52
+ ...target("signalling"),
53
+ onceTurnActive(listener) {
54
+ listeners.add(listener);
55
+ return () => listeners.delete(listener);
56
+ },
57
+ };
58
+ return {
59
+ target: signalling,
60
+ listeners,
61
+ startTurn() {
62
+ const pending = [...listeners];
63
+ listeners.clear();
64
+ for (const listener of pending)
65
+ listener();
66
+ },
67
+ };
68
+ }
69
+ it("refuses a deferral when the run has no target or the target cannot signal turns", () => {
70
+ registerAdapterSteerTarget("run-registry-g", target("g"));
71
+ expect(deferUntilAdapterTurnActive("run-registry-missing", async () => { })).toBe(false);
72
+ expect(deferUntilAdapterTurnActive("run-registry-g", async () => { })).toBe(false);
73
+ });
74
+ it("runs deferred tasks once, sequentially and in order, when the turn starts", async () => {
75
+ const signalling = turnSignallingTarget();
76
+ registerAdapterSteerTarget("run-registry-h", signalling.target);
77
+ const order = [];
78
+ let releaseFirst;
79
+ const firstGate = new Promise((resolve) => {
80
+ releaseFirst = resolve;
81
+ });
82
+ expect(deferUntilAdapterTurnActive("run-registry-h", async () => {
83
+ order.push("first:start");
84
+ await firstGate;
85
+ order.push("first:end");
86
+ })).toBe(true);
87
+ expect(deferUntilAdapterTurnActive("run-registry-h", async () => {
88
+ order.push("second");
89
+ throw new Error("ignored");
90
+ })).toBe(true);
91
+ expect(deferUntilAdapterTurnActive("run-registry-h", async () => {
92
+ order.push("third");
93
+ })).toBe(true);
94
+ expect(signalling.listeners.size).toBe(1);
95
+ expect(order).toEqual([]);
96
+ signalling.startTurn();
97
+ await new Promise((resolve) => setTimeout(resolve, 0));
98
+ expect(order).toEqual(["first:start"]);
99
+ releaseFirst();
100
+ await new Promise((resolve) => setTimeout(resolve, 0));
101
+ expect(order).toEqual(["first:start", "first:end", "second", "third"]);
102
+ signalling.startTurn();
103
+ await new Promise((resolve) => setTimeout(resolve, 0));
104
+ expect(order).toEqual(["first:start", "first:end", "second", "third"]);
105
+ });
106
+ it("drops pending deferrals when the target is released before a turn starts", async () => {
107
+ const signalling = turnSignallingTarget();
108
+ const release = registerAdapterSteerTarget("run-registry-i", signalling.target);
109
+ let ran = false;
110
+ deferUntilAdapterTurnActive("run-registry-i", async () => {
111
+ ran = true;
112
+ });
113
+ release();
114
+ expect(signalling.listeners.size).toBe(0);
115
+ signalling.startTurn();
116
+ await new Promise((resolve) => setTimeout(resolve, 0));
117
+ expect(ran).toBe(false);
118
+ expect(deferUntilAdapterTurnActive("run-registry-i", async () => { })).toBe(false);
119
+ });
49
120
  });
50
121
  //# sourceMappingURL=adapter-steer-registry.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-steer-registry.test.js","sourceRoot":"","sources":["../src/adapter-steer-registry.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-steer-registry.test.js","sourceRoot":"","sources":["../src/adapter-steer-registry.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tickernelz/paperclip-pro-adapter-utils",
3
- "version": "2026.1016.1",
3
+ "version": "2026.1017.0",
4
4
  "license": "MIT",
5
5
  "homepage": "https://github.com/tickernelz/paperclip-pro",
6
6
  "bugs": {
@@ -34,7 +34,7 @@
34
34
  "typecheck": "tsc --noEmit"
35
35
  },
36
36
  "dependencies": {
37
- "@tickernelz/paperclip-pro-shared": "2026.1016.1",
37
+ "@tickernelz/paperclip-pro-shared": "2026.1017.0",
38
38
  "acpx": "0.12.0",
39
39
  "picocolors": "^1.1.1"
40
40
  },