agentfootprint 8.10.0 → 8.11.1

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 (121) hide show
  1. package/README.md +12 -11
  2. package/dist/adapters/observability/cloudwatch.js +167 -32
  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 +60 -19
  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 +167 -32
  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 +60 -19
  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 +46 -21
  66. package/dist/esm/strategies/attach.js.map +1 -1
  67. package/dist/esm/strategies/types.d.ts +74 -20
  68. package/dist/esm/strategies/types.js +15 -10
  69. package/dist/esm/strategies/types.js.map +1 -1
  70. package/dist/lib/injection-engine/SkillRegistry.js +5 -3
  71. package/dist/lib/injection-engine/SkillRegistry.js.map +1 -1
  72. package/dist/lib/injection-engine/factories/defineSkill.js +15 -10
  73. package/dist/lib/injection-engine/factories/defineSkill.js.map +1 -1
  74. package/dist/lib/injection-engine/types.js +4 -2
  75. package/dist/lib/injection-engine/types.js.map +1 -1
  76. package/dist/lib/mcp/mcpClient.js +15 -6
  77. package/dist/lib/mcp/mcpClient.js.map +1 -1
  78. package/dist/lib/mcp/throttleRetry.js +193 -0
  79. package/dist/lib/mcp/throttleRetry.js.map +1 -0
  80. package/dist/strategies/attach.js +45 -43
  81. package/dist/strategies/attach.js.map +1 -1
  82. package/dist/strategies/types.js +15 -10
  83. package/dist/strategies/types.js.map +1 -1
  84. package/dist/types/adapters/observability/cloudwatch.d.ts +43 -5
  85. package/dist/types/adapters/observability/cloudwatch.d.ts.map +1 -1
  86. package/dist/types/adapters/observability/deliveryErrors.d.ts +40 -0
  87. package/dist/types/adapters/observability/deliveryErrors.d.ts.map +1 -0
  88. package/dist/types/adapters/observability/otel.d.ts +14 -0
  89. package/dist/types/adapters/observability/otel.d.ts.map +1 -1
  90. package/dist/types/adapters/observability/xray.d.ts +15 -0
  91. package/dist/types/adapters/observability/xray.d.ts.map +1 -1
  92. package/dist/types/core/Agent.d.ts +2 -0
  93. package/dist/types/core/Agent.d.ts.map +1 -1
  94. package/dist/types/core/LLMCall.d.ts +16 -0
  95. package/dist/types/core/LLMCall.d.ts.map +1 -1
  96. package/dist/types/core/agent/types.d.ts +28 -0
  97. package/dist/types/core/agent/types.d.ts.map +1 -1
  98. package/dist/types/core/slots/buildMessagesSlot.d.ts +2 -1
  99. package/dist/types/core/slots/buildMessagesSlot.d.ts.map +1 -1
  100. package/dist/types/core/slots/buildSystemPromptSlot.d.ts +2 -1
  101. package/dist/types/core/slots/buildSystemPromptSlot.d.ts.map +1 -1
  102. package/dist/types/core/slots/buildToolsSlot.d.ts +2 -1
  103. package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
  104. package/dist/types/lib/injection-engine/SkillRegistry.d.ts +5 -3
  105. package/dist/types/lib/injection-engine/SkillRegistry.d.ts.map +1 -1
  106. package/dist/types/lib/injection-engine/factories/defineSkill.d.ts +68 -43
  107. package/dist/types/lib/injection-engine/factories/defineSkill.d.ts.map +1 -1
  108. package/dist/types/lib/injection-engine/types.d.ts +25 -13
  109. package/dist/types/lib/injection-engine/types.d.ts.map +1 -1
  110. package/dist/types/lib/mcp/index.d.ts +1 -0
  111. package/dist/types/lib/mcp/index.d.ts.map +1 -1
  112. package/dist/types/lib/mcp/mcpClient.d.ts.map +1 -1
  113. package/dist/types/lib/mcp/throttleRetry.d.ts +116 -0
  114. package/dist/types/lib/mcp/throttleRetry.d.ts.map +1 -0
  115. package/dist/types/lib/mcp/types.d.ts +34 -0
  116. package/dist/types/lib/mcp/types.d.ts.map +1 -1
  117. package/dist/types/strategies/attach.d.ts +18 -3
  118. package/dist/types/strategies/attach.d.ts.map +1 -1
  119. package/dist/types/strategies/types.d.ts +74 -20
  120. package/dist/types/strategies/types.d.ts.map +1 -1
  121. 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,22 +101,87 @@ 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
- if (buffer.length === 0 || stopped)
120
+ // `stopped` is deliberately NOT a guard here (8.11.1). `stop()` stops this
121
+ // strategy ACCEPTING events and cancels its timer; it does not authorise
122
+ // throwing away events already accepted. Guarding here made `flush()`
123
+ // after `stop()` unable to make progress while its loop waited for
124
+ // progress — an infinite microtask spin that starved the event loop of
125
+ // the very process trying to shut down. Same stance as `auditExport`:
126
+ // stop observing, never destroy what was collected.
127
+ if (buffer.length === 0)
92
128
  return;
