@aws/durable-execution-sdk-js-otel 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/README.md +202 -1
  2. package/dist/execution-plugin.mjs +100 -21
  3. package/dist/execution-plugin.mjs.map +1 -1
  4. package/dist/index.mjs +1 -1
  5. package/dist/invocation-plugin.mjs +130 -55
  6. package/dist/invocation-plugin.mjs.map +1 -1
  7. package/dist/otel-execution.mjs +1 -1
  8. package/dist/otel-execution.mjs.map +1 -1
  9. package/dist/otel-invocation.mjs +1 -1
  10. package/dist/otel-invocation.mjs.map +1 -1
  11. package/dist/{global-id-generator.mjs → plugin-registration.mjs} +79 -3
  12. package/dist/plugin-registration.mjs.map +1 -0
  13. package/dist-cjs/execution-plugin.js +113 -34
  14. package/dist-cjs/execution-plugin.js.map +1 -1
  15. package/dist-cjs/index.js +10 -10
  16. package/dist-cjs/invocation-plugin.js +142 -67
  17. package/dist-cjs/invocation-plugin.js.map +1 -1
  18. package/dist-cjs/otel-execution.js +1 -1
  19. package/dist-cjs/otel-execution.js.map +1 -1
  20. package/dist-cjs/otel-invocation.js +1 -1
  21. package/dist-cjs/otel-invocation.js.map +1 -1
  22. package/dist-cjs/{global-id-generator.js → plugin-registration.js} +82 -2
  23. package/dist-cjs/plugin-registration.js.map +1 -0
  24. package/dist-types/execution-plugin.d.ts +13 -3
  25. package/dist-types/execution-plugin.d.ts.map +1 -1
  26. package/dist-types/execution-trace-context.d.ts +4 -2
  27. package/dist-types/execution-trace-context.d.ts.map +1 -1
  28. package/dist-types/external-completions.d.ts +11 -0
  29. package/dist-types/external-completions.d.ts.map +1 -0
  30. package/dist-types/global-sampler.d.ts +2 -0
  31. package/dist-types/global-sampler.d.ts.map +1 -1
  32. package/dist-types/invocation-clock.d.ts +9 -0
  33. package/dist-types/invocation-clock.d.ts.map +1 -0
  34. package/dist-types/invocation-plugin.d.ts +12 -2
  35. package/dist-types/invocation-plugin.d.ts.map +1 -1
  36. package/dist-types/plugin-registration.d.ts +2 -0
  37. package/dist-types/plugin-registration.d.ts.map +1 -0
  38. package/dist-types/propagation-metadata.d.ts +12 -0
  39. package/dist-types/propagation-metadata.d.ts.map +1 -0
  40. package/package.json +13 -9
  41. package/dist/global-id-generator.mjs.map +0 -1
  42. package/dist-cjs/global-id-generator.js.map +0 -1
@@ -3,7 +3,19 @@
3
3
  var api = require('@opentelemetry/api');
4
4
  var core = require('@opentelemetry/core');
5
5
  var sdkTraceNode = require('@opentelemetry/sdk-trace-node');
6
- var globalIdGenerator = require('./global-id-generator.js');
6
+ var pluginRegistration = require('./plugin-registration.js');
7
+
8
+ /** Match ordinary OTel spans: a wall-clock origin plus monotonic elapsed time. */
9
+ function captureInvocationClock() {
10
+ return {
11
+ epochMillis: Date.now(),
12
+ monotonicMillis: core.otperformance.now(),
13
+ };
14
+ }
15
+ function readInvocationClock(clock) {
16
+ // HrTime explicitly denotes absolute time; numeric TimeInput can be relative.
17
+ return core.millisToHrTime(clock.epochMillis + (core.otperformance.now() - clock.monotonicMillis));
18
+ }
7
19
 
8
20
  const DEFAULT_INSTRUMENTATION_NAME = "aws-durable-execution-sdk-js";
9
21
  /**
@@ -14,6 +26,9 @@ const DEFAULT_INSTRUMENTATION_NAME = "aws-durable-execution-sdk-js";
14
26
  * durable execution.
15
27
  */
