agentfootprint 8.10.0 → 8.11.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 (119) hide show
  1. package/README.md +12 -11
  2. package/dist/adapters/observability/cloudwatch.js +133 -19
  3. package/dist/adapters/observability/cloudwatch.js.map +1 -1
  4. package/dist/adapters/observability/deliveryErrors.js +55 -0
  5. package/dist/adapters/observability/deliveryErrors.js.map +1 -0
  6. package/dist/adapters/observability/otel.js +11 -8
  7. package/dist/adapters/observability/otel.js.map +1 -1
  8. package/dist/adapters/observability/xray.js +30 -10
  9. package/dist/adapters/observability/xray.js.map +1 -1
  10. package/dist/core/Agent.js +24 -10
  11. package/dist/core/Agent.js.map +1 -1
  12. package/dist/core/LLMCall.js +11 -1
  13. package/dist/core/LLMCall.js.map +1 -1
  14. package/dist/core/slots/buildMessagesSlot.js +1 -1
  15. package/dist/core/slots/buildMessagesSlot.js.map +1 -1
  16. package/dist/core/slots/buildSystemPromptSlot.js +1 -1
  17. package/dist/core/slots/buildSystemPromptSlot.js.map +1 -1
  18. package/dist/core/slots/buildToolsSlot.js +1 -1
  19. package/dist/core/slots/buildToolsSlot.js.map +1 -1
  20. package/dist/esm/adapters/observability/cloudwatch.d.ts +43 -5
  21. package/dist/esm/adapters/observability/cloudwatch.js +133 -19
  22. package/dist/esm/adapters/observability/cloudwatch.js.map +1 -1
  23. package/dist/esm/adapters/observability/deliveryErrors.d.ts +39 -0
  24. package/dist/esm/adapters/observability/deliveryErrors.js +51 -0
  25. package/dist/esm/adapters/observability/deliveryErrors.js.map +1 -0
  26. package/dist/esm/adapters/observability/otel.d.ts +14 -0
  27. package/dist/esm/adapters/observability/otel.js +11 -8
  28. package/dist/esm/adapters/observability/otel.js.map +1 -1
  29. package/dist/esm/adapters/observability/xray.d.ts +15 -0
  30. package/dist/esm/adapters/observability/xray.js +30 -10
  31. package/dist/esm/adapters/observability/xray.js.map +1 -1
  32. package/dist/esm/core/Agent.d.ts +2 -0
  33. package/dist/esm/core/Agent.js +24 -10
  34. package/dist/esm/core/Agent.js.map +1 -1
  35. package/dist/esm/core/LLMCall.d.ts +16 -0
  36. package/dist/esm/core/LLMCall.js +11 -1
  37. package/dist/esm/core/LLMCall.js.map +1 -1
  38. package/dist/esm/core/agent/types.d.ts +28 -0
  39. package/dist/esm/core/slots/buildMessagesSlot.d.ts +2 -1
  40. package/dist/esm/core/slots/buildMessagesSlot.js +1 -1
  41. package/dist/esm/core/slots/buildMessagesSlot.js.map +1 -1
  42. package/dist/esm/core/slots/buildSystemPromptSlot.d.ts +2 -1
  43. package/dist/esm/core/slots/buildSystemPromptSlot.js +1 -1
  44. package/dist/esm/core/slots/buildSystemPromptSlot.js.map +1 -1
  45. package/dist/esm/core/slots/buildToolsSlot.d.ts +2 -1
  46. package/dist/esm/core/slots/buildToolsSlot.js +1 -1
  47. package/dist/esm/core/slots/buildToolsSlot.js.map +1 -1
  48. package/dist/esm/lib/injection-engine/SkillRegistry.d.ts +5 -3
  49. package/dist/esm/lib/injection-engine/SkillRegistry.js +5 -3
  50. package/dist/esm/lib/injection-engine/SkillRegistry.js.map +1 -1
  51. package/dist/esm/lib/injection-engine/factories/defineSkill.d.ts +68 -43
  52. package/dist/esm/lib/injection-engine/factories/defineSkill.js +15 -10
  53. package/dist/esm/lib/injection-engine/factories/defineSkill.js.map +1 -1
  54. package/dist/esm/lib/injection-engine/types.d.ts +25 -13
  55. package/dist/esm/lib/injection-engine/types.js +4 -2
  56. package/dist/esm/lib/injection-engine/types.js.map +1 -1
  57. package/dist/esm/lib/mcp/index.d.ts +1 -0
  58. package/dist/esm/lib/mcp/mcpClient.js +15 -6
  59. package/dist/esm/lib/mcp/mcpClient.js.map +1 -1
  60. package/dist/esm/lib/mcp/throttleRetry.d.ts +115 -0
  61. package/dist/esm/lib/mcp/throttleRetry.js +188 -0
  62. package/dist/esm/lib/mcp/throttleRetry.js.map +1 -0
  63. package/dist/esm/lib/mcp/types.d.ts +34 -0
  64. package/dist/esm/strategies/attach.d.ts +18 -3
  65. package/dist/esm/strategies/attach.js.map +1 -1
  66. package/dist/esm/strategies/types.d.ts +74 -20
  67. package/dist/esm/strategies/types.js +15 -10
  68. package/dist/esm/strategies/types.js.map +1 -1
  69. package/dist/lib/injection-engine/SkillRegistry.js +5 -3
  70. package/dist/lib/injection-engine/SkillRegistry.js.map +1 -1
  71. package/dist/lib/injection-engine/factories/defineSkill.js +15 -10
  72. package/dist/lib/injection-engine/factories/defineSkill.js.map +1 -1
  73. package/dist/lib/injection-engine/types.js +4 -2
  74. package/dist/lib/injection-engine/types.js.map +1 -1
  75. package/dist/lib/mcp/mcpClient.js +15 -6
  76. package/dist/lib/mcp/mcpClient.js.map +1 -1
  77. package/dist/lib/mcp/throttleRetry.js +193 -0
  78. package/dist/lib/mcp/throttleRetry.js.map +1 -0
  79. package/dist/strategies/attach.js.map +1 -1
  80. package/dist/strategies/types.js +15 -10
  81. package/dist/strategies/types.js.map +1 -1
  82. package/dist/types/adapters/observability/cloudwatch.d.ts +43 -5
  83. package/dist/types/adapters/observability/cloudwatch.d.ts.map +1 -1
  84. package/dist/types/adapters/observability/deliveryErrors.d.ts +40 -0
  85. package/dist/types/adapters/observability/deliveryErrors.d.ts.map +1 -0
  86. package/dist/types/adapters/observability/otel.d.ts +14 -0
  87. package/dist/types/adapters/observability/otel.d.ts.map +1 -1
  88. package/dist/types/adapters/observability/xray.d.ts +15 -0
  89. package/dist/types/adapters/observability/xray.d.ts.map +1 -1
  90. package/dist/types/core/Agent.d.ts +2 -0
  91. package/dist/types/core/Agent.d.ts.map +1 -1
  92. package/dist/types/core/LLMCall.d.ts +16 -0
  93. package/dist/types/core/LLMCall.d.ts.map +1 -1
  94. package/dist/types/core/agent/types.d.ts +28 -0
  95. package/dist/types/core/agent/types.d.ts.map +1 -1
  96. package/dist/types/core/slots/buildMessagesSlot.d.ts +2 -1
  97. package/dist/types/core/slots/buildMessagesSlot.d.ts.map +1 -1
  98. package/dist/types/core/slots/buildSystemPromptSlot.d.ts +2 -1
  99. package/dist/types/core/slots/buildSystemPromptSlot.d.ts.map +1 -1
  100. package/dist/types/core/slots/buildToolsSlot.d.ts +2 -1
  101. package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
  102. package/dist/types/lib/injection-engine/SkillRegistry.d.ts +5 -3
  103. package/dist/types/lib/injection-engine/SkillRegistry.d.ts.map +1 -1
  104. package/dist/types/lib/injection-engine/factories/defineSkill.d.ts +68 -43
  105. package/dist/types/lib/injection-engine/factories/defineSkill.d.ts.map +1 -1
  106. package/dist/types/lib/injection-engine/types.d.ts +25 -13
  107. package/dist/types/lib/injection-engine/types.d.ts.map +1 -1
  108. package/dist/types/lib/mcp/index.d.ts +1 -0
  109. package/dist/types/lib/mcp/index.d.ts.map +1 -1
  110. package/dist/types/lib/mcp/mcpClient.d.ts.map +1 -1
  111. package/dist/types/lib/mcp/throttleRetry.d.ts +116 -0
  112. package/dist/types/lib/mcp/throttleRetry.d.ts.map +1 -0
  113. package/dist/types/lib/mcp/types.d.ts +34 -0
  114. package/dist/types/lib/mcp/types.d.ts.map +1 -1
  115. package/dist/types/strategies/attach.d.ts +18 -3
  116. package/dist/types/strategies/attach.d.ts.map +1 -1
  117. package/dist/types/strategies/types.d.ts +74 -20
  118. package/dist/types/strategies/types.d.ts.map +1 -1
  119. package/package.json +1 -1
