@exellix/graph-engine 7.8.1 → 7.8.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.
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 7.8.2
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
|
|
7
|
+
- **ai-tasks error propagation:** Node failures preserve upstream `error.code` and full `error.message` from `@exellix/ai-tasks` (no `TASK_RUN_FAILED: {skillKey}` message wrapper).
|
|
8
|
+
- **Activix node fail records:** `failRecord` updates include `errorCode` alongside the upstream error message.
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- **Dependencies:** `@exellix/ai-tasks` ^8.8.0 (transitive: `@exellix/ai-skills` ≥6.5.0, `@exellix/xynthesis` ≥4.6.0, `@x12i/ai-profiles` ≥3.2.0).
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
- **Tests:** SubNets (`graph-qcrbz6t`) synthesis PRE alias pass-through; ai-tasks `SKILL_MODEL_RESOLUTION_FAILED` / `XYNTHESIS_*` error surfacing on `node:fail` and Activix `failRecord`.
|
|
17
|
+
|
|
3
18
|
## 7.8.1
|
|
4
19
|
|
|
5
20
|
### Changed
|
|
@@ -149,11 +149,18 @@ export function createActivixNodeActivityIntegration(ax, options) {
|
|
|
149
149
|
: typeof err === 'object' && err && 'message' in err
|
|
150
150
|
? String(err.message)
|
|
151
151
|
: String(err ?? 'unknown error');
|
|
152
|
+
const errorCode = (() => {
|
|
153
|
+
if (err == null || typeof err !== 'object')
|
|
154
|
+
return undefined;
|
|
155
|
+
const code = err.code;
|
|
156
|
+
return code != null ? String(code) : undefined;
|
|
157
|
+
})();
|
|
152
158
|
const outerResponse = nodeEvent.data?.response;
|
|
153
159
|
const outerMemoryEnd = nodeEvent.data?.memoryAfter;
|
|
154
160
|
const recordId = await recordPromise;
|
|
155
161
|
await ax.failRecord(recordId, message, {
|
|
156
162
|
failedAt: nodeEvent.timestamp,
|
|
163
|
+
...(errorCode != null ? { errorCode } : {}),
|
|
157
164
|
outer: {
|
|
158
165
|
output: {
|
|
159
166
|
response: outerResponse,
|
|
@@ -963,8 +963,10 @@ export function createExellixGraphRuntime(opts) {
|
|
|
963
963
|
const resMeta = res.metadata ?? res.meta;
|
|
964
964
|
const taskRunLog = [...retryOutcome.syntheticRunLog, ...extractTaskRunLogFromMetadata(resMeta)];
|
|
965
965
|
const logxerCorrelationId = extractLogxerCorrelationFromMetadata(resMeta);
|
|
966
|
-
const
|
|
967
|
-
|
|
966
|
+
const taskErrorMessage = res.error?.message ?? "Task run failed";
|
|
967
|
+
const taskErrorCode = res.error?.code ?? "TASK_RUN_FAILED";
|
|
968
|
+
const err = new Error(taskErrorMessage);
|
|
969
|
+
err.code = taskErrorCode;
|
|
968
970
|
err.skillKey = skillKey;
|
|
969
971
|
err.diagnostics = res.diagnostics;
|
|
970
972
|
err.nodeId = input.node?.id;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@exellix/graph-engine",
|
|
3
|
-
"version": "7.8.
|
|
3
|
+
"version": "7.8.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Graph executor SDK",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"scripts": {
|
|
26
26
|
"prebuild": "node scripts/clean-dist.mjs",
|
|
27
27
|
"build": "tsc",
|
|
28
|
-
"test": "npm run build && npm run check:no-legacy && tsx --test --test-force-exit tests/model-alias-contract.test.ts tests/reports-fixtures-pre-synthesis.test.ts tests/passthrough-parity.test.ts tests/step-retry-llm-call.test.ts tests/run-log-diagnostics.test.ts",
|
|
28
|
+
"test": "npm run build && npm run check:no-legacy && tsx --test --test-force-exit tests/model-alias-contract.test.ts tests/ai-tasks-error-propagation.test.ts tests/reports-fixtures-pre-synthesis.test.ts tests/passthrough-parity.test.ts tests/step-retry-llm-call.test.ts tests/run-log-diagnostics.test.ts",
|
|
29
29
|
"test:full": "npm run build && npm run check:no-legacy && tsx --test --test-force-exit tests/graph-engine.test.ts tests/passthrough-parity.test.ts tests/task-node-run-task-preflight.test.ts tests/reports-fixtures-pre-synthesis.test.ts tests/model-alias-contract.test.ts tests/step-retry-llm-call.test.ts",
|
|
30
30
|
"test:live": "npm run run:pre-synthesis",
|
|
31
31
|
"test:subnets-graph-fixture": "npm run build && node --test tests/subnets-graph.fixture.test.mjs",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"access": "public"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@exellix/ai-tasks": "^8.
|
|
55
|
+
"@exellix/ai-tasks": "^8.8.0",
|
|
56
56
|
"@x12i/activix": "8.5.0",
|
|
57
57
|
"@x12i/catalox": "5.1.3",
|
|
58
58
|
"@x12i/env": "4.0.1",
|