93
129
  // Snapshot + clear so concurrent emits during the in-flight put
94
130
  // accumulate into the next batch.
95
131
  const batch = buffer.splice(0);
96
132
  bufferBytes = 0;
97
133
  try {
98
- await ensureClient().putLogEvents({
99
- logGroupName: opts.logGroupName,
100
- logStreamName,
101
- logEvents: batch,
102
- });
134
+ const client = ensureClient();
135
+ try {
136
+ await putBatch(client, batch);
137
+ streamState = 'created'; // a successful put proves the stream is there
138
+ return;
139
+ }
140
+ catch (err) {
141
+ // The one recoverable shape: CloudWatch rejects a put into a stream
142
+ // that doesn't exist. Before 8.11.0 this adapter asserted that
143
+ // precondition and never established it, so any stream name that
144
+ // didn't already exist dropped every event, forever, in silence —
145
+ // and the documented `${HOSTNAME}/${Date.now()}` convention can never
146
+ // pre-exist, so following the docs guaranteed the bug.
147
+ if (!isMissingStreamError(err) || streamState === 'unavailable')
148
+ throw err;
149
+ if (!client.createLogStream) {
150
+ throw new Error(`log stream '${logStreamName}' does not exist in log group ` +
151
+ `'${opts.logGroupName}', and the injected \`_client\` has no ` +
152
+ `\`createLogStream\` to create it.`);
153
+ }
154
+ try {
155
+ await client.createLogStream({
156
+ logGroupName: opts.logGroupName,
157
+ logStreamName,
158
+ });
159
+ }
160
+ catch (createErr) {
161
+ // Two processes racing to create the same stream is normal and
162
+ // expected — whoever lost the race still has a usable stream.
163
+ if (!isAlreadyExistsError(createErr)) {
164
+ // Anything else (no `logs:CreateLogStream`, or the log GROUP
165
+ // itself is missing) will not fix itself. Latch it off so we
166
+ // never loop, and say which of the two it probably is.
167
+ streamState = 'unavailable';
168
+ throw new Error(`could not create log stream '${logStreamName}' in log group ` +
169
+ `'${opts.logGroupName}': ${errorMessage(createErr)}. Check that the log ` +
170
+ `GROUP exists (this adapter never creates one) and that the role allows ` +
171
+ `\`logs:CreateLogStream\`.`);
172
+ }
173
+ }
174
+ streamState = 'created';
175
+ // Exactly ONE re-put of the same batch. Not a retry loop: if this
176
+ // fails the events are gone, and saying so is better than growing a
177
+ // buffer during an outage.
178
+ await putBatch(client, batch);
179
+ }
103
180
  }
104
181
  catch (err) {
105
- onErrorHook?.(err instanceof Error ? err : new Error(String(err)));
182
+ const cause = errorMessage(err);
183
+ reportFailure(new Error(`${batch.length} event(s) dropped shipping to log group '${opts.logGroupName}' ` +
184
+ `stream '${logStreamName}': ${cause}`));
106
185
  }
107
186
  }
108
187
  function enqueue(event) {
@@ -121,25 +200,47 @@ function _buildCloudWatchObservability(opts, strategyName) {
121
200
  scheduleTimedFlush();
122
201
  }
123
202
  }