16
28
  class InvocationOtelPlugin {
29
+ static [pluginRegistration.PLUGIN_REGISTRATION] = {
30
+ exclusiveGroup: "durable-opentelemetry-view",
31
+ };
17
32
  tracerProvider;
18
33
  tracer;
19
34
  idGenerator;
@@ -23,9 +38,11 @@ class InvocationOtelPlugin {
23
38
  globalIdGeneratorInstalled;
24
39
  durableSampler;
25
40
  tracingEnabled = false;
41
+ externalCompletions = new pluginRegistration.ExternalCompletions();
26
42
  workflowSpanName;
27
43
  enrichLogger;
28
44
  // Per-invocation state
45
+ invocationClock;
29
46
  spanMap = new Map();
30
47
  spanStack = [];
31
48
  invocationSpan;
@@ -41,6 +58,9 @@ class InvocationOtelPlugin {
41
58
  // Workflow span can be backdated to it; the now() fallback is taken here (not
42
59
  // at onInvocationEnd, where it would land after the span's own end time).
43
60
  executionStartTimestamp;
61
+ // Only a backend timestamp can define a retry-stable, zero-duration anchor.
62
+ syntheticRootAnchorTimestamp;
63
+ syntheticRootMaterialized = false;
44
64
  executionArn = "";
45
65
  executionTraceId = "";
46
66
  executionTraceFlags = 0;
@@ -48,18 +68,18 @@ class InvocationOtelPlugin {
48
68
  constructor(config) {
49
69
  const instrumentationName = config?.instrumentationName ?? DEFAULT_INSTRUMENTATION_NAME;
50
70
  this.instrumentationName = instrumentationName;
51
- this.idGenerator = new globalIdGenerator.DeterministicIdGenerator();
52
- this.contextExtractor = config?.contextExtractor ?? globalIdGenerator.xRayContextExtractor;
71
+ this.idGenerator = new pluginRegistration.DeterministicIdGenerator();
72
+ this.contextExtractor = config?.contextExtractor ?? pluginRegistration.xRayContextExtractor;
53
73
  this.workflowSpanName = config?.workflowSpanName ?? "Workflow";
54
74
  this.enrichLogger = config?.enrichLogger ?? true;
55
- const { tracerProvider, usesGlobalProvider } = globalIdGenerator.createTracerProvider(config, this.idGenerator);
75
+ const { tracerProvider, usesGlobalProvider } = pluginRegistration.createTracerProvider(config, this.idGenerator);
56
76
  this.tracerProvider = tracerProvider;
57
77
  this.usesGlobalProvider = usesGlobalProvider;
58
78
  this.tracer = this.tracerProvider.getTracer(instrumentationName);
59
- this.durableSampler = globalIdGenerator.tryInstallDurableSampler(this.tracer);
79
+ this.durableSampler = pluginRegistration.tryInstallDurableSampler(this.tracer);
60
80
  this.globalIdGeneratorInstalled = !this.usesGlobalProvider;
61
81
  if (this.usesGlobalProvider) {
62
- const installedIdGenerator = globalIdGenerator.tryInstallGlobalIdGenerator(this.tracer);
82
+ const installedIdGenerator = pluginRegistration.tryInstallGlobalIdGenerator(this.tracer);
63
83
  if (installedIdGenerator) {
64
84
  this.idGenerator = installedIdGenerator;
65
85
  this.globalIdGeneratorInstalled = true;
@@ -72,6 +92,10 @@ class InvocationOtelPlugin {
72
92
  if (!this.tracingEnabled) {
73
93
  return;
74
94
  }
95
+ // Match the epoch/elapsed-time model of an ordinary OTel span, but share
96
+ // this anchor across all live spans in the invocation. Never use the
97
+ // process timeOrigin: it can differ from the current wall-clock epoch.
98
+ this.invocationClock = captureInvocationClock();
75
99
  // 1. Store the execution ARN
76
100
  this.executionArn = info.executionArn;
77
101
  // 2. Invoke the context extractor
@@ -83,8 +107,8 @@ class InvocationOtelPlugin {
83
107
  // parent, else a synthetic execution root. A live ambient span is not used
84
108
  // as the ancestor (its trace is not stable across reinvocations); the
85
109
  // Invocation span may still parent onto a same-trace ambient span below.
86
- const canonical = globalIdGenerator.canonicalTraceId(extractedContext, info.executionArn, info.executionStartTimestamp);
87
- const execTraceContext = globalIdGenerator.resolveExecutionTraceContext(extractedContext, canonical, info.executionArn, () => globalIdGenerator.rootSamplingDecision(this.tracer, canonical, this.workflowSpanName, {
110
+ const canonical = pluginRegistration.canonicalTraceId(extractedContext, info.executionArn, info.executionStartTimestamp);
111
+ const execTraceContext = pluginRegistration.resolveExecutionTraceContext(extractedContext, canonical, info.executionArn, () => pluginRegistration.rootSamplingDecision(this.tracer, canonical, this.workflowSpanName, {
88
112
  "durable.execution.arn": info.executionArn,
89
113
  }));
90
114
  this.executionTraceId = canonical;
@@ -104,12 +128,16 @@ class InvocationOtelPlugin {
104
128
  // single real span is created and ended once, at the terminal invocation
105
129
  // (see onInvocationEnd). It carries the execution sampled bit so a
106
130
  // parent-based sampler stays consistent with the eventual root.
107
- const workflowSpanId = globalIdGenerator.deriveWorkflowSpanId(info.executionArn);
131
+ const workflowSpanId = pluginRegistration.deriveWorkflowSpanId(info.executionArn);
108
132
  this.executionAncestor = execTraceContext.executionAncestor;
133
+ // Snapshot the Date: another hook must not be able to alter a later copy
134
+ // of this invocation's anchor by mutating the input object.
135
+ this.syntheticRootAnchorTimestamp = info.executionStartTimestamp
136
+ ? new Date(info.executionStartTimestamp.getTime())
137
+ : undefined;
109
138
  this.executionStartTimestamp =
110
- info.executionStartTimestamp ??
111
- this.executionStartTimestamp ??
112
- new Date();
139
+ this.syntheticRootAnchorTimestamp ??
140
+ new Date(this.invocationClock.epochMillis);
113
141
  this.workflowSpan = api.trace.wrapSpanContext({
114
142
  traceId: this.executionTraceId,
115
143
  spanId: workflowSpanId,
@@ -132,8 +160,24 @@ class InvocationOtelPlugin {
132
160
  "durable.execution.arn": info.executionArn,
133
161
  "durable.invocation.first": info.isFirstInvocation,
134
162
  },
135
- startTime: core.hrTime(),
163
+ startTime: this.liveTimestamp(),
136
164
  }, invocationParentContext);
165
+ this.externalCompletions.observe(info.updatedOperations);
166
+ // Each sampled invocation can recover an earlier undelivered anchor. An
167
+ // opaque tracer retains terminal-only creation: without the sampler wrapper,
168
+ // an early anchor would independently query its hidden sampler again.
169
+ if (this.durableSampler && this.syntheticRootAnchorTimestamp) {
170
+ this.createSyntheticRoot()?.end(this.syntheticRootAnchorTimestamp);
171
+ }
172
+ }
173
+ providePropagationMetadata(input) {
174
+ if (!this.tracingEnabled ||
175
+ !this.invocationSpan ||
176
+ !this.workflowSpan ||
177
+ !pluginRegistration.isDurableSamplerInstalled(this.tracer, this.durableSampler)) {
178
+ return undefined;
179
+ }
180
+ return pluginRegistration.createPropagationMetadata(input, this.executionArn, this.executionTraceId, this.executionTraceFlags);
137
181
  }
138
182
  wrapInvocation(_info, fn) {
139
183
  if (!this.tracingEnabled || !this.invocationSpan) {
@@ -146,7 +190,12 @@ class InvocationOtelPlugin {
146
190
  this.resetInvocationState();
147
191
  return;
148
192
  }
149
- const endTime = core.hrTime();
193
+ // Prefer normal lifecycle hooks. Flush fresh external completions before
194
+ // cleanup even when the workflow deferred reading them until another replay.
195
+ for (const operation of this.externalCompletions.pending.values()) {
196
+ await this.onOperationEnd({ ...operation, isReplay: false });
197
+ }
198
+ const endTime = this.liveTimestamp();
150
199
  // 1. End all spans in the stack in reverse order
151
200
  while (this.spanStack.length > 0) {
152
201
  const span = this.spanStack.pop();
@@ -193,7 +242,10 @@ class InvocationOtelPlugin {
193
242
  if (this.executionSamplingDecision === sdkTraceNode.SamplingDecision.RECORD_AND_SAMPLED &&
194
243
  this.executionAncestor &&
195
244
  (info.status === "SUCCEEDED" || info.status === "FAILED")) {
196
- const workflowSpanId = globalIdGenerator.deriveWorkflowSpanId(this.executionArn);
245
+ // Keep terminal-only fallback for providers without an early anchor.
246
+ // An anchor already materialized in this invocation is not emitted twice.
247
+ const syntheticRootSpan = this.createSyntheticRoot();
248
+ const workflowSpanId = pluginRegistration.deriveWorkflowSpanId(this.executionArn);
197
249
  const executionAncestorContext = api.trace.setSpanContext(api.ROOT_CONTEXT, this.executionAncestor);
198
250
  const workflowSpan = this.idGenerator.withIds({ spanId: workflowSpanId }, () => this.startSpan(this.workflowSpanName, {
199
251
  kind: api.SpanKind.INTERNAL,
@@ -213,9 +265,10 @@ class InvocationOtelPlugin {
213
265
  workflowSpan.setStatus({ code: api.SpanStatusCode.OK });
214
266
  }
215
267
  workflowSpan.end(endTime);
268
+ syntheticRootSpan?.end(this.syntheticRootAnchorTimestamp ?? endTime);
216
269
  }
217
- // Non-terminal (PENDING/RETRYING): no real Workflow span is created, so
218
- // nothing to end — the identity was only ever a non-recording context.
270
+ // PENDING/RETRYING never materializes Workflow. A sampled invocation may
271
+ // already have ended its stable synthetic anchor before customer code ran.
219
272
  // 4. Force flush the tracer provider
220
273
  if ("forceFlush" in this.tracerProvider) {
221
274
  try {
@@ -228,6 +281,30 @@ class InvocationOtelPlugin {
228
281
  // 5. Clear all per-invocation state
229
282
  this.resetInvocationState();
230
283
  }
284
+ /** Creates at most one SDK-owned root per invocation; the caller ends it. */
285
+ createSyntheticRoot() {
286
+ if (this.syntheticRootMaterialized ||
287
+ this.executionSamplingDecision !== sdkTraceNode.SamplingDecision.RECORD_AND_SAMPLED ||
288
+ !this.executionAncestor ||
289
+ this.executionAncestor.isRemote) {
290
+ return undefined;
291
+ }
292
+ const span = this.idGenerator.withIds({
293
+ traceId: this.executionTraceId,
294
+ spanId: this.executionAncestor.spanId,
295
+ }, () => this.startSpan("DurableExecutionRoot", {
296
+ kind: api.SpanKind.INTERNAL,
297
+ attributes: {
298
+ "durable.execution.synthetic_root": true,
299
+ "durable.execution.arn": this.executionArn,
300
+ },
301
+ startTime: this.syntheticRootAnchorTimestamp ??
302
+ this.executionStartTimestamp ??
303
+ new Date(),
304
+ }, api.ROOT_CONTEXT));
305
+ this.syntheticRootMaterialized = true;
306
+ return span;
307
+ }
231
308
  ensureGlobalIdGeneratorInstalled() {
232
309
  if (!this.usesGlobalProvider || this.globalIdGeneratorInstalled) {
233
310
  return true;
@@ -237,8 +314,8 @@ class InvocationOtelPlugin {
237
314
  // again at invocation start, after preload initialization has completed.
238
315
  this.tracerProvider = api.trace.getTracerProvider();
239
316
  this.tracer = this.tracerProvider.getTracer(this.instrumentationName);
240
- this.durableSampler = globalIdGenerator.tryInstallDurableSampler(this.tracer);
241
- const installedIdGenerator = globalIdGenerator.tryInstallGlobalIdGenerator(this.tracer);
317
+ this.durableSampler = pluginRegistration.tryInstallDurableSampler(this.tracer);
318
+ const installedIdGenerator = pluginRegistration.tryInstallGlobalIdGenerator(this.tracer);
242
319
  if (installedIdGenerator) {
243
320
  this.idGenerator = installedIdGenerator;
244
321
  this.globalIdGeneratorInstalled = true;
@@ -247,13 +324,20 @@ class InvocationOtelPlugin {
247
324
  console.warn("[InvocationOtelPlugin] Expected a compatible OpenTelemetry SDK tracer at invocation start; telemetry is disabled for this invocation. Ensure the OpenTelemetry SDK is configured before invocation start.");
248
325
  return false;
249
326
  }
327
+ liveTimestamp() {
328
+ return readInvocationClock(this.invocationClock);
329
+ }
250
330
  resetInvocationState() {
331
+ this.externalCompletions.clear();
332
+ this.invocationClock = undefined;
251
333
  this.spanMap.clear();
252
334
  this.spanStack = [];
253
335
  this.invocationSpan = undefined;
254
336
  this.workflowSpan = undefined;
255
337
  this.executionAncestor = undefined;
256
338
  this.executionStartTimestamp = undefined;
339
+ this.syntheticRootAnchorTimestamp = undefined;
340
+ this.syntheticRootMaterialized = false;
257
341
  this.executionArn = "";
258
342
  this.executionTraceId = "";
259
343
  this.executionTraceFlags = 0;
@@ -274,14 +358,16 @@ class InvocationOtelPlugin {
274
358
  invocationParentContext(executionAncestor, canonical) {
275
359
  const activeContext = api.context.active();
276
360
  const ambient = api.trace.getSpanContext(activeContext);
277
- // Adopt the ambient span as the Invocation parent only when it is on the
278
- // execution trace AND carries the same sampled bit as the execution
279
- // ancestor. Matching the trace ID alone is not enough: if the ambient span's
361
+ // Adopt the ambient span only in propagated-parent mode, when it is on
362
+ // the execution trace AND carries the same sampled bit as the execution
363
+ // ancestor. Synthetic fallback keeps Workflow and Invocation on the same
364
+ // SDK-owned root. Matching the trace ID alone is not enough: if the ambient span's
280
365
  // sampled bit differs, the Invocation span would inherit the ambient
281
366
  // decision and could export after an explicit Sampled=0, or drop after the
282
367
  // root sampler chose sampled. On a mismatch, fall back to the execution
283
368
  // ancestor, which carries the authoritative decision.
284
- if (ambient &&
369
+ if (executionAncestor.isRemote &&
370
+ ambient &&
285
371
  api.isSpanContextValid(ambient) &&
286
372
  ambient.traceId === canonical &&
287
373
  (ambient.traceFlags & api.TraceFlags.SAMPLED) ===
@@ -307,7 +393,7 @@ class InvocationOtelPlugin {
307
393
  }
308
394
  const initialContext = {
309
395
  traceId: this.executionTraceId,
310
- spanId: globalIdGenerator.deriveSpanIdFromOperationId(operationId, this.executionArn),
396
+ spanId: pluginRegistration.deriveSpanIdFromOperationId(operationId, this.executionArn),
311
397
  traceFlags: this.executionTraceFlags,
312
398
  isRemote: false,
313
399
  };
@@ -326,13 +412,12 @@ class InvocationOtelPlugin {
326
412
  if (info.isReplay && this.spanMap.has(info.id)) {
327
413
  return;
328
414
  }
329
- // Operation, continuation, and attempt spans use explicit monotonic
330
- // timestamps rather than durable start/end timestamps. Durable timestamps
331
- // can predate this invocation, while letting each span use the tracer's
332
- // default timestamp can give it an independent wall-clock anchor. A shared
333
- // monotonic clock keeps children inside their parent timing envelopes.
334
- // Only the parentless Workflow span keeps a backdated start.
335
- const deterministicSpanId = globalIdGenerator.deriveSpanIdFromOperationId(info.id, this.executionArn);
415
+ // All live spans use the invocation's wall-anchored monotonic clock, so
416
+ // wall-clock adjustments cannot collapse or inflate their durations.
417
+ // Invocation cleanup shares one end time for open spans. Durable timestamps
418
+ // can predate this invocation and are used only for the backdated Workflow
419
+ // and synthetic execution root starts.
420
+ const deterministicSpanId = pluginRegistration.deriveSpanIdFromOperationId(info.id, this.executionArn);
336
421
  const spanName = info.name ?? info.type;
337
422
  // Resolve parent span: use parentId from map, or fall back to invocation span
338
423
  let parentSpan;
@@ -371,7 +456,7 @@ class InvocationOtelPlugin {
371
456
  }, () => this.startSpan(spanName, {
372
457
  attributes,
373
458
  links: this.workflowLinks(),
374
- startTime: core.hrTime(),
459
+ startTime: this.liveTimestamp(),
375
460
  }, parentContext));
376
461
  }
377
462
  else if (info.type === "CONTEXT" || info.type === "STEP") {
@@ -380,17 +465,10 @@ class InvocationOtelPlugin {
380
465
  // to the reproducible Workflow span, and links back to the initial logical
381
466
  // operation span (deterministic on the execution trace) so the segments
382
467
  // stay correlated across invocations.
383
- //
384
- // WaitForCondition is modeled differently by the OTel conformance
385
- // contract: the resumed operation span keeps only its Workflow link, while
386
- // the non-terminal first polling attempt links back to the first operation
387
- // span once it is known to have completed successfully.
388
468
  span = this.startSpan(spanName, {
389
469
  attributes,
390
- links: info.subType === "WaitForCondition"
391
- ? this.workflowLinks()
392
- : this.replayLinks(info.id),
393
- startTime: core.hrTime(),
470
+ links: this.replayLinks(info.id),
471
+ startTime: this.liveTimestamp(),
394
472
  }, parentContext);
395
473
  }
396
474
  // Push to map and stack
@@ -413,12 +491,10 @@ class InvocationOtelPlugin {
413
491
  if (!this.tracingEnabled) {
414
492
  return;
415
493
  }
416
- // Skip span creation for WAIT, INVOKE, CHAINED_INVOKE, and CALLBACK operations on replay
417
- if (info.isReplay &&
418
- (info.type === "WAIT" ||
419
- info.type === "INVOKE" ||
420
- info.type === "CHAINED_INVOKE" ||
421
- info.type === "CALLBACK")) {
494
+ // Updates and traversal can report the same completion in either order.
495
+ // The set is reset each invocation so failed-invocation redelivery remains
496
+ // eligible, while normal replay never exports a completion a second time.
497
+ if (this.externalCompletions.shouldSkip(info)) {
422
498
  return;
423
499
  }
424
500
  if (this.spanMap.has(info.id)) {
@@ -450,13 +526,13 @@ class InvocationOtelPlugin {
450
526
  code: api.SpanStatusCode.ERROR,
451
527
  message: info.error.message,
452
528
  });
453
- span.recordException(info.error);
529
+ span.recordException(info.error, this.liveTimestamp());
454
530
  }
455
531
  else if (info.status === "SUCCEEDED") {
456
532
  span.setStatus({ code: api.SpanStatusCode.OK });
457
533
  }
458
534
  // End the span
459
- span.end(core.hrTime());
535
+ span.end(this.liveTimestamp());
460
536
  // Remove from map
461
537
  this.spanMap.delete(info.id);
462
538
  // Remove from stack (find by reference)
@@ -465,7 +541,11 @@ class InvocationOtelPlugin {
465
541
  this.spanStack.splice(stackIndex, 1);
466
542
  }
467
543
  }
468
- else if (!info.isReplay) {
544
+ else if (!info.isReplay ||
545
+ this.externalCompletions.pending.has(info.id)) {
546
+ // A fresh checkpoint completion can be replay-marked: updated IDs were
547
+ // captured before this invocation received the update. Export it while
548
+ // its child parent is still active, without changing the SDK's info.
469
549
  // Operation was started in a prior invocation — create Continuation_Span
470
550
  const spanName = info.name ?? info.type;
471
551
  // Resolve parent span: use parentId from map (e.g. the CONTEXT span for
@@ -507,7 +587,7 @@ class InvocationOtelPlugin {
507
587
  // deterministic on the execution trace, so the segments of one logical
508
588
  // operation stay correlated across invocations.
509
589
  links: this.replayLinks(info.id),
510
- startTime: core.hrTime(),
590
+ startTime: this.liveTimestamp(),
511
591
  }, parentContext);
512
592
  // Record error if present; otherwise stamp explicit OK ONLY on a
513
593
  // SUCCEEDED terminal status (matches Python OTel plugin #604). This is
@@ -520,14 +600,15 @@ class InvocationOtelPlugin {
520
600
  code: api.SpanStatusCode.ERROR,
521
601
  message: info.error.message,
522
602
  });
523
- continuationSpan.recordException(info.error);
603
+ continuationSpan.recordException(info.error, this.liveTimestamp());
524
604
  }
525
605
  else if (info.status === "SUCCEEDED") {
526
606
  continuationSpan.setStatus({ code: api.SpanStatusCode.OK });
527
607
  }
528
608
  // Immediately end
529
- continuationSpan.end(core.hrTime());
609
+ continuationSpan.end(this.liveTimestamp());
530
610
  }
611
+ this.externalCompletions.markExported(info);
531
612
  }
532
613
  async onOperationAttemptStart(info) {
533
614
  if (!this.tracingEnabled) {
@@ -557,7 +638,7 @@ class InvocationOtelPlugin {
557
638
  }
558
639
  const attemptSpan = this.startSpan(spanName, {
559
640
  attributes,
560
- startTime: core.hrTime(),
641
+ startTime: this.liveTimestamp(),
561
642
  }, parentContext);
562
643
  this.spanMap.set(this.attemptSpanKey(info.id, info.attempt), attemptSpan);
563
644
  }
@@ -578,7 +659,7 @@ class InvocationOtelPlugin {
578
659
  const key = this.attemptSpanKey(info.id, info.attempt);
579
660
  const attemptSpan = this.spanMap.get(key);
580
661
  if (attemptSpan) {
581
- attemptSpan.addLinks(this.attemptLinks(info));
662
+ attemptSpan.addLinks(this.workflowLinks());
582
663
  attemptSpan.setAttribute("durable.attempt.outcome", info.outcome);
583
664
  if (info.outcome === "FAILED") {
584
665
  attemptSpan.setStatus({
@@ -586,19 +667,21 @@ class InvocationOtelPlugin {
586
667
  message: info.error?.message ?? "Attempt failed",
587
668
  });
588
669
  if (info.error) {
589
- attemptSpan.recordException(info.error);
670
+ attemptSpan.recordException(info.error, this.liveTimestamp());
590
671
  }
591
672
  }
592
673
  else {
593
674
  // Non-failed attempt: stamp explicit OK (matches Python OTel #604).
594
675
  attemptSpan.setStatus({ code: api.SpanStatusCode.OK });
595
676
  }
596
- attemptSpan.end(core.hrTime());
677
+ attemptSpan.end(this.liveTimestamp());
597
678
  this.spanMap.delete(key);
598
679
  }
599
680
  }
600
- async onOperationChange(_info) {
601
- // No-op for this plugin
681
+ async onOperationChange(info) {
682
+ if (this.tracingEnabled) {
683
+ this.externalCompletions.observe(info.updatedOperations);
684
+ }
602
685
  }
603
686
  enrichLogContext() {
604
687
  if (!this.tracingEnabled || !this.enrichLogger) {
@@ -646,14 +729,6 @@ class InvocationOtelPlugin {
646
729
  links.push(...this.workflowLinks());
647
730
  return links;
648
731
  }
649
- attemptLinks(info) {
650
- if (info.subType === "WaitForCondition" &&
651
- info.attempt === 1 &&
652
- info.outcome === "SUCCEEDED") {
653
- return this.replayLinks(info.id);
654
- }
655
- return this.workflowLinks();
656
- }
657
732
  attemptSpanKey(operationId, attempt) {
658
733
  return `attempt:${operationId}:${attempt}`;
659
734
  }
@@ -1 +1 @@
1
- {"version":3,"file":"invocation-plugin.js","sources":["../src/invocation-plugin.ts"],"names":["SamplingDecision","DeterministicIdGenerator","xRayContextExtractor","createTracerProvider","tryInstallDurableSampler","tryInstallGlobalIdGenerator","canonicalTraceId","resolveExecutionTraceContext","rootSamplingDecision","deriveWorkflowSpanId","trace","SpanKind","hrTime","context","SpanStatusCode","ROOT_CONTEXT","isSpanContextValid","TraceFlags","deriveSpanIdFromOperationId"],"mappings":"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"}
1
+ {"version":3,"file":"invocation-plugin.js","sources":["../src/invocation-clock.ts","../src/invocation-plugin.ts"],"names":["otperformance","millisToHrTime","PLUGIN_REGISTRATION","ExternalCompletions","SamplingDecision","DeterministicIdGenerator","xRayContextExtractor","createTracerProvider","tryInstallDurableSampler","tryInstallGlobalIdGenerator","canonicalTraceId","resolveExecutionTraceContext","rootSamplingDecision","deriveWorkflowSpanId","trace","SpanKind","isDurableSamplerInstalled","createPropagationMetadata","context","SpanStatusCode","ROOT_CONTEXT","isSpanContextValid","TraceFlags","deriveSpanIdFromOperationId"],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var executionPlugin = require('./execution-plugin.js');
4
4
  require('@opentelemetry/api');
5
- require('./global-id-generator.js');
5
+ require('./plugin-registration.js');
6
6
  require('@opentelemetry/sdk-trace-node');
7
7
  require('node:async_hooks');
8
8
  require('node:crypto');
@@ -1 +1 @@
1
- {"version":3,"file":"otel-execution.js","sources":["../src/execution-plugin-provider.ts"],"names":["ExecutionOtelPlugin"],"mappings":";;;;;;;;;AAGO,MAAM,8BAA8B,GAAG;AAC5C,IAAA,gBAAgB,EAAE,CAAC;AACnB,IAAA,UAAU,EAAEA,mCAAmB;AAC/B,IAAA,YAAY,EAAE,MAAM,IAAIA,mCAAmB,EAAE;;;;;"}
1
+ {"version":3,"file":"otel-execution.js","sources":["../src/execution-plugin-provider.ts"],"names":["ExecutionOtelPlugin"],"mappings":";;;;;;;;;AAGO,MAAM,8BAA8B,GAAG;AAC5C,IAAA,gBAAgB,EAAE,CAAC;AACnB,IAAA,UAAU,EAAEA,mCAAmB;AAC/B,IAAA,YAAY,EAAE,MAAM,IAAIA,mCAAmB,EAAE;;;"}
@@ -4,7 +4,7 @@ var invocationPlugin = require('./invocation-plugin.js');
4
4
  require('@opentelemetry/api');
5
5
  require('@opentelemetry/core');
6
6
  require('@opentelemetry/sdk-trace-node');
7
- require('./global-id-generator.js');
7
+ require('./plugin-registration.js');
8
8
  require('node:async_hooks');
9
9
  require('node:crypto');
10
10
 
@@ -1 +1 @@
1
- {"version":3,"file":"otel-invocation.js","sources":["../src/invocation-plugin-provider.ts"],"names":["InvocationOtelPlugin"],"mappings":";;;;;;;;;;AAGO,MAAM,8BAA8B,GAAG;AAC5C,IAAA,gBAAgB,EAAE,CAAC;AACnB,IAAA,UAAU,EAAEA,qCAAoB;AAChC,IAAA,YAAY,EAAE,MAAM,IAAIA,qCAAoB,EAAE;;;;;"}
1
+ {"version":3,"file":"otel-invocation.js","sources":["../src/invocation-plugin-provider.ts"],"names":["InvocationOtelPlugin"],"mappings":";;;;;;;;;;AAGO,MAAM,8BAA8B,GAAG;AAC5C,IAAA,gBAAgB,EAAE,CAAC;AACnB,IAAA,UAAU,EAAEA,qCAAoB;AAChC,IAAA,YAAY,EAAE,MAAM,IAAIA,qCAAoB,EAAE;;;"}