@ugm/desiagent 0.2.2 → 0.2.3

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 (70) hide show
  1. package/dist/core/execution/costs.d.ts +2 -0
  2. package/dist/core/execution/costs.d.ts.map +1 -1
  3. package/dist/core/execution/costs.js +1 -0
  4. package/dist/core/execution/costs.js.map +1 -1
  5. package/dist/core/execution/dagExecutor.d.ts +0 -1
  6. package/dist/core/execution/dagExecutor.d.ts.map +1 -1
  7. package/dist/core/execution/dagExecutor.js +32 -83
  8. package/dist/core/execution/dagExecutor.js.map +1 -1
  9. package/dist/core/execution/dagScheduler.d.ts +36 -0
  10. package/dist/core/execution/dagScheduler.d.ts.map +1 -0
  11. package/dist/core/execution/dagScheduler.js +101 -0
  12. package/dist/core/execution/dagScheduler.js.map +1 -0
  13. package/dist/core/execution/dags.d.ts +2 -1
  14. package/dist/core/execution/dags.d.ts.map +1 -1
  15. package/dist/core/execution/dags.js +48 -26
  16. package/dist/core/execution/dags.js.map +1 -1
  17. package/dist/core/execution/executions.d.ts +1 -0
  18. package/dist/core/execution/executions.d.ts.map +1 -1
  19. package/dist/core/execution/executions.js +1 -0
  20. package/dist/core/execution/executions.js.map +1 -1
  21. package/dist/core/execution/inference.d.ts +4 -4
  22. package/dist/core/execution/tools.d.ts.map +1 -1
  23. package/dist/core/execution/tools.js +11 -12
  24. package/dist/core/execution/tools.js.map +1 -1
  25. package/dist/core/providers/factory.d.ts.map +1 -1
  26. package/dist/core/providers/factory.js +23 -2
  27. package/dist/core/providers/factory.js.map +1 -1
  28. package/dist/core/tools/edit.d.ts +1 -1
  29. package/dist/core/tools/llmExecute.d.ts +8 -8
  30. package/dist/core/tools/sendEmail.d.ts +6 -6
  31. package/dist/core/tools/writeFile.d.ts +2 -2
  32. package/dist/core/workers/statsQueue.d.ts +17 -4
  33. package/dist/core/workers/statsQueue.d.ts.map +1 -1
  34. package/dist/core/workers/statsQueue.js +43 -4
  35. package/dist/core/workers/statsQueue.js.map +1 -1
  36. package/dist/core/workers/statsWorker.js +143 -7
  37. package/dist/core/workers/statsWorker.js.map +1 -1
  38. package/dist/db/client.d.ts.map +1 -1
  39. package/dist/db/client.js +58 -1
  40. package/dist/db/client.js.map +1 -1
  41. package/dist/db/schema.d.ts +21 -0
  42. package/dist/db/schema.d.ts.map +1 -1
  43. package/dist/db/schema.js +8 -2
  44. package/dist/db/schema.js.map +1 -1
  45. package/dist/db/sqlite.d.ts +2 -0
  46. package/dist/db/sqlite.d.ts.map +1 -0
  47. package/dist/db/sqlite.js +77 -0
  48. package/dist/db/sqlite.js.map +1 -0
  49. package/dist/index.d.ts +1 -0
  50. package/dist/index.d.ts.map +1 -1
  51. package/dist/index.js +95 -8
  52. package/dist/index.js.map +1 -1
  53. package/dist/services/initDB.d.ts +1 -2
  54. package/dist/services/initDB.d.ts.map +1 -1
  55. package/dist/services/initDB.js +1 -1
  56. package/dist/services/initDB.js.map +1 -1
  57. package/dist/types/client.d.ts +2 -0
  58. package/dist/types/client.d.ts.map +1 -1
  59. package/dist/types/config.d.ts +10 -0
  60. package/dist/types/config.d.ts.map +1 -1
  61. package/dist/types/config.js +10 -0
  62. package/dist/types/config.js.map +1 -1
  63. package/dist/types/execution.d.ts +1 -0
  64. package/dist/types/execution.d.ts.map +1 -1
  65. package/dist/types/execution.js.map +1 -1
  66. package/dist/util/logger.d.ts.map +1 -1
  67. package/dist/util/logger.js +8 -6
  68. package/dist/util/logger.js.map +1 -1
  69. package/dist/util/sendEmailTool.d.ts +6 -6
  70. package/package.json +2 -2
@@ -6,10 +6,11 @@
6
6
  import { OpenAIProvider } from './openai.js';
7
7
  import { OllamaProvider } from './ollama.js';
8
8
  import { OpenRouterProvider } from './openrouter.js';
9
+ import { createHash } from 'crypto';
9
10
  import { getLogger } from '../../util/logger.js';
10
11
  /**
11
12
  * LLM Provider cache for reusing provider instances
12
- * Key format: "provider:model:maxTokens"
13
+ * Key format: "provider-scope:model:maxTokens:skipStats"
13
14
  */
14
15
  const providerCache = new Map();
15
16
  /**
@@ -26,7 +27,8 @@ export function createLLMProvider(config) {
26
27
  const model = config.model || getDefaultModel(config.provider);
27
28
  const maxTokens = config.maxTokens || 4096;
28
29
  const skipStats = config.skipGenerationStats ? 'skip' : 'stats';
29
- const cacheKey = `${config.provider}:${model}:${maxTokens}:${skipStats}`;
30
+ const providerScope = getProviderCacheScope(config);
31
+ const cacheKey = `${providerScope}:${model}:${maxTokens}:${skipStats}`;
30
32
  // Check cache first
31
33
  const cached = providerCache.get(cacheKey);
32
34
  if (cached) {
@@ -62,6 +64,25 @@ export function createLLMProvider(config) {
62
64
  providerCache.set(cacheKey, provider);
63
65
  return provider;
64
66
  }
67
+ function getProviderCacheScope(config) {
68
+ switch (config.provider) {
69
+ case 'openai':
70
+ return `openai:key=${fingerprint(config.apiKey)}`;
71
+ case 'openrouter':
72
+ return `openrouter:key=${fingerprint(config.apiKey)}:url=${normalizeBaseUrl(config.baseUrl)}`;
73
+ case 'ollama':
74
+ return `ollama:url=${normalizeBaseUrl(config.baseUrl || 'http://localhost:11434')}`;
75
+ default:
76
+ return `${config.provider}:default`;
77
+ }
78
+ }
79
+ function normalizeBaseUrl(baseUrl) {
80
+ const normalized = (baseUrl ?? '').trim().replace(/\/+$/, '');
81
+ return normalized || 'default';
82
+ }
83
+ function fingerprint(value) {
84
+ return createHash('sha256').update(value ?? '').digest('hex').slice(0, 12);
85
+ }
65
86
  function getDefaultModel(provider) {
66
87
  switch (provider) {
67
88
  case 'openai': return 'gpt-4o';
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/core/providers/factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/core/providers/factory.ts"],"names":[],"mappings":"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"}
@@ -11,8 +11,8 @@ declare const editInputSchema: z.ZodObject<{
11
11
  newText: z.ZodString;
12
12
  replaceAll: z.ZodDefault<z.ZodBoolean>;
13
13
  }, "strip", z.ZodTypeAny, {
14
- replaceAll: boolean;
15
14
  path: string;
15
+ replaceAll: boolean;
16
16
  oldText: string;
17
17
  newText: string;
18
18
  }, {
@@ -29,11 +29,11 @@ declare const llmExecuteInputSchema: z.ZodObject<{
29
29
  max_tokens: z.ZodOptional<z.ZodNumber>;
30
30
  temperature: z.ZodOptional<z.ZodNumber>;
31
31
  }, "strip", z.ZodTypeAny, {
32
- reasoning_effort?: "low" | "medium" | "high" | undefined;
32
+ reasoning_effort?: "low" | "high" | "medium" | undefined;
33
33
  max_tokens?: number | undefined;
34
34
  temperature?: number | undefined;
35
35
  }, {
36
- reasoning_effort?: "low" | "medium" | "high" | undefined;
36
+ reasoning_effort?: "low" | "high" | "medium" | undefined;
37
37
  max_tokens?: number | undefined;
38
38
  temperature?: number | undefined;
39
39
  }>>;
@@ -43,7 +43,7 @@ declare const llmExecuteInputSchema: z.ZodObject<{
43
43
  prompt: string;
44
44
  task: string;
45
45
  params?: {
46
- reasoning_effort?: "low" | "medium" | "high" | undefined;
46
+ reasoning_effort?: "low" | "high" | "medium" | undefined;
47
47
  max_tokens?: number | undefined;
48
48
  temperature?: number | undefined;
49
49
  } | undefined;
@@ -58,7 +58,7 @@ declare const llmExecuteInputSchema: z.ZodObject<{
58
58
  prompt: string;
59
59
  task: string;
60
60
  params?: {
61
- reasoning_effort?: "low" | "medium" | "high" | undefined;
61
+ reasoning_effort?: "low" | "high" | "medium" | undefined;
62
62
  max_tokens?: number | undefined;
63
63
  temperature?: number | undefined;
64
64
  } | undefined;
@@ -108,11 +108,11 @@ export declare class LlmExecuteTool extends BaseTool<LlmExecuteInput, LlmExecute
108
108
  max_tokens: z.ZodOptional<z.ZodNumber>;
109
109
  temperature: z.ZodOptional<z.ZodNumber>;
110
110
  }, "strip", z.ZodTypeAny, {
111
- reasoning_effort?: "low" | "medium" | "high" | undefined;
111
+ reasoning_effort?: "low" | "high" | "medium" | undefined;
112
112
  max_tokens?: number | undefined;
113
113
  temperature?: number | undefined;
114
114
  }, {
115
- reasoning_effort?: "low" | "medium" | "high" | undefined;
115
+ reasoning_effort?: "low" | "high" | "medium" | undefined;
116
116
  max_tokens?: number | undefined;
117
117
  temperature?: number | undefined;
118
118
  }>>;
@@ -122,7 +122,7 @@ export declare class LlmExecuteTool extends BaseTool<LlmExecuteInput, LlmExecute
122
122
  prompt: string;
123
123
  task: string;
124
124
  params?: {
125
- reasoning_effort?: "low" | "medium" | "high" | undefined;
125
+ reasoning_effort?: "low" | "high" | "medium" | undefined;
126
126
  max_tokens?: number | undefined;
127
127
  temperature?: number | undefined;
128
128
  } | undefined;
@@ -137,7 +137,7 @@ export declare class LlmExecuteTool extends BaseTool<LlmExecuteInput, LlmExecute
137
137
  prompt: string;
138
138
  task: string;
139
139
  params?: {
140
- reasoning_effort?: "low" | "medium" | "high" | undefined;
140
+ reasoning_effort?: "low" | "high" | "medium" | undefined;
141
141
  max_tokens?: number | undefined;
142
142
  temperature?: number | undefined;
143
143
  } | undefined;
@@ -20,39 +20,39 @@ declare const sendEmailInputSchema: z.ZodObject<{
20
20
  encoding: z.ZodOptional<z.ZodEnum<["base64", "utf-8"]>>;
21
21
  }, "strip", z.ZodTypeAny, {
22
22
  filename: string;
23
- content?: string | undefined;
24
23
  path?: string | undefined;
24
+ content?: string | undefined;
25
25
  contentType?: string | undefined;
26
26
  encoding?: "utf-8" | "base64" | undefined;
27
27
  }, {
28
28
  filename: string;
29
- content?: string | undefined;
30
29
  path?: string | undefined;
30
+ content?: string | undefined;
31
31
  contentType?: string | undefined;
32
32
  encoding?: "utf-8" | "base64" | undefined;
33
33
  }>, "many">>;
34
34
  }, "strip", z.ZodTypeAny, {
35
- body: string;
36
35
  to: string | string[];
36
+ body: string;
37
37
  subject: string;
38
38
  html: boolean;
39
39
  attachments?: {
40
40
  filename: string;
41
- content?: string | undefined;
42
41
  path?: string | undefined;
42
+ content?: string | undefined;
43
43
  contentType?: string | undefined;
44
44
  encoding?: "utf-8" | "base64" | undefined;
45
45
  }[] | undefined;
46
46
  cc?: string | string[] | undefined;
47
47
  bcc?: string | string[] | undefined;
48
48
  }, {
49
- body: string;
50
49
  to: string | string[];
50
+ body: string;
51
51
  subject: string;
52
52
  attachments?: {
53
53
  filename: string;
54
- content?: string | undefined;
55
54
  path?: string | undefined;
55
+ content?: string | undefined;
56
56
  contentType?: string | undefined;
57
57
  encoding?: "utf-8" | "base64" | undefined;
58
58
  }[] | undefined;
@@ -11,12 +11,12 @@ declare const writeFileInputSchema: z.ZodObject<{
11
11
  content: z.ZodString;
12
12
  mode: z.ZodDefault<z.ZodEnum<["overwrite", "append"]>>;
13
13
  }, "strip", z.ZodTypeAny, {
14
+ path: string;
14
15
  mode: "overwrite" | "append";
15
16
  content: string;
16
- path: string;
17
17
  }, {
18
- content: string;
19
18
  path: string;
19
+ content: string;
20
20
  mode?: "overwrite" | "append" | undefined;
21
21
  }>;
22
22
  type WriteFileInput = z.infer<typeof writeFileInputSchema>;
@@ -9,11 +9,11 @@
9
9
  */
10
10
  export interface StatsJob {
11
11
  /** Which table to update */
12
- table: 'sub_steps' | 'dag_executions' | 'dags';
12
+ table: 'sub_steps' | 'dag_executions' | 'dags' | 'reconcile';
13
13
  /** Row ID in that table (dagId for 'dags', executionId for 'dag_executions') */
14
14
  id: string;
15
15
  /** OpenRouter generation ID for fetching stats */
16
- generationId: string;
16
+ generationId?: string;
17
17
  /**
18
18
  * For 'sub_steps': the taskId used with executionId to locate the row.
19
19
  */
@@ -32,7 +32,11 @@ export interface StatsJob {
32
32
  * Message sent from main thread → worker
33
33
  */
34
34
  export interface WorkerInMessage {
35
- type: 'job' | 'shutdown';
35
+ type: 'init' | 'job' | 'shutdown';
36
+ dbPath?: string;
37
+ apiKey?: string;
38
+ reconcileIntervalMs?: number;
39
+ reconcileBatchSize?: number;
36
40
  job?: StatsJob;
37
41
  }
38
42
  /**
@@ -44,17 +48,26 @@ export interface WorkerOutMessage {
44
48
  id?: string;
45
49
  error?: string;
46
50
  }
51
+ export interface StatsQueueOptions {
52
+ reconcileIntervalMs?: number;
53
+ reconcileBatchSize?: number;
54
+ }
47
55
  export declare class StatsQueue {
48
56
  private worker;
49
57
  private logger;
50
58
  private dbPath;
51
59
  private apiKey;
52
60
  private pendingCount;
53
- constructor(dbPath: string, apiKey: string);
61
+ private reconcileInFlight;
62
+ private reconcileTimer;
63
+ private reconcileIntervalMs;
64
+ private reconcileBatchSize;
65
+ constructor(dbPath: string, apiKey: string, options?: StatsQueueOptions);
54
66
  /**
55
67
  * Start the background worker. Safe to call multiple times (idempotent).
56
68
  */
57
69
  start(): void;
70
+ private enqueueReconcileTick;
58
71
  /**
59
72
  * Enqueue a stats update job for background processing.
60
73
  * If the worker isn't started, silently drops the job with a warning.
@@ -1 +1 @@
1
- {"version":3,"file":"statsQueue.d.ts","sourceRoot":"","sources":["../../../src/core/workers/statsQueue.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,4BAA4B;IAC5B,KAAK,EAAE,WAAW,GAAG,gBAAgB,GAAG,MAAM,CAAC;IAC/C,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,KAAK,GAAG,UAAU,CAAC;IACzB,GAAG,CAAC,EAAE,QAAQ,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAKD,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAK;gBAEb,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAK1C;;OAEG;IACH,KAAK,IAAI,IAAI;IAmCb;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI;IAY5B;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAyCjC"}
1
+ {"version":3,"file":"statsQueue.d.ts","sourceRoot":"","sources":["../../../src/core/workers/statsQueue.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,4BAA4B;IAC5B,KAAK,EAAE,WAAW,GAAG,gBAAgB,GAAG,MAAM,GAAG,WAAW,CAAC;IAC7D,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,QAAQ,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAOD,MAAM,WAAW,iBAAiB;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,cAAc,CAA+C;IACrE,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,kBAAkB,CAAS;gBAEvB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB;IAOvE;;OAEG;IACH,KAAK,IAAI,IAAI;IAqDb,OAAO,CAAC,oBAAoB;IAY5B;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI;IAY5B;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CA+CjC"}
@@ -7,15 +7,23 @@
7
7
  import { getLogger } from '../../util/logger.js';
8
8
  /** Max time (ms) to wait for the worker to drain before force-terminating */
9
9
  const DRAIN_TIMEOUT_MS = 30_000;
10
+ const DEFAULT_RECONCILE_INTERVAL_MS = 30_000;
11
+ const DEFAULT_RECONCILE_BATCH_SIZE = 50;
10
12
  export class StatsQueue {
11
13
  worker = null;
12
14
  logger = getLogger();
13
15
  dbPath;
14
16
  apiKey;
15
17
  pendingCount = 0;
16
- constructor(dbPath, apiKey) {
18
+ reconcileInFlight = false;
19
+ reconcileTimer = null;
20
+ reconcileIntervalMs;
21
+ reconcileBatchSize;
22
+ constructor(dbPath, apiKey, options) {
17
23
  this.dbPath = dbPath;
18
24
  this.apiKey = apiKey;
25
+ this.reconcileIntervalMs = options?.reconcileIntervalMs ?? DEFAULT_RECONCILE_INTERVAL_MS;
26
+ this.reconcileBatchSize = options?.reconcileBatchSize ?? DEFAULT_RECONCILE_BATCH_SIZE;
19
27
  }
20
28
  /**
21
29
  * Start the background worker. Safe to call multiple times (idempotent).
@@ -30,15 +38,23 @@ export class StatsQueue {
30
38
  type: 'init',
31
39
  dbPath: this.dbPath,
32
40
  apiKey: this.apiKey,
41
+ reconcileIntervalMs: this.reconcileIntervalMs,
42
+ reconcileBatchSize: this.reconcileBatchSize,
33
43
  });
34
44
  this.worker.onmessage = (event) => {
35
45
  const msg = event.data;
36
46
  if (msg.type === 'done') {
37
- this.pendingCount--;
47
+ this.pendingCount = Math.max(0, this.pendingCount - 1);
48
+ if (msg.table === 'reconcile') {
49
+ this.reconcileInFlight = false;
50
+ }
38
51
  this.logger.debug({ table: msg.table, id: msg.id }, 'StatsWorker: update complete');
39
52
  }
40
53
  else if (msg.type === 'error') {
41
- this.pendingCount--;
54
+ this.pendingCount = Math.max(0, this.pendingCount - 1);
55
+ if (msg.table === 'reconcile') {
56
+ this.reconcileInFlight = false;
57
+ }
42
58
  this.logger.warn({ table: msg.table, id: msg.id, error: msg.error }, 'StatsWorker: update failed');
43
59
  }
44
60
  // 'drained' is handled by the terminate() promise listener
@@ -48,7 +64,25 @@ export class StatsQueue {
48
64
  };
49
65
  // Don't let the worker keep the process alive during normal operation
50
66
  this.worker.unref();
51
- this.logger.info('StatsQueue: background worker started');
67
+ this.reconcileTimer = setInterval(() => {
68
+ this.enqueueReconcileTick();
69
+ }, this.reconcileIntervalMs);
70
+ this.reconcileTimer.unref?.();
71
+ this.enqueueReconcileTick();
72
+ this.logger.info({
73
+ reconcileIntervalMs: this.reconcileIntervalMs,
74
+ reconcileBatchSize: this.reconcileBatchSize,
75
+ }, 'StatsQueue: background worker started');
76
+ }
77
+ enqueueReconcileTick() {
78
+ if (!this.worker || this.reconcileInFlight) {
79
+ return;
80
+ }
81
+ this.reconcileInFlight = true;
82
+ this.enqueue({
83
+ table: 'reconcile',
84
+ id: `reconcile_${Date.now()}`,
85
+ });
52
86
  }
53
87
  /**
54
88
  * Enqueue a stats update job for background processing.
@@ -71,6 +105,10 @@ export class StatsQueue {
71
105
  async terminate() {
72
106
  if (!this.worker)
73
107
  return;
108
+ if (this.reconcileTimer) {
109
+ clearInterval(this.reconcileTimer);
110
+ this.reconcileTimer = null;
111
+ }
74
112
  // Fast path: no pending work
75
113
  if (this.pendingCount <= 0) {
76
114
  this.worker.terminate();
@@ -101,6 +139,7 @@ export class StatsQueue {
101
139
  });
102
140
  this.worker = null;
103
141
  this.pendingCount = 0;
142
+ this.reconcileInFlight = false;
104
143
  }
105
144
  }
106
145
  //# sourceMappingURL=statsQueue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"statsQueue.js","sourceRoot":"","sources":["../../../src/core/workers/statsQueue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"statsQueue.js","sourceRoot":"","sources":["../../../src/core/workers/statsQueue.ts"],"names":[],"mappings":"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"}
@@ -8,15 +8,17 @@
8
8
  * Supports graceful shutdown: drains all pending jobs before exiting.
9
9
  */
10
10
  import { drizzle } from 'drizzle-orm/bun-sqlite';
11
- import { Database } from 'bun:sqlite';
12
- import { eq, and } from 'drizzle-orm';
11
+ import { Database } from '../../db/sqlite.js';
12
+ import { eq, and, sql } from 'drizzle-orm';
13
13
  import * as schema from '../../db/schema.js';
14
14
  import { dags, dagExecutions, dagSubSteps } from '../../db/schema.js';
15
15
  const BASE_URL = 'https://openrouter.ai/api/v1';
16
16
  const MAX_FETCH_ATTEMPTS = 5;
17
17
  const INITIAL_DELAY_MS = 2000;
18
+ const DEFAULT_RECONCILE_BATCH_SIZE = 50;
18
19
  let db = null;
19
20
  let apiKey = '';
21
+ let reconcileBatchSize = DEFAULT_RECONCILE_BATCH_SIZE;
20
22
  /** Number of jobs currently being processed */
21
23
  let pendingCount = 0;
22
24
  /** Whether a shutdown has been requested */
@@ -87,25 +89,53 @@ async function fetchGenerationStats(generationId) {
87
89
  * Uses taskId + executionId as composite key (matching the pattern in DAGExecutor).
88
90
  */
89
91
  async function updateSubStep(job) {
90
- const stats = await fetchGenerationStats(job.generationId);
92
+ if (job.id.startsWith('reconcile_')) {
93
+ return;
94
+ }
95
+ let generationId = job.generationId;
96
+ if (!generationId) {
97
+ if (job.taskId && job.executionId) {
98
+ const existingStep = await db.query.dagSubSteps.findFirst({
99
+ where: and(eq(dagSubSteps.taskId, job.taskId), eq(dagSubSteps.executionId, job.executionId)),
100
+ });
101
+ generationId = existingStep?.generationId || undefined;
102
+ }
103
+ else {
104
+ const existingStep = await db.query.dagSubSteps.findFirst({
105
+ where: eq(dagSubSteps.id, job.id),
106
+ });
107
+ generationId = existingStep?.generationId || undefined;
108
+ }
109
+ }
110
+ if (!generationId)
111
+ return;
112
+ const stats = await fetchGenerationStats(generationId);
91
113
  if (stats.error || !stats.data)
92
114
  return;
93
- if (!job.taskId || !job.executionId)
115
+ if (job.taskId && job.executionId) {
116
+ await db.update(dagSubSteps)
117
+ .set({
118
+ generationStats: stats.data,
119
+ costUsd: stats.costUsd?.toString(),
120
+ generationId,
121
+ updatedAt: new Date(),
122
+ })
123
+ .where(and(eq(dagSubSteps.taskId, job.taskId), eq(dagSubSteps.executionId, job.executionId)));
94
124
  return;
125
+ }
95
126
  await db.update(dagSubSteps)
96
127
  .set({
97
128
  generationStats: stats.data,
98
129
  costUsd: stats.costUsd?.toString(),
130
+ generationId,
99
131
  updatedAt: new Date(),
100
132
  })
101
- .where(and(eq(dagSubSteps.taskId, job.taskId), eq(dagSubSteps.executionId, job.executionId)));
133
+ .where(eq(dagSubSteps.id, job.id));
102
134
  }
103
135
  /**
104
136
  * Update dag_executions table by re-aggregating costs from all sub_steps.
105
137
  */
106
138
  async function updateDagExecution(job) {
107
- // Wait a moment for any sub_step stats workers to finish first
108
- await new Promise(resolve => setTimeout(resolve, 1000));
109
139
  const allSubSteps = await db.query.dagSubSteps.findMany({
110
140
  where: eq(dagSubSteps.executionId, job.id),
111
141
  });
@@ -136,11 +166,111 @@ async function updateDagExecution(job) {
136
166
  })
137
167
  .where(eq(dagExecutions.id, job.id));
138
168
  }
169
+ function parseCostUsd(value) {
170
+ if (value == null)
171
+ return 0;
172
+ if (typeof value === 'number')
173
+ return Number.isFinite(value) ? value : 0;
174
+ const parsed = parseFloat(String(value));
175
+ return Number.isFinite(parsed) ? parsed : 0;
176
+ }
177
+ async function reconcileSubSteps(batchSize) {
178
+ const unresolvedSubSteps = await db.select({
179
+ id: dagSubSteps.id,
180
+ executionId: dagSubSteps.executionId,
181
+ generationId: dagSubSteps.generationId,
182
+ })
183
+ .from(dagSubSteps)
184
+ .where(sql `${dagSubSteps.generationId} is not null and (${dagSubSteps.costUsd} is null or ${dagSubSteps.generationStats} is null)`)
185
+ .limit(batchSize);
186
+ const touchedExecutionIds = new Set();
187
+ for (const step of unresolvedSubSteps) {
188
+ if (!step.generationId) {
189
+ continue;
190
+ }
191
+ const stats = await fetchGenerationStats(step.generationId);
192
+ if (stats.error || !stats.data) {
193
+ continue;
194
+ }
195
+ await db.update(dagSubSteps)
196
+ .set({
197
+ generationStats: stats.data,
198
+ costUsd: stats.costUsd?.toString(),
199
+ updatedAt: new Date(),
200
+ })
201
+ .where(eq(dagSubSteps.id, step.id));
202
+ touchedExecutionIds.add(step.executionId);
203
+ }
204
+ return touchedExecutionIds;
205
+ }
206
+ async function reconcileDagPlanningAttempts() {
207
+ const candidateDags = await db.select({
208
+ id: dags.id,
209
+ planningAttempts: dags.planningAttempts,
210
+ planningTotalCostUsd: dags.planningTotalCostUsd,
211
+ })
212
+ .from(dags)
213
+ .where(sql `${dags.planningAttempts} is not null`);
214
+ for (const dag of candidateDags) {
215
+ const attempts = dag.planningAttempts;
216
+ if (!attempts || attempts.length === 0) {
217
+ continue;
218
+ }
219
+ let changed = false;
220
+ for (const attempt of attempts) {
221
+ if (!attempt.generationId) {
222
+ continue;
223
+ }
224
+ const attemptHasCost = attempt.costUsd != null;
225
+ const attemptHasStats = !!attempt.generationStats;
226
+ if (attemptHasCost && attemptHasStats) {
227
+ continue;
228
+ }
229
+ const stats = await fetchGenerationStats(attempt.generationId);
230
+ if (stats.error || !stats.data) {
231
+ continue;
232
+ }
233
+ attempt.generationStats = stats.data;
234
+ attempt.costUsd = stats.costUsd;
235
+ changed = true;
236
+ }
237
+ if (!changed) {
238
+ continue;
239
+ }
240
+ const totalCost = attempts.reduce((sum, attempt) => sum + parseCostUsd(attempt.costUsd), 0);
241
+ await db.update(dags)
242
+ .set({
243
+ planningAttempts: attempts,
244
+ planningTotalCostUsd: totalCost.toString(),
245
+ updatedAt: new Date(),
246
+ })
247
+ .where(eq(dags.id, dag.id));
248
+ }
249
+ }
250
+ async function reconcileDagExecutionAggregates(touchedExecutionIds, batchSize) {
251
+ const candidates = await db.select({ id: dagExecutions.id })
252
+ .from(dagExecutions)
253
+ .where(sql `${dagExecutions.completedAt} is not null and (${dagExecutions.totalCostUsd} is null or ${dagExecutions.totalUsage} is null)`)
254
+ .limit(batchSize);
255
+ for (const row of candidates) {
256
+ touchedExecutionIds.add(row.id);
257
+ }
258
+ for (const executionId of touchedExecutionIds) {
259
+ await updateDagExecution({ table: 'dag_executions', id: executionId });
260
+ }
261
+ }
262
+ async function runReconciliation(batchSize) {
263
+ const touchedExecutionIds = await reconcileSubSteps(batchSize);
264
+ await reconcileDagPlanningAttempts();
265
+ await reconcileDagExecutionAggregates(touchedExecutionIds, batchSize);
266
+ }
139
267
  /**
140
268
  * Update dags table: fetch generation stats for a planning attempt
141
269
  * and recalculate planning totals.
142
270
  */
143
271
  async function updateDag(job) {
272
+ if (!job.generationId)
273
+ return;
144
274
  const stats = await fetchGenerationStats(job.generationId);
145
275
  if (stats.error || !stats.data)
146
276
  return;
@@ -184,6 +314,9 @@ async function processJob(job) {
184
314
  case 'dags':
185
315
  await updateDag(job);
186
316
  break;
317
+ case 'reconcile':
318
+ await runReconciliation(reconcileBatchSize);
319
+ break;
187
320
  }
188
321
  }
189
322
  /**
@@ -198,6 +331,9 @@ self.onmessage = async (event) => {
198
331
  sqlite.exec('PRAGMA foreign_keys = ON;');
199
332
  db = drizzle(sqlite, { schema });
200
333
  apiKey = msg.apiKey;
334
+ reconcileBatchSize = msg.reconcileBatchSize && msg.reconcileBatchSize > 0
335
+ ? msg.reconcileBatchSize
336
+ : DEFAULT_RECONCILE_BATCH_SIZE;
201
337
  return;
202
338
  }
203
339
  if (msg.type === 'shutdown') {
@@ -1 +1 @@
1
- {"version":3,"file":"statsWorker.js","sourceRoot":"","sources":["../../../src/core/workers/statsWorker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"statsWorker.js","sourceRoot":"","sources":["../../../src/core/workers/statsWorker.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/db/client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAItC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,MAAM,CAAC,CAAC;AAgEzD;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe,GAAG,SAAS,CAKlF;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,IAAI,CAapC;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAahE;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,EAAE,EAAE,SAAS,EACb,SAAS,EAAE,CAAC,EAAE,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,GACvC,OAAO,CAAC,CAAC,CAAC,CAYZ"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/db/client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAItC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,MAAM,CAAC,CAAC;AA6IzD;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe,GAAG,SAAS,CAKlF;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,IAAI,CAapC;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAahE;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,EAAE,EAAE,SAAS,EACb,SAAS,EAAE,CAAC,EAAE,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,GACvC,OAAO,CAAC,CAAC,CAAC,CAYZ"}