124
- return {
203
+ const strategy = {
125
204
  name: strategyName,
126
205
  capabilities: { events: true, logs: true },
127
206
  exportEvent: enqueue,
207
+ /**
208
+ * Drain the buffer. **The framework does not call this for you** — wire it
209
+ * into your own shutdown or the last batch is lost:
210
+ *
211
+ * process.on('SIGTERM', async () => { await strategy.flush(); strategy.stop(); });
212
+ *
213
+ * Safe in any order relative to `stop()` since 8.11.1: a flush after a
214
+ * stop still ships what was already accepted.
215
+ */
128
216
  async flush() {
129
- // Drain anything pending. Awaits both an in-flight put AND any
130
- // newly-buffered events that arrived during it.
131
- while (buffer.length > 0 || lastFlushPromise !== Promise.resolve()) {
132
- const before = lastFlushPromise;
133
- await before;
134
- if (buffer.length > 0) {
135
- lastFlushPromise = doFlush();
136
- }
137
- // Loop one more pass if the chained doFlush() queued more
138
- // work, then bail.
139
- if (lastFlushPromise === before && buffer.length === 0)
140
- break;
217
+ // BOUNDED BY CONSTRUCTION. Every pass must remove at least one buffered
218
+ // event; a pass that removes none ends the drain instead of trying
219
+ // again. The previous shape looped `while (buffer.length > 0)` and
220
+ // trusted `doFlush()` to make progress — which it stopped doing once
221
+ // `stop()` had been called, turning shutdown into an infinite microtask
222
+ // spin (no timer could fire, no deadline could expire, 100% of a core).
223
+ // A drain that cannot finish must return, never retry forever.
224
+ for (;;) {
225
+ const pending = buffer.length;
226
+ // Chain, never replace: CloudWatch requires per-stream ordering, so a
227
+ // drain waits for the in-flight put rather than racing it.
228
+ lastFlushPromise = lastFlushPromise.then(doFlush, doFlush);
229
+ await lastFlushPromise;
230
+ if (buffer.length === 0)
231
+ return;
232
+ if (buffer.length >= pending)
233
+ return;
141
234
  }
142
235
  },
236
+ /** Stop the flush timer and stop accepting events. **The framework does
237
+ * not call this for you** — an un-stopped strategy keeps a `setTimeout`
238
+ * alive (one-shot, re-armed per event, so the process lingers up to
239
+ * `flushIntervalMs` past the last event).
240
+ *
241
+ * Terminal: events exported after this are dropped and there is no
242
+ * restart. What it does NOT do is discard the buffer — `flush()` after
243
+ * `stop()` still ships it (8.11.1). */
143
244
  stop() {
144
245
  stopped = true;
145
246
  if (timer) {
@@ -147,22 +248,46 @@ function _buildCloudWatchObservability(opts, strategyName) {
147
248
  timer = undefined;
148
249
  }
149
250
  },
251
+ /**
252
+ * Where errors go. Two callers: the dispatch layer (when `exportEvent`
253
+ * itself throws) and this adapter's own delivery path.
254
+ *
255
+ * Before 8.11.0 this method lazily installed the console fallback INSIDE
256
+ * itself, so a delivery failure — which reads the hook rather than calling
257
+ * this method — found `undefined` and vanished. The fallback now exists
258
+ * from construction, and delivery failures route through this method,
259
+ * which means overriding it works: assign `_onError`, or pass `onError`
260
+ * in the factory options, and you receive delivery failures too.
261
+ */
150
262
  _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);
263
+ (opts.onError ?? consoleSink)(err, event);
162
264
  },
163
265
  };
266
+ return strategy;
164
267
  }
165
268
  exports._buildCloudWatchObservability = _buildCloudWatchObservability;
269
+ // ─── Error shape helpers ─────────────────────────────────────────────
270
+ function errorMessage(err) {
271
+ return err instanceof Error ? err.message : String(err);
272
+ }
273
+ /**
274
+ * Did this put fail because the log stream isn't there?
275
+ *
276
+ * Matched on `name` first (how the AWS SDK v3 surfaces it) with a message
277
+ * fallback, because a transport shim or an injected test double may carry the
278
+ * code only in the text.
279
+ */
280
+ function isMissingStreamError(err) {
281
+ if (err?.name === 'ResourceNotFoundException')
282
+ return true;
283
+ return /ResourceNotFoundException|log stream does not exist/i.test(errorMessage(err));
284
+ }
285
+ /** Lost a create race with another process. Not an error — the stream exists. */
286
+ function isAlreadyExistsError(err) {
287
+ if (err?.name === 'ResourceAlreadyExistsException')
288
+ return true;
289
+ return /ResourceAlreadyExistsException|already exists/i.test(errorMessage(err));
290
+ }
166
291
  // ─── Public factory: cloudwatchObservability ─────────────────────────
167
292
  /**
168
293
  * Generic CloudWatch Logs observability adapter. See
@@ -191,6 +316,7 @@ function createCloudWatchClient(region, strategyName) {
191
316
  `\`CloudWatchLogsClient\` / \`PutLogEventsCommand\` was not found. Update the SDK.`);
192
317
  }
193
318
  const sdkClient = new mod.CloudWatchLogsClient({ ...(region && { region }) });
319
+ const createLogStreamCommand = mod.CreateLogStreamCommand;
194
320
  return {
195
321
  async putLogEvents(input) {
196
322
  // Cast the SDK constructor to the call shape — same trick as
@@ -198,6 +324,15 @@ function createCloudWatchClient(region, strategyName) {
198
324
  const cmd = new mod.PutLogEventsCommand(input);
199
325
  await sdkClient.send(cmd);
200
326
  },
327
+ // Only offered when the installed SDK has the command. An older SDK
328
+ // without it degrades to a reported failure rather than a crash — the
329
+ // adapter checks for this method before reaching for it.
330
+ ...(createLogStreamCommand && {
331
+ async createLogStream(input) {
332
+ const cmd = new createLogStreamCommand(input);
333
+ await sdkClient.send(cmd);
334
+ },
335
+ }),
201
336
  };
202
337
  }
203
338
  //# 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":"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"}