@prefactor/core 0.1.1 → 0.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 (62) hide show
  1. package/README.md +35 -2
  2. package/dist/agent/instance-manager.d.ts +19 -0
  3. package/dist/agent/instance-manager.d.ts.map +1 -0
  4. package/dist/agent/instance-manager.js +71 -0
  5. package/dist/agent/instance-manager.js.map +1 -0
  6. package/dist/agent/schema-registry.d.ts +9 -0
  7. package/dist/agent/schema-registry.d.ts.map +1 -0
  8. package/dist/agent/schema-registry.js +16 -0
  9. package/dist/agent/schema-registry.js.map +1 -0
  10. package/dist/config.d.ts +49 -25
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +13 -7
  13. package/dist/config.js.map +1 -1
  14. package/dist/create-core.d.ts +12 -0
  15. package/dist/create-core.d.ts.map +1 -0
  16. package/dist/create-core.js +49 -0
  17. package/dist/create-core.js.map +1 -0
  18. package/dist/index.cjs +390 -134
  19. package/dist/index.cjs.map +14 -9
  20. package/dist/index.d.ts +7 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +391 -135
  23. package/dist/index.js.map +14 -9
  24. package/dist/queue/actions.d.ts +35 -0
  25. package/dist/queue/actions.d.ts.map +1 -0
  26. package/dist/queue/actions.js +2 -0
  27. package/dist/queue/actions.js.map +1 -0
  28. package/dist/queue/base.d.ts +7 -0
  29. package/dist/queue/base.d.ts.map +1 -0
  30. package/dist/queue/base.js +2 -0
  31. package/dist/queue/base.js.map +1 -0
  32. package/dist/queue/in-memory.d.ts +9 -0
  33. package/dist/queue/in-memory.d.ts.map +1 -0
  34. package/dist/queue/in-memory.js +18 -0
  35. package/dist/queue/in-memory.js.map +1 -0
  36. package/dist/tracing/context.d.ts +12 -0
  37. package/dist/tracing/context.d.ts.map +1 -1
  38. package/dist/tracing/context.js +41 -5
  39. package/dist/tracing/context.js.map +1 -1
  40. package/dist/tracing/span.d.ts +5 -0
  41. package/dist/tracing/span.d.ts.map +1 -1
  42. package/dist/tracing/span.js +29 -0
  43. package/dist/tracing/span.js.map +1 -1
  44. package/dist/tracing/tracer.d.ts +7 -17
  45. package/dist/tracing/tracer.d.ts.map +1 -1
  46. package/dist/tracing/tracer.js +20 -39
  47. package/dist/tracing/tracer.js.map +1 -1
  48. package/dist/transport/base.d.ts +2 -22
  49. package/dist/transport/base.d.ts.map +1 -1
  50. package/dist/transport/http.d.ts +5 -28
  51. package/dist/transport/http.d.ts.map +1 -1
  52. package/dist/transport/http.js +76 -110
  53. package/dist/transport/http.js.map +1 -1
  54. package/dist/transport/stdio.d.ts +4 -16
  55. package/dist/transport/stdio.d.ts.map +1 -1
  56. package/dist/transport/stdio.js +14 -29
  57. package/dist/transport/stdio.js.map +1 -1
  58. package/dist/transport/worker.d.ts +22 -0
  59. package/dist/transport/worker.d.ts.map +1 -0
  60. package/dist/transport/worker.js +85 -0
  61. package/dist/transport/worker.js.map +1 -0
  62. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"span.js","sourceRoot":"","sources":["../../src/tracing/span.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,uBAAW,CAAA;IACX,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,mCAAuB,CAAA;AACzB,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,6BAAe,CAAA;AACjB,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB"}
1
+ {"version":3,"file":"span.js","sourceRoot":"","sources":["../../src/tracing/span.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,uBAAW,CAAA;IACX,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,mCAAuB,CAAA;AACzB,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA4B;IAC3D,mBAAmB,EAAE,OAAO;IAC5B,YAAY,EAAE;QACZ,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;SACzD;QACD,GAAG,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;SACvD;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;SACxD;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;SACzD;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;SAC7D;KACF;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,6BAAe,CAAA;AACjB,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB"}
@@ -1,6 +1,8 @@
1
1
  import { type Partition } from '@prefactor/pfid';
2
- import type { Transport } from '../transport/base.js';
3
- import type { Span, SpanType, TokenUsage } from './span.js';
2
+ import type { QueueAction } from '../queue/actions.js';
3
+ import type { Queue } from '../queue/base.js';
4
+ import type { Span, TokenUsage } from './span.js';
5
+ import { SpanType } from './span.js';
4
6
  /**
5
7
  * Options for starting a new span
6
8
  */
@@ -11,10 +13,6 @@ export interface StartSpanOptions {
11
13
  spanType: SpanType;
12
14
  /** Input data for this operation */
13
15
  inputs: Record<string, unknown>;
14
- /** ID of the parent span (optional) */
15
- parentSpanId?: string;
16
- /** Trace ID to use (optional, will generate if not provided) */
17
- traceId?: string;
18
16
  /** Additional metadata (optional) */
19
17
  metadata?: Record<string, unknown>;
20
18
  /** Tags for categorizing the span (optional) */
@@ -59,15 +57,15 @@ export interface EndSpanOptions {
59
57
  * ```
60
58
  */
61
59
  export declare class Tracer {
62
- private transport;
60
+ private queue;
63
61
  private partition;
64
62
  /**
65
63
  * Initialize the tracer.
66
64
  *
67
- * @param transport - The transport to use for emitting spans
65
+ * @param queue - The queue to use for emitting spans
68
66
  * @param partition - The partition for ID generation. If not provided, a random partition will be generated.
69
67
  */
70
- constructor(transport: Transport, partition?: Partition);
68
+ constructor(queue: Queue<QueueAction>, partition?: Partition);
71
69
  /**
72
70
  * Start a new span
73
71
  *
@@ -82,14 +80,6 @@ export declare class Tracer {
82
80
  * @param options - End span options (outputs, error, token usage)
83
81
  */
84
82
  endSpan(span: Span, options?: EndSpanOptions): void;
85
- /**
86
- * Signal the start of an agent instance execution
87
- */
88
- startAgentInstance(): void;
89
- /**
90
- * Signal the completion of an agent instance execution
91
- */
92
- finishAgentInstance(): void;
93
83
  /**
94
84
  * Close the tracer and flush any pending spans
95
85
  *
@@ -1 +1 @@
1
- {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../src/tracing/tracer.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IAEb,6CAA6C;IAC7C,QAAQ,EAAE,QAAQ,CAAC;IAEnB,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEhC,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElC,mCAAmC;IACnC,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd,8CAA8C;IAC9C,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,MAAM;IAUf,OAAO,CAAC,SAAS;IATnB,OAAO,CAAC,SAAS,CAAY;IAE7B;;;;;OAKG;gBAEO,SAAS,EAAE,SAAS,EAC5B,SAAS,CAAC,EAAE,SAAS;IAKvB;;;;;OAKG;IACH,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAkC1C;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI;IA6BnD;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAQ1B;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAQ3B;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO7B"}
1
+ {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../src/tracing/tracer.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAc,QAAQ,EAAE,MAAM,WAAW,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IAEb,6CAA6C;IAC7C,QAAQ,EAAE,QAAQ,CAAC;IAEnB,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEhC,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElC,mCAAmC;IACnC,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd,8CAA8C;IAC9C,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,MAAM;IAUf,OAAO,CAAC,KAAK;IATf,OAAO,CAAC,SAAS,CAAY;IAE7B;;;;;OAKG;gBAEO,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,EACjC,SAAS,CAAC,EAAE,SAAS;IAKvB;;;;;OAKG;IACH,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAmC1C;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI;IA8BnD;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO7B"}
@@ -1,5 +1,6 @@
1
1
  import { generate, generatePartition } from '@prefactor/pfid';
2
- import { SpanStatus } from './span.js';
2
+ import { SpanContext } from './context.js';
3
+ import { SpanStatus, SpanType } from './span.js';
3
4
  /**
4
5
  * Tracer manages the lifecycle of spans.
5
6
  *
@@ -28,16 +29,16 @@ import { SpanStatus } from './span.js';
28
29
  * ```
29
30
  */
30
31
  export class Tracer {
31
- transport;
32
+ queue;
32
33
  partition;
33
34
  /**
34
35
  * Initialize the tracer.
35
36
  *
36
- * @param transport - The transport to use for emitting spans
37
+ * @param queue - The queue to use for emitting spans
37
38
  * @param partition - The partition for ID generation. If not provided, a random partition will be generated.
38
39
  */
39
- constructor(transport, partition) {
40
- this.transport = transport;
40
+ constructor(queue, partition) {
41
+ this.queue = queue;
41
42
  this.partition = partition ?? generatePartition();
42
43
  }
43
44
  /**
@@ -47,11 +48,12 @@ export class Tracer {
47
48
  * @returns The created span
48
49
  */
49
50
  startSpan(options) {
51
+ const parentSpan = SpanContext.getCurrent();
50
52
  const spanId = generate(this.partition);
51
- const traceId = options.traceId ?? generate(this.partition);
53
+ const traceId = parentSpan?.traceId ?? generate(this.partition);
52
54
  const span = {
53
55
  spanId,
54
- parentSpanId: options.parentSpanId ?? null,
56
+ parentSpanId: parentSpan?.spanId ?? null,
55
57
  traceId,
56
58
  name: options.name,
57
59
  spanType: options.spanType,
@@ -67,12 +69,12 @@ export class Tracer {
67
69
  };
68
70
  // AGENT spans are emitted immediately for real-time tracking
69
71
  // They will be finished later with finishSpan()
70
- if (options.spanType === 'agent') {
72
+ if (options.spanType === SpanType.AGENT) {
71
73
  try {
72
- this.transport.emit(span);
74
+ this.queue.enqueue({ type: 'span_end', data: span });
73
75
  }
74
76
  catch (error) {
75
- console.error('Failed to emit agent span:', error);
77
+ console.error('Failed to enqueue agent span:', error);
76
78
  }
77
79
  }
78
80
  return span;
@@ -84,7 +86,8 @@ export class Tracer {
84
86
  * @param options - End span options (outputs, error, token usage)
85
87
  */
86
88
  endSpan(span, options) {
87
- span.endTime = Date.now();
89
+ const endTime = Date.now();
90
+ span.endTime = endTime;
88
91
  span.outputs = options?.outputs ?? null;
89
92
  span.tokenUsage = options?.tokenUsage ?? null;
90
93
  if (options?.error) {
@@ -101,37 +104,15 @@ export class Tracer {
101
104
  try {
102
105
  // AGENT spans use finishSpan API (they were already emitted on start)
103
106
  // Other span types are emitted here
104
- if (span.spanType === 'agent') {
105
- this.transport.finishSpan(span.spanId, span.endTime);
107
+ if (span.spanType === SpanType.AGENT) {
108
+ this.queue.enqueue({ type: 'span_finish', data: { spanId: span.spanId, endTime } });
106
109
  }
107
110
  else {
108
- this.transport.emit(span);
111
+ this.queue.enqueue({ type: 'span_end', data: span });
109
112
  }
110
113
  }
111
114
  catch (error) {
112
- console.error('Failed to emit/finish span:', error);
113
- }
114
- }
115
- /**
116
- * Signal the start of an agent instance execution
117
- */
118
- startAgentInstance() {
119
- try {
120
- this.transport.startAgentInstance();
121
- }
122
- catch (error) {
123
- console.error('Failed to start agent instance:', error);
124
- }
125
- }
126
- /**
127
- * Signal the completion of an agent instance execution
128
- */
129
- finishAgentInstance() {
130
- try {
131
- this.transport.finishAgentInstance();
132
- }
133
- catch (error) {
134
- console.error('Failed to finish agent instance:', error);
115
+ console.error('Failed to enqueue span action:', error);
135
116
  }
136
117
  }
137
118
  /**
@@ -141,10 +122,10 @@ export class Tracer {
141
122
  */
142
123
  async close() {
143
124
  try {
144
- await this.transport.close();
125
+ await this.queue.flush();
145
126
  }
146
127
  catch (error) {
147
- console.error('Failed to close transport:', error);
128
+ console.error('Failed to flush queue:', error);
148
129
  }
149
130
  }
150
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../src/tracing/tracer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../src/tracing/tracer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Span } from '../tracing/span.js';
1
+ import type { QueueAction } from '../queue/actions.js';
2
2
  /**
3
3
  * Transport interface for emitting spans to different backends
4
4
  *
@@ -7,27 +7,7 @@ import type { Span } from '../tracing/span.js';
7
7
  * pluggable backends.
8
8
  */
9
9
  export interface Transport {
10
- /**
11
- * Emit a span to the transport destination
12
- *
13
- * @param span - The span to emit
14
- */
15
- emit(span: Span): void;
16
- /**
17
- * Finish a previously emitted span (for long-running spans like AGENT spans)
18
- *
19
- * @param spanId - ID of the span to finish
20
- * @param endTime - End time in milliseconds since Unix epoch
21
- */
22
- finishSpan(spanId: string, endTime: number): void;
23
- /**
24
- * Signal the start of an agent instance execution
25
- */
26
- startAgentInstance(): void;
27
- /**
28
- * Signal the completion of an agent instance execution
29
- */
30
- finishAgentInstance(): void;
10
+ processBatch(items: QueueAction[]): Promise<void>;
31
11
  /**
32
12
  * Close the transport and flush any pending data
33
13
  *
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/transport/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,WAAW,SAAS;IACxB;;;;OAIG;IACH,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAEvB;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAElD;;OAEG;IACH,kBAAkB,IAAI,IAAI,CAAC;IAE3B;;OAEG;IACH,mBAAmB,IAAI,IAAI,CAAC;IAE5B;;;;OAIG;IACH,KAAK,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/transport/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,WAAW,SAAS;IACxB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD;;;;OAIG;IACH,KAAK,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B"}
@@ -1,15 +1,13 @@
1
1
  import type { HttpTransportConfig } from '../config.js';
2
- import type { Span } from '../tracing/span.js';
2
+ import type { QueueAction } from '../queue/actions.js';
3
3
  import type { Transport } from './base.js';
4
4
  /**
5
5
  * HTTP transport sends spans to a remote API endpoint.
6
6
  *
7
7
  * Features:
8
- * - Queue-based async processing
9
8
  * - Exponential backoff retry logic
10
9
  * - Span ID mapping (SDK ID → backend ID)
11
10
  * - Agent instance lifecycle management
12
- * - Graceful shutdown with timeout
13
11
  *
14
12
  * @example
15
13
  * ```typescript
@@ -21,37 +19,16 @@ import type { Transport } from './base.js';
21
19
  */
22
20
  export declare class HttpTransport implements Transport {
23
21
  private config;
24
- private queue;
25
- private processing;
26
22
  private closed;
27
23
  private agentInstanceId;
28
24
  private spanIdMap;
25
+ private pendingFinishes;
29
26
  constructor(config: HttpTransportConfig);
27
+ processBatch(items: QueueAction[]): Promise<void>;
30
28
  /**
31
- * Emit a span (adds to queue for async processing)
32
- *
33
- * @param span - The span to emit
34
- */
35
- emit(span: Span): void;
36
- /**
37
- * Finish a previously emitted span (for AGENT spans)
38
- *
39
- * @param spanId - ID of the span to finish
40
- * @param endTime - End time in milliseconds since Unix epoch
41
- */
42
- finishSpan(spanId: string, endTime: number): void;
43
- /**
44
- * Signal the start of an agent instance execution
45
- */
46
- startAgentInstance(): void;
47
- /**
48
- * Signal the completion of an agent instance execution
49
- */
50
- finishAgentInstance(): void;
51
- /**
52
- * Start background queue processing
29
+ * Process any pending finishes for a span that was just registered.
53
30
  */
54
- private startProcessing;
31
+ private processPendingFinishes;
55
32
  /**
56
33
  * Send a span to the API
57
34
  */
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/transport/http.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAY3C;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,aAAc,YAAW,SAAS;IAOjC,OAAO,CAAC,MAAM;IAN1B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,SAAS,CAA6B;gBAE1B,MAAM,EAAE,mBAAmB;IAI/C;;;;OAIG;IACH,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAOtB;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAQjD;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAO1B;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAO3B;;OAEG;YACW,eAAe;IAwC7B;;OAEG;YACW,QAAQ;IAmDtB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAmDhC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA4BxB;;OAEG;YACW,qBAAqB;IA6DnC;;OAEG;YACW,sBAAsB;IA6BpC;;OAEG;YACW,uBAAuB;IA2BrC;;OAEG;YACW,cAAc;IA4B5B;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAc7B"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/transport/http.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAI3C;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,aAAc,YAAW,SAAS;IAOjC,OAAO,CAAC,MAAM;IAN1B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,SAAS,CAA6B;IAE9C,OAAO,CAAC,eAAe,CAA6B;gBAEhC,MAAM,EAAE,mBAAmB;IAEzC,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA0DvD;;OAEG;YACW,sBAAsB;IAepC;;OAEG;YACW,QAAQ;IAqDtB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAmDhC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAIxB;;OAEG;YACW,qBAAqB;IA4DnC;;OAEG;YACW,sBAAsB;IA6BpC;;OAEG;YACW,uBAAuB;IA8BrC;;OAEG;YACW,cAAc;IA4B5B;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAW7B"}
@@ -1,14 +1,13 @@
1
+ import { DEFAULT_AGENT_SCHEMA } from '../tracing/span.js';
1
2
  import { getLogger } from '../utils/logging.js';
2
3
  const logger = getLogger('http-transport');
3
4
  /**
4
5
  * HTTP transport sends spans to a remote API endpoint.
5
6
  *
6
7
  * Features:
7
- * - Queue-based async processing
8
8
  * - Exponential backoff retry logic
9
9
  * - Span ID mapping (SDK ID → backend ID)
10
10
  * - Agent instance lifecycle management
11
- * - Graceful shutdown with timeout
12
11
  *
13
12
  * @example
14
13
  * ```typescript
@@ -20,95 +19,87 @@ const logger = getLogger('http-transport');
20
19
  */
21
20
  export class HttpTransport {
22
21
  config;
23
- queue = [];
24
- processing = false;
25
22
  closed = false;
26
23
  agentInstanceId = null;
27
24
  spanIdMap = new Map();
25
+ // Pending finishes for spans that arrived before their span_end
26
+ pendingFinishes = new Map();
28
27
  constructor(config) {
29
28
  this.config = config;
30
- this.startProcessing();
31
29
  }
32
- /**
33
- * Emit a span (adds to queue for async processing)
34
- *
35
- * @param span - The span to emit
36
- */
37
- emit(span) {
38
- if (this.closed) {
39
- return;
40
- }
41
- this.queue.push({ type: 'span', data: span });
42
- }
43
- /**
44
- * Finish a previously emitted span (for AGENT spans)
45
- *
46
- * @param spanId - ID of the span to finish
47
- * @param endTime - End time in milliseconds since Unix epoch
48
- */
49
- finishSpan(spanId, endTime) {
50
- if (this.closed) {
51
- return;
52
- }
53
- const timestamp = new Date(endTime).toISOString();
54
- this.queue.push({ type: 'finish_span', data: { spanId, timestamp } });
55
- }
56
- /**
57
- * Signal the start of an agent instance execution
58
- */
59
- startAgentInstance() {
60
- if (this.closed) {
61
- return;
62
- }
63
- this.queue.push({ type: 'start_agent', data: null });
64
- }
65
- /**
66
- * Signal the completion of an agent instance execution
67
- */
68
- finishAgentInstance() {
69
- if (this.closed) {
30
+ async processBatch(items) {
31
+ if (this.closed || items.length === 0) {
70
32
  return;
71
33
  }
72
- this.queue.push({ type: 'finish_agent', data: null });
73
- }
74
- /**
75
- * Start background queue processing
76
- */
77
- async startProcessing() {
78
- this.processing = true;
79
- while (!this.closed || this.queue.length > 0) {
80
- if (this.queue.length === 0) {
81
- await new Promise((resolve) => setTimeout(resolve, 100));
82
- continue;
34
+ // First pass: apply schema updates
35
+ for (const item of items) {
36
+ if (item.type === 'schema_register') {
37
+ this.config.agentSchema = item.data.schema;
38
+ this.config.agentSchemaIdentifier = item.data.schemaIdentifier;
39
+ this.config.schemaName = item.data.schemaName;
40
+ this.config.schemaIdentifier = item.data.schemaIdentifier;
83
41
  }
84
- const item = this.queue.shift();
85
- if (!item)
86
- continue;
42
+ }
43
+ // Second pass: process actions
44
+ for (const item of items) {
87
45
  try {
88
- // Ensure agent is registered before processing spans
89
- if (!this.agentInstanceId && item.type !== 'start_agent') {
90
- await this.ensureAgentRegistered();
91
- }
92
46
  switch (item.type) {
93
- case 'span':
94
- await this.sendSpan(item.data);
95
- break;
96
- case 'finish_span':
97
- await this.finishSpanHttp(item.data);
47
+ case 'schema_register':
98
48
  break;
99
- case 'start_agent':
49
+ case 'agent_start':
50
+ this.config.agentId = item.data.agentId;
51
+ if (item.data.agentIdentifier !== undefined)
52
+ this.config.agentIdentifier = item.data.agentIdentifier;
53
+ this.config.agentName = item.data.agentName;
54
+ this.config.agentDescription = item.data.agentDescription;
100
55
  await this.startAgentInstanceHttp();
101
56
  break;
102
- case 'finish_agent':
57
+ case 'agent_finish':
103
58
  await this.finishAgentInstanceHttp();
104
59
  break;
60
+ case 'span_end':
61
+ if (!this.agentInstanceId) {
62
+ await this.ensureAgentRegistered();
63
+ }
64
+ await this.sendSpan(item.data);
65
+ break;
66
+ case 'span_finish': {
67
+ const spanId = item.data.spanId;
68
+ const backendSpanId = this.spanIdMap.get(spanId);
69
+ if (backendSpanId) {
70
+ // Span mapping exists, finish immediately
71
+ const timestamp = new Date(item.data.endTime).toISOString();
72
+ await this.finishSpanHttp({ spanId, timestamp });
73
+ }
74
+ else {
75
+ // Defer finish until span_end creates the mapping
76
+ this.pendingFinishes.set(spanId, item.data.endTime);
77
+ }
78
+ break;
79
+ }
105
80
  }
106
81
  }
107
82
  catch (error) {
108
- logger.error('Error processing queue item:', error);
83
+ logger.error('Error processing batch item:', error);
109
84
  }
110
85
  }
111
- this.processing = false;
86
+ }
87
+ /**
88
+ * Process any pending finishes for a span that was just registered.
89
+ */
90
+ async processPendingFinishes(spanId) {
91
+ const pendingEndTime = this.pendingFinishes.get(spanId);
92
+ if (!pendingEndTime) {
93
+ return;
94
+ }
95
+ try {
96
+ const timestamp = new Date(pendingEndTime).toISOString();
97
+ await this.finishSpanHttp({ spanId, timestamp });
98
+ this.pendingFinishes.delete(spanId);
99
+ }
100
+ catch (error) {
101
+ logger.error('Error processing pending span finish:', error);
102
+ }
112
103
  }
113
104
  /**
114
105
  * Send a span to the API
@@ -131,6 +122,8 @@ export class HttpTransport {
131
122
  const backendSpanId = data?.details?.id;
132
123
  if (backendSpanId) {
133
124
  this.spanIdMap.set(span.spanId, backendSpanId);
125
+ // Process any pending finishes that arrived before this span_end
126
+ await this.processPendingFinishes(span.spanId);
134
127
  }
135
128
  return;
136
129
  }
@@ -205,31 +198,7 @@ export class HttpTransport {
205
198
  * Get default schema (v1.0.0) with span schemas for all supported types
206
199
  */
207
200
  getDefaultSchema() {
208
- return {
209
- external_identifier: '1.0.0',
210
- span_schemas: {
211
- agent: {
212
- type: 'object',
213
- properties: { type: { type: 'string', const: 'agent' } },
214
- },
215
- llm: {
216
- type: 'object',
217
- properties: { type: { type: 'string', const: 'llm' } },
218
- },
219
- tool: {
220
- type: 'object',
221
- properties: { type: { type: 'string', const: 'tool' } },
222
- },
223
- chain: {
224
- type: 'object',
225
- properties: { type: { type: 'string', const: 'chain' } },
226
- },
227
- retriever: {
228
- type: 'object',
229
- properties: { type: { type: 'string', const: 'retriever' } },
230
- },
231
- },
232
- };
201
+ return DEFAULT_AGENT_SCHEMA;
233
202
  }
234
203
  /**
235
204
  * Ensure an agent instance is registered
@@ -242,9 +211,9 @@ export class HttpTransport {
242
211
  const payload = {};
243
212
  if (this.config.agentId)
244
213
  payload.agent_id = this.config.agentId;
245
- if (this.config.agentVersion) {
214
+ if (this.config.agentIdentifier) {
246
215
  payload.agent_version = {
247
- external_identifier: this.config.agentVersion,
216
+ external_identifier: this.config.agentIdentifier,
248
217
  name: this.config.agentName || 'Agent',
249
218
  description: this.config.agentDescription || '',
250
219
  };
@@ -252,8 +221,7 @@ export class HttpTransport {
252
221
  // Schema handling - four modes:
253
222
  // 1. skipSchema=true: No schema in payload (pre-registered on backend)
254
223
  // 2. agentSchema provided: Use full custom schema object
255
- // 3. agentSchemaVersion provided: Use version identifier only
256
- // 4. None of above: Use default v1.0.0 schema
224
+ // 3. agentSchemaIdentifier provided: Use version identifier only
257
225
  if (this.config.skipSchema) {
258
226
  logger.debug('Skipping schema in registration (skipSchema=true)');
259
227
  // Do not add agent_schema_version key
@@ -262,10 +230,10 @@ export class HttpTransport {
262
230
  logger.debug('Using custom agent schema');
263
231
  payload.agent_schema_version = this.config.agentSchema;
264
232
  }
265
- else if (this.config.agentSchemaVersion) {
266
- logger.debug(`Using schema version: ${this.config.agentSchemaVersion}`);
233
+ else if (this.config.agentSchemaIdentifier) {
234
+ logger.debug(`Using schema version: ${this.config.agentSchemaIdentifier}`);
267
235
  payload.agent_schema_version = {
268
- external_identifier: this.config.agentSchemaVersion,
236
+ external_identifier: this.config.agentSchemaIdentifier,
269
237
  };
270
238
  }
271
239
  else {
@@ -349,6 +317,8 @@ export class HttpTransport {
349
317
  catch (error) {
350
318
  logger.error('Error finishing agent instance:', error);
351
319
  }
320
+ // Reset so the next agent_start registers a fresh instance
321
+ this.agentInstanceId = null;
352
322
  }
353
323
  /**
354
324
  * Finish a span via HTTP
@@ -385,14 +355,10 @@ export class HttpTransport {
385
355
  */
386
356
  async close() {
387
357
  this.closed = true;
388
- // Wait for queue to drain (with timeout)
389
- const timeout = 10000;
390
- const start = Date.now();
391
- while (this.processing && Date.now() - start < timeout) {
392
- await new Promise((resolve) => setTimeout(resolve, 100));
393
- }
394
- if (this.processing) {
395
- logger.warn('Transport closed with pending queue items');
358
+ // Log warning for any pending finishes that will never be processed
359
+ if (this.pendingFinishes.size > 0) {
360
+ logger.warn(`Transport closed with ${this.pendingFinishes.size} pending span finish(es) that could not be processed`);
361
+ this.pendingFinishes.clear();
396
362
  }
397
363
  }
398
364
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transport/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transport/http.ts"],"names":[],"mappings":"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"}