@cogitator-ai/workflows 0.5.16 → 0.6.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 (146) hide show
  1. package/README.md +339 -772
  2. package/dist/builder.d.ts +5 -4
  3. package/dist/builder.d.ts.map +1 -1
  4. package/dist/builder.js +61 -77
  5. package/dist/builder.js.map +1 -1
  6. package/dist/checkpoint.d.ts.map +1 -1
  7. package/dist/checkpoint.js +23 -16
  8. package/dist/checkpoint.js.map +1 -1
  9. package/dist/executor.d.ts +34 -2
  10. package/dist/executor.d.ts.map +1 -1
  11. package/dist/executor.js +222 -37
  12. package/dist/executor.js.map +1 -1
  13. package/dist/human/approval-store.d.ts +0 -4
  14. package/dist/human/approval-store.d.ts.map +1 -1
  15. package/dist/human/approval-store.js +50 -38
  16. package/dist/human/approval-store.js.map +1 -1
  17. package/dist/human/human-node.d.ts.map +1 -1
  18. package/dist/human/human-node.js +6 -2
  19. package/dist/human/human-node.js.map +1 -1
  20. package/dist/human/notifiers.d.ts +0 -3
  21. package/dist/human/notifiers.d.ts.map +1 -1
  22. package/dist/human/notifiers.js +67 -25
  23. package/dist/human/notifiers.js.map +1 -1
  24. package/dist/index.d.ts +3 -2
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +2 -2
  27. package/dist/index.js.map +1 -1
  28. package/dist/manager/scheduler.d.ts.map +1 -1
  29. package/dist/manager/scheduler.js +6 -2
  30. package/dist/manager/scheduler.js.map +1 -1
  31. package/dist/manager/workflow-manager.d.ts +11 -1
  32. package/dist/manager/workflow-manager.d.ts.map +1 -1
  33. package/dist/manager/workflow-manager.js +53 -8
  34. package/dist/manager/workflow-manager.js.map +1 -1
  35. package/dist/nodes/adapters.d.ts +60 -0
  36. package/dist/nodes/adapters.d.ts.map +1 -0
  37. package/dist/nodes/adapters.js +138 -0
  38. package/dist/nodes/adapters.js.map +1 -0
  39. package/dist/nodes/agent.d.ts +0 -15
  40. package/dist/nodes/agent.d.ts.map +1 -1
  41. package/dist/nodes/agent.js +17 -16
  42. package/dist/nodes/agent.js.map +1 -1
  43. package/dist/nodes/base.d.ts +11 -8
  44. package/dist/nodes/base.d.ts.map +1 -1
  45. package/dist/nodes/base.js +0 -3
  46. package/dist/nodes/base.js.map +1 -1
  47. package/dist/nodes/function.d.ts +0 -18
  48. package/dist/nodes/function.d.ts.map +1 -1
  49. package/dist/nodes/function.js +0 -9
  50. package/dist/nodes/function.js.map +1 -1
  51. package/dist/nodes/index.d.ts +1 -3
  52. package/dist/nodes/index.d.ts.map +1 -1
  53. package/dist/nodes/index.js +1 -3
  54. package/dist/nodes/index.js.map +1 -1
  55. package/dist/nodes/tool.d.ts +1 -12
  56. package/dist/nodes/tool.d.ts.map +1 -1
  57. package/dist/nodes/tool.js +4 -9
  58. package/dist/nodes/tool.js.map +1 -1
  59. package/dist/observability/exporters.d.ts +4 -4
  60. package/dist/observability/exporters.d.ts.map +1 -1
  61. package/dist/observability/exporters.js +25 -9
  62. package/dist/observability/exporters.js.map +1 -1
  63. package/dist/observability/index.d.ts +1 -1
  64. package/dist/observability/index.d.ts.map +1 -1
  65. package/dist/observability/index.js +1 -1
  66. package/dist/observability/index.js.map +1 -1
  67. package/dist/observability/metrics.d.ts +0 -21
  68. package/dist/observability/metrics.d.ts.map +1 -1
  69. package/dist/observability/metrics.js +22 -26
  70. package/dist/observability/metrics.js.map +1 -1
  71. package/dist/observability/tracer.d.ts +9 -69
  72. package/dist/observability/tracer.d.ts.map +1 -1
  73. package/dist/observability/tracer.js +82 -125
  74. package/dist/observability/tracer.js.map +1 -1
  75. package/dist/patterns/index.d.ts +0 -13
  76. package/dist/patterns/index.d.ts.map +1 -1
  77. package/dist/patterns/index.js +0 -13
  78. package/dist/patterns/index.js.map +1 -1
  79. package/dist/patterns/map-reduce.d.ts +0 -129
  80. package/dist/patterns/map-reduce.d.ts.map +1 -1
  81. package/dist/patterns/map-reduce.js +63 -92
  82. package/dist/patterns/map-reduce.js.map +1 -1
  83. package/dist/saga/circuit-breaker.d.ts.map +1 -1
  84. package/dist/saga/circuit-breaker.js +5 -2
  85. package/dist/saga/circuit-breaker.js.map +1 -1
  86. package/dist/saga/compensation.d.ts +5 -2
  87. package/dist/saga/compensation.d.ts.map +1 -1
  88. package/dist/saga/compensation.js +49 -44
  89. package/dist/saga/compensation.js.map +1 -1
  90. package/dist/saga/dead-letter.d.ts +3 -0
  91. package/dist/saga/dead-letter.d.ts.map +1 -1
  92. package/dist/saga/dead-letter.js +11 -5
  93. package/dist/saga/dead-letter.js.map +1 -1
  94. package/dist/saga/idempotency.d.ts +1 -1
  95. package/dist/saga/idempotency.d.ts.map +1 -1
  96. package/dist/saga/idempotency.js +46 -13
  97. package/dist/saga/idempotency.js.map +1 -1
  98. package/dist/saga/retry.d.ts +5 -0
  99. package/dist/saga/retry.d.ts.map +1 -1
  100. package/dist/saga/retry.js +48 -29
  101. package/dist/saga/retry.js.map +1 -1
  102. package/dist/scheduler.d.ts +16 -1
  103. package/dist/scheduler.d.ts.map +1 -1
  104. package/dist/scheduler.js +100 -9
  105. package/dist/scheduler.js.map +1 -1
  106. package/dist/subworkflows/index.d.ts +0 -13
  107. package/dist/subworkflows/index.d.ts.map +1 -1
  108. package/dist/subworkflows/index.js +0 -13
  109. package/dist/subworkflows/index.js.map +1 -1
  110. package/dist/subworkflows/parallel-subworkflows.d.ts +1 -77
  111. package/dist/subworkflows/parallel-subworkflows.d.ts.map +1 -1
  112. package/dist/subworkflows/parallel-subworkflows.js +12 -40
  113. package/dist/subworkflows/parallel-subworkflows.js.map +1 -1
  114. package/dist/subworkflows/subworkflow-node.d.ts +1 -82
  115. package/dist/subworkflows/subworkflow-node.d.ts.map +1 -1
  116. package/dist/subworkflows/subworkflow-node.js +42 -41
  117. package/dist/subworkflows/subworkflow-node.js.map +1 -1
  118. package/dist/timers/cron-parser.d.ts.map +1 -1
  119. package/dist/timers/cron-parser.js +32 -10
  120. package/dist/timers/cron-parser.js.map +1 -1
  121. package/dist/timers/timer-manager.d.ts +10 -0
  122. package/dist/timers/timer-manager.d.ts.map +1 -1
  123. package/dist/timers/timer-manager.js +13 -0
  124. package/dist/timers/timer-manager.js.map +1 -1
  125. package/dist/timers/timer-node.d.ts.map +1 -1
  126. package/dist/timers/timer-node.js +1 -0
  127. package/dist/timers/timer-node.js.map +1 -1
  128. package/dist/timers/timer-store.d.ts.map +1 -1
  129. package/dist/timers/timer-store.js +16 -10
  130. package/dist/timers/timer-store.js.map +1 -1
  131. package/dist/triggers/cron-trigger.d.ts +6 -5
  132. package/dist/triggers/cron-trigger.d.ts.map +1 -1
  133. package/dist/triggers/cron-trigger.js +52 -18
  134. package/dist/triggers/cron-trigger.js.map +1 -1
  135. package/dist/triggers/rate-limiter.d.ts +4 -0
  136. package/dist/triggers/rate-limiter.d.ts.map +1 -1
  137. package/dist/triggers/rate-limiter.js +10 -1
  138. package/dist/triggers/rate-limiter.js.map +1 -1
  139. package/dist/triggers/trigger-manager.d.ts.map +1 -1
  140. package/dist/triggers/trigger-manager.js +67 -40
  141. package/dist/triggers/trigger-manager.js.map +1 -1
  142. package/dist/triggers/webhook-trigger.d.ts +1 -0
  143. package/dist/triggers/webhook-trigger.d.ts.map +1 -1
  144. package/dist/triggers/webhook-trigger.js +8 -8
  145. package/dist/triggers/webhook-trigger.js.map +1 -1
  146. package/package.json +4 -4
@@ -1,18 +1,5 @@
1
- /**
2
- * WorkflowTracer - Distributed tracing for workflow execution
3
- *
4
- * Features:
5
- * - W3C Trace Context propagation
6
- * - Hierarchical span creation (workflow → node → tool)
7
- * - Automatic span lifecycle management
8
- * - Context-aware span attributes
9
- * - Multi-backend export support
10
- */
11
1
  import type { TracingConfig, WorkflowSpan, SpanKind, SpanStatus, SpanLink, TraceContext } from '@cogitator-ai/types';
12
- /**
13
- * Active span context for scoped operations
14
- */
15
- interface SpanScope {
2
+ export interface SpanScope {
16
3
  span: WorkflowSpan;
17
4
  end: (status?: SpanStatus, message?: string) => void;
18
5
  addEvent: (name: string, attributes?: Record<string, unknown>) => void;
@@ -20,91 +7,44 @@ interface SpanScope {
20
7
  setAttributes: (attributes: Record<string, unknown>) => void;
21
8
  recordException: (error: Error) => void;
22
9
  }
23
- /**
24
- * WorkflowTracer - Main tracing class
25
- */
26
10
  export declare class WorkflowTracer {
27
11
  private config;
28
12
  private exporter;
29
- private spanStack;
30
13
  private completedSpans;
31
14
  private currentTraceContext;
32
15
  private baggage;
33
- private sampleDecision;
16
+ private sampleRate;
17
+ private asyncLocalStorage;
18
+ private rootSpanStack;
34
19
  constructor(config?: Partial<TracingConfig>);
35
- /**
36
- * Check if this tracer is sampling
37
- */
38
20
  isSampled(): boolean;
39
- /**
40
- * Set trace context from incoming request headers
41
- */
21
+ private getSpanStack;
42
22
  setContextFromHeaders(headers: Record<string, string>): void;
43
- /**
44
- * Get headers for outgoing request context propagation
45
- */
46
23
  getContextHeaders(): Record<string, string>;
47
- /**
48
- * Set a baggage value
49
- */
50
24
  setBaggage(key: string, value: string): void;
51
- /**
52
- * Get a baggage value
53
- */
54
25
  getBaggage(key: string): string | undefined;
55
- /**
56
- * Get current trace context
57
- */
58
26
  getTraceContext(): TraceContext | null;
59
- /**
60
- * Start a new workflow trace
61
- */
62
27
  startWorkflowSpan(workflowName: string, workflowId: string, runId: string, attributes?: Record<string, unknown>): SpanScope;
63
- /**
64
- * Start a node execution span
65
- */
66
28
  startNodeSpan(nodeName: string, nodeType: string, attributes?: Record<string, unknown>): SpanScope;
67
- /**
68
- * Start a tool execution span
69
- */
70
29
  startToolSpan(toolName: string, attributes?: Record<string, unknown>): SpanScope;
71
- /**
72
- * Start a custom span
73
- */
74
30
  startSpan(name: string, kind?: SpanKind, attributes?: Record<string, unknown>): SpanScope;
75
31
  /**
76
- * Create a span scope with lifecycle methods
32
+ * Run a function within an isolated async span context.
33
+ * Concurrent branches each get their own span stack, preventing
34
+ * parent-child corruption in parallel DAG nodes.
77
35
  */
36
+ runInContext<T>(fn: () => T): T;
78
37
  private createSpanScope;
79
- /**
80
- * Add a link between spans
81
- */
82
38
  addLink(span: WorkflowSpan, link: SpanLink): void;
83
- /**
84
- * Get current active span
85
- */
86
39
  getCurrentSpan(): WorkflowSpan | undefined;
87
- /**
88
- * Flush completed spans to exporter
89
- */
90
40
  flush(): Promise<void>;
91
- /**
92
- * Shutdown tracer and flush remaining spans
93
- */
94
41
  shutdown(): Promise<void>;
95
- /**
96
- * Run a function with automatic span creation
97
- */
98
42
  trace<T>(name: string, fn: (scope: SpanScope) => Promise<T>, options?: {
99
43
  kind?: SpanKind;
100
44
  attributes?: Record<string, unknown>;
101
45
  }): Promise<T>;
102
46
  }
103
- /**
104
- * Create a tracer instance
105
- */
106
47
  export declare function createTracer(config?: Partial<TracingConfig>): WorkflowTracer;
107
48
  export declare function getGlobalTracer(): WorkflowTracer;
108
49
  export declare function setGlobalTracer(tracer: WorkflowTracer): void;
109
- export {};
110
50
  //# sourceMappingURL=tracer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../src/observability/tracer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,YAAY,EAEb,MAAM,qBAAqB,CAAC;AA6F7B;;GAEG;AACH,UAAU,SAAS;IACjB,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACvE,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD,aAAa,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IAC7D,eAAe,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACzC;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,cAAc,CAAQ;gBAElB,MAAM,GAAE,OAAO,CAAC,aAAa,CAAM;IA2B/C;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAiB5D;;OAEG;IACH,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAkB3C;;OAEG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAI5C;;OAEG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI3C;;OAEG;IACH,eAAe,IAAI,YAAY,GAAG,IAAI;IAItC;;OAEG;IACH,iBAAiB,CACf,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,SAAS;IAqCZ;;OAEG;IACH,aAAa,CACX,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,SAAS;IAiCZ;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IA0BhF;;OAEG;IACH,SAAS,CACP,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,QAAqB,EAC3B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,SAAS;IAuBZ;;OAEG;IACH,OAAO,CAAC,eAAe;IA4DvB;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI;IAIjD;;OAEG;IACH,cAAc,IAAI,YAAY,GAAG,SAAS;IAI1C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAW5B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAK/B;;OAEG;IACG,KAAK,CAAC,CAAC,EACX,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,EACpC,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,QAAQ,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACtC,GACA,OAAO,CAAC,CAAC,CAAC;CAad;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,cAAc,CAE5E;AAOD,wBAAgB,eAAe,IAAI,cAAc,CAKhD;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAE5D"}
1
+ {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../src/observability/tracer.ts"],"names":[],"mappings":"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"}
@@ -1,50 +1,28 @@
1
- /**
2
- * WorkflowTracer - Distributed tracing for workflow execution
3
- *
4
- * Features:
5
- * - W3C Trace Context propagation
6
- * - Hierarchical span creation (workflow → node → tool)
7
- * - Automatic span lifecycle management
8
- * - Context-aware span attributes
9
- * - Multi-backend export support
10
- */
11
- import { nanoid } from 'nanoid';
1
+ import { randomBytes } from 'node:crypto';
2
+ import { AsyncLocalStorage } from 'node:async_hooks';
12
3
  import { createSpanExporter, NoopSpanExporter } from './exporters.js';
13
4
  import { TRACE_PARENT_HEADER, TRACE_STATE_HEADER, BAGGAGE_HEADER, WORKFLOW_NAME, WORKFLOW_ID, WORKFLOW_RUN_ID, SERVICE_NAME, SERVICE_VERSION, } from './span-attributes.js';
14
5
  const TRACE_VERSION = '00';
15
6
  const DEFAULT_SAMPLE_RATE = 1.0;
16
- /**
17
- * Generate a random trace ID (32 hex chars)
18
- */
7
+ const HEX_RE = /^[0-9a-f]+$/;
19
8
  function generateTraceId() {
20
- return nanoid(16)
21
- .split('')
22
- .map((c) => c.charCodeAt(0).toString(16).padStart(2, '0'))
23
- .join('')
24
- .slice(0, 32);
9
+ return randomBytes(16).toString('hex');
25
10
  }
26
- /**
27
- * Generate a random span ID (16 hex chars)
28
- */
29
11
  function generateSpanId() {
30
- return nanoid(8)
31
- .split('')
32
- .map((c) => c.charCodeAt(0).toString(16).padStart(2, '0'))
33
- .join('')
34
- .slice(0, 16);
12
+ return randomBytes(8).toString('hex');
35
13
  }
36
- /**
37
- * Parse W3C traceparent header
38
- * Format: {version}-{trace-id}-{parent-id}-{trace-flags}
39
- */
40
14
  function parseTraceParent(header) {
41
15
  const parts = header.split('-');
42
16
  if (parts.length !== 4)
43
17
  return null;
44
18
  const [version, traceId, spanId, flags] = parts;
45
- if (version !== TRACE_VERSION)
19
+ if (version === 'ff')
46
20
  return null;
47
- if (traceId.length !== 32 || spanId.length !== 16)
21
+ if (version.length !== 2 || !HEX_RE.test(version))
22
+ return null;
23
+ if (traceId.length !== 32 || !HEX_RE.test(traceId) || /^0+$/.test(traceId))
24
+ return null;
25
+ if (spanId.length !== 16 || !HEX_RE.test(spanId) || /^0+$/.test(spanId))
48
26
  return null;
49
27
  return {
50
28
  traceId,
@@ -52,47 +30,39 @@ function parseTraceParent(header) {
52
30
  traceFlags: parseInt(flags, 16),
53
31
  };
54
32
  }
55
- /**
56
- * Format TraceContext to W3C traceparent header
57
- */
58
33
  function formatTraceParent(ctx) {
59
34
  const flags = (ctx.traceFlags ?? 1).toString(16).padStart(2, '0');
60
35
  return `${TRACE_VERSION}-${ctx.traceId}-${ctx.spanId}-${flags}`;
61
36
  }
62
- /**
63
- * Parse W3C baggage header
64
- * Format: key1=value1,key2=value2
65
- */
66
37
  function parseBaggage(header) {
67
38
  const baggage = {};
68
39
  const pairs = header.split(',');
69
40
  for (const pair of pairs) {
70
- const [key, value] = pair.split('=');
41
+ const idx = pair.indexOf('=');
42
+ if (idx === -1)
43
+ continue;
44
+ const key = pair.slice(0, idx).trim();
45
+ const value = pair.slice(idx + 1).trim();
71
46
  if (key && value) {
72
- baggage[key.trim()] = decodeURIComponent(value.trim());
47
+ baggage[key] = decodeURIComponent(value);
73
48
  }
74
49
  }
75
50
  return baggage;
76
51
  }
77
- /**
78
- * Format Baggage to W3C baggage header
79
- */
80
52
  function formatBaggage(baggage) {
81
53
  return Object.entries(baggage)
82
54
  .map(([key, value]) => `${key}=${encodeURIComponent(value)}`)
83
55
  .join(',');
84
56
  }
85
- /**
86
- * WorkflowTracer - Main tracing class
87
- */
88
57
  export class WorkflowTracer {
89
58
  config;
90
59
  exporter;
91
- spanStack = [];
92
60
  completedSpans = [];
93
61
  currentTraceContext = null;
94
62
  baggage = {};
95
- sampleDecision = true;
63
+ sampleRate;
64
+ asyncLocalStorage = new AsyncLocalStorage();
65
+ rootSpanStack = [];
96
66
  constructor(config = {}) {
97
67
  this.config = {
98
68
  enabled: true,
@@ -103,6 +73,7 @@ export class WorkflowTracer {
103
73
  exporter: 'console',
104
74
  ...config,
105
75
  };
76
+ this.sampleRate = this.config.sampleRate ?? 1.0;
106
77
  if (!this.config.enabled) {
107
78
  this.exporter = new NoopSpanExporter();
108
79
  return;
@@ -114,17 +85,16 @@ export class WorkflowTracer {
114
85
  batchSize: this.config.batchSize,
115
86
  flushInterval: this.config.flushInterval,
116
87
  });
117
- this.sampleDecision = Math.random() < (this.config.sampleRate ?? 1.0);
118
88
  }
119
- /**
120
- * Check if this tracer is sampling
121
- */
122
89
  isSampled() {
123
- return this.config.enabled && this.sampleDecision;
90
+ return this.config.enabled;
91
+ }
92
+ getSpanStack() {
93
+ const ctx = this.asyncLocalStorage.getStore();
94
+ if (ctx)
95
+ return ctx.spanStack;
96
+ return this.rootSpanStack;
124
97
  }
125
- /**
126
- * Set trace context from incoming request headers
127
- */
128
98
  setContextFromHeaders(headers) {
129
99
  const traceparent = headers[TRACE_PARENT_HEADER];
130
100
  if (traceparent) {
@@ -139,9 +109,6 @@ export class WorkflowTracer {
139
109
  this.baggage = { ...this.baggage, ...parseBaggage(baggageHeader) };
140
110
  }
141
111
  }
142
- /**
143
- * Get headers for outgoing request context propagation
144
- */
145
112
  getContextHeaders() {
146
113
  const headers = {};
147
114
  if (this.currentTraceContext && this.config.propagateContext) {
@@ -155,28 +122,17 @@ export class WorkflowTracer {
155
122
  }
156
123
  return headers;
157
124
  }
158
- /**
159
- * Set a baggage value
160
- */
161
125
  setBaggage(key, value) {
162
126
  this.baggage[key] = value;
163
127
  }
164
- /**
165
- * Get a baggage value
166
- */
167
128
  getBaggage(key) {
168
129
  return this.baggage[key];
169
130
  }
170
- /**
171
- * Get current trace context
172
- */
173
131
  getTraceContext() {
174
132
  return this.currentTraceContext;
175
133
  }
176
- /**
177
- * Start a new workflow trace
178
- */
179
134
  startWorkflowSpan(workflowName, workflowId, runId, attributes) {
135
+ const sampled = Math.random() < this.sampleRate;
180
136
  const traceId = this.currentTraceContext?.traceId ?? generateTraceId();
181
137
  const spanId = generateSpanId();
182
138
  const parentSpanId = this.currentTraceContext?.spanId;
@@ -203,18 +159,20 @@ export class WorkflowTracer {
203
159
  this.currentTraceContext = {
204
160
  traceId,
205
161
  spanId,
206
- traceFlags: 1,
162
+ traceFlags: sampled ? 1 : 0,
207
163
  };
208
- this.spanStack.push(span);
209
- return this.createSpanScope(span);
164
+ const spanStack = this.getSpanStack();
165
+ spanStack.push(span);
166
+ return this.createSpanScope(span, sampled);
210
167
  }
211
- /**
212
- * Start a node execution span
213
- */
214
168
  startNodeSpan(nodeName, nodeType, attributes) {
215
- const parentSpan = this.spanStack[this.spanStack.length - 1];
169
+ const spanStack = this.getSpanStack();
170
+ const parentSpan = spanStack[spanStack.length - 1];
216
171
  const traceId = parentSpan?.traceId ?? generateTraceId();
217
172
  const spanId = generateSpanId();
173
+ const sampled = this.currentTraceContext
174
+ ? (this.currentTraceContext.traceFlags ?? 0) & 1
175
+ : true;
218
176
  const span = {
219
177
  traceId,
220
178
  spanId,
@@ -234,18 +192,19 @@ export class WorkflowTracer {
234
192
  this.currentTraceContext = {
235
193
  traceId,
236
194
  spanId,
237
- traceFlags: 1,
195
+ traceFlags: sampled ? 1 : 0,
238
196
  };
239
- this.spanStack.push(span);
240
- return this.createSpanScope(span);
197
+ spanStack.push(span);
198
+ return this.createSpanScope(span, Boolean(sampled));
241
199
  }
242
- /**
243
- * Start a tool execution span
244
- */
245
200
  startToolSpan(toolName, attributes) {
246
- const parentSpan = this.spanStack[this.spanStack.length - 1];
201
+ const spanStack = this.getSpanStack();
202
+ const parentSpan = spanStack[spanStack.length - 1];
247
203
  const traceId = parentSpan?.traceId ?? generateTraceId();
248
204
  const spanId = generateSpanId();
205
+ const sampled = this.currentTraceContext
206
+ ? (this.currentTraceContext.traceFlags ?? 0) & 1
207
+ : true;
249
208
  const span = {
250
209
  traceId,
251
210
  spanId,
@@ -261,16 +220,22 @@ export class WorkflowTracer {
261
220
  links: [],
262
221
  status: 'unset',
263
222
  };
264
- this.spanStack.push(span);
265
- return this.createSpanScope(span);
223
+ this.currentTraceContext = {
224
+ traceId,
225
+ spanId,
226
+ traceFlags: sampled ? 1 : 0,
227
+ };
228
+ spanStack.push(span);
229
+ return this.createSpanScope(span, Boolean(sampled));
266
230
  }
267
- /**
268
- * Start a custom span
269
- */
270
231
  startSpan(name, kind = 'internal', attributes) {
271
- const parentSpan = this.spanStack[this.spanStack.length - 1];
232
+ const spanStack = this.getSpanStack();
233
+ const parentSpan = spanStack[spanStack.length - 1];
272
234
  const traceId = parentSpan?.traceId ?? generateTraceId();
273
235
  const spanId = generateSpanId();
236
+ const sampled = this.currentTraceContext
237
+ ? (this.currentTraceContext.traceFlags ?? 0) & 1
238
+ : true;
274
239
  const span = {
275
240
  traceId,
276
241
  spanId,
@@ -283,13 +248,22 @@ export class WorkflowTracer {
283
248
  links: [],
284
249
  status: 'unset',
285
250
  };
286
- this.spanStack.push(span);
287
- return this.createSpanScope(span);
251
+ spanStack.push(span);
252
+ return this.createSpanScope(span, Boolean(sampled));
288
253
  }
289
254
  /**
290
- * Create a span scope with lifecycle methods
255
+ * Run a function within an isolated async span context.
256
+ * Concurrent branches each get their own span stack, preventing
257
+ * parent-child corruption in parallel DAG nodes.
291
258
  */
292
- createSpanScope(span) {
259
+ runInContext(fn) {
260
+ const parentCtx = this.asyncLocalStorage.getStore();
261
+ const newCtx = {
262
+ spanStack: parentCtx ? [...parentCtx.spanStack] : [...this.rootSpanStack],
263
+ };
264
+ return this.asyncLocalStorage.run(newCtx, fn);
265
+ }
266
+ createSpanScope(span, sampled) {
293
267
  return {
294
268
  span,
295
269
  end: (status = 'ok', message) => {
@@ -298,19 +272,22 @@ export class WorkflowTracer {
298
272
  if (message) {
299
273
  span.statusMessage = message;
300
274
  }
301
- const idx = this.spanStack.indexOf(span);
275
+ const spanStack = this.getSpanStack();
276
+ const idx = spanStack.indexOf(span);
302
277
  if (idx !== -1) {
303
- this.spanStack.splice(idx, 1);
278
+ spanStack.splice(idx, 1);
304
279
  }
305
- const parentSpan = this.spanStack[this.spanStack.length - 1];
280
+ const parentSpan = spanStack[spanStack.length - 1];
306
281
  if (parentSpan) {
307
282
  this.currentTraceContext = {
308
283
  traceId: parentSpan.traceId,
309
284
  spanId: parentSpan.spanId,
310
- traceFlags: 1,
285
+ traceFlags: sampled ? 1 : 0,
311
286
  };
312
287
  }
313
- this.completedSpans.push(span);
288
+ if (sampled) {
289
+ this.completedSpans.push(span);
290
+ }
314
291
  },
315
292
  addEvent: (name, attributes) => {
316
293
  span.events.push({
@@ -340,39 +317,25 @@ export class WorkflowTracer {
340
317
  },
341
318
  };
342
319
  }
343
- /**
344
- * Add a link between spans
345
- */
346
320
  addLink(span, link) {
347
321
  span.links.push(link);
348
322
  }
349
- /**
350
- * Get current active span
351
- */
352
323
  getCurrentSpan() {
353
- return this.spanStack[this.spanStack.length - 1];
324
+ const spanStack = this.getSpanStack();
325
+ return spanStack[spanStack.length - 1];
354
326
  }
355
- /**
356
- * Flush completed spans to exporter
357
- */
358
327
  async flush() {
359
- if (!this.isSampled() || this.completedSpans.length === 0) {
328
+ if (this.completedSpans.length === 0) {
360
329
  return;
361
330
  }
362
331
  const spansToExport = [...this.completedSpans];
363
332
  this.completedSpans = [];
364
333
  await this.exporter.export(spansToExport);
365
334
  }
366
- /**
367
- * Shutdown tracer and flush remaining spans
368
- */
369
335
  async shutdown() {
370
336
  await this.flush();
371
337
  await this.exporter.shutdown();
372
338
  }
373
- /**
374
- * Run a function with automatic span creation
375
- */
376
339
  async trace(name, fn, options) {
377
340
  const scope = this.startSpan(name, options?.kind, options?.attributes);
378
341
  try {
@@ -387,15 +350,9 @@ export class WorkflowTracer {
387
350
  }
388
351
  }
389
352
  }
390
- /**
391
- * Create a tracer instance
392
- */
393
353
  export function createTracer(config) {
394
354
  return new WorkflowTracer(config);
395
355
  }
396
- /**
397
- * Global tracer instance for convenience
398
- */
399
356
  let globalTracer = null;
400
357
  export function getGlobalTracer() {
401
358
  if (!globalTracer) {
@@ -1 +1 @@
1
- {"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../src/observability/tracer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../src/observability/tracer.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,2 @@
1
- /**
2
- * @cogitator-ai/workflows - Patterns module
3
- *
4
- * Advanced workflow patterns for complex data processing.
5
- *
6
- * Features:
7
- * - Map-Reduce pattern for parallel processing
8
- * - Dynamic fan-out based on state
9
- * - Configurable concurrency limits
10
- * - Partial failure handling
11
- * - Progress tracking
12
- * - Streaming reduce
13
- */
14
1
  export { type MapItemResult, type MapProgressEvent, type MapNodeConfig, type ReduceNodeConfig, type MapReduceResult, type MapReduceNodeConfig, executeMap, executeReduce, executeMapReduce, mapNode, reduceNode, mapReduceNode, parallelMap, sequentialMap, batchedMap, collect, sum, count, first, last, groupBy, partition, flatMap, stats, } from './map-reduce.js';
15
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/patterns/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,aAAa,EACb,WAAW,EACX,aAAa,EACb,UAAU,EACV,OAAO,EACP,GAAG,EACH,KAAK,EACL,KAAK,EACL,IAAI,EACJ,OAAO,EACP,SAAS,EACT,OAAO,EACP,KAAK,GACN,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/patterns/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,aAAa,EACb,WAAW,EACX,aAAa,EACb,UAAU,EACV,OAAO,EACP,GAAG,EACH,KAAK,EACL,KAAK,EACL,IAAI,EACJ,OAAO,EACP,SAAS,EACT,OAAO,EACP,KAAK,GACN,MAAM,cAAc,CAAC"}
@@ -1,15 +1,2 @@
1
- /**
2
- * @cogitator-ai/workflows - Patterns module
3
- *
4
- * Advanced workflow patterns for complex data processing.
5
- *
6
- * Features:
7
- * - Map-Reduce pattern for parallel processing
8
- * - Dynamic fan-out based on state
9
- * - Configurable concurrency limits
10
- * - Partial failure handling
11
- * - Progress tracking
12
- * - Streaming reduce
13
- */
14
1
  export { executeMap, executeReduce, executeMapReduce, mapNode, reduceNode, mapReduceNode, parallelMap, sequentialMap, batchedMap, collect, sum, count, first, last, groupBy, partition, flatMap, stats, } from './map-reduce.js';
15
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/patterns/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAOL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,aAAa,EACb,WAAW,EACX,aAAa,EACb,UAAU,EACV,OAAO,EACP,GAAG,EACH,KAAK,EACL,KAAK,EACL,IAAI,EACJ,OAAO,EACP,SAAS,EACT,OAAO,EACP,KAAK,GACN,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/patterns/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,aAAa,EACb,WAAW,EACX,aAAa,EACb,UAAU,EACV,OAAO,EACP,GAAG,EACH,KAAK,EACL,KAAK,EACL,IAAI,EACJ,OAAO,EACP,SAAS,EACT,OAAO,EACP,KAAK,GACN,MAAM,cAAc,CAAC"}