package/README.md CHANGED
@@ -18,11 +18,11 @@
18
18
 
19
19
  <p align="center">
20
20
  <a href="https://footprintjs.github.io/agentThinkingUI/">
21
- <img src="docs/assets/hero-atui.png" alt="An agent run replayed in AgentThinkingUI — the LLM 'brain' calls the Flight-search tool, the step inspector shows the tool's raw output and the brain's reasoning about it, and the timeline scrubs every step of the run." width="100%">
21
+ <img src="docs/assets/hero-atui.png" alt="An agent run replayed in Story Lens — the LLM 'brain' calls the Flight-search tool, the step inspector shows the tool's raw output and the brain's reasoning about it, and the timeline scrubs every step of the run." width="100%">
22
22
  </a>
23
23
  </p>
24
24
  <p align="center">
25
- <sub>A real run, replayed — rendered with <a href="https://github.com/footprintjs/agentThinkingUI"><b>AgentThinkingUI</b></a> (<code>npm i agentthinkingui</code>). Every frame is generated from the run's own trace; <a href="https://footprintjs.github.io/agentThinkingUI/">▶ watch it live</a>.</sub>
25
+ <sub>A real run, replayed — rendered with <a href="https://github.com/footprintjs/agentThinkingUI"><b>Story Lens</b></a> (<code>npm i agentthinkingui</code>). Every frame is generated from the run's own trace; <a href="https://footprintjs.github.io/agentThinkingUI/">▶ watch it live</a>.</sub>
26
26
  </p>
27
27
 
28
28
  <p align="center">
@@ -139,11 +139,12 @@ const agent = Agent.create({ provider, model })
139
139
  id: 'refund-policy',
140
140
  prompt: 'Never promise a refund before checking the policy tool.',
141
141
  }))
142
- .skill(defineSkill({ // guidance + tools unlocks when the LLM asks
142
+ .skill(defineSkill({ // guidance the LLM loads when it asks
143
143
  id: 'billing',
144
144
  description: 'Use for refunds, charges, billing questions.',
145
145
  body: 'When handling billing: confirm identity first, then…',
146
146
  tools: [refundTool],
147
+ autoActivate: 'currentSkill', // ...and scope its tools to that window too
147
148
  }))
148
149
  .build();
149
150
  ```
@@ -277,7 +278,7 @@ confident, wrong #1. Guides: [ranking-confidence](docs/guides/ranking-confidence
277
278
  [missing-context](docs/guides/missing-context.md).
278
279
 
279
280
  **The same walk, visual.** `toBacktrackTrace()` serializes the report into
280
- [AgentThinkingUI](https://github.com/footprintjs/agentThinkingUI)'s `<BacktrackView>`
281
+ [Story Lens](https://github.com/footprintjs/agentThinkingUI)'s `<BacktrackView>`
281
282
  — the "why?" board, triggerable from any decision point (final answer, a mid-loop tool
282
283
  choice, a deterministic `decide()` rule):
283
284
 
@@ -368,7 +369,7 @@ That's the whole model: `Injection = slot × trigger × cache`.
368
369
  | `llm-activated` | runtime — agent-driven | LLM calls `read_skill('id')` | `.skill(defineSkill({ id: 'refund-policy', description, body, viaToolName: 'read_skill' }))` | `system` (body) + `tools` |
369
370
 
370
371
  > [!NOTE]
371
- > The "Illustration" column shows the shape of each flavor — the typed builder methods (`.steering` / `.instruction` / `.skill` / `.fact` / `.rag`) take an `Injection` (or `MemoryDefinition` for `.rag`) produced by the matching `defineSteering` / `defineInstruction` / `defineSkill` / `defineFact` / `defineRAG` factory. A `Skill` targets more than one slot at once: `tools` (the schemas it unlocks) and `system` (its body — or, with `surfaceMode: 'tool-only'`, the `read_skill` result instead). The `messages` slot both projects the conversation and accepts delivery: `slot: 'messages'` (with a `role` you name) appends to the window itself, subject to what the attached provider carries inside `messages` and to a sequence rule that defers rather than reorders.
372
+ > The "Illustration" column shows the shape of each flavor — the typed builder methods (`.steering` / `.instruction` / `.skill` / `.fact` / `.rag`) take an `Injection` (or `MemoryDefinition` for `.rag`) produced by the matching `defineSteering` / `defineInstruction` / `defineSkill` / `defineFact` / `defineRAG` factory. A `Skill` targets more than one slot at once: `tools` (the schemas it contributes — registered up front and visible from iteration 1 unless the Skill sets `autoActivate: 'currentSkill'`, which scopes them to the iterations where it is active) and `system` (its body — or, with `surfaceMode: 'tool-only'`, the `read_skill` result instead). The `messages` slot both projects the conversation and accepts delivery: `slot: 'messages'` (with a `role` you name) appends to the window itself, subject to what the attached provider carries inside `messages` and to a sequence rule that defers rather than reorders.
372
373
 
373
374
  **3 slots × 4 triggers × N flavors = the entire context-engineering surface.**
374
375
 
@@ -657,10 +658,10 @@ There is deliberately no list of "watch moments" to go with `.act()`'s five. A r
657
658
  ## 🐛 Debug — see what your agent did
658
659
 
659
660
  <p align="center">
660
- <img src="docs/assets/lens-run.png" alt="A real agent run in the Lens: the conversation (with live PII redaction), the executed path lit on the merge-tree flowchart, the WHAT-HAPPENED timeline of every iteration/context/LLM turn/route, run stats, and the step inspector — all generated from the run's own trace." width="100%">
661
+ <img src="docs/assets/lens-run.png" alt="A real agent run in Why Lens: the conversation (with live PII redaction), the executed path lit on the merge-tree flowchart, the WHAT-HAPPENED timeline of every iteration/context/LLM turn/route, run stats, and the step inspector — all generated from the run's own trace." width="100%">
661
662
  </p>
662
663
  <p align="center">
663
- <sub>One real run, fully explained — the <a href="https://github.com/footprintjs/agentfootprint-lens"><b>Lens</b></a> (<code>npm i agentfootprint-lens</code>): conversation · executed path · per-step timeline · stats, every pixel from the trace.</sub>
664
+ <sub>One real run, fully explained — <a href="https://github.com/footprintjs/agentfootprint-lens"><b>Why Lens</b></a> (<code>npm i agentfootprint-lens</code>): conversation · executed path · per-step timeline · stats, every pixel from the trace.</sub>
664
665
  </p>
665
666
 
666
667
  Because we own the loop, every decision and execution is captured during traversal — not bolted on. The default capture is the **causal trace**: every stage, read, write, and decision evidence as a JSON-portable, scrubbable, queryable, exportable artifact — and every LLM call backtracks to four typed answers: **what** was injected, **who** triggered it (which rule), **when** it fired, **how** it landed (slot · position · cache). Beyond the default, wire custom recorders for cost, latency, or quality scoring — any observation hook fires on the same stream.
@@ -677,9 +678,9 @@ Four views, one trace — pick by question:
677
678
 
678
679
  | View | Shows | When to use |
679
680
  |---|---|---|
680
- | **AgentThinkingUI** (the hero up top) | The run replayed as an animated, scrubbable story — the brain, the tools, the reasoning | Show anyone *what the agent did* |
681
+ | **Story Lens** (the hero up top) | The run replayed as an animated, scrubbable story — the brain, the tools, the reasoning | Show anyone *what the agent did* |
681
682
  | **BacktrackView** ([the board above](#one-contextual-error-walked-end-to-end)) | A decision walked backwards — suspects, influence meters, ablation stamps, custody rewind | Answer *why it decided that* |
682
- | **Lens** | Agent-centric — User/Agent[3 slots]/Tool flowchart with iteration scrubber and round commentary | Live debugging, "what did the agent see at step 5?" |
683
+ | **Why Lens** | Agent-centric — User/Agent[3 slots]/Tool flowchart with iteration scrubber and round commentary | Live debugging, "what did the agent see at step 5?" |
683
684
  | **Explainable Trace** | Structural — subflow tree, full flowchart, memory inspector, per-stage execution timeline | Architecture review, root-cause analysis |
684
685
 
685
686
  And two **conversational** doors over the same evidence — ask instead of look:
@@ -852,8 +853,8 @@ The flowchart, recorders, and tests don't change between dev and prod.
852
853
  - OTel GenAI span export · hash-chained tamper-evident audit bundles with an offline verifier
853
854
 
854
855
  **Tooling**
855
- - **AgentThinkingUI** — animated run player + BacktrackView why-board (separate `agentthinkingui` package)
856
- - **Lens** · **Explainable Trace** — two visual replays of the causal trace (separate `agentfootprint-lens` package)
856
+ - **Story Lens** — animated run player + BacktrackView why-board (separate `agentthinkingui` package)
857
+ - **Why Lens** · **Explainable Trace** — two visual replays of the causal trace (separate `agentfootprint-lens` package)
857
858
  - AI-coding-tool support — Claude Code · Cursor · Windsurf · Cline · Kiro · Copilot
858
859
 
859
860
  </details>
@@ -42,6 +42,7 @@
42
42
  Object.defineProperty(exports, "__esModule", { value: true });
43
43
  exports.cloudwatchObservability = exports._buildCloudWatchObservability = void 0;
44
44
  const lazyRequire_js_1 = require("../../lib/lazyRequire.js");
45
+ const deliveryErrors_js_1 = require("./deliveryErrors.js");
45
46
  // ─── Generic base — also used by agentcoreObservability ──────────────
46
47
  /**
47
48
  * Internal: shared CloudWatch Logs base used by every adapter that
@@ -69,7 +70,20 @@ function _buildCloudWatchObservability(opts, strategyName) {
69
70
  let lastFlushPromise = Promise.resolve();
70
71
  let timer;
71
72
  let stopped = false;
72
- let onErrorHook;
73
+ // What we know about the log stream (8.11.0). This is the per-(group,stream)
74
+ // create latch — group and stream are fixed for the life of a strategy, so
75
+ // one tri-state IS that latch:
76
+ // 'unknown' — never delivered yet, or the stream vanished under us
77
+ // 'created' — we created it, or a put has succeeded against it
78
+ // 'unavailable' — a create attempt failed for a reason retrying won't fix
79
+ // (no permission, missing GROUP). Never attempt again.
80
+ // 'created' is deliberately NOT terminal: a retention policy can delete a
81
+ // stream mid-process, and the next ResourceNotFoundException should heal it.
82
+ // Only 'unavailable' is terminal, which is what stops a create/put loop.
83
+ let streamState = 'unknown';
84
+ // The fallback when the consumer wires nothing. Rate-limited; a
85
+ // consumer-supplied sink is not.
86
+ const consoleSink = (0, deliveryErrors_js_1.rateLimitedConsoleSink)(strategyName);
73
87
  // Lazy-resolved on first flush so consumers who never trigger a
74
88
  // flush (because nothing was emitted) don't even hit the SDK.
75
89
  let client = opts._client;
@@ -87,6 +101,21 @@ function _buildCloudWatchObservability(opts, strategyName) {
87
101
  void doFlush();
88
102
  }, flushIntervalMs);
89
103
  }
104
+ /** Route a delivery failure through whatever `_onError` IS RIGHT NOW.
105
+ * Reading it at call time (rather than capturing a hook at construction)
106
+ * is the whole fix: a consumer who assigns `_onError` after building the
107
+ * strategy gets delivery failures, and one who doesn't still gets the
108
+ * default console sink. */
109
+ function reportFailure(err) {
110
+ strategy._onError?.(err);
111
+ }
112
+ async function putBatch(client, batch) {
113
+ await client.putLogEvents({
114
+ logGroupName: opts.logGroupName,
115
+ logStreamName,
116
+ logEvents: batch,
117
+ });
118
+ }
90
119
  async function doFlush() {
91
120
  if (buffer.length === 0 || stopped)
92
121
  return;
@@ -95,14 +124,57 @@ function _buildCloudWatchObservability(opts, strategyName) {
95
124
  const batch = buffer.splice(0);
96
125
  bufferBytes = 0;
97
126
  try {
98
- await ensureClient().putLogEvents({
99
- logGroupName: opts.logGroupName,
100
- logStreamName,
101
- logEvents: batch,
102
- });
127
+ const client = ensureClient();
128
+ try {
129
+ await putBatch(client, batch);
130
+ streamState = 'created'; // a successful put proves the stream is there
131
+ return;
132
+ }
133
+ catch (err) {
134
+ // The one recoverable shape: CloudWatch rejects a put into a stream
135
+ // that doesn't exist. Before 8.11.0 this adapter asserted that
136
+ // precondition and never established it, so any stream name that
137
+ // didn't already exist dropped every event, forever, in silence —
138
+ // and the documented `${HOSTNAME}/${Date.now()}` convention can never
139
+ // pre-exist, so following the docs guaranteed the bug.
140
+ if (!isMissingStreamError(err) || streamState === 'unavailable')
141
+ throw err;
142
+ if (!client.createLogStream) {
143
+ throw new Error(`log stream '${logStreamName}' does not exist in log group ` +
144
+ `'${opts.logGroupName}', and the injected \`_client\` has no ` +
145
+ `\`createLogStream\` to create it.`);
146
+ }
147
+ try {
148
+ await client.createLogStream({
149
+ logGroupName: opts.logGroupName,
150
+ logStreamName,
151
+ });
152
+ }
153
+ catch (createErr) {
154
+ // Two processes racing to create the same stream is normal and
155
+ // expected — whoever lost the race still has a usable stream.
156
+ if (!isAlreadyExistsError(createErr)) {
157
+ // Anything else (no `logs:CreateLogStream`, or the log GROUP
158
+ // itself is missing) will not fix itself. Latch it off so we
159
+ // never loop, and say which of the two it probably is.
160
+ streamState = 'unavailable';
161
+ throw new Error(`could not create log stream '${logStreamName}' in log group ` +
162
+ `'${opts.logGroupName}': ${errorMessage(createErr)}. Check that the log ` +
163
+ `GROUP exists (this adapter never creates one) and that the role allows ` +
164
+ `\`logs:CreateLogStream\`.`);
165
+ }
166
+ }
167
+ streamState = 'created';
168
+ // Exactly ONE re-put of the same batch. Not a retry loop: if this
169
+ // fails the events are gone, and saying so is better than growing a
170
+ // buffer during an outage.
171
+ await putBatch(client, batch);
172
+ }
103
173
  }
104
174
  catch (err) {
105
- onErrorHook?.(err instanceof Error ? err : new Error(String(err)));
175
+ const cause = errorMessage(err);
176
+ reportFailure(new Error(`${batch.length} event(s) dropped shipping to log group '${opts.logGroupName}' ` +
177
+ `stream '${logStreamName}': ${cause}`));
106
178
  }
107
179
  }
108
180
  function enqueue(event) {
@@ -121,10 +193,16 @@ function _buildCloudWatchObservability(opts, strategyName) {
121
193
  scheduleTimedFlush();
122
194
  }
123
195
  }
124
- return {
196
+ const strategy = {
125
197
  name: strategyName,
126
198
  capabilities: { events: true, logs: true },
127
199
  exportEvent: enqueue,
200
+ /**
201
+ * Drain the buffer. **The framework does not call this for you** — wire it
202
+ * into your own shutdown or the last batch is lost:
203
+ *
204
+ * process.on('SIGTERM', async () => { await strategy.flush(); strategy.stop(); });
205
+ */
128
206
  async flush() {
129
207
  // Drain anything pending. Awaits both an in-flight put AND any
130
208
  // newly-buffered events that arrived during it.
@@ -140,6 +218,8 @@ function _buildCloudWatchObservability(opts, strategyName) {
140
218
  break;
141
219
  }
142
220
  },
221
+ /** Stop the flush timer. **The framework does not call this for you** —
222
+ * an un-stopped strategy keeps a `setTimeout` alive. */
143
223
  stop() {
144
224
  stopped = true;
145
225
  if (timer) {
@@ -147,22 +227,46 @@ function _buildCloudWatchObservability(opts, strategyName) {
147
227
  timer = undefined;
148
228
  }
149
229
  },
230
+ /**
231
+ * Where errors go. Two callers: the dispatch layer (when `exportEvent`
232
+ * itself throws) and this adapter's own delivery path.
233
+ *
234
+ * Before 8.11.0 this method lazily installed the console fallback INSIDE
235
+ * itself, so a delivery failure — which reads the hook rather than calling
236
+ * this method — found `undefined` and vanished. The fallback now exists
237
+ * from construction, and delivery failures route through this method,
238
+ * which means overriding it works: assign `_onError`, or pass `onError`
239
+ * in the factory options, and you receive delivery failures too.
240
+ */
150
241
  _onError(err, event) {
151
- // Capture for use inside doFlush (the strategy doesn't know what
152
- // the consumer's error sink is unless they wire `_onError` via
153
- // the strategy options. We store it on this hook so put-failures
154
- // route correctly).
155
- onErrorHook =
156
- onErrorHook ??
157
- ((e) => {
158
- // eslint-disable-next-line no-console
159
- console.error(`[${strategyName}Observability] flush failed:`, e.message);
160
- });
161
- onErrorHook(err, event);
242
+ (opts.onError ?? consoleSink)(err, event);
162
243
  },
163
244
  };
245
+ return strategy;
164
246
  }
165
247
  exports._buildCloudWatchObservability = _buildCloudWatchObservability;
248
+ // ─── Error shape helpers ─────────────────────────────────────────────
249
+ function errorMessage(err) {
250
+ return err instanceof Error ? err.message : String(err);
251
+ }
252
+ /**
253
+ * Did this put fail because the log stream isn't there?
254
+ *
255
+ * Matched on `name` first (how the AWS SDK v3 surfaces it) with a message
256
+ * fallback, because a transport shim or an injected test double may carry the
257
+ * code only in the text.
258
+ */
259
+ function isMissingStreamError(err) {
260
+ if (err?.name === 'ResourceNotFoundException')
261
+ return true;
262
+ return /ResourceNotFoundException|log stream does not exist/i.test(errorMessage(err));
263
+ }
264
+ /** Lost a create race with another process. Not an error — the stream exists. */
265
+ function isAlreadyExistsError(err) {
266
+ if (err?.name === 'ResourceAlreadyExistsException')
267
+ return true;
268
+ return /ResourceAlreadyExistsException|already exists/i.test(errorMessage(err));
269
+ }
166
270
  // ─── Public factory: cloudwatchObservability ─────────────────────────
167
271
  /**
168
272
  * Generic CloudWatch Logs observability adapter. See
@@ -191,6 +295,7 @@ function createCloudWatchClient(region, strategyName) {
191
295
  `\`CloudWatchLogsClient\` / \`PutLogEventsCommand\` was not found. Update the SDK.`);
192
296
  }
193
297
  const sdkClient = new mod.CloudWatchLogsClient({ ...(region && { region }) });
298
+ const createLogStreamCommand = mod.CreateLogStreamCommand;
194
299
  return {
195
300
  async putLogEvents(input) {
196
301
  // Cast the SDK constructor to the call shape — same trick as
@@ -198,6 +303,15 @@ function createCloudWatchClient(region, strategyName) {
198
303
  const cmd = new mod.PutLogEventsCommand(input);
199
304
  await sdkClient.send(cmd);
200
305
  },
306
+ // Only offered when the installed SDK has the command. An older SDK
307
+ // without it degrades to a reported failure rather than a crash — the
308
+ // adapter checks for this method before reaching for it.
309
+ ...(createLogStreamCommand && {
310
+ async createLogStream(input) {
311
+ const cmd = new createLogStreamCommand(input);
312
+ await sdkClient.send(cmd);
313
+ },
314
+ }),
201
315
  };
202
316
  }
203
317
  //# sourceMappingURL=cloudwatch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloudwatch.js","sourceRoot":"","sources":["../../../src/adapters/observability/cloudwatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloudwatch.js","sourceRoot":"","sources":["../../../src/adapters/observability/cloudwatch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ /**
3
+ * deliveryErrors — where an exporter's failures go when nobody is listening.
4
+ *
5
+ * **Telemetry that fails invisibly is indistinguishable from telemetry that
6
+ * works.** Every network-shipping observability adapter has the same problem:
7
+ * `exportEvent` is sync and non-throwing by contract, so the actual delivery
8
+ * happens later, inside a flush the caller never sees. If that flush fails and
9
+ * nothing is wired up, the process keeps running, the dashboard stays empty,
10
+ * and nobody learns anything until someone goes looking for a run that isn't
11
+ * there.
12
+ *
13
+ * Before 8.11.0 each adapter installed its console fallback lazily, INSIDE its
14
+ * own `_onError` method — so a delivery failure, which read the hook rather
15
+ * than calling the method, found `undefined` and vanished. Every CloudWatch,
16
+ * X-Ray and OTEL delivery failure was silent in the ordinary case.
17
+ *
18
+ * The rule this module encodes: **an unheard failure still gets said out loud,
19
+ * but saying it must not become the second outage.** A backend that has been
20
+ * down for an hour would otherwise produce one `console.error` per flush
21
+ * interval for an hour.
22
+ *
23
+ * Role: leaf helper for `adapters/observability/*`. No imports beyond the
24
+ * event type; composed as a field, never inherited.
25
+ */
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.rateLimitedConsoleSink = void 0;
28
+ /**
29
+ * The default sink: loud on the first failure, then logarithmically quieter.
30
+ *
31
+ * Reports at failures 1, 2, 4, 8, 16, 32 … and stamps the running count, so an
32
+ * ongoing outage is visible (you can see the number climbing) without flooding
33
+ * the log. A consumer-supplied sink is NOT rate-limited — they asked for every
34
+ * failure and can do their own filtering.
35
+ *
36
+ * @param strategyName the adapter's `name` (e.g. `'cloudwatch'`), used to
37
+ * prefix the line so a multi-exporter process says which one failed.
38
+ */
39
+ function rateLimitedConsoleSink(strategyName) {
40
+ let failures = 0;
41
+ let reportAt = 1;
42
+ return (error) => {
43
+ failures++;
44
+ if (failures < reportAt)
45
+ return;
46
+ // Double the gap each time we speak, so the log cost is logarithmic in
47
+ // the length of the outage.
48
+ reportAt = failures * 2;
49
+ const count = failures > 1 ? ` (delivery failure #${failures})` : '';
50
+ // eslint-disable-next-line no-console
51
+ console.error(`[${strategyName}Observability] delivery failed${count}:`, error.message);
52
+ };
53
+ }
54
+ exports.rateLimitedConsoleSink = rateLimitedConsoleSink;
55
+ //# sourceMappingURL=deliveryErrors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deliveryErrors.js","sourceRoot":"","sources":["../../../src/adapters/observability/deliveryErrors.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;AAOH;;;;;;;;;;GAUG;AACH,SAAgB,sBAAsB,CAAC,YAAoB;IACzD,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,OAAO,CAAC,KAAY,EAAQ,EAAE;QAC5B,QAAQ,EAAE,CAAC;QACX,IAAI,QAAQ,GAAG,QAAQ;YAAE,OAAO;QAChC,uEAAuE;QACvE,4BAA4B;QAC5B,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC;QACxB,MAAM,KAAK,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAuB,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,IAAI,YAAY,iCAAiC,KAAK,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1F,CAAC,CAAC;AACJ,CAAC;AAbD,wDAaC"}
@@ -121,6 +121,7 @@
121
121
  Object.defineProperty(exports, "__esModule", { value: true });
122
122
  exports.otelObservability = void 0;
123
123
  const lazyRequire_js_1 = require("../../lib/lazyRequire.js");
124
+ const deliveryErrors_js_1 = require("./deliveryErrors.js");
124
125
  // ─── Bounding helpers (PII / cardinality discipline) ─────────────────
125
126
  /** Hard caps for attribute payloads. Evidence is bounded upstream
126
127
  * (#5 `maxFieldChars`); these are defense-in-depth for the OTLP wire. */
@@ -217,7 +218,11 @@ function otelObservability(opts) {
217
218
  }
218
219
  const activeTurns = new Map();
219
220
  let stopped = false;
220
- let onErrorHook;
221
+ // The fallback when the consumer wires nothing. Rate-limited; a
222
+ // consumer-supplied sink is not. Armed at CONSTRUCTION — before 8.11.0 it
223
+ // was installed lazily inside `_onError` itself, which meant any caller
224
+ // reading the hook rather than calling the method found `undefined`.
225
+ const consoleSink = (0, deliveryErrors_js_1.rateLimitedConsoleSink)('otel');
221
226
  /**
222
227
  * Resolve the run anchor for an event.
223
228
  *
@@ -724,14 +729,12 @@ function otelObservability(opts) {
724
729
  }
725
730
  activeTurns.clear();
726
731
  },
732
+ /**
733
+ * Where errors go. Overriding it works — assign `_onError`, or pass
734
+ * `onError` in the factory options.
735
+ */
727
736
  _onError(err, event) {
728
- onErrorHook =
729
- onErrorHook ??
730
- ((e) => {
731
- // eslint-disable-next-line no-console
732
- console.error(`[otelObservability] error:`, e.message);
733
- });
734
- onErrorHook(err, event);
737
+ (opts.onError ?? consoleSink)(err, event);
735
738
  },
736
739
  decisionEvidenceRecorder() {
737
740
  // One purpose (Convention 1): forward decide()/select() evidence
@@ -1 +1 @@
1
- {"version":3,"file":"otel.js","sourceRoot":"","sources":["../../../src/adapters/observability/otel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"otel.js","sourceRoot":"","sources":["../../../src/adapters/observability/otel.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsHG;;;AAIH,6DAAuD;AAGvD,2DAA6D;AAoJ7D,wEAAwE;AAExE;0EAC0E;AAC1E,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,cAAc,GAAG,EAAE,CAAC;AAE1B,SAAS,KAAK,CAAC,KAAc;IAC3B,MAAM,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;IACrF,OAAO,CAAC,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,SAAS,CAAC,KAAwB;IACzC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzD,OAAO,KAAK,CAAC,MAAM,GAAG,cAAc;QAClC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,KAAK,CAAC,MAAM,GAAG,cAAc,OAAO,CAAC;QACxD,CAAC,CAAC,MAAM,CAAC;AACb,CAAC;AAmCD;;wEAEwE;AACxE,SAAS,gBAAgB,CAAC,IAAsB;IAC9C,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,OAAO,SAAS,CACd,IAAI,CAAC,UAAU,CAAC,GAAG,CACjB,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,aAAa,KAAK,CAAC,CAAC,MAAM,GAAG,CACnF,CACF,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,qEAAqE;AACrE,SAAS,mBAAmB,CAAC,QAA8B;IACzD,MAAM,KAAK,GAAuC,EAAE,CAAC;IACrD,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS;QAC/B,KAAK,CAAC,gCAAgC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnE,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS;QAChC,KAAK,CAAC,iCAAiC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACrE,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS;QACjC,KAAK,CAAC,kCAAkC,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACvF,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;IACnC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,yCAAyC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACtF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;IACtD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;YAC7B,KAAK,CAAC,oCAAoC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrE,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;YACjC,KAAK,CAAC,oCAAoC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;QAClE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAC9B,KAAK,CAAC,qCAAqC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,oCAAoC,CAAC,GAAG,UAAU,CAAC;IACtF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6DAA6D;AAC7D,SAAS,uBAAuB,CAAC,KAAc;IAC7C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,KAAK,CAAC,OAAO,CAAE,KAA8B,CAAC,KAAK,CAAC,CACrD,CAAC;AACJ,CAAC;AAED,wEAAwE;AAExE,SAAgB,iBAAiB,CAAC,IAA8B;IAC9D,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACtB,MAAM,IAAI,SAAS,CACjB,mDAAmD;YACjD,sFAAsF,CACzF,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC;IAChD,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC;IAErD,kEAAkE;IAClE,oEAAoE;IACpE,gDAAgD;IAChD,IAAI,MAAM,GAA+B,IAAI,CAAC,MAAM,CAAC;IACrD,IAAI,OAAkC,CAAC;IACvC,SAAS,YAAY;QACnB,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAC1B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,OAAO,GAAG,IAAA,4BAAW,EAAgB,oBAAoB,CAAC,CAAC;YAC7D,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CACb,wEAAwE;oBACtE,8CAA8C;oBAC9C,yDAAyD;oBACzD,mFAAmF;oBACnF,wCAAwC,CAC3C,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,2GAA2G,CAC5G,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACnD,OAAO,MAAM,CAAC;IAChB,CAAC;IAmBD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAqB,CAAC;IAEjD,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,gEAAgE;IAChE,0EAA0E;IAC1E,wEAAwE;IACxE,qEAAqE;IACrE,MAAM,WAAW,GAAG,IAAA,0CAAsB,EAAC,MAAM,CAAC,CAAC;IAEnD;;;;;;;;;OASG;IACH,SAAS,WAAW,CAAC,KAA0B;QAC7C,MAAM,IAAI,GAAI,KAAuC,CAAC,IAAI,CAAC;QAC3D,OAAO,IAAI,EAAE,KAAK,IAAK,KAAK,CAAC,OAA0C,EAAE,KAAK,CAAC;IACjF,CAAC;IAED,SAAS,QAAQ,CACf,SAAoB,EACpB,IAAY,EACZ,KAA0C;QAE1C,iEAAiE;QACjE,4DAA4D;QAC5D,6DAA6D;QAC7D,4DAA4D;QAC5D,qBAAqB;QACrB,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC;QACjE,IAAI,GAAY,CAAC;QACjB,IAAI,MAAM,IAAI,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YAClE,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC5F,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,OAAO,CACd,SAAoB,EACpB,KAA4C;QAE5C,IAAI,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,OAAO,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAY,EAAW,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;YAC9F,+CAA+C;YAC/C,oEAAoE;YACpE,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC;gBAAE,GAAG,EAAE,CAAC;QACjE,CAAC;QACD,IAAI,GAAG,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;QAC9B,mEAAmE;QACnE,oEAAoE;QACpE,OAAO,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC;IACjD,CAAC;IAED,SAAS,OAAO,CAAC,IAAkB,EAAE,OAA6B;QAChE,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,OAAO,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC;gBACH,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,uDAAuD;YACzD,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;IAED,SAAS,QAAQ,CAAC,IAAkB,EAAE,KAAyC;QAC7E,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC;gBACH,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,yDAAyD;YAC3D,CAAC;QACH,CAAC;IACH,CAAC;IAED;4DACwD;IACxD,SAAS,eAAe,CACtB,IAAkB,EAClB,IAAY,EACZ,KAAyC;QAEzC,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;YACxC,IAAI,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YAAC,MAAM,CAAC;gBACP,wCAAwC;YAC1C,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAuC,EAAE,CAAC;QACzD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,SAAS,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC;QACtF,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5B,CAAC;IAED,SAAS,OAAO,CAAC,CAAwB;QACvC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC;IAC5C,CAAC;IAED;;;uEAGmE;IACnE,SAAS,cAAc;QACrB,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAC7C,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;QACjC,OAAO,CAAC,CAAC;IACX,CAAC;IAED,sEAAsE;IAEtE,SAAS,oBAAoB,CAAC,KAA0B,EAAE,CAAY;QACpE,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,MAAM,CAAC,GAAG,KAAK,CAAC,OAA6C,CAAC;QAE9D,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,sDAAsD;YACtD,KAAK,oCAAoC,CAAC,CAAC,CAAC;gBAC1C,eAAe,CAAC,GAAG,EAAE,oCAAoC,EAAE;oBACzD,+BAA+B,EAAE,aAAa;oBAC9C,gCAAgC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBACjD,GAAG,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI;wBACrC,mCAAmC,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;qBACxD,CAAC;oBACF,GAAG,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI;wBACrC,gCAAgC,EAAE,CAAC,CAAC,SAAS;qBAC9C,CAAC;iBACH,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,6DAA6D;YAC7D,gEAAgE;YAChE,KAAK,0CAA0C,CAAC,CAAC,CAAC;gBAChD,MAAM,KAAK,GAAuC;oBAChD,+BAA+B,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC;oBACvD,gCAAgC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBACjD,GAAG,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI;wBACrC,mCAAmC,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;qBACxD,CAAC;iBACH,CAAC;gBACF,IAAI,uBAAuB,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACrC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxD,eAAe,CAAC,GAAG,EAAE,0CAA0C,EAAE,KAAK,CAAC,CAAC;gBACxE,MAAM;YACR,CAAC;YAED,6DAA6D;YAC7D,kEAAkE;YAClE,oDAAoD;YACpD,KAAK,kCAAkC,CAAC,CAAC,CAAC;gBACxC,MAAM,OAAO,GAAG,CAAC,CAAC,OASL,CAAC;gBACd,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;oBAAE,MAAM,CAAC,6CAA6C;gBACjF,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;oBACxB,eAAe,CAAC,GAAG,EAAE,8BAA8B,EAAE;wBACnD,mCAAmC,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC;wBACzD,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,0BAA0B,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;wBACxE,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,4BAA4B,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC9E,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,2BAA2B,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC3E,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;4BAC3B,2BAA2B,EAAE,SAAS,CACpC,CAAC,CAAC,IAAI,CAAC,GAAG,CACR,CAAC,IAAyC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,MAAM,EAAE,CAChF,CACF;yBACF,CAAC;wBACF,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;4BAC5B,4BAA4B,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;yBAC7D,CAAC;qBACH,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,gCAAgC,CAAC,CAAC,CAAC;gBACtC,eAAe,CAAC,GAAG,EAAE,gCAAgC,EAAE;oBACrD,yBAAyB,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;oBAC3C,6BAA6B,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI;wBACpC,4BAA4B,EAAE,SAAS,CAAE,CAAC,CAAC,aAA2B,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;qBACpF,CAAC;iBACH,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,0DAA0D;YAC1D,+DAA+D;YAC/D,KAAK,wCAAwC,CAAC,CAAC,CAAC;gBAC9C,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAI5B,CAAC;gBACH,eAAe,CAAC,GAAG,EAAE,wCAAwC,EAAE;oBAC7D,qCAAqC,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACxD,wCAAwC,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;oBAC7D,oCAAoC,EAAE,CAAC,CAAC,QAAQ,KAAK,IAAI;oBACzD,uCAAuC,EAAE,MAAM,CAAC,MAAM;oBACtD,kCAAkC,EAAE,SAAS,CAC3C,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,GAAG,EAAE,CAAC,CACrE;iBACF,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,KAAK,iCAAiC,CAAC,CAAC,CAAC;gBACvC,eAAe,CAAC,GAAG,EAAE,iCAAiC,EAAE;oBACtD,sCAAsC,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;oBAC3D,iCAAiC,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;oBACjD,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,kCAAkC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtF,kCAAkC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBACnD,GAAG,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,IAAI;wBAClC,0CAA0C,EAAE,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;qBAClE,CAAC;oBACF,GAAG,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI;wBACrC,qCAAqC,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;qBAC1D,CAAC;oBACF,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI;wBAClC,kCAAkC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;qBACpD,CAAC;iBACH,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,KAAK,gCAAgC,CAAC,CAAC,CAAC;gBACtC,eAAe,CAAC,GAAG,EAAE,gCAAgC,EAAE;oBACrD,kCAAkC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBACnD,kCAAkC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBACnD,GAAG,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI;wBACrC,gCAAgC,EAAE,CAAC,CAAC,SAAS;qBAC9C,CAAC;iBACH,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,iEAAiE;YACjE,8DAA8D;YAC9D,KAAK,qCAAqC,CAAC;YAC3C,KAAK,oCAAoC,CAAC;YAC1C,KAAK,kDAAkD,CAAC;YACxD,KAAK,kCAAkC,CAAC,CAAC,CAAC;gBACxC,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE;oBAC/B,mCAAmC,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;oBACrD,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,gCAAgC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBAChF,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,gCAAgC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBAChF,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI;wBAC/B,sCAAsC,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;qBAC3D,CAAC;oBACF,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,kCAAkC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;iBACvF,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED;gBACE,MAAM;QACV,CAAC;IACH,CAAC;IAED,sEAAsE;IAEtE,SAAS,WAAW,CAAC,KAA0B;QAC7C,IAAI,OAAO;YAAE,OAAO;QACpB,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,uCAAuC;QAE3D,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,iCAAiC,CAAC,CAAC,CAAC;gBACvC,MAAM,OAAO,GAAG,UAAU,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC;gBAC9D,MAAM,SAAS,GAAc,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;gBAC1E,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBAClC,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,SAAS,GAAI,KAAK,CAAC,OAAkC,CAAC,SAAS,CAAC;oBACtE,4DAA4D;oBAC5D,iEAAiE;oBACjE,mEAAmE;oBACnE,kDAAkD;oBAClD,kEAAkE;oBAClE,iEAAiE;oBACjE,8DAA8D;oBAC9D,8BAA8B;oBAC9B,SAAS,CAAC,IAAI,GAAG,QAAQ,CACvB,SAAS,EACT,UAAU,CAAC,CAAC,CAAC,gBAAgB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAClE;wBACE,cAAc,EAAE,IAAI,CAAC,WAAW;wBAChC,uBAAuB,EAAE,cAAc;wBACvC,mBAAmB,EAAE,IAAI,CAAC,WAAW;wBACrC,uBAAuB,EAAE,KAAK;wBAC9B,GAAG,CAAC,OAAO,SAAS,KAAK,QAAQ,IAAI,EAAE,2BAA2B,EAAE,SAAS,EAAE,CAAC;qBACjF,CACF,CAAC;gBACJ,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,+BAA+B,CAAC,CAAC,CAAC;gBACrC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,CAAC;oBAAE,MAAM;gBACd,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;oBACX,4DAA4D;oBAC5D,qDAAqD;oBACrD,MAAM,CAAC,GAAG,KAAK,CAAC,OAIf,CAAC;oBACF,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE;wBACf,GAAG,CAAC,OAAO,CAAC,CAAC,gBAAgB,KAAK,QAAQ,IAAI;4BAC5C,2BAA2B,EAAE,CAAC,CAAC,gBAAgB;yBAChD,CAAC;wBACF,GAAG,CAAC,OAAO,CAAC,CAAC,iBAAiB,KAAK,QAAQ,IAAI;4BAC7C,4BAA4B,EAAE,CAAC,CAAC,iBAAiB;yBAClD,CAAC;wBACF,GAAG,CAAC,OAAO,CAAC,CAAC,cAAc,KAAK,QAAQ,IAAI;4BAC1C,gCAAgC,EAAE,CAAC,CAAC,cAAc;yBACnD,CAAC;qBACH,CAAC,CAAC;gBACL,CAAC;gBACD,gDAAgD;gBAChD,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;oBACxB,IAAI,IAAI;wBAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;gBACD,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC1B,MAAM;YACR,CAAC;YAED,KAAK,sCAAsC,CAAC,CAAC,CAAC;gBAC5C,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;oBACf,MAAM,SAAS,GACZ,KAAK,CAAC,OAAsD,CAAC,SAAS;wBACtE,KAAK,CAAC,OAAkC,CAAC,SAAS,CAAC;oBACtD,QAAQ,CAAC,CAAC,EAAE,aAAa,SAAS,IAAI,GAAG,EAAE,EAAE;wBAC3C,GAAG,CAAC,OAAO,SAAS,KAAK,QAAQ,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC;qBACxE,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,oCAAoC,CAAC,CAAC,CAAC;gBAC1C,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;oBACf,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;oBACjE,IAAI,IAAI,EAAE,CAAC;wBACT,MAAM,aAAa,GAAI,KAAK,CAAC,OAAsC,CAAC,aAAa,CAAC;wBAClF,IAAI,OAAO,aAAa,KAAK,QAAQ;4BACnC,QAAQ,CAAC,IAAI,EAAE,EAAE,gCAAgC,EAAE,aAAa,EAAE,CAAC,CAAC;wBACtE,OAAO,CAAC,IAAI,CAAC,CAAC;oBAChB,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,iCAAiC,CAAC,CAAC,CAAC;gBACvC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,CAAC,EAAE,OAAO;oBAAE,MAAM;gBACvB,MAAM,CAAC,GAAG,KAAK,CAAC,OAAsE,CAAC;gBACvF,sDAAsD;gBACtD,kEAAkE;gBAClE,4DAA4D;gBAC5D,+DAA+D;gBAC/D,sBAAsB;gBACtB,QAAQ,CAAC,CAAC,EAAE,UAAU,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE;oBAC7D,uBAAuB,EAAE,MAAM;oBAC/B,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;oBACjE,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;oBACvE,GAAG,CAAC,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,IAAI;wBACvC,4BAA4B,EAAE,CAAC,CAAC,WAAW;qBAC5C,CAAC;iBACH,CAAC,CAAC;gBACH,iEAAiE;gBACjE,qDAAqD;gBACrD,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;oBACtC,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC;oBACtB,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE;wBACf,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;wBACvE,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;qBAClE,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,+BAA+B,CAAC,CAAC,CAAC;gBACrC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,CAAC,EAAE,OAAO;oBAAE,MAAM;gBACvB,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC7E,IAAI,CAAC,IAAI;oBAAE,MAAM;gBACjB,MAAM,CAAC,GAAG,KAAK,CAAC,OAIf,CAAC;gBACF,6DAA6D;gBAC7D,4DAA4D;gBAC5D,yCAAyC;gBACzC,QAAQ,CAAC,IAAI,EAAE;oBACb,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,QAAQ,IAAI;wBACxC,2BAA2B,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK;qBAC3C,CAAC;oBACF,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,QAAQ,IAAI;wBACzC,4BAA4B,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;qBAC7C,CAAC;oBACF,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,SAAS,KAAK,QAAQ,IAAI;wBAC5C,sCAAsC,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS;qBAC1D,CAAC;oBACF,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,UAAU,KAAK,QAAQ,IAAI;wBAC7C,0CAA0C,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU;qBAC/D,CAAC;oBACF,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI;wBACtC,gCAAgC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAsB;qBACtE,CAAC;oBACF,GAAG,CAAC,OAAO,CAAC,CAAC,mBAAmB,KAAK,QAAQ,IAAI;wBAC/C,oBAAoB,EAAE,CAAC,CAAC,mBAAmB;qBAC5C,CAAC;iBACH,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,MAAM;YACR,CAAC;YAED,KAAK,kCAAkC,CAAC,CAAC,CAAC;gBACxC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,CAAC,EAAE,OAAO;oBAAE,MAAM;gBACvB,MAAM,CAAC,GAAG,KAAK,CAAC,OAKf,CAAC;gBACF,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC;gBACtC,0DAA0D;gBAC1D,gEAAgE;gBAChE,8DAA8D;gBAC9D,4DAA4D;gBAC5D,MAAM,OAAO,GACX,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,gBAAgB,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,QAAQ,EAAE,EAAE;oBACrF,WAAW,EAAE,QAAQ;oBACrB,uBAAuB,EAAE,cAAc;oBACvC,kBAAkB,EAAE,QAAQ;oBAC5B,GAAG,CAAC,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;oBAC1E,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,8BAA8B,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;oBAC/E,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,+BAA+B,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;iBACnF,CAAC,CAAC;gBACH,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS;oBAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBACpE,MAAM;YACR,CAAC;YAED,KAAK,gCAAgC,CAAC,CAAC,CAAC;gBACtC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,CAAC,EAAE,OAAO;oBAAE,MAAM;gBACvB,MAAM,CAAC,GAAG,KAAK,CAAC,OAKf,CAAC;gBACF,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC;gBAC3D,4DAA4D;gBAC5D,gEAAgE;gBAChE,4DAA4D;gBAC5D,mDAAmD;gBACnD,IAAI,IAA8B,CAAC;gBACnC,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;oBAChE,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;oBACrC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;oBACjC,oEAAoE;oBACpE,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;oBAC9D,IAAI,GAAG,IAAI,CAAC;wBAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACvC,CAAC;qBAAM,CAAC;oBACN,IAAI,GAAG,OAAO,CACZ,CAAC,EACD,CAAC,CAAC,QAAQ,KAAK,SAAS;wBACtB,CAAC,CAAC,CAAC,IAAI,EAAW,EAAE,CAChB,IAAI,KAAK,QAAQ,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,KAAK,gBAAgB,CAAC,CAAC,QAAQ,EAAE;wBAC1E,CAAC,CAAC,CAAC,IAAI,EAAW,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CACpF,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,IAAI;oBAAE,MAAM;gBACjB,+DAA+D;gBAC/D,kEAAkE;gBAClE,QAAQ,CAAC,IAAI,EAAE;oBACb,iCAAiC,EAAE,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM;oBAC/E,GAAG,CAAC,OAAO,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,EAAE,qCAAqC;iBAClF,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;gBAClC,MAAM;YACR,CAAC;YAED,gEAAgE;YAChE,iEAAiE;YACjE,4DAA4D;YAC5D,KAAK,4BAA4B,CAAC,CAAC,CAAC;gBAClC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,CAAC;oBAAE,MAAM;gBACd,MAAM,CAAC,GAAG,KAAK,CAAC,OAA6C,CAAC;gBAC9D,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;oBACX,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,4BAA4B,EAAE;wBACpD,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,4BAA4B,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC9E,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,4BAA4B,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;qBAC/E,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;oBACxB,IAAI,IAAI;wBAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;gBACD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACxB,IAAI,IAAI;oBAAE,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACzC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC1B,MAAM;YACR,CAAC;YAED,+DAA+D;YAC/D,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,CAAC,EAAE,OAAO;oBAAE,MAAM;gBACvB,sDAAsD;gBACtD,IAAI,KAAK,CAAC,IAAI,KAAK,0BAA0B,EAAE,CAAC;oBAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;oBACvB,IAAI,CAAC,GAAG;wBAAE,MAAM;oBAChB,8DAA8D;oBAC9D,4DAA4D;oBAC5D,gDAAgD;oBAChD,MAAM,CAAC,GAAG,KAAK,CAAC,OAGf,CAAC;oBACF,MAAM,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,YAAY,IAAI,CAAC,CAAC,iBAAiB,CAAC;oBAC9D,IAAI,OAAO,GAAG,KAAK,QAAQ;wBAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,qBAAqB,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC3E,MAAM;gBACR,CAAC;gBACD,IAAI,cAAc;oBAAE,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACnD,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,YAAY,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;QAC5C,WAAW,EAAE,WAAW;QACxB,KAAK;YACH,+DAA+D;YAC/D,gEAAgE;YAChE,2DAA2D;YAC3D,wDAAwD;QAC1D,CAAC;QACD,IAAI;YACF,OAAO,GAAG,IAAI,CAAC;YACf,wDAAwD;YACxD,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;gBAChC,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;oBACxB,IAAI,IAAI;wBAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;gBACD,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACtB,CAAC;YACD,WAAW,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;QACD;;;WAGG;QACH,QAAQ,CAAC,GAAU,EAAE,KAA2B;YAC9C,CAAC,IAAI,CAAC,OAAO,IAAI,WAAW,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC;QAED,wBAAwB;YACtB,iEAAiE;YACjE,+DAA+D;YAC/D,iEAAiE;YACjE,kEAAkE;YAClE,MAAM,OAAO,GAAG,CACd,OAAe,EACf,MAAc,EACd,QAA0C,EACpC,EAAE;gBACR,IAAI,OAAO,IAAI,CAAC,cAAc;oBAAE,OAAO;gBACvC,0DAA0D;gBAC1D,wDAAwD;gBACxD,IAAI,QAAQ,KAAK,SAAS;oBAAE,OAAO;gBACnC,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;gBAC3B,IAAI,CAAC,CAAC,EAAE,OAAO;oBAAE,OAAO;gBACxB,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACvB,IAAI,CAAC,GAAG;oBAAE,OAAO;gBACjB,eAAe,CAAC,GAAG,EAAE,kCAAkC,EAAE;oBACvD,+BAA+B,EAAE,KAAK,CAAC,OAAO,CAAC;oBAC/C,gCAAgC,EAAE,KAAK,CAAC,MAAM,CAAC;oBAC/C,GAAG,mBAAmB,CAAC,QAAQ,CAAC;iBACjC,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,OAAO;gBACL,EAAE,EAAE,wBAAwB;gBAC5B,UAAU,CAAC,KAAwB;oBACjC,MAAM,OAAO,GAAG,KAAK,CAAC,gBAAgB,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC;oBACjE,0DAA0D;oBAC1D,4DAA4D;oBAC5D,yDAAyD;oBACzD,IACE,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;wBAChD,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;wBAEpC,OAAO;oBACT,OAAO,CACL,MAAM,CAAC,OAAO,CAAC,EACf,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,CAAC,EACjC,KAAK,CAAC,QAA4C,CACnD,CAAC;gBACJ,CAAC;gBACD,UAAU,CAAC,KAAwB;oBACjC,MAAM,OAAO,GAAG,KAAK,CAAC,gBAAgB,EAAE,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC;oBAChE,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;wBAAE,OAAO;oBACjD,8DAA8D;oBAC9D,IACE,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;wBACnC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;wBAEhD,OAAO;oBACT,OAAO,CACL,MAAM,CAAC,OAAO,CAAC,EACf,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EACzB,KAAK,CAAC,QAA4C,CACnD,CAAC;gBACJ,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAhsBD,8CAgsBC"}
@@ -63,6 +63,7 @@
63
63
  Object.defineProperty(exports, "__esModule", { value: true });
64
64
  exports.xrayObservability = void 0;
65
65
  const lazyRequire_js_1 = require("../../lib/lazyRequire.js");
66
+ const deliveryErrors_js_1 = require("./deliveryErrors.js");
66
67
  // ─── Strategy factory ────────────────────────────────────────────────
67
68
  function xrayObservability(opts) {
68
69
  if (!opts.serviceName) {
@@ -82,7 +83,9 @@ function xrayObservability(opts) {
82
83
  let lastFlushPromise = Promise.resolve();
83
84
  let timer;
84
85
  let stopped = false;
85
- let onErrorHook;
86
+ // The fallback when the consumer wires nothing. Rate-limited; a
87
+ // consumer-supplied sink is not.
88
+ const consoleSink = (0, deliveryErrors_js_1.rateLimitedConsoleSink)('xray');
86
89
  // Lazy SDK client.
87
90
  let client = opts._client;
88
91
  function ensureClient() {
@@ -109,7 +112,13 @@ function xrayObservability(opts) {
109
112
  });
110
113
  }
111
114
  catch (err) {
112
- onErrorHook?.(err instanceof Error ? err : new Error(String(err)));
115
+ // Routed through the strategy's CURRENT `_onError` (not a hook captured
116
+ // at construction), so a consumer who assigns it — or passes `onError`
117
+ // — actually receives delivery failures. Before 8.11.0 the hook was
118
+ // installed lazily inside `_onError` itself and was `undefined` here,
119
+ // so every failed put was silent.
120
+ strategy._onError?.(new Error(`${batch.length} segment(s) dropped shipping to X-Ray: ` +
121
+ (err instanceof Error ? err.message : String(err))));
113
122
  }
114
123
  // If outbox grew during the put (size > maxBatchSegments emits
115
124
  // arrived), chain another flush.
@@ -353,10 +362,17 @@ function xrayObservability(opts) {
353
362
  }
354
363
  }
355
364
  }
356
- return {
365
+ const strategy = {
357
366
  name: 'xray',
358
367
  capabilities: { events: true, traces: true },
359
368
  exportEvent: handleEvent,
369
+ /**
370
+ * Force-close in-flight segments and drain. **The framework does not call
371
+ * this for you** — wire it into your own shutdown or the last batch (and
372
+ * every unfinished turn) is lost:
373
+ *
374
+ * process.on('SIGTERM', async () => { await strategy.flush(); strategy.stop(); });
375
+ */
360
376
  async flush() {
361
377
  // Force-close any in-flight turn segments so partial traces
362
378
  // make it into X-Ray on shutdown.
@@ -376,6 +392,8 @@ function xrayObservability(opts) {
376
392
  break;
377
393
  }
378
394
  },
395
+ /** Stop the flush timer. **The framework does not call this for you** —
396
+ * an un-stopped strategy keeps a `setTimeout` alive. */
379
397
  stop() {
380
398
  stopped = true;
381
399
  if (timer) {
@@ -383,16 +401,18 @@ function xrayObservability(opts) {
383
401
  timer = undefined;
384
402
  }
385
403
  },
404
+ /**
405
+ * Where errors go. Two callers: the dispatch layer (when `exportEvent`
406
+ * throws) and this adapter's own delivery path. Overriding it works —
407
+ * assign `_onError`, or pass `onError` in the factory options — because
408
+ * delivery failures read this method at call time rather than a hook
409
+ * captured at construction.
410
+ */
386
411
  _onError(err, event) {
387
- onErrorHook =
388
- onErrorHook ??
389
- ((e) => {
390
- // eslint-disable-next-line no-console
391
- console.error(`[xrayObservability] flush failed:`, e.message);
392
- });
393
- onErrorHook(err, event);
412
+ (opts.onError ?? consoleSink)(err, event);
394
413
  },
395
414
  };
415
+ return strategy;
396
416
  }
397
417
  exports.xrayObservability = xrayObservability;
398
418
  // ─── ID + time helpers ───────────────────────────────────────────────