@autonome-research/thread-phase 3.2.2 → 3.4.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 (86) hide show
  1. package/dist/agent/index.d.ts +1 -1
  2. package/dist/agent/index.d.ts.map +1 -1
  3. package/dist/agent/index.js +1 -1
  4. package/dist/agent/index.js.map +1 -1
  5. package/dist/agent/parse-json.d.ts +16 -0
  6. package/dist/agent/parse-json.d.ts.map +1 -1
  7. package/dist/agent/parse-json.js +82 -11
  8. package/dist/agent/parse-json.js.map +1 -1
  9. package/dist/agent/runner.d.ts.map +1 -1
  10. package/dist/agent/runner.js +16 -12
  11. package/dist/agent/runner.js.map +1 -1
  12. package/dist/agent-runner.d.ts +1 -1
  13. package/dist/agent-runner.d.ts.map +1 -1
  14. package/dist/agent-runner.js +1 -1
  15. package/dist/agent-runner.js.map +1 -1
  16. package/dist/agents/serialize-error.d.ts +10 -1
  17. package/dist/agents/serialize-error.d.ts.map +1 -1
  18. package/dist/agents/serialize-error.js +42 -3
  19. package/dist/agents/serialize-error.js.map +1 -1
  20. package/dist/cache.d.ts +13 -2
  21. package/dist/cache.d.ts.map +1 -1
  22. package/dist/cache.js +36 -6
  23. package/dist/cache.js.map +1 -1
  24. package/dist/helpers/hook.d.ts +34 -2
  25. package/dist/helpers/hook.d.ts.map +1 -1
  26. package/dist/helpers/hook.js +72 -5
  27. package/dist/helpers/hook.js.map +1 -1
  28. package/dist/helpers/index.d.ts +11 -1
  29. package/dist/helpers/index.d.ts.map +1 -1
  30. package/dist/helpers/index.js +11 -1
  31. package/dist/helpers/index.js.map +1 -1
  32. package/dist/index.d.ts +2 -2
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +2 -2
  35. package/dist/index.js.map +1 -1
  36. package/dist/internal/error-message.d.ts +20 -0
  37. package/dist/internal/error-message.d.ts.map +1 -0
  38. package/dist/internal/error-message.js +57 -0
  39. package/dist/internal/error-message.js.map +1 -0
  40. package/dist/internal/sleep.d.ts +17 -0
  41. package/dist/internal/sleep.d.ts.map +1 -0
  42. package/dist/internal/sleep.js +51 -0
  43. package/dist/internal/sleep.js.map +1 -0
  44. package/dist/messages.d.ts +11 -1
  45. package/dist/messages.d.ts.map +1 -1
  46. package/dist/orchestrator.d.ts +1 -1
  47. package/dist/orchestrator.d.ts.map +1 -1
  48. package/dist/orchestrator.js +21 -2
  49. package/dist/orchestrator.js.map +1 -1
  50. package/dist/patterns/bounded-fanout-of.d.ts +2 -6
  51. package/dist/patterns/bounded-fanout-of.d.ts.map +1 -1
  52. package/dist/patterns/bounded-fanout-of.js +11 -8
  53. package/dist/patterns/bounded-fanout-of.js.map +1 -1
  54. package/dist/patterns/index.d.ts +22 -0
  55. package/dist/patterns/index.d.ts.map +1 -1
  56. package/dist/patterns/index.js +22 -0
  57. package/dist/patterns/index.js.map +1 -1
  58. package/dist/patterns/parallel-phases.d.ts +7 -2
  59. package/dist/patterns/parallel-phases.d.ts.map +1 -1
  60. package/dist/patterns/parallel-phases.js +70 -16
  61. package/dist/patterns/parallel-phases.js.map +1 -1
  62. package/dist/patterns/sub-pipeline.d.ts.map +1 -1
  63. package/dist/patterns/sub-pipeline.js +10 -6
  64. package/dist/patterns/sub-pipeline.js.map +1 -1
  65. package/dist/patterns/with-retry.d.ts.map +1 -1
  66. package/dist/patterns/with-retry.js +5 -2
  67. package/dist/patterns/with-retry.js.map +1 -1
  68. package/dist/phase.d.ts +3 -0
  69. package/dist/phase.d.ts.map +1 -1
  70. package/dist/phase.js.map +1 -1
  71. package/dist/session/sse.d.ts +5 -1
  72. package/dist/session/sse.d.ts.map +1 -1
  73. package/dist/session/sse.js +56 -16
  74. package/dist/session/sse.js.map +1 -1
  75. package/dist/tools/registry.d.ts +6 -1
  76. package/dist/tools/registry.d.ts.map +1 -1
  77. package/dist/tools/registry.js +2 -2
  78. package/dist/tools/registry.js.map +1 -1
  79. package/dist/triggers/run-trigger.d.ts.map +1 -1
  80. package/dist/triggers/run-trigger.js +4 -1
  81. package/dist/triggers/run-trigger.js.map +1 -1
  82. package/dist/triggers/timer-trigger.d.ts +13 -1
  83. package/dist/triggers/timer-trigger.d.ts.map +1 -1
  84. package/dist/triggers/timer-trigger.js +35 -3
  85. package/dist/triggers/timer-trigger.js.map +1 -1
  86. package/package.json +1 -1
@@ -20,7 +20,7 @@
20
20
  * is intentionally NOT a configured package subpath).
21
21
  */
22
22
  export { runAgentWithTools } from './runner.js';
23
- export { parseJSON } from './parse-json.js';
23
+ export { parseJSON, parseJSONStrict } from './parse-json.js';
24
24
  export type { AgentConfig, ActivityEntry, AgentRunResult, AgentRunnerOptions, AgentStreamEvent, FinishReason, UsageInfo, } from './types.js';
25
25
  export { toOpenAIMessages, toOpenAITools } from './openai-adapter.js';
26
26
  export { consumeStream, looksLikeToolCallText, normalizeFinishReason, type AccumulatedRound, } from './stream-consumer.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,YAAY,EACV,WAAW,EACX,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,SAAS,GACV,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE7D,YAAY,EACV,WAAW,EACX,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,SAAS,GACV,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -20,7 +20,7 @@
20
20
  * is intentionally NOT a configured package subpath).
21
21
  */
22
22
  export { runAgentWithTools } from './runner.js';
23
- export { parseJSON } from './parse-json.js';
23
+ export { parseJSON, parseJSONStrict } from './parse-json.js';
24
24
  // @internal — see file header. Lower-level pieces for advanced callers.
25
25
  export { toOpenAIMessages, toOpenAITools } from './openai-adapter.js';
26
26
  export { consumeStream, looksLikeToolCallText, normalizeFinishReason, } from './stream-consumer.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAY5C,wEAAwE;AACxE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,qBAAqB,GAEtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAY7D,wEAAwE;AACxE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,qBAAqB,GAEtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -3,10 +3,26 @@
3
3
  * the first {...} object from surrounding prose. Returns the supplied fallback
4
4
  * on parse failure.
5
5
  *
6
+ * Contract: this function MUST NOT throw. Adversarial agent output (deeply
7
+ * nested structures, malformed prose, megabytes of text) returns the
8
+ * fallback and reports via `onError` (or `console.warn` if no handler).
9
+ *
6
10
  * Note on the silent-fallback behavior: when the agent's output was truncated
7
11
  * (i.e. `AgentRunResult.finishReason === 'length'`), this almost always
8
12
  * fails to parse. Callers should branch on `finishReason` BEFORE trusting
9
13
  * the parsed value — otherwise truncation is invisible.
10
14
  */
11
15
  export declare function parseJSON<T>(text: string, fallback: T, onError?: (preview: string, err: Error) => void): T;
16
+ /**
17
+ * Strict counterpart to `parseJSON`: same extraction logic (markdown
18
+ * fences, embedded `{...}`, depth guard) but throws on failure instead
19
+ * of returning a fallback. Use this when the caller has already checked
20
+ * `AgentRunResult.finishReason` and KNOWS the response should be valid
21
+ * JSON — surfacing the parse error is more useful than a silent default.
22
+ *
23
+ * Throws `SyntaxError` for malformed JSON; throws `RangeError` if input
24
+ * nesting exceeds MAX_PARSE_DEPTH (mirroring the V8 safeguard in the
25
+ * tolerant variant).
26
+ */
27
+ export declare function parseJSONStrict<T>(text: string): T;
12
28
  //# sourceMappingURL=parse-json.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse-json.d.ts","sourceRoot":"","sources":["../../src/agent/parse-json.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,wBAAgB,SAAS,CAAC,CAAC,EACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,EACX,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,KAAK,IAAI,GAC9C,CAAC,CAqBH"}
1
+ {"version":3,"file":"parse-json.d.ts","sourceRoot":"","sources":["../../src/agent/parse-json.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAYH,wBAAgB,SAAS,CAAC,CAAC,EACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,EACX,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,KAAK,IAAI,GAC9C,CAAC,CAOH;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,CAElD"}
@@ -3,29 +3,100 @@
3
3
  * the first {...} object from surrounding prose. Returns the supplied fallback
4
4
  * on parse failure.
5
5
  *
6
+ * Contract: this function MUST NOT throw. Adversarial agent output (deeply
7
+ * nested structures, malformed prose, megabytes of text) returns the
8
+ * fallback and reports via `onError` (or `console.warn` if no handler).
9
+ *
6
10
  * Note on the silent-fallback behavior: when the agent's output was truncated
7
11
  * (i.e. `AgentRunResult.finishReason === 'length'`), this almost always
8
12
  * fails to parse. Callers should branch on `finishReason` BEFORE trusting
9
13
  * the parsed value — otherwise truncation is invisible.
10
14
  */
15
+ /**
16
+ * V8's `JSON.parse` is recursive — input nested past ~10k levels can blow
17
+ * the stack with a `RangeError` that is NOT reliably catchable from the
18
+ * surrounding try/catch (the throw happens at a depth where the catch
19
+ * frame itself can't run). We pre-check the candidate string's brace
20
+ * nesting and bail to fallback before calling `JSON.parse` when nesting
21
+ * is adversarially deep. Realistic agent output never approaches this.
22
+ */
23
+ const MAX_PARSE_DEPTH = 1000;
11
24
  export function parseJSON(text, fallback, onError) {
12
- const fenced = text.match(/```(?:json)?\s*([\s\S]*?)```/);
13
- const braced = text.match(/(\{[\s\S]*\})/);
14
- const jsonStr = fenced ? fenced[1] : braced ? braced[1] : text;
15
25
  try {
16
- return JSON.parse(jsonStr.trim());
26
+ return parseCandidate(text);
17
27
  }
18
28
  catch (err) {
19
- const preview = text.slice(0, 200);
20
29
  const errObj = err instanceof Error ? err : new Error(String(err));
21
- if (onError) {
22
- onError(preview, errObj);
30
+ return report(text, errObj, fallback, onError);
31
+ }
32
+ }
33
+ /**
34
+ * Strict counterpart to `parseJSON`: same extraction logic (markdown
35
+ * fences, embedded `{...}`, depth guard) but throws on failure instead
36
+ * of returning a fallback. Use this when the caller has already checked
37
+ * `AgentRunResult.finishReason` and KNOWS the response should be valid
38
+ * JSON — surfacing the parse error is more useful than a silent default.
39
+ *
40
+ * Throws `SyntaxError` for malformed JSON; throws `RangeError` if input
41
+ * nesting exceeds MAX_PARSE_DEPTH (mirroring the V8 safeguard in the
42
+ * tolerant variant).
43
+ */
44
+ export function parseJSONStrict(text) {
45
+ return parseCandidate(text);
46
+ }
47
+ function parseCandidate(text) {
48
+ const fenced = text.match(/```(?:json)?\s*([\s\S]*?)```/);
49
+ const braced = text.match(/(\{[\s\S]*\})/);
50
+ const jsonStr = (fenced ? fenced[1] : braced ? braced[1] : text).trim();
51
+ if (exceedsMaxDepth(jsonStr, MAX_PARSE_DEPTH)) {
52
+ throw new RangeError(`parseJSON: input nesting exceeds MAX_PARSE_DEPTH=${MAX_PARSE_DEPTH}`);
53
+ }
54
+ return JSON.parse(jsonStr);
55
+ }
56
+ function report(text, err, fallback, onError) {
57
+ const preview = text.slice(0, 200);
58
+ if (onError) {
59
+ onError(preview, err);
60
+ }
61
+ else {
62
+ // eslint-disable-next-line no-console
63
+ console.warn(`[parseJSON] failed to parse agent output, using fallback. Preview: "${preview}..."`, err);
64
+ }
65
+ return fallback;
66
+ }
67
+ /**
68
+ * O(n) scan tracking string/escape state so braces inside string literals
69
+ * don't inflate the depth count. Returns true as soon as `max` is exceeded —
70
+ * does NOT walk the full input once the verdict is decided.
71
+ */
72
+ function exceedsMaxDepth(s, max) {
73
+ let depth = 0;
74
+ let inString = false;
75
+ let escaped = false;
76
+ for (let i = 0; i < s.length; i++) {
77
+ const c = s.charCodeAt(i);
78
+ if (escaped) {
79
+ escaped = false;
80
+ continue;
81
+ }
82
+ if (inString) {
83
+ if (c === 0x5c /* \ */)
84
+ escaped = true;
85
+ else if (c === 0x22 /* " */)
86
+ inString = false;
87
+ continue;
88
+ }
89
+ if (c === 0x22 /* " */) {
90
+ inString = true;
91
+ }
92
+ else if (c === 0x7b /* { */ || c === 0x5b /* [ */) {
93
+ if (++depth > max)
94
+ return true;
23
95
  }
24
- else {
25
- // eslint-disable-next-line no-console
26
- console.warn(`[parseJSON] failed to parse agent output, using fallback. Preview: "${preview}..."`, err);
96
+ else if (c === 0x7d /* } */ || c === 0x5d /* ] */) {
97
+ depth--;
27
98
  }
28
- return fallback;
29
99
  }
100
+ return false;
30
101
  }
31
102
  //# sourceMappingURL=parse-json.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse-json.js","sourceRoot":"","sources":["../../src/agent/parse-json.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,UAAU,SAAS,CACvB,IAAY,EACZ,QAAW,EACX,OAA+C;IAE/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAEjE,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAM,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACnE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,sCAAsC;YACtC,OAAO,CAAC,IAAI,CACV,uEAAuE,OAAO,MAAM,EACpF,GAAG,CACJ,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"parse-json.js","sourceRoot":"","sources":["../../src/agent/parse-json.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAMH,OAAO,KAAK,EACV,OAAO,EAGR,MAAM,gBAAgB,CAAC;AAaxB,OAAO,KAAK,EAEV,WAAW,EACX,kBAAkB,EAClB,cAAc,EAGf,MAAM,YAAY,CAAC;AAKpB,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,WAAW,EACnB,eAAe,EAAE,OAAO,EAAE,EAC1B,OAAO,EAAE,kBAAkB,EAC3B,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,cAAc,CAAC,CAkSzB"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAMH,OAAO,KAAK,EACV,OAAO,EAGR,MAAM,gBAAgB,CAAC;AAaxB,OAAO,KAAK,EAEV,WAAW,EACX,kBAAkB,EAClB,cAAc,EAGf,MAAM,YAAY,CAAC;AAMpB,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,WAAW,EACnB,eAAe,EAAE,OAAO,EAAE,EAC1B,OAAO,EAAE,kBAAkB,EAC3B,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,cAAc,CAAC,CAuSzB"}
@@ -25,6 +25,7 @@ import { DeterministicCompressor, AggressiveCompressor, sanitizeToolPairs, } fro
25
25
  import { toOpenAIMessages, toOpenAITools } from './openai-adapter.js';
26
26
  import { consumeStream, looksLikeToolCallText } from './stream-consumer.js';
27
27
  import { isRetryableError, isAbortError } from './retry.js';
28
+ import { toErrorMessage } from '../internal/error-message.js';
28
29
  export async function runAgentWithTools(config, initialMessages, options, agentLabel) {
29
30
  const label = agentLabel ?? config.name;
30
31
  const activity = [];
@@ -57,15 +58,15 @@ export async function runAgentWithTools(config, initialMessages, options, agentL
57
58
  result = verified;
58
59
  }
59
60
  catch (err) {
60
- const e = err;
61
+ const message = toErrorMessage(err);
61
62
  activity.push({
62
63
  agent: label,
63
64
  action: 'verify_failed',
64
- detail: e.message?.slice(0, 200),
65
+ detail: message.slice(0, 200),
65
66
  });
66
67
  return {
67
68
  ...result,
68
- text: JSON.stringify({ _error: true, message: e.message ?? 'verifyResult threw' }),
69
+ text: JSON.stringify({ _error: true, message: message || 'verifyResult threw' }),
69
70
  finishReason: 'error',
70
71
  };
71
72
  }
@@ -207,8 +208,11 @@ export async function runAgentWithTools(config, initialMessages, options, agentL
207
208
  });
208
209
  emit?.({ type: 'tool_call_started', agent: label, toolCall: tc });
209
210
  }
210
- // Execute tools in parallel.
211
- const results = await Promise.all(assistantMsg.toolCalls.map((tc) => options.toolExecutor.execute(tc.name, tc.id, tc.input)));
211
+ // Execute tools in parallel. Forward the run's AbortSignal so
212
+ // long-running tool implementations can cancel cooperatively
213
+ // rather than running to completion before the next round's
214
+ // between-round abort check fires.
215
+ const results = await Promise.all(assistantMsg.toolCalls.map((tc) => options.toolExecutor.execute(tc.name, tc.id, tc.input, options.signal)));
212
216
  // --- Layer 1: cap each tool result ---
213
217
  for (let i = 0; i < results.length; i++) {
214
218
  const r = results[i];
@@ -242,27 +246,27 @@ export async function runAgentWithTools(config, initialMessages, options, agentL
242
246
  return finalize(lastAssistant?.content ?? '{}', 'length');
243
247
  }
244
248
  catch (err) {
245
- const e = err;
249
+ const message = toErrorMessage(err);
246
250
  if (isAbortError(err)) {
247
- activity.push({ agent: label, action: 'aborted', detail: e.message?.slice(0, 120) });
251
+ activity.push({ agent: label, action: 'aborted', detail: message.slice(0, 120) });
248
252
  return finalize('', 'error');
249
253
  }
250
- activity.push({ agent: label, action: 'error', detail: e.message?.slice(0, 120) });
254
+ activity.push({ agent: label, action: 'error', detail: message.slice(0, 120) });
251
255
  if (attempt < maxRetries && isRetryableError(err)) {
252
256
  const delay = 2000 + Math.random() * 3000;
253
257
  activity.push({
254
258
  agent: label,
255
259
  action: 'retry',
256
- detail: `Retrying after ${e.message?.slice(0, 60)}`,
260
+ detail: `Retrying after ${message.slice(0, 60)}`,
257
261
  });
258
262
  // eslint-disable-next-line no-console
259
- console.warn(`[${label}] retryable error, waiting ${Math.round(delay)}ms: ${e.message?.slice(0, 100)}`);
263
+ console.warn(`[${label}] retryable error, waiting ${Math.round(delay)}ms: ${message.slice(0, 100)}`);
260
264
  await new Promise((r) => setTimeout(r, delay));
261
265
  continue;
262
266
  }
263
267
  // eslint-disable-next-line no-console
264
- console.error(`[${label}] agent failed (attempt ${attempt + 1}):`, e.message);
265
- return finalize(JSON.stringify({ _error: true, message: e.message }), 'error');
268
+ console.error(`[${label}] agent failed (attempt ${attempt + 1}):`, message);
269
+ return finalize(JSON.stringify({ _error: true, message }), 'error');
266
270
  }
267
271
  }
268
272
  return finalize('{}', 'error');
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"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"}
@@ -6,5 +6,5 @@
6
6
  * For new code, import from `thread-phase` (or directly from `./agent/*`)
7
7
  * rather than this path.
8
8
  */
9
- export { runAgentWithTools, parseJSON, type AgentConfig, type ActivityEntry, type AgentRunResult, type AgentRunnerOptions, type AgentStreamEvent, type FinishReason, type UsageInfo, } from './agent/index.js';
9
+ export { runAgentWithTools, parseJSON, parseJSONStrict, type AgentConfig, type ActivityEntry, type AgentRunResult, type AgentRunnerOptions, type AgentStreamEvent, type FinishReason, type UsageInfo, } from './agent/index.js';
10
10
  //# sourceMappingURL=agent-runner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runner.d.ts","sourceRoot":"","sources":["../src/agent-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,SAAS,GACf,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"agent-runner.d.ts","sourceRoot":"","sources":["../src/agent-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,SAAS,GACf,MAAM,kBAAkB,CAAC"}
@@ -6,5 +6,5 @@
6
6
  * For new code, import from `thread-phase` (or directly from `./agent/*`)
7
7
  * rather than this path.
8
8
  */
9
- export { runAgentWithTools, parseJSON, } from './agent/index.js';
9
+ export { runAgentWithTools, parseJSON, parseJSONStrict, } from './agent/index.js';
10
10
  //# sourceMappingURL=agent-runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../src/agent-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,iBAAiB,EACjB,SAAS,GAQV,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../src/agent-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,eAAe,GAQhB,MAAM,kBAAkB,CAAC"}
@@ -3,15 +3,24 @@
3
3
  * that adapters emit on `error` events. Walks the `cause` chain so wrapped
4
4
  * errors don't lose context across the subprocess boundary.
5
5
  *
6
+ * Contract: MUST NOT throw — adapters call this on every error before
7
+ * emitting an `error` event, so a throw here would crash the adapter
8
+ * harness instead of producing the documented payload.
9
+ *
6
10
  * @internal
7
11
  */
8
12
  import type { SerializableError } from './protocol.js';
9
13
  /**
10
14
  * Normalize any thrown value to a `SerializableError`. Non-`Error` throws
11
- * become `{ name: 'NonError', message: String(err) }` so the field shape
15
+ * become `{ name: 'NonError', message: <stringified> }` so the field shape
12
16
  * stays uniform — consumers can rely on `name` and `message` always being
13
17
  * present.
14
18
  *
19
+ * Cycles in `Error.cause` chains (which can occur in real code via wrapped
20
+ * errors that re-reference the original) are detected via a visited set
21
+ * and surface as `{ name: 'CycleDetected', ... }` instead of recursing
22
+ * past the JS stack limit.
23
+ *
15
24
  * @internal
16
25
  */
17
26
  export declare function serializeError(err: unknown): SerializableError;
@@ -1 +1 @@
1
- {"version":3,"file":"serialize-error.d.ts","sourceRoot":"","sources":["../../src/agents/serialize-error.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAU9D"}
1
+ {"version":3,"file":"serialize-error.d.ts","sourceRoot":"","sources":["../../src/agents/serialize-error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAE9D"}
@@ -3,25 +3,64 @@
3
3
  * that adapters emit on `error` events. Walks the `cause` chain so wrapped
4
4
  * errors don't lose context across the subprocess boundary.
5
5
  *
6
+ * Contract: MUST NOT throw — adapters call this on every error before
7
+ * emitting an `error` event, so a throw here would crash the adapter
8
+ * harness instead of producing the documented payload.
9
+ *
6
10
  * @internal
7
11
  */
8
12
  /**
9
13
  * Normalize any thrown value to a `SerializableError`. Non-`Error` throws
10
- * become `{ name: 'NonError', message: String(err) }` so the field shape
14
+ * become `{ name: 'NonError', message: <stringified> }` so the field shape
11
15
  * stays uniform — consumers can rely on `name` and `message` always being
12
16
  * present.
13
17
  *
18
+ * Cycles in `Error.cause` chains (which can occur in real code via wrapped
19
+ * errors that re-reference the original) are detected via a visited set
20
+ * and surface as `{ name: 'CycleDetected', ... }` instead of recursing
21
+ * past the JS stack limit.
22
+ *
14
23
  * @internal
15
24
  */
16
25
  export function serializeError(err) {
26
+ return serializeInner(err, new WeakSet());
27
+ }
28
+ function serializeInner(err, seen) {
17
29
  if (err instanceof Error) {
30
+ if (seen.has(err)) {
31
+ return {
32
+ name: 'CycleDetected',
33
+ message: `cyclic Error.cause reference back to ${err.name}: ${err.message}`,
34
+ };
35
+ }
36
+ seen.add(err);
18
37
  return {
19
38
  name: err.name,
20
39
  message: err.message,
21
40
  stack: err.stack,
22
- cause: err.cause !== undefined ? serializeError(err.cause) : undefined,
41
+ cause: err.cause !== undefined ? serializeInner(err.cause, seen) : undefined,
23
42
  };
24
43
  }
25
- return { name: 'NonError', message: String(err) };
44
+ return { name: 'NonError', message: safeStringify(err) };
45
+ }
46
+ /**
47
+ * Stringify an arbitrary value without ever propagating an exception.
48
+ *
49
+ * Hostile inputs — Proxies whose traps throw, objects with throwing
50
+ * `Symbol.toPrimitive` or `toString`, getter chains that recurse — would
51
+ * otherwise crash this function and break the adapter safety-net invariant.
52
+ */
53
+ function safeStringify(v) {
54
+ try {
55
+ return String(v);
56
+ }
57
+ catch {
58
+ try {
59
+ return Object.prototype.toString.call(v);
60
+ }
61
+ catch {
62
+ return '<unserializable>';
63
+ }
64
+ }
26
65
  }
27
66
  //# sourceMappingURL=serialize-error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serialize-error.js","sourceRoot":"","sources":["../../src/agents/serialize-error.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,GAAY;IACzC,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;QACzB,OAAO;YACL,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;SACvE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"serialize-error.js","sourceRoot":"","sources":["../../src/agents/serialize-error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,GAAY;IACzC,OAAO,cAAc,CAAC,GAAG,EAAE,IAAI,OAAO,EAAU,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,cAAc,CACrB,GAAY,EACZ,IAAqB;IAErB,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO;gBACL,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,wCAAwC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,OAAO,EAAE;aAC5E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO;YACL,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,KAAK,EACH,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SACxE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,CAAU;IAC/B,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,kBAAkB,CAAC;QAC5B,CAAC;IACH,CAAC;AACH,CAAC"}
package/dist/cache.d.ts CHANGED
@@ -13,13 +13,24 @@
13
13
  */
14
14
  export declare class PipelineCache {
15
15
  private readonly store;
16
+ private readonly pending;
16
17
  private readonly prefix;
17
- constructor(store?: Map<string, unknown>, prefix?: string);
18
+ constructor(store?: Map<string, unknown>, prefix?: string, pending?: Map<string, Promise<unknown>>);
18
19
  private k;
19
20
  get<T>(key: string): T | undefined;
20
21
  set(key: string, value: unknown): void;
21
22
  has(key: string): boolean;
22
- /** Cache-or-fetch. */
23
+ /**
24
+ * Cache-or-fetch.
25
+ *
26
+ * Concurrent callers on the same key share one in-flight fetch — the
27
+ * second-through-Nth caller awaits the first caller's promise instead of
28
+ * each running its own. This preserves the cache's central invariant
29
+ * (one fetch per key per pipeline run) under fanout.
30
+ *
31
+ * On fetcher rejection the pending entry is evicted so the next caller
32
+ * may retry; rejections are NOT cached.
33
+ */
23
34
  getOrFetch<T>(key: string, fetcher: () => Promise<T>): Promise<T>;
24
35
  /**
25
36
  * Clear cache entries.
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAE,MAAW;IAK7D,OAAO,CAAC,CAAC;IAIT,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAIlC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAItC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,sBAAsB;IAChB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAUvE;;;;;;;OAOG;IACH,KAAK,IAAI,IAAI;IAUb;;;OAGG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CAIvC"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuB;IAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgC;IACxD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAG9B,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,MAAM,GAAE,MAAW,EACnB,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAOzC,OAAO,CAAC,CAAC;IAIT,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAIlC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAItC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB;;;;;;;;;;OAUG;IACG,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAsBvE;;;;;;;OAOG;IACH,KAAK,IAAI,IAAI;IAcb;;;OAGG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CAIvC"}
package/dist/cache.js CHANGED
@@ -13,9 +13,11 @@
13
13
  */
14
14
  export class PipelineCache {
15
15
  store;
16
+ pending;
16
17
  prefix;
17
- constructor(store, prefix = '') {
18
+ constructor(store, prefix = '', pending) {
18
19
  this.store = store ?? new Map();
20
+ this.pending = pending ?? new Map();
19
21
  this.prefix = prefix;
20
22
  }
21
23
  k(key) {
@@ -30,15 +32,38 @@ export class PipelineCache {
30
32
  has(key) {
31
33
  return this.store.has(this.k(key));
32
34
  }
33
- /** Cache-or-fetch. */
35
+ /**
36
+ * Cache-or-fetch.
37
+ *
38
+ * Concurrent callers on the same key share one in-flight fetch — the
39
+ * second-through-Nth caller awaits the first caller's promise instead of
40
+ * each running its own. This preserves the cache's central invariant
41
+ * (one fetch per key per pipeline run) under fanout.
42
+ *
43
+ * On fetcher rejection the pending entry is evicted so the next caller
44
+ * may retry; rejections are NOT cached.
45
+ */
34
46
  async getOrFetch(key, fetcher) {
35
47
  const fullKey = this.k(key);
36
48
  if (this.store.has(fullKey)) {
37
49
  return this.store.get(fullKey);
38
50
  }
39
- const value = await fetcher();
40
- this.store.set(fullKey, value);
41
- return value;
51
+ const inflight = this.pending.get(fullKey);
52
+ if (inflight) {
53
+ return inflight;
54
+ }
55
+ const p = (async () => {
56
+ try {
57
+ const value = await fetcher();
58
+ this.store.set(fullKey, value);
59
+ return value;
60
+ }
61
+ finally {
62
+ this.pending.delete(fullKey);
63
+ }
64
+ })();
65
+ this.pending.set(fullKey, p);
66
+ return p;
42
67
  }
43
68
  /**
44
69
  * Clear cache entries.
@@ -51,12 +76,17 @@ export class PipelineCache {
51
76
  clear() {
52
77
  if (!this.prefix) {
53
78
  this.store.clear();
79
+ this.pending.clear();
54
80
  return;
55
81
  }
56
82
  for (const k of [...this.store.keys()]) {
57
83
  if (k.startsWith(this.prefix))
58
84
  this.store.delete(k);
59
85
  }
86
+ for (const k of [...this.pending.keys()]) {
87
+ if (k.startsWith(this.prefix))
88
+ this.pending.delete(k);
89
+ }
60
90
  }
61
91
  /**
62
92
  * Total entries in the underlying store, across all namespaces. This is
@@ -75,7 +105,7 @@ export class PipelineCache {
75
105
  namespace(name) {
76
106
  if (!name)
77
107
  throw new Error('PipelineCache.namespace: name must be non-empty');
78
- return new PipelineCache(this.store, `${this.prefix}${name}:`);
108
+ return new PipelineCache(this.store, `${this.prefix}${name}:`, this.pending);
79
109
  }
80
110
  }
81
111
  //# sourceMappingURL=cache.js.map
package/dist/cache.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,OAAO,aAAa;IACP,KAAK,CAAuB;IAC5B,MAAM,CAAS;IAEhC,YAAY,KAA4B,EAAE,SAAiB,EAAE;QAC3D,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,IAAI,GAAG,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEO,CAAC,CAAC,GAAW;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IACpD,CAAC;IAED,GAAG,CAAI,GAAW;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAkB,CAAC;IACtD,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,KAAc;QAC7B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,UAAU,CAAI,GAAW,EAAE,OAAyB;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAM,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC/B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACH,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;gBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACH,SAAS,CAAC,IAAY;QACpB,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QAC9E,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC;IACjE,CAAC;CACF"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"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"}