@prefactor/core 0.2.0 → 0.2.2

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 (94) hide show
  1. package/dist/agent/instance-manager.d.ts +5 -8
  2. package/dist/agent/instance-manager.d.ts.map +1 -1
  3. package/dist/agent/instance-manager.js +34 -55
  4. package/dist/agent/instance-manager.js.map +1 -1
  5. package/dist/config.d.ts +15 -63
  6. package/dist/config.d.ts.map +1 -1
  7. package/dist/config.js +29 -20
  8. package/dist/config.js.map +1 -1
  9. package/dist/create-core.d.ts +0 -2
  10. package/dist/create-core.d.ts.map +1 -1
  11. package/dist/create-core.js +17 -28
  12. package/dist/create-core.js.map +1 -1
  13. package/dist/index.cjs +678 -453
  14. package/dist/index.cjs.map +20 -15
  15. package/dist/index.d.ts +4 -7
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +678 -453
  18. package/dist/index.js.map +20 -15
  19. package/dist/lifecycle.d.ts +5 -0
  20. package/dist/lifecycle.d.ts.map +1 -0
  21. package/dist/lifecycle.js +27 -0
  22. package/dist/lifecycle.js.map +1 -0
  23. package/dist/queue/actions.d.ts +15 -26
  24. package/dist/queue/actions.d.ts.map +1 -1
  25. package/dist/queue/base.d.ts +15 -3
  26. package/dist/queue/base.d.ts.map +1 -1
  27. package/dist/queue/in-memory-queue.d.ts +11 -0
  28. package/dist/queue/in-memory-queue.d.ts.map +1 -0
  29. package/dist/queue/in-memory-queue.js +46 -0
  30. package/dist/queue/in-memory-queue.js.map +1 -0
  31. package/dist/queue/task-executor.d.ts +18 -0
  32. package/dist/queue/task-executor.d.ts.map +1 -0
  33. package/dist/queue/task-executor.js +77 -0
  34. package/dist/queue/task-executor.js.map +1 -0
  35. package/dist/tracing/active-tracer.d.ts +5 -0
  36. package/dist/tracing/active-tracer.d.ts.map +1 -0
  37. package/dist/tracing/active-tracer.js +13 -0
  38. package/dist/tracing/active-tracer.js.map +1 -0
  39. package/dist/tracing/span.d.ts +7 -14
  40. package/dist/tracing/span.d.ts.map +1 -1
  41. package/dist/tracing/span.js +5 -36
  42. package/dist/tracing/span.js.map +1 -1
  43. package/dist/tracing/tracer.d.ts +6 -7
  44. package/dist/tracing/tracer.d.ts.map +1 -1
  45. package/dist/tracing/tracer.js +27 -12
  46. package/dist/tracing/tracer.js.map +1 -1
  47. package/dist/tracing/with-span.d.ts +4 -0
  48. package/dist/tracing/with-span.d.ts.map +1 -0
  49. package/dist/tracing/with-span.js +35 -0
  50. package/dist/tracing/with-span.js.map +1 -0
  51. package/dist/transport/http/agent-instance-client.d.ts +23 -0
  52. package/dist/transport/http/agent-instance-client.d.ts.map +1 -0
  53. package/dist/transport/http/agent-instance-client.js +25 -0
  54. package/dist/transport/http/agent-instance-client.js.map +1 -0
  55. package/dist/transport/http/agent-span-client.d.ts +25 -0
  56. package/dist/transport/http/agent-span-client.d.ts.map +1 -0
  57. package/dist/transport/http/agent-span-client.js +37 -0
  58. package/dist/transport/http/agent-span-client.js.map +1 -0
  59. package/dist/transport/http/http-client.d.ts +43 -0
  60. package/dist/transport/http/http-client.d.ts.map +1 -0
  61. package/dist/transport/http/http-client.js +127 -0
  62. package/dist/transport/http/http-client.js.map +1 -0
  63. package/dist/transport/http/retry-policy.d.ts +4 -0
  64. package/dist/transport/http/retry-policy.d.ts.map +1 -0
  65. package/dist/transport/http/retry-policy.js +10 -0
  66. package/dist/transport/http/retry-policy.js.map +1 -0
  67. package/dist/transport/http.d.ts +34 -50
  68. package/dist/transport/http.d.ts.map +1 -1
  69. package/dist/transport/http.js +163 -227
  70. package/dist/transport/http.js.map +1 -1
  71. package/dist/utils/logging.d.ts.map +1 -1
  72. package/dist/utils/logging.js +7 -1
  73. package/dist/utils/logging.js.map +1 -1
  74. package/package.json +1 -1
  75. package/dist/agent/schema-registry.d.ts +0 -9
  76. package/dist/agent/schema-registry.d.ts.map +0 -1
  77. package/dist/agent/schema-registry.js +0 -16
  78. package/dist/agent/schema-registry.js.map +0 -1
  79. package/dist/queue/in-memory.d.ts +0 -9
  80. package/dist/queue/in-memory.d.ts.map +0 -1
  81. package/dist/queue/in-memory.js +0 -18
  82. package/dist/queue/in-memory.js.map +0 -1
  83. package/dist/transport/base.d.ts +0 -18
  84. package/dist/transport/base.d.ts.map +0 -1
  85. package/dist/transport/base.js +0 -2
  86. package/dist/transport/base.js.map +0 -1
  87. package/dist/transport/stdio.d.ts +0 -36
  88. package/dist/transport/stdio.d.ts.map +0 -1
  89. package/dist/transport/stdio.js +0 -56
  90. package/dist/transport/stdio.js.map +0 -1
  91. package/dist/transport/worker.d.ts +0 -22
  92. package/dist/transport/worker.d.ts.map +0 -1
  93. package/dist/transport/worker.js +0 -85
  94. package/dist/transport/worker.js.map +0 -1
