@opengeni/worker-bundle 2.2.0-canary.36844267522001 → 2.2.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 (40) hide show
  1. package/dist/activities/agent-run-admission.d.ts +1 -3
  2. package/dist/activities/agent-turn/admission.d.ts +3 -24
  3. package/dist/activities/agent-turn/claude-usage-observer.d.ts +1 -13
  4. package/dist/activities/agent-turn/run-credentials.d.ts +0 -2
  5. package/dist/activities/agent-turn/stream-attempt.d.ts +0 -1
  6. package/dist/activities/agent-turn/turn-context.d.ts +0 -1
  7. package/dist/activities/goals.d.ts +0 -8
  8. package/dist/activities/run-credentials.d.ts +2 -4
  9. package/dist/activities/types.d.ts +1 -1
  10. package/dist/{activities-control-KQ5OK2GD.js → activities-control-MHNA3CYV.js} +66 -28
  11. package/dist/activities-control-MHNA3CYV.js.map +1 -0
  12. package/dist/{activities-turn-LSRAUGEK.js → activities-turn-FQ5OO2WW.js} +195 -459
  13. package/dist/activities-turn-FQ5OO2WW.js.map +1 -0
  14. package/dist/{chunk-WADNTBZZ.js → chunk-RZAAGRFQ.js} +64 -109
  15. package/dist/chunk-RZAAGRFQ.js.map +1 -0
  16. package/dist/index.js +1 -1
  17. package/dist/workflow-bundle.js +1 -1
  18. package/package.json +20 -20
  19. package/src/activities/agent-run-admission.ts +1 -17
  20. package/src/activities/agent-turn/admission.ts +1 -64
  21. package/src/activities/agent-turn/claim.ts +14 -56
  22. package/src/activities/agent-turn/claude-usage-observer.ts +1 -33
  23. package/src/activities/agent-turn/failure-settlement.ts +0 -5
  24. package/src/activities/agent-turn/run-credentials.ts +3 -15
  25. package/src/activities/agent-turn/run.ts +3 -32
  26. package/src/activities/agent-turn/stream-attempt.ts +32 -58
  27. package/src/activities/agent-turn/tool-environment.ts +20 -13
  28. package/src/activities/agent-turn/turn-context.ts +0 -1
  29. package/src/activities/capabilities.ts +14 -52
  30. package/src/activities/goals.ts +78 -36
  31. package/src/activities/knowledge-indexing.ts +0 -29
  32. package/src/activities/run-credentials.ts +16 -22
  33. package/src/activities/scheduled-tasks.ts +0 -1
  34. package/src/activities/types.ts +0 -1
  35. package/src/activities/workspace-credential-provider.ts +0 -12
  36. package/dist/activities/agent-turn/model-call-admission.d.ts +0 -15
  37. package/dist/activities-control-KQ5OK2GD.js.map +0 -1
  38. package/dist/activities-turn-LSRAUGEK.js.map +0 -1
  39. package/dist/chunk-WADNTBZZ.js.map +0 -1
  40. package/src/activities/agent-turn/model-call-admission.ts +0 -94
@@ -1,94 +0,0 @@
1
- import type { StreamEvent } from "@openai/agents";
2
-
3
- /** SDK producer/consumer rendezvous. Usage stays on the sole consumer writer. */
4
- export function createModelCallAdmission(input: {
5
- signal: AbortSignal;
6
- admit: () => Promise<void>;
7
- }) {
8
- type Receipt = {
9
- promise: Promise<void>;
10
- resolve: () => void;
11
- reject: (error: unknown) => void;
12
- };
13
- const receipts = new WeakMap<object, Receipt>();
14
- const responseReceipts = new Map<string, Receipt>();
15
- const pending = new Set<Receipt>();
16
- const responseId = (event: unknown): string | null => {
17
- const id = (event as { response?: { id?: unknown } } | null)?.response?.id;
18
- return typeof id === "string" && id.length > 0 ? id : null;
19
- };
20
- let latest: Promise<void> = Promise.resolve();
21
- let failure: unknown;
22
- let failed = false;
23
- let rejectHalted!: (error: unknown) => void;
24
- const halted = new Promise<never>((_, reject) => {
25
- rejectHalted = reject;
26
- });
27
- void halted.catch(() => undefined);
28
- const fail = (error: unknown) => {
29
- if (failed) return;
30
- failed = true;
31
- failure = error;
32
- rejectHalted(error);
33
- for (const receipt of pending) receipt.reject(error);
34
- pending.clear();
35
- responseReceipts.clear();
36
- };
37
- const abort = () => fail(input.signal.reason ?? new Error("Model stream cancelled"));
38
- input.signal.addEventListener("abort", abort, { once: true });
39
- if (input.signal.aborted) abort();
40
- return {
41
- beforeModelRequest: async () => {
42
- await Promise.race([latest, halted]);
43
- if (failed) throw failure;
44
- // Even a settled predecessor does not grant admission to the next call.
45
- await Promise.race([input.admit(), halted]);
46
- if (failed) throw failure;
47
- },
48
- onModelResponse: (event: StreamEvent): Promise<void> => {
49
- if (failed) return Promise.reject(failure);
50
- const id = responseId(event);
51
- const existing =
52
- receipts.get(event) ??
53
- (id ? responseReceipts.get(id) : undefined) ??
54
- (!id && pending.size === 1 ? pending.values().next().value : undefined);
55
- if (existing) return existing.promise;
56
- let resolve!: () => void;
57
- let reject!: (error: unknown) => void;
58
- const promise = new Promise<void>((yes, no) => {
59
- resolve = yes;
60
- reject = no;
61
- });
62
- // The next model entry awaits this receipt; rejection can happen sooner.
63
- void promise.catch(() => undefined);
64
- const receipt = { promise, resolve, reject };
65
- receipts.set(event, receipt);
66
- if (id) responseReceipts.set(id, receipt);
67
- pending.add(receipt);
68
- latest = promise;
69
- return promise;
70
- },
71
- settle: (event: { type: string; data?: unknown }) => {
72
- if (event.type !== "raw_model_stream_event" || !event.data || typeof event.data !== "object")
73
- return;
74
- if ((event.data as { type?: unknown }).type !== "response_done") return;
75
- const id = responseId(event.data);
76
- // Runner retry normalization copies response_done. It cannot create a
77
- // second response before this receipt permits the next model entry.
78
- const receipt =
79
- receipts.get(event.data) ??
80
- (id ? responseReceipts.get(id) : undefined) ??
81
- (pending.size === 1 ? pending.values().next().value : undefined);
82
- if (!receipt) return;
83
- pending.delete(receipt);
84
- if (id) responseReceipts.delete(id);
85
- receipt.resolve();
86
- },
87
- fail,
88
- close: () => {
89
- input.signal.removeEventListener("abort", abort);
90
- if (pending.size > 0) fail(new Error("Model stream closed before response settlement"));
91
- responseReceipts.clear();
92
- },
93
- };
94
- }