@exellix/ai-tasks 10.1.0 → 10.1.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.
@@ -0,0 +1,312 @@
1
+ /**
2
+ * Local GTF-FR-001 lifecycle implementation (fallback until @x12i/graphenix-trace-format exports these APIs).
3
+ * Production path: re-exported via traceLifecycle.ts adapter when upstream ships helpers.
4
+ */
5
+ import { randomUUID } from "crypto";
6
+ import { appendTraceEvent, deriveNodeStatusFromUnits } from "@x12i/graphenix-trace-format";
7
+ import { traceError } from "./mapObservationToTrace.js";
8
+ function appendUnique(ids, id) {
9
+ if (!ids.includes(id))
10
+ ids.push(id);
11
+ }
12
+ function nextSequence(trace) {
13
+ return (trace.events?.length ?? 0) + 1;
14
+ }
15
+ function appendLifecycleEvent(trace, event) {
16
+ appendTraceEvent(trace, {
17
+ ...event,
18
+ sequence: event.sequence ?? nextSequence(trace),
19
+ }, { mutate: true });
20
+ }
21
+ function ensureNodeRunning(trace, nodeId, ts) {
22
+ const node = trace.nodeExecutions[nodeId];
23
+ if (!node)
24
+ return;
25
+ if (node.status === "pending") {
26
+ trace.nodeExecutions[nodeId] = { ...node, status: "running", startedAt: ts };
27
+ appendUnique(trace.graphExecution.startedNodeIds, nodeId);
28
+ appendLifecycleEvent(trace, {
29
+ id: `evt:${randomUUID()}`,
30
+ ts,
31
+ level: "info",
32
+ type: "node.started",
33
+ nodeId,
34
+ });
35
+ }
36
+ }
37
+ export function markUnitStarted(trace, unit, at) {
38
+ const ts = at ?? new Date().toISOString();
39
+ const unitId = unit.unitId;
40
+ const existing = trace.unitExecutions[unitId];
41
+ if (!existing)
42
+ return;
43
+ const strategyKey = unit.strategyKey ?? unit.actionKey;
44
+ trace.unitExecutions[unitId] = {
45
+ ...existing,
46
+ status: "running",
47
+ startedAt: ts,
48
+ ...(typeof strategyKey === "string" ? { strategyKey } : {}),
49
+ };
50
+ appendUnique(trace.graphExecution.startedUnitIds, unitId);
51
+ ensureNodeRunning(trace, unit.nodeId, ts);
52
+ appendLifecycleEvent(trace, {
53
+ id: `evt:${randomUUID()}`,
54
+ ts,
55
+ level: "info",
56
+ type: "unit.started",
57
+ nodeId: unit.nodeId,
58
+ unitId,
59
+ unitKind: unit.unitKind,
60
+ evidence: {
61
+ unitKind: unit.unitKind,
62
+ invokeMode: unit.invokeMode,
63
+ strategyKey: unit.strategyKey,
64
+ skillKey: unit.skillKey,
65
+ modelSlot: unit.modelSlot,
66
+ },
67
+ });
68
+ }
69
+ export function markUnitCompleted(trace, unitId, outcome, unit) {
70
+ const ts = outcome.completedAt ?? new Date().toISOString();
71
+ const existing = trace.unitExecutions[unitId];
72
+ if (!existing)
73
+ return;
74
+ trace.unitExecutions[unitId] = {
75
+ ...existing,
76
+ status: "completed",
77
+ completedAt: ts,
78
+ durationMs: outcome.durationMs,
79
+ ...(outcome.modelInvocationIds !== undefined
80
+ ? { modelInvocationIds: outcome.modelInvocationIds }
81
+ : {}),
82
+ };
83
+ appendUnique(trace.graphExecution.completedUnitIds, unitId);
84
+ appendLifecycleEvent(trace, {
85
+ id: `evt:${randomUUID()}`,
86
+ ts,
87
+ level: "info",
88
+ type: "unit.completed",
89
+ nodeId: existing.nodeId,
90
+ unitId,
91
+ unitKind: existing.unitKind,
92
+ evidence: {
93
+ durationMs: outcome.durationMs,
94
+ modelInvocationIds: outcome.modelInvocationIds,
95
+ unitKind: unit?.unitKind ?? existing.unitKind,
96
+ },
97
+ });
98
+ }
99
+ export function markUnitFailed(trace, unitId, error, outcome, unit) {
100
+ const ts = outcome?.completedAt ?? new Date().toISOString();
101
+ const durationMs = outcome?.durationMs ?? 0;
102
+ const errorMessage = outcome?.errorMessage ??
103
+ (error instanceof Error ? error.message : typeof error === "string" ? error : String(error));
104
+ const existing = trace.unitExecutions[unitId];
105
+ if (!existing)
106
+ return;
107
+ trace.unitExecutions[unitId] = {
108
+ ...existing,
109
+ status: "failed",
110
+ completedAt: ts,
111
+ durationMs,
112
+ error: traceError(errorMessage, "UNIT_FAILED"),
113
+ };
114
+ appendUnique(trace.graphExecution.failedUnitIds, unitId);
115
+ appendLifecycleEvent(trace, {
116
+ id: `evt:${randomUUID()}`,
117
+ ts,
118
+ level: "error",
119
+ type: "unit.failed",
120
+ nodeId: existing.nodeId,
121
+ unitId,
122
+ unitKind: existing.unitKind,
123
+ evidence: {
124
+ errorMessage,
125
+ durationMs,
126
+ unitKind: unit?.unitKind ?? existing.unitKind,
127
+ },
128
+ });
129
+ }
130
+ function plannedResolvedInvocation(unit, trace) {
131
+ const selection = unit.modelSelection ?? { kind: "profileChoice", key: "vol/default" };
132
+ return {
133
+ provider: "pending",
134
+ modelId: "pending",
135
+ profileChoiceKey: selection.kind === "profileChoice" ? selection.key : undefined,
136
+ registryVersion: trace.profileRegistry?.version,
137
+ registryHash: trace.profileRegistry?.registryHash,
138
+ resolutionSource: "profileRegistry",
139
+ };
140
+ }
141
+ export function recordModelInvocationStarted(trace, args) {
142
+ const ts = args.startedAt ?? new Date().toISOString();
143
+ const { unit, invocationId, nodeId } = args;
144
+ const selection = unit.modelSelection ?? { kind: "profileChoice", key: "vol/default" };
145
+ trace.modelInvocations[invocationId] = {
146
+ invocationId,
147
+ nodeId,
148
+ unitId: unit.unitId,
149
+ slot: unit.modelSlot ?? "skillModel",
150
+ attempt: args.attempt ?? 1,
151
+ status: "started",
152
+ startedAt: ts,
153
+ plannedSelection: selection,
154
+ resolvedInvocation: plannedResolvedInvocation(unit, trace),
155
+ };
156
+ appendLifecycleEvent(trace, {
157
+ id: `evt:${randomUUID()}`,
158
+ ts,
159
+ level: "info",
160
+ type: "model.invocation.started",
161
+ nodeId,
162
+ unitId: unit.unitId,
163
+ modelSlot: unit.modelSlot,
164
+ evidence: { invocationId, modelSlot: unit.modelSlot },
165
+ });
166
+ }
167
+ function applyDataPolicyPreviews(trace, outcome) {
168
+ const policy = trace.diagnostics?.dataPolicy;
169
+ if (!policy?.storePrompts) {
170
+ return {};
171
+ }
172
+ const max = policy.maxPreviewChars ?? 512;
173
+ const clip = (s) => s === undefined ? undefined : s.length > max ? s.slice(0, max) : s;
174
+ return {
175
+ promptPreview: clip(outcome.promptPreview),
176
+ completionPreview: clip(outcome.completionPreview),
177
+ };
178
+ }
179
+ export function recordModelInvocationCompleted(trace, invocationId, outcome) {
180
+ const ts = outcome.completedAt ?? new Date().toISOString();
181
+ const existing = trace.modelInvocations[invocationId];
182
+ if (!existing)
183
+ return;
184
+ const previews = applyDataPolicyPreviews(trace, outcome);
185
+ trace.modelInvocations[invocationId] = {
186
+ ...existing,
187
+ status: "completed",
188
+ completedAt: ts,
189
+ durationMs: outcome.durationMs,
190
+ ...(outcome.usage ? { usage: outcome.usage } : {}),
191
+ ...(outcome.cost
192
+ ? {
193
+ cost: {
194
+ costUsd: outcome.cost.costUsd,
195
+ costStatus: outcome.cost.costStatus ?? "unknown",
196
+ },
197
+ }
198
+ : {}),
199
+ ...(outcome.resolvedInvocation ? { resolvedInvocation: outcome.resolvedInvocation } : {}),
200
+ ...previews,
201
+ };
202
+ const unitId = existing.unitId;
203
+ const unitExec = trace.unitExecutions[unitId];
204
+ if (unitExec) {
205
+ const ids = [...(unitExec.modelInvocationIds ?? [])];
206
+ appendUnique(ids, invocationId);
207
+ trace.unitExecutions[unitId] = { ...unitExec, modelInvocationIds: ids };
208
+ }
209
+ appendLifecycleEvent(trace, {
210
+ id: `evt:${randomUUID()}`,
211
+ ts,
212
+ level: "info",
213
+ type: "model.invocation.completed",
214
+ nodeId: existing.nodeId,
215
+ unitId: existing.unitId,
216
+ modelSlot: existing.slot,
217
+ evidence: { invocationId, durationMs: outcome.durationMs },
218
+ });
219
+ }
220
+ export function recordModelInvocationFailed(trace, invocationId, error, outcome) {
221
+ const ts = outcome?.completedAt ?? new Date().toISOString();
222
+ const durationMs = outcome?.durationMs ?? 0;
223
+ const errorMessage = outcome?.errorMessage ??
224
+ (error instanceof Error ? error.message : typeof error === "string" ? error : String(error));
225
+ const existing = trace.modelInvocations[invocationId];
226
+ if (!existing)
227
+ return;
228
+ trace.modelInvocations[invocationId] = {
229
+ ...existing,
230
+ status: "failed",
231
+ completedAt: ts,
232
+ durationMs,
233
+ error: traceError(errorMessage, "MODEL_INVOCATION_FAILED"),
234
+ };
235
+ appendLifecycleEvent(trace, {
236
+ id: `evt:${randomUUID()}`,
237
+ ts,
238
+ level: "error",
239
+ type: "model.invocation.failed",
240
+ nodeId: existing.nodeId,
241
+ unitId: existing.unitId,
242
+ modelSlot: existing.slot,
243
+ evidence: { invocationId, errorMessage },
244
+ });
245
+ }
246
+ export function appendFallbackAppliedEvent(trace, unit, extra) {
247
+ const ts = new Date().toISOString();
248
+ appendLifecycleEvent(trace, {
249
+ id: `evt:${randomUUID()}`,
250
+ ts,
251
+ level: "info",
252
+ type: "fallback.applied",
253
+ nodeId: unit.nodeId,
254
+ unitId: unit.unitId,
255
+ evidence: {
256
+ unitKind: unit.unitKind,
257
+ ...extra,
258
+ },
259
+ });
260
+ }
261
+ export function rollupNodeExecution(trace, nodeId) {
262
+ const nodeTrace = trace.nodeExecutions[nodeId];
263
+ if (!nodeTrace)
264
+ return;
265
+ const status = deriveNodeStatusFromUnits(trace, nodeId);
266
+ const units = nodeTrace.unitIds
267
+ .map((id) => trace.unitExecutions[id])
268
+ .filter((u) => !!u);
269
+ const startedTimes = units
270
+ .map((u) => u.startedAt)
271
+ .filter((t) => typeof t === "string")
272
+ .sort();
273
+ const completedTimes = units
274
+ .map((u) => u.completedAt)
275
+ .filter((t) => typeof t === "string")
276
+ .sort();
277
+ const startedAt = nodeTrace.startedAt ?? startedTimes[0];
278
+ const completedAt = status === "completed" || status === "failed" || status === "skipped"
279
+ ? (completedTimes[completedTimes.length - 1] ?? new Date().toISOString())
280
+ : undefined;
281
+ let durationMs = units.reduce((sum, u) => sum + (u.durationMs ?? 0), 0);
282
+ if (startedAt && completedAt) {
283
+ durationMs = Math.max(0, new Date(completedAt).getTime() - new Date(startedAt).getTime());
284
+ }
285
+ trace.nodeExecutions[nodeId] = {
286
+ ...nodeTrace,
287
+ status,
288
+ ...(startedAt ? { startedAt } : {}),
289
+ ...(completedAt ? { completedAt, durationMs } : {}),
290
+ };
291
+ if (status === "completed") {
292
+ appendUnique(trace.graphExecution.completedNodeIds, nodeId);
293
+ appendLifecycleEvent(trace, {
294
+ id: `evt:${randomUUID()}`,
295
+ ts: completedAt ?? new Date().toISOString(),
296
+ level: "info",
297
+ type: "node.completed",
298
+ nodeId,
299
+ });
300
+ }
301
+ else if (status === "failed") {
302
+ appendUnique(trace.graphExecution.failedNodeIds, nodeId);
303
+ appendLifecycleEvent(trace, {
304
+ id: `evt:${randomUUID()}`,
305
+ ts: completedAt ?? new Date().toISOString(),
306
+ level: "error",
307
+ type: "node.failed",
308
+ nodeId,
309
+ });
310
+ }
311
+ }
312
+ //# sourceMappingURL=traceLifecycleLocal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traceLifecycleLocal.js","sourceRoot":"","sources":["../../src/node-execution/traceLifecycleLocal.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAS3F,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,SAAS,YAAY,CAAC,GAAa,EAAE,EAAU;IAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,YAAY,CAAC,KAA4B;IAChD,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAA4B,EAC5B,KAA2D;IAE3D,gBAAgB,CACd,KAAK,EACL;QACE,GAAG,KAAK;QACR,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,YAAY,CAAC,KAAK,CAAC;KAClC,EACf,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAA4B,EAAE,MAAc,EAAE,EAAU;IACjF,MAAM,IAAI,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;QAC7E,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC1D,oBAAoB,CAAC,KAAK,EAAE;YAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;YACzB,EAAE;YACF,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,cAAc;YACpB,MAAM;SACP,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAsCD,MAAM,UAAU,eAAe,CAC7B,KAA4B,EAC5B,IAAyB,EACzB,EAAW;IAEX,MAAM,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,MAAM,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC;IACvD,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG;QAC7B,GAAG,QAAQ;QACX,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,EAAE;QACb,GAAG,CAAC,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5D,CAAC;IACF,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IAC1D,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAE1C,oBAAoB,CAAC,KAAK,EAAE;QAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;QACzB,EAAE;QACF,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM;QACN,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE;YACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,KAA4B,EAC5B,MAAc,EACd,OAA8B,EAC9B,IAA0B;IAE1B,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3D,MAAM,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG;QAC7B,GAAG,QAAQ;QACX,MAAM,EAAE,WAAW;QACnB,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,GAAG,CAAC,OAAO,CAAC,kBAAkB,KAAK,SAAS;YAC1C,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,EAAE;YACpD,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IACF,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAE5D,oBAAoB,CAAC,KAAK,EAAE;QAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;QACzB,EAAE;QACF,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,MAAM;QACN,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,QAAQ,EAAE;YACR,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;YAC9C,QAAQ,EAAE,IAAI,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ;SAC9C;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,KAA4B,EAC5B,MAAc,EACd,KAAc,EACd,OAA4B,EAC5B,IAA0B;IAE1B,MAAM,EAAE,GAAG,OAAO,EAAE,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5D,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,CAAC,CAAC;IAC5C,MAAM,YAAY,GAChB,OAAO,EAAE,YAAY;QACrB,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG;QAC7B,GAAG,QAAQ;QACX,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,EAAE;QACf,UAAU;QACV,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE,aAAa,CAAC;KAC/C,CAAC;IACF,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAEzD,oBAAoB,CAAC,KAAK,EAAE;QAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;QACzB,EAAE;QACF,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,MAAM;QACN,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,QAAQ,EAAE;YACR,YAAY;YACZ,UAAU;YACV,QAAQ,EAAE,IAAI,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ;SAC9C;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,yBAAyB,CAChC,IAAyB,EACzB,KAA4B;IAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC;IACvF,OAAO;QACL,QAAQ,EAAE,SAAS;QACnB,OAAO,EAAE,SAAS;QAClB,gBAAgB,EAAE,SAAS,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;QAChF,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,OAAO;QAC/C,YAAY,EAAE,KAAK,CAAC,eAAe,EAAE,YAAY;QACjD,gBAAgB,EAAE,iBAAiB;KACpC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,KAA4B,EAC5B,IAA8B;IAE9B,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtD,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC;IAEvF,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,GAAG;QACrC,YAAY;QACZ,MAAM;QACN,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,YAAY;QACpC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC;QAC1B,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,EAAE;QACb,gBAAgB,EAAE,SAAS;QAC3B,kBAAkB,EAAE,yBAAyB,CAAC,IAAI,EAAE,KAAK,CAAC;KAC5B,CAAC;IAEjC,oBAAoB,CAAC,KAAK,EAAE;QAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;QACzB,EAAE;QACF,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,0BAA0B;QAChC,MAAM;QACN,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,QAAQ,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;KACtD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAA4B,EAC5B,OAA+B;IAE/B,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,EAAE,UAAU,CAAC;IAC7C,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,IAAI,GAAG,CAAC;IAC1C,MAAM,IAAI,GAAG,CAAC,CAAqB,EAAE,EAAE,CACrC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,OAAO;QACL,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QAC1C,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,KAA4B,EAC5B,YAAoB,EACpB,OAA+B;IAE/B,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3D,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACtD,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,MAAM,QAAQ,GAAG,uBAAuB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACzD,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,GAAG;QACrC,GAAG,QAAQ;QACX,MAAM,EAAE,WAAW;QACnB,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,GAAG,CAAC,OAAO,CAAC,IAAI;YACd,CAAC,CAAC;gBACE,IAAI,EAAE;oBACJ,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;oBAC7B,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,IAAI,SAAS;iBAC7B;aACtB;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,GAAG,QAAQ;KACZ,CAAC;IAEF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,CAAC;QACrD,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAChC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,kBAAkB,EAAE,GAAG,EAAE,CAAC;IAC1E,CAAC;IAED,oBAAoB,CAAC,KAAK,EAAE;QAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;QACzB,EAAE;QACF,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,4BAA4B;QAClC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,SAAS,EAAE,QAAQ,CAAC,IAAI;QACxB,QAAQ,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;KAC3D,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,KAA4B,EAC5B,YAAoB,EACpB,KAAc,EACd,OAAgC;IAEhC,MAAM,EAAE,GAAG,OAAO,EAAE,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5D,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,CAAC,CAAC;IAC5C,MAAM,YAAY,GAChB,OAAO,EAAE,YAAY;QACrB,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACtD,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,GAAG;QACrC,GAAG,QAAQ;QACX,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,EAAE;QACf,UAAU;QACV,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE,yBAAyB,CAAC;KAC3D,CAAC;IAEF,oBAAoB,CAAC,KAAK,EAAE;QAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;QACzB,EAAE;QACF,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,SAAS,EAAE,QAAQ,CAAC,IAAI;QACxB,QAAQ,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE;KACzC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,KAA4B,EAC5B,IAAyB,EACzB,KAA+B;IAE/B,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpC,oBAAoB,CAAC,KAAK,EAAE;QAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;QACzB,EAAE;QACF,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE;YACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,KAAK;SACT;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAA4B,EAAE,MAAc;IAC9E,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC/C,IAAI,CAAC,SAAS;QAAE,OAAO;IAEvB,MAAM,MAAM,GAAG,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO;SAC5B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;SACrC,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAElD,MAAM,YAAY,GAAG,KAAK;SACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SACvB,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;SACjD,IAAI,EAAE,CAAC;IACV,MAAM,cAAc,GAAG,KAAK;SACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;SACzB,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;SACjD,IAAI,EAAE,CAAC;IAEV,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,WAAW,GACf,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,SAAS;QACnE,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACzE,CAAC,CAAC,SAAS,CAAC;IAEhB,IAAI,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxE,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;QAC7B,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG;QAC7B,GAAG,SAAS;QACZ,MAAM;QACN,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpD,CAAC;IAEF,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAC3B,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;QAC5D,oBAAoB,CAAC,KAAK,EAAE;YAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;YACzB,EAAE,EAAE,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YAC3C,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,gBAAgB;YACtB,MAAM;SACP,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACzD,oBAAoB,CAAC,KAAK,EAAE;YAC1B,EAAE,EAAE,OAAO,UAAU,EAAE,EAAE;YACzB,EAAE,EAAE,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YAC3C,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,aAAa;YACnB,MAAM;SACP,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -31,9 +31,9 @@ Plan `mapping` units are orchestrator-owned. Graph-engine applies `nodePlan.exec
31
31
 
32
32
  | Package | Role |
33
33
  | ------- | ---- |
34
- | `@x12i/graphenix-plan-format` ^2.10.0 | `validateNodeExecutionPlan` |
35
- | `@x12i/graphenix-trace-format` ^2.10.0 | `appendTraceEvent`, lifecycle index sync via ai-tasks `traceLifecycle` |
36
- | `@x12i/graphenix-executable-contracts` ^2.10.0 | Types |
34
+ | `@x12i/graphenix-plan-format` ^2.11.0 | `validateNodeExecutionPlan` |
35
+ | `@x12i/graphenix-trace-format` ^2.11.0 | `appendTraceEvent`; GTF-FR-001 lifecycle via ai-tasks adapter |
36
+ | `@x12i/graphenix-executable-contracts` ^2.11.0 | Types |
37
37
 
38
38
  ## Test helper
39
39
 
package/package.json CHANGED
@@ -1,96 +1,96 @@
1
- {
2
- "name": "@exellix/ai-tasks",
3
- "version": "10.1.0",
4
- "description": "Task orchestration for the Exellix stack: runTask() with local handlers or LLM-backed execution, task-scoped memory/context enrichment, and executor dispatch via @exellix/ai-skills. ERC-compliant.",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "types": "dist/index.d.ts",
8
- "exports": {
9
- ".": "./dist/index.js"
10
- },
11
- "files": [
12
- "dist",
13
- "README.md",
14
- "CHANGELOG.md",
15
- "RUNTASK_REQUEST.md",
16
- "documenations",
17
- ".docs",
18
- ".env.example",
19
- ".metadata"
20
- ],
21
- "scripts": {
22
- "build": "tsc",
23
- "dev": "ts-node src/index.ts",
24
- "prepublishOnly": "node scripts/assert-publishable-deps.mjs && npm run build && node scripts/ensure-nx-content-md-variants.mjs",
25
- "deps:latest": "npx npm-check-updates -u && npm install",
26
- "test": "node scripts/ensure-xynthesis-dist.mjs && node scripts/ensure-ai-skills-dist.mjs && node scripts/clean-dist-test.mjs && tsc -p tsconfig.test.json && node scripts/copy-test-fixtures.mjs && node --test --test-force-exit --test-concurrency=1 dist-test/test/trace/*.js dist-test/test/node-execution/**/*.js dist-test/test/aiScoping/*.js dist-test/test/intermediateSteps/*.js dist-test/test/post-steps/**/*.js dist-test/test/planWebScopeQuestions/*.js dist-test/test/synthesis/*.js dist-test/test/fact-guard/*.js dist-test/test/utils/*.js dist-test/test/errors/*.js dist-test/test/validation/*.js dist-test/test/web-scope/*.js dist-test/test/task-strategies/*.js dist-test/test/observability/*.js dist-test/test/run-task/*.js dist-test/test/internal/*.js dist-test/test/execution-strategies/*.js dist-test/test/invocation/*.js dist-test/test/e2e/*.js",
27
- "test:e2e:intermediateSteps": "node scripts/run-with-env.mjs RUN_INTERMEDIATE_STEPS_E2E=1 npm run test",
28
- "test:e2e:synthesis": "node scripts/run-synthesis-e2e.mjs",
29
- "test:e2e:webScope": "node scripts/run-web-scope-e2e.mjs",
30
- "test:fact-guard": "node scripts/ensure-xynthesis-dist.mjs && node scripts/clean-dist-test.mjs && tsc -p tsconfig.test.json && node --test --test-force-exit dist-test/test/fact-guard/*.js dist-test/test/post-steps/runPostStepLlmCall.factGuard.test.js",
31
- "test:live": "node scripts/run-live-ai-e2e.mjs",
32
- "publish:task-strategies": "tsx scripts/publish-ai-task-strategies-catalog.ts"
33
- },
34
- "keywords": [
35
- "ai",
36
- "tasks",
37
- "llm",
38
- "skills",
39
- "orchestration",
40
- "erc",
41
- "env-ready"
42
- ],
43
- "author": "exellix",
44
- "license": "exellix-license",
45
- "repository": {
46
- "type": "git",
47
- "url": "git+ssh://git@github.com/exellix/ai-tasks.git"
48
- },
49
- "publishConfig": {
50
- "registry": "https://registry.npmjs.org/",
51
- "access": "public"
52
- },
53
- "engines": {
54
- "node": ">=20"
55
- },
56
- "overrides": {
57
- "@x12i/catalox": "^5.9.8",
58
- "@x12i/catalox-contracts": "^5.9.8"
59
- },
60
- "dependencies": {
61
- "@exellix/ai-skills": "^6.12.5",
62
- "@exellix/fact-guard-adapters": "^1.0.1",
63
- "@exellix/fact-guard-enrichment": "^1.0.1",
64
- "@exellix/fact-guard-policies": "^1.0.1",
65
- "@exellix/fact-guard-types": "^1.0.1",
66
- "@exellix/fact-guard-validation": "^1.0.1",
67
- "@exellix/xynthesis": "^4.8.4",
68
- "@x12i/activix": "^8.6.3",
69
- "@x12i/ai-profiles": "^3.4.0",
70
- "@x12i/catalox": "^5.9.8",
71
- "@x12i/execution-memory-manager": "^1.2.0",
72
- "@x12i/funcx": "^4.9.13",
73
- "@x12i/graphenix-core": "^2.10.0",
74
- "@x12i/graphenix-executable-contracts": "^2.10.0",
75
- "@x12i/graphenix-plan-format": "^2.10.0",
76
- "@x12i/graphenix-trace-format": "^2.10.0",
77
- "@x12i/logxer": "^4.6.0",
78
- "@x12i/optimixer": "^3.5.2",
79
- "@x12i/rendrix": "^4.3.0",
80
- "@x12i/search-adapter": "^1.5.1",
81
- "@x12i/web-scoper": "^1.1.1",
82
- "handlebars": "^4.7.8",
83
- "nx-cache": "^1.0.2"
84
- },
85
- "devDependencies": {
86
- "@types/node": "^18.0.0 || ^20.0.0",
87
- "@x12i/catalox-contracts": "^5.9.8",
88
- "@x12i/graphenix-authoring-format": "^2.10.0",
89
- "@x12i/graphenix-plan-compiler": "^2.10.0",
90
- "@x12i/graphenix-task-node-format": "^2.10.0",
91
- "dotenv": "^16.0.0",
92
- "ts-node": "^10.9.0",
93
- "tsx": "^4.0.0",
94
- "typescript": "^5.0.0"
95
- }
96
- }
1
+ {
2
+ "name": "@exellix/ai-tasks",
3
+ "version": "10.1.1",
4
+ "description": "Task orchestration for the Exellix stack: runTask() with local handlers or LLM-backed execution, task-scoped memory/context enrichment, and executor dispatch via @exellix/ai-skills. ERC-compliant.",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": "./dist/index.js"
10
+ },
11
+ "files": [
12
+ "dist",
13
+ "README.md",
14
+ "CHANGELOG.md",
15
+ "RUNTASK_REQUEST.md",
16
+ "documenations",
17
+ ".docs",
18
+ ".env.example",
19
+ ".metadata"
20
+ ],
21
+ "scripts": {
22
+ "build": "tsc",
23
+ "dev": "ts-node src/index.ts",
24
+ "prepublishOnly": "node scripts/assert-publishable-deps.mjs && npm run build && node scripts/ensure-nx-content-md-variants.mjs",
25
+ "deps:latest": "npx npm-check-updates -u && npm install",
26
+ "test": "node scripts/ensure-xynthesis-dist.mjs && node scripts/ensure-ai-skills-dist.mjs && node scripts/clean-dist-test.mjs && tsc -p tsconfig.test.json && node scripts/copy-test-fixtures.mjs && node --test --test-force-exit --test-concurrency=1 dist-test/test/trace/*.js dist-test/test/node-execution/**/*.js dist-test/test/aiScoping/*.js dist-test/test/intermediateSteps/*.js dist-test/test/post-steps/**/*.js dist-test/test/planWebScopeQuestions/*.js dist-test/test/synthesis/*.js dist-test/test/fact-guard/*.js dist-test/test/utils/*.js dist-test/test/errors/*.js dist-test/test/validation/*.js dist-test/test/web-scope/*.js dist-test/test/task-strategies/*.js dist-test/test/observability/*.js dist-test/test/run-task/*.js dist-test/test/internal/*.js dist-test/test/execution-strategies/*.js dist-test/test/invocation/*.js dist-test/test/e2e/*.js",
27
+ "test:e2e:intermediateSteps": "node scripts/run-with-env.mjs RUN_INTERMEDIATE_STEPS_E2E=1 npm run test",
28
+ "test:e2e:synthesis": "node scripts/run-synthesis-e2e.mjs",
29
+ "test:e2e:webScope": "node scripts/run-web-scope-e2e.mjs",
30
+ "test:fact-guard": "node scripts/ensure-xynthesis-dist.mjs && node scripts/clean-dist-test.mjs && tsc -p tsconfig.test.json && node --test --test-force-exit dist-test/test/fact-guard/*.js dist-test/test/post-steps/runPostStepLlmCall.factGuard.test.js",
31
+ "test:live": "node scripts/run-live-ai-e2e.mjs",
32
+ "publish:task-strategies": "tsx scripts/publish-ai-task-strategies-catalog.ts"
33
+ },
34
+ "keywords": [
35
+ "ai",
36
+ "tasks",
37
+ "llm",
38
+ "skills",
39
+ "orchestration",
40
+ "erc",
41
+ "env-ready"
42
+ ],
43
+ "author": "exellix",
44
+ "license": "exellix-license",
45
+ "repository": {
46
+ "type": "git",
47
+ "url": "git+ssh://git@github.com/exellix/ai-tasks.git"
48
+ },
49
+ "publishConfig": {
50
+ "registry": "https://registry.npmjs.org/",
51
+ "access": "public"
52
+ },
53
+ "engines": {
54
+ "node": ">=20"
55
+ },
56
+ "overrides": {
57
+ "@x12i/catalox": "^5.9.8",
58
+ "@x12i/catalox-contracts": "^5.9.8"
59
+ },
60
+ "dependencies": {
61
+ "@exellix/ai-skills": "^6.12.5",
62
+ "@exellix/fact-guard-adapters": "^1.0.1",
63
+ "@exellix/fact-guard-enrichment": "^1.0.1",
64
+ "@exellix/fact-guard-policies": "^1.0.1",
65
+ "@exellix/fact-guard-types": "^1.0.1",
66
+ "@exellix/fact-guard-validation": "^1.0.1",
67
+ "@exellix/xynthesis": "^4.8.4",
68
+ "@x12i/activix": "^8.6.3",
69
+ "@x12i/ai-profiles": "^3.4.0",
70
+ "@x12i/catalox": "^5.9.8",
71
+ "@x12i/execution-memory-manager": "^1.2.0",
72
+ "@x12i/funcx": "^4.9.13",
73
+ "@x12i/graphenix-core": "^2.11.0",
74
+ "@x12i/graphenix-executable-contracts": "^2.11.0",
75
+ "@x12i/graphenix-plan-format": "^2.11.0",
76
+ "@x12i/graphenix-trace-format": "^2.11.0",
77
+ "@x12i/logxer": "^4.6.0",
78
+ "@x12i/optimixer": "^3.5.2",
79
+ "@x12i/rendrix": "^4.3.0",
80
+ "@x12i/search-adapter": "^1.5.1",
81
+ "@x12i/web-scoper": "^1.1.1",
82
+ "handlebars": "^4.7.8",
83
+ "nx-cache": "^1.0.2"
84
+ },
85
+ "devDependencies": {
86
+ "@types/node": "^18.0.0 || ^20.0.0",
87
+ "@x12i/catalox-contracts": "^5.9.8",
88
+ "@x12i/graphenix-authoring-format": "^2.11.0",
89
+ "@x12i/graphenix-plan-compiler": "^2.11.0",
90
+ "@x12i/graphenix-task-node-format": "^2.11.0",
91
+ "dotenv": "^16.0.0",
92
+ "ts-node": "^10.9.0",
93
+ "tsx": "^4.0.0",
94
+ "typescript": "^5.0.0"
95
+ }
96
+ }