@@ -1,95 +1,141 @@
1
- import { DEFAULT_AGENT_SCHEMA } from '../tracing/span.js';
1
+ import { InMemoryQueue } from '../queue/in-memory-queue.js';
2
+ import { TaskExecutor } from '../queue/task-executor.js';
2
3
  import { getLogger } from '../utils/logging.js';
4
+ import { AgentInstanceClient } from './http/agent-instance-client.js';
5
+ import { AgentSpanClient, } from './http/agent-span-client.js';
6
+ import { HttpClient } from './http/http-client.js';
3
7
  const logger = getLogger('http-transport');
4
- /**
5
- * HTTP transport sends spans to a remote API endpoint.
6
- *
7
- * Features:
8
- * - Exponential backoff retry logic
9
- * - Span ID mapping (SDK ID → backend ID)
10
- * - Agent instance lifecycle management
11
- *
12
- * @example
13
- * ```typescript
14
- * const transport = new HttpTransport({
15
- * apiUrl: 'https://api.prefactor.ai',
16
- * apiToken: process.env.PREFACTOR_API_TOKEN!,
17
- * });
18
- * ```
19
- */
20
8
  export class HttpTransport {
21
9
  config;
22
10
  closed = false;
11
+ actionQueue = new InMemoryQueue();
12
+ taskExecutor;
13
+ agentInstanceClient;
14
+ agentSpanClient;
15
+ previousAgentSchema = null;
16
+ requiresNewAgentIdentifier = false;
17
+ previousAgentIdentifier = null;
23
18
  agentInstanceId = null;
24
19
  spanIdMap = new Map();
25
- // Pending finishes for spans that arrived before their span_end
26
20
  pendingFinishes = new Map();
21
+ pendingChildren = new Map();
27
22
  constructor(config) {
28
23
  this.config = config;
24
+ const httpClient = new HttpClient(config);
25
+ this.agentInstanceClient = new AgentInstanceClient(httpClient);
26
+ this.agentSpanClient = new AgentSpanClient(httpClient);
27
+ this.taskExecutor = new TaskExecutor(this.actionQueue, this.processAction, {
28
+ workerCount: 1,
29
+ onError: async (error) => {
30
+ logger.error('Error processing HTTP action:', error);
31
+ },
32
+ });
33
+ this.taskExecutor.start();
34
+ }
35
+ registerSchema(schema) {
36
+ this.enqueue({ type: 'schema_register', schema });
37
+ }
38
+ startAgentInstance(options) {
39
+ this.enqueue({ type: 'agent_start', options });
40
+ }
41
+ finishAgentInstance() {
42
+ this.enqueue({ type: 'agent_finish' });
29
43
  }
30
- async processBatch(items) {
31
- if (this.closed || items.length === 0) {
44
+ emit(span) {
45
+ this.enqueue({ type: 'span_end', span });
46
+ }
47
+ finishSpan(spanId, endTime) {
48
+ this.enqueue({ type: 'span_finish', spanId, endTime });
49
+ }
50
+ async close() {
51
+ this.closed = true;
52
+ await this.taskExecutor.stop();
53
+ if (this.pendingFinishes.size > 0) {
54
+ logger.warn(`Transport closed with ${this.pendingFinishes.size} pending span finish(es) that could not be processed`);
55
+ this.pendingFinishes.clear();
56
+ }
57
+ if (this.pendingChildren.size > 0) {
58
+ logger.warn(`Transport closed with ${this.pendingChildren.size} unresolved parent span reference(s)`);
59
+ this.pendingChildren.clear();
60
+ }
61
+ }
62
+ enqueue(action) {
63
+ if (this.closed) {
32
64
  return;
33
65
  }
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;
66
+ this.actionQueue.put(action).catch((error) => {
67
+ logger.error('Failed to enqueue HTTP action:', error);
68
+ });
69
+ }
70
+ processAction = async (action) => {
71
+ switch (action.type) {
72
+ case 'schema_register': {
73
+ const incomingSchema = JSON.stringify(action.schema);
74
+ if (this.previousAgentSchema !== null && this.previousAgentSchema !== incomingSchema) {
75
+ this.requiresNewAgentIdentifier = true;
76
+ this.previousAgentIdentifier = this.config.agentIdentifier;
77
+ this.agentInstanceId = null;
78
+ }
79
+ this.previousAgentSchema = incomingSchema;
80
+ this.config.agentSchema = action.schema;
81
+ return;
41
82
  }
42
- }
43
- // Second pass: process actions
44
- for (const item of items) {
45
- try {
46
- switch (item.type) {
47
- case 'schema_register':
48
- break;
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;
55
- await this.startAgentInstanceHttp();
56
- break;
57
- case 'agent_finish':
58
- await this.finishAgentInstanceHttp();
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;
83
+ case 'agent_start': {
84
+ if (this.requiresNewAgentIdentifier) {
85
+ const nextAgentIdentifier = action.options?.agentIdentifier;
86
+ if (nextAgentIdentifier === undefined ||
87
+ nextAgentIdentifier === this.previousAgentIdentifier) {
88
+ logger.error('Schema changed; starting an agent requires a new agentIdentifier value.');
89
+ return;
79
90
  }
91
+ this.requiresNewAgentIdentifier = false;
92
+ this.previousAgentIdentifier = null;
93
+ }
94
+ if (action.options?.agentId !== undefined)
95
+ this.config.agentId = action.options.agentId;
96
+ if (action.options?.agentIdentifier !== undefined) {
97
+ this.config.agentIdentifier = action.options.agentIdentifier;
80
98
  }
99
+ if (action.options?.agentName !== undefined)
100
+ this.config.agentName = action.options.agentName;
101
+ if (action.options?.agentDescription !== undefined) {
102
+ this.config.agentDescription = action.options.agentDescription;
103
+ }
104
+ await this.startAgentInstanceHttp();
105
+ return;
81
106
  }
82
- catch (error) {
83
- logger.error('Error processing batch item:', error);
107
+ case 'agent_finish':
108
+ await this.finishAgentInstanceHttp();
109
+ return;
110
+ case 'span_end':
111
+ if (!this.agentInstanceId) {
112
+ await this.ensureAgentRegistered();
113
+ }
114
+ if (action.span.parentSpanId && !this.spanIdMap.has(action.span.parentSpanId)) {
115
+ this.queuePendingChild(action.span.parentSpanId, action.span);
116
+ return;
117
+ }
118
+ await this.sendSpan(action.span);
119
+ return;
120
+ case 'span_finish': {
121
+ const backendSpanId = this.spanIdMap.get(action.spanId);
122
+ if (backendSpanId) {
123
+ const timestamp = new Date(action.endTime).toISOString();
124
+ await this.finishSpanHttp({ spanId: action.spanId, timestamp });
125
+ }
126
+ else {
127
+ this.pendingFinishes.set(action.spanId, action.endTime);
128
+ }
129
+ return;
84
130
  }
85
131
  }
86
- }
87
- /**
88
- * Process any pending finishes for a span that was just registered.
89
- */
132
+ };
90
133
  async processPendingFinishes(spanId) {
134
+ if (!this.pendingFinishes.has(spanId)) {
135
+ return;
136
+ }
91
137
  const pendingEndTime = this.pendingFinishes.get(spanId);
92
- if (!pendingEndTime) {
138
+ if (pendingEndTime === undefined) {
93
139
  return;
94
140
  }
95
141
  try {
@@ -101,71 +147,52 @@ export class HttpTransport {
101
147
  logger.error('Error processing pending span finish:', error);
102
148
  }
103
149
  }
104
- /**
105
- * Send a span to the API
106
- */
107
- async sendSpan(span, retry = 0) {
108
- const url = `${this.config.apiUrl}/api/v1/agent_spans`;
150
+ async sendSpan(span) {
109
151
  const payload = this.transformSpanToApiFormat(span);
110
152
  try {
111
- const response = await fetch(url, {
112
- method: 'POST',
113
- headers: {
114
- Authorization: `Bearer ${this.config.apiToken}`,
115
- 'Content-Type': 'application/json',
116
- },
117
- body: JSON.stringify(payload),
118
- signal: AbortSignal.timeout(this.config.requestTimeout),
119
- });
120
- if (response.ok) {
121
- const data = (await response.json());
122
- const backendSpanId = data?.details?.id;
123
- if (backendSpanId) {
124
- this.spanIdMap.set(span.spanId, backendSpanId);
125
- // Process any pending finishes that arrived before this span_end
126
- await this.processPendingFinishes(span.spanId);
127
- }
153
+ const response = await this.agentSpanClient.create(payload);
154
+ const backendSpanId = response.details?.id;
155
+ if (!backendSpanId) {
128
156
  return;
129
157
  }
130
- // Retry on server errors or rate limiting
131
- if ((response.status >= 500 || response.status === 429) && retry < this.config.maxRetries) {
132
- const delay = Math.min(this.config.initialRetryDelay * this.config.retryMultiplier ** retry, this.config.maxRetryDelay);
133
- logger.debug(`Retrying span send after ${delay}ms (attempt ${retry + 1})`);
134
- await new Promise((resolve) => setTimeout(resolve, delay));
135
- return this.sendSpan(span, retry + 1);
136
- }
137
- logger.error(`Failed to send span: ${response.status} ${response.statusText}`);
158
+ this.spanIdMap.set(span.spanId, backendSpanId);
159
+ await this.processPendingFinishes(span.spanId);
160
+ await this.processPendingChildren(span.spanId);
138
161
  }
139
162
  catch (error) {
140
163
  logger.error('Error sending span:', error);
141
- // Retry on network errors
142
- if (retry < this.config.maxRetries) {
143
- const delay = Math.min(this.config.initialRetryDelay * this.config.retryMultiplier ** retry, this.config.maxRetryDelay);
144
- await new Promise((resolve) => setTimeout(resolve, delay));
145
- return this.sendSpan(span, retry + 1);
146
- }
147
164
  }
148
165
  }
149
- /**
150
- * Transform span to backend API format with nested details/payload structure
151
- */
166
+ queuePendingChild(parentSpanId, childSpan) {
167
+ const existingChildren = this.pendingChildren.get(parentSpanId) ?? [];
168
+ existingChildren.push(childSpan);
169
+ this.pendingChildren.set(parentSpanId, existingChildren);
170
+ }
171
+ async processPendingChildren(parentSpanId) {
172
+ const waitingChildren = this.pendingChildren.get(parentSpanId);
173
+ if (!waitingChildren || waitingChildren.length === 0) {
174
+ return;
175
+ }
176
+ this.pendingChildren.delete(parentSpanId);
177
+ for (const childSpan of waitingChildren) {
178
+ await this.sendSpan(childSpan);
179
+ }
180
+ }
152
181
  transformSpanToApiFormat(span) {
153
182
  const startedAt = new Date(span.startTime).toISOString();
154
183
  const finishedAt = span.endTime ? new Date(span.endTime).toISOString() : null;
155
- // Build payload with span data
184
+ const apiStatus = this.mapStatusForApi(span.status);
156
185
  const payload = {
157
186
  span_id: span.spanId,
158
187
  trace_id: span.traceId,
159
188
  name: span.name,
160
- status: span.status,
189
+ status: apiStatus,
161
190
  inputs: span.inputs,
162
191
  outputs: span.outputs,
163
192
  metadata: span.metadata,
164
- tags: span.tags,
165
193
  token_usage: null,
166
194
  error: null,
167
195
  };
168
- // Add optional token_usage
169
196
  if (span.tokenUsage) {
170
197
  payload.token_usage = {
171
198
  prompt_tokens: span.tokenUsage.promptTokens,
@@ -173,7 +200,6 @@ export class HttpTransport {
173
200
  total_tokens: span.tokenUsage.totalTokens,
174
201
  };
175
202
  }
176
- // Add optional error
177
203
  if (span.error) {
178
204
  payload.error = {
179
205
  error_type: span.error.errorType,
@@ -181,12 +207,12 @@ export class HttpTransport {
181
207
  stacktrace: span.error.stacktrace,
182
208
  };
183
209
  }
184
- // Resolve parent span ID to backend ID
185
210
  const parentSpanId = span.parentSpanId ? (this.spanIdMap.get(span.parentSpanId) ?? null) : null;
186
211
  return {
187
212
  details: {
188
213
  agent_instance_id: this.agentInstanceId,
189
214
  schema_name: span.spanType,
215
+ status: apiStatus,
190
216
  payload,
191
217
  parent_span_id: parentSpanId,
192
218
  started_at: startedAt,
@@ -194,20 +220,22 @@ export class HttpTransport {
194
220
  },
195
221
  };
196
222
  }
197
- /**
198
- * Get default schema (v1.0.0) with span schemas for all supported types
199
- */
200
- getDefaultSchema() {
201
- return DEFAULT_AGENT_SCHEMA;
223
+ mapStatusForApi(status) {
224
+ switch (status) {
225
+ case 'running':
226
+ return 'active';
227
+ case 'success':
228
+ return 'complete';
229
+ case 'error':
230
+ return 'failed';
231
+ default:
232
+ return 'active';
233
+ }
202
234
  }
203
- /**
204
- * Ensure an agent instance is registered
205
- */
206
235
  async ensureAgentRegistered() {
207
236
  if (this.agentInstanceId) {
208
- return;
237
+ return true;
209
238
  }
210
- const url = `${this.config.apiUrl}/api/v1/agent_instance/register`;
211
239
  const payload = {};
212
240
  if (this.config.agentId)
213
241
  payload.agent_id = this.config.agentId;
@@ -218,148 +246,56 @@ export class HttpTransport {
218
246
  description: this.config.agentDescription || '',
219
247
  };
220
248
  }
221
- // Schema handling - four modes:
222
- // 1. skipSchema=true: No schema in payload (pre-registered on backend)
223
- // 2. agentSchema provided: Use full custom schema object
224
- // 3. agentSchemaIdentifier provided: Use version identifier only
225
- if (this.config.skipSchema) {
226
- logger.debug('Skipping schema in registration (skipSchema=true)');
227
- // Do not add agent_schema_version key
228
- }
229
- else if (this.config.agentSchema) {
230
- logger.debug('Using custom agent schema');
249
+ if (this.config.agentSchema) {
231
250
  payload.agent_schema_version = this.config.agentSchema;
232
251
  }
233
- else if (this.config.agentSchemaIdentifier) {
234
- logger.debug(`Using schema version: ${this.config.agentSchemaIdentifier}`);
235
- payload.agent_schema_version = {
236
- external_identifier: this.config.agentSchemaIdentifier,
237
- };
238
- }
239
- else {
240
- logger.debug('Using default hardcoded schema (v1.0.0)');
241
- payload.agent_schema_version = this.getDefaultSchema();
242
- }
243
252
  try {
244
- const response = await fetch(url, {
245
- method: 'POST',
246
- headers: {
247
- Authorization: `Bearer ${this.config.apiToken}`,
248
- 'Content-Type': 'application/json',
249
- },
250
- body: JSON.stringify(payload),
251
- signal: AbortSignal.timeout(this.config.requestTimeout),
252
- });
253
- if (response.ok) {
254
- const data = (await response.json());
255
- this.agentInstanceId = data?.details?.id ?? null;
256
- logger.debug(`Registered agent instance: ${this.agentInstanceId}`);
257
- }
258
- else {
259
- logger.error(`Failed to register agent: ${response.status} ${response.statusText}`);
260
- }
253
+ const data = await this.agentInstanceClient.register(payload);
254
+ this.agentInstanceId = data.details?.id ?? null;
261
255
  }
262
256
  catch (error) {
263
257
  logger.error('Error registering agent:', error);
264
258
  }
259
+ return this.agentInstanceId !== null;
265
260
  }
266
- /**
267
- * Start agent instance execution
268
- */
269
261
  async startAgentInstanceHttp() {
270
- await this.ensureAgentRegistered();
271
- if (!this.agentInstanceId) {
262
+ const isRegistered = await this.ensureAgentRegistered();
263
+ if (!isRegistered || !this.agentInstanceId) {
272
264
  logger.error('Cannot start agent instance: not registered');
273
265
  return;
274
266
  }
275
- const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/start`;
276
267
  try {
277
- const response = await fetch(url, {
278
- method: 'POST',
279
- headers: {
280
- Authorization: `Bearer ${this.config.apiToken}`,
281
- 'Content-Type': 'application/json',
282
- },
283
- body: JSON.stringify({}),
284
- signal: AbortSignal.timeout(this.config.requestTimeout),
285
- });
286
- if (!response.ok) {
287
- logger.error(`Failed to start agent instance: ${response.status} ${response.statusText}`);
288
- }
268
+ await this.agentInstanceClient.start(this.agentInstanceId);
289
269
  }
290
270
  catch (error) {
291
271
  logger.error('Error starting agent instance:', error);
292
272
  }
293
273
  }
294
- /**
295
- * Finish agent instance execution
296
- */
297
274
  async finishAgentInstanceHttp() {
298
275
  if (!this.agentInstanceId) {
299
276
  logger.error('Cannot finish agent instance: not registered');
300
277
  return;
301
278
  }
302
- const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/finish`;
303
279
  try {
304
- const response = await fetch(url, {
305
- method: 'POST',
306
- headers: {
307
- Authorization: `Bearer ${this.config.apiToken}`,
308
- 'Content-Type': 'application/json',
309
- },
310
- body: JSON.stringify({}),
311
- signal: AbortSignal.timeout(this.config.requestTimeout),
312
- });
313
- if (!response.ok) {
314
- logger.error(`Failed to finish agent instance: ${response.status} ${response.statusText}`);
315
- }
280
+ await this.agentInstanceClient.finish(this.agentInstanceId);
316
281
  }
317
282
  catch (error) {
318
283
  logger.error('Error finishing agent instance:', error);
319
284
  }
320
- // Reset so the next agent_start registers a fresh instance
321
285
  this.agentInstanceId = null;
322
286
  }
323
- /**
324
- * Finish a span via HTTP
325
- */
326
287
  async finishSpanHttp(data) {
327
288
  const backendSpanId = this.spanIdMap.get(data.spanId);
328
289
  if (!backendSpanId) {
329
290
  logger.warn(`Cannot finish span ${data.spanId}: backend ID not found`);
330
291
  return;
331
292
  }
332
- const url = `${this.config.apiUrl}/api/v1/agent_spans/${backendSpanId}/finish`;
333
293
  try {
334
- const response = await fetch(url, {
335
- method: 'POST',
336
- headers: {
337
- Authorization: `Bearer ${this.config.apiToken}`,
338
- 'Content-Type': 'application/json',
339
- },
340
- body: JSON.stringify({ timestamp: data.timestamp }),
341
- signal: AbortSignal.timeout(this.config.requestTimeout),
342
- });
343
- if (!response.ok) {
344
- logger.error(`Failed to finish span: ${response.status} ${response.statusText}`);
345
- }
294
+ await this.agentSpanClient.finish(backendSpanId, data.timestamp);
346
295
  }
347
296
  catch (error) {
348
297
  logger.error('Error finishing span:', error);
349
298
  }
350
299
  }
351
- /**
352
- * Close the transport and wait for queue to drain
353
- *
354
- * @returns Promise that resolves when transport is closed
355
- */
356
- async close() {
357
- this.closed = true;
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();
362
- }
363
- }
364
300
  }
365
301
  //# sourceMappingURL=http.js.map
@@ -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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,cAAM,MAAM;IAGE,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAA2B;gBAE3B,SAAS,EAAE,MAAM;IAErC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAMhD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAM/C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAM/C,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAMhD;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI;CASlE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAWvC"}
1
+ {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,cAAM,MAAM;IASE,OAAO,CAAC,SAAS;IAR7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAMf;gBAEe,SAAS,EAAE,MAAM;IAErC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAMhD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAM/C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAM/C,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAMhD;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI;CASlE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAWvC"}
@@ -13,7 +13,13 @@ var LogLevel;
13
13
  */
14
14
  class Logger {
15
15
  namespace;
16
- static level = LogLevel.INFO;
16
+ static level = (() => {
17
+ const level = process.env.PREFACTOR_LOG_LEVEL?.toUpperCase();
18
+ if (level && level in LogLevel) {
19
+ return LogLevel[level];
20
+ }
21
+ return LogLevel.INFO;
22
+ })();
17
23
  constructor(namespace) {
18
24
  this.namespace = namespace;
19
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,IAAK,QAKJ;AALD,WAAK,QAAQ;IACX,yCAAS,CAAA;IACT,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,yCAAS,CAAA;AACX,CAAC,EALI,QAAQ,KAAR,QAAQ,QAKZ;AAED;;GAEG;AACH,MAAM,MAAM;IAGU;IAFZ,MAAM,CAAC,KAAK,GAAa,QAAQ,CAAC,IAAI,CAAC;IAE/C,YAAoB,SAAiB;QAAjB,cAAS,GAAT,SAAS,CAAQ;IAAG,CAAC;IAEzC,KAAK,CAAC,OAAe,EAAE,GAAG,IAAe;QACvC,IAAI,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,GAAG,IAAe;QACtC,IAAI,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,GAAG,IAAe;QACtC,IAAI,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,GAAG,IAAe;QACvC,IAAI,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,KAA0C;QACxD,MAAM,QAAQ,GAAG;YACf,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC;QACF,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;;AAGH;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,SAAiB;IACzC,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,WAAW,EAK7C,CAAC;IAEd,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,IAAK,QAKJ;AALD,WAAK,QAAQ;IACX,yCAAS,CAAA;IACT,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,yCAAS,CAAA;AACX,CAAC,EALI,QAAQ,KAAR,QAAQ,QAKZ;AAED;;GAEG;AACH,MAAM,MAAM;IASU;IARZ,MAAM,CAAC,KAAK,GAAa,CAAC,GAAG,EAAE;QACrC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,WAAW,EAAE,CAAC;QAC7D,IAAI,KAAK,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC/B,OAAO,QAAQ,CAAC,KAA8B,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC,CAAC,EAAE,CAAC;IAEL,YAAoB,SAAiB;QAAjB,cAAS,GAAT,SAAS,CAAQ;IAAG,CAAC;IAEzC,KAAK,CAAC,OAAe,EAAE,GAAG,IAAe;QACvC,IAAI,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,GAAG,IAAe;QACtC,IAAI,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,GAAG,IAAe;QACtC,IAAI,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,GAAG,IAAe;QACvC,IAAI,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,KAA0C;QACxD,MAAM,QAAQ,GAAG;YACf,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC;QACF,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;;AAGH;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,SAAiB;IACzC,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,WAAW,EAK7C,CAAC;IAEd,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prefactor/core",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "Framework-agnostic observability primitives for Prefactor",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -1,9 +0,0 @@
1
- import type { SchemaRegistration } from '../queue/actions.js';
2
- export declare class SchemaRegistry {
3
- private schemas;
4
- register(schema: SchemaRegistration): void;
5
- has(schemaName: string, schemaIdentifier: string): boolean;
6
- get(schemaName: string, schemaIdentifier: string): SchemaRegistration | undefined;
7
- private getKey;
8
- }
9
- //# sourceMappingURL=schema-registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-registry.d.ts","sourceRoot":"","sources":["../../src/agent/schema-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAyC;IAExD,QAAQ,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAI1C,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO;IAI1D,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAIjF,OAAO,CAAC,MAAM;CAGf"}
@@ -1,16 +0,0 @@
1
- export class SchemaRegistry {
2
- schemas = new Map();
3
- register(schema) {
4
- this.schemas.set(this.getKey(schema.schemaName, schema.schemaIdentifier), schema);
5
- }
6
- has(schemaName, schemaIdentifier) {
7
- return this.schemas.has(this.getKey(schemaName, schemaIdentifier));
8
- }
9
- get(schemaName, schemaIdentifier) {
10
- return this.schemas.get(this.getKey(schemaName, schemaIdentifier));
11
- }
12
- getKey(schemaName, schemaIdentifier) {
13
- return `${schemaName}@${schemaIdentifier}`;
14
- }
15
- }
16
- //# sourceMappingURL=schema-registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-registry.js","sourceRoot":"","sources":["../../src/agent/schema-registry.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,cAAc;IACjB,OAAO,GAAG,IAAI,GAAG,EAA8B,CAAC;IAExD,QAAQ,CAAC,MAA0B;QACjC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,CAAC;IACpF,CAAC;IAED,GAAG,CAAC,UAAkB,EAAE,gBAAwB;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,GAAG,CAAC,UAAkB,EAAE,gBAAwB;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACrE,CAAC;IAEO,MAAM,CAAC,UAAkB,EAAE,gBAAwB;QACzD,OAAO,GAAG,UAAU,IAAI,gBAAgB,EAAE,CAAC;IAC7C,CAAC;CACF"}
@@ -1,9 +0,0 @@
1
- import type { Queue } from './base.js';
2
- export declare class InMemoryQueue<T> implements Queue<T> {
3
- private items;
4
- enqueue(item: T): void;
5
- dequeueBatch(maxItems: number): T[];
6
- size(): number;
7
- flush(): Promise<void>;
8
- }
9
- //# sourceMappingURL=in-memory.d.ts.map