@exellix/graph-engine 7.2.10 → 7.2.13
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 +12 -0
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.js +1 -0
- package/dist/src/runtime/ExellixGraphRuntime.js +581 -564
- package/dist/src/runtime/buildRunLog.js +12 -0
- package/dist/src/runtime/graphEngineLogxer.d.ts +42 -0
- package/dist/src/runtime/graphEngineLogxer.js +165 -0
- package/dist/src/runtime/mergeExellixGraphRuntimeInvocation.js +1 -0
- package/dist/src/runtime/runtimeObjects.d.ts +5 -18
- package/dist/src/runtime/runtimeObjects.js +0 -4
- package/dist/src/types/options.d.ts +6 -0
- package/dist/src/types/runLog.d.ts +9 -0
- package/dist/src/types/runLog.js +0 -4
- package/package.json +7 -7
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { normalizeLogRecord } from '@x12i/logxer';
|
|
1
2
|
import { AI_TASKS_LOGXER_RUN_ID_METADATA_KEY, AI_TASKS_RUN_LOG_METADATA_KEY, DEFAULT_MAX_RUN_LOG_DATA_JSON_CHARS, DEFAULT_MAX_RUN_LOG_ENTRIES, } from '../types/runLog.js';
|
|
2
3
|
function safeJsonLen(value) {
|
|
3
4
|
try {
|
|
@@ -68,6 +69,13 @@ export function normalizeExternalRunLogEntries(raw) {
|
|
|
68
69
|
? r.correlationIds
|
|
69
70
|
: undefined;
|
|
70
71
|
const data = 'data' in r ? r.data : undefined;
|
|
72
|
+
const normalized = normalizeLogRecord(r);
|
|
73
|
+
const code = typeof normalized.code === 'string' && normalized.code.length > 0 ? normalized.code : undefined;
|
|
74
|
+
const diagnostics = normalized.diagnostics;
|
|
75
|
+
const debugKind = typeof r.debugKind === 'string' && r.debugKind.length > 0
|
|
76
|
+
? r.debugKind
|
|
77
|
+
: undefined;
|
|
78
|
+
const evidence = Array.isArray(r.evidence) ? r.evidence : undefined;
|
|
71
79
|
out.push({
|
|
72
80
|
ts,
|
|
73
81
|
level,
|
|
@@ -78,6 +86,10 @@ export function normalizeExternalRunLogEntries(raw) {
|
|
|
78
86
|
...(correlationIds ? { correlationIds } : {}),
|
|
79
87
|
message,
|
|
80
88
|
...(data !== undefined ? { data } : {}),
|
|
89
|
+
...(code ? { code } : {}),
|
|
90
|
+
...(diagnostics ? { diagnostics } : {}),
|
|
91
|
+
...(debugKind ? { debugKind } : {}),
|
|
92
|
+
...(evidence?.length ? { evidence } : {}),
|
|
81
93
|
});
|
|
82
94
|
}
|
|
83
95
|
return out;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graph-engine Logxer integration (@x12i/logxer 4.5.x).
|
|
3
|
+
* Structured runtime logs, correlation context, stack log-level pass-through, and queryable in-process logs.
|
|
4
|
+
*/
|
|
5
|
+
import { DebugLogAbstract, exceptionEvidence, fieldEvidence, runWithLogContext, patchLogContext } from '@x12i/logxer';
|
|
6
|
+
import type { GetJobLogsInput, GetJobLogsResult, Logxer, LogRuntimeContext, StackLoggingOptions } from '@x12i/logxer';
|
|
7
|
+
import type { LogxerQueryableClient, RuntimeObjects } from './runtimeObjects.js';
|
|
8
|
+
/** Env prefix for package-level log level: `GRAPH_ENGINE_LOGS_LEVEL` (canonical). */
|
|
9
|
+
export declare const GRAPH_ENGINE_LOGXER_ENV_PREFIX: "GRAPH_ENGINE";
|
|
10
|
+
/**
|
|
11
|
+
* Factory for a graph-engine Logxer instance.
|
|
12
|
+
* Pass `logging` from host {@link StackLoggingOptions} (logxer 4.5+ stack pass-through).
|
|
13
|
+
*/
|
|
14
|
+
export declare function createGraphEngineLogxer(options?: {
|
|
15
|
+
logging?: StackLoggingOptions;
|
|
16
|
+
}): Logxer;
|
|
17
|
+
/** Default process logger (env / host registry). Lazily created without stack overrides. */
|
|
18
|
+
export declare function getGraphEngineLogxer(): Logxer;
|
|
19
|
+
/** Bind the logger used for the current graph run (cleared in {@link clearGraphEngineRunLogxer}). */
|
|
20
|
+
export declare function bindGraphEngineRunLogxer(logxer: Logxer): void;
|
|
21
|
+
export declare function clearGraphEngineRunLogxer(): void;
|
|
22
|
+
/** Queryable client surface for {@link RuntimeObjects.logxerClient}. */
|
|
23
|
+
export declare function createGraphEngineLogxerClient(logxer?: Logxer): LogxerQueryableClient;
|
|
24
|
+
/** Attach graph-level Logxer query client when hosts omit one on runtimeObjects. */
|
|
25
|
+
export declare function ensureGraphEngineLogxerOnRuntimeObjects(runtimeObjects: RuntimeObjects | undefined, logxer?: Logxer): void;
|
|
26
|
+
/** Run graph work with Logxer correlation ids (jobId, taskId, graphId, runId). */
|
|
27
|
+
export declare function runGraphWithLogContext<T>(ctx: LogRuntimeContext, fn: () => T | Promise<T>): Promise<T>;
|
|
28
|
+
/** Narrow node-scoped correlation inside an active graph run context. */
|
|
29
|
+
export declare function patchGraphNodeLogContext(nodeId: string): void;
|
|
30
|
+
/** Gated verbose/state traces (replaces DEBUG_EXECUTION_MEMORY / DEBUG_OUTPUT_MAPPING console.log). */
|
|
31
|
+
export declare function traceExecutionMemory(scope: 'executeNode' | 'executeGraph', message: string, data?: Record<string, unknown>): void;
|
|
32
|
+
/** Emit a catalog-backed graph error log when a node/graph failure occurs. */
|
|
33
|
+
export declare function logGraphEngineErrorCode(code: string, _message: string, ctx: {
|
|
34
|
+
graphId?: string;
|
|
35
|
+
nodeId?: string;
|
|
36
|
+
jobId?: string;
|
|
37
|
+
taskId?: string;
|
|
38
|
+
error?: unknown;
|
|
39
|
+
evidence?: Record<string, unknown>;
|
|
40
|
+
}): void;
|
|
41
|
+
export { DebugLogAbstract, fieldEvidence, exceptionEvidence, runWithLogContext, patchLogContext };
|
|
42
|
+
export type { GetJobLogsInput, GetJobLogsResult, LogRuntimeContext, StackLoggingOptions };
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graph-engine Logxer integration (@x12i/logxer 4.5.x).
|
|
3
|
+
* Structured runtime logs, correlation context, stack log-level pass-through, and queryable in-process logs.
|
|
4
|
+
*/
|
|
5
|
+
import { createLogxer, DebugLogAbstract, exceptionEvidence, fieldEvidence, runWithLogContext, patchLogContext, } from '@x12i/logxer';
|
|
6
|
+
import { ExellixGraphErrorCode } from '../errors/exellixGraphErrorCodes.js';
|
|
7
|
+
import { EXELLIX_GRAPH_RUNTIME_PACKAGE_NAME } from './runtimeObjects.js';
|
|
8
|
+
/** Env prefix for package-level log level: `GRAPH_ENGINE_LOGS_LEVEL` (canonical). */
|
|
9
|
+
export const GRAPH_ENGINE_LOGXER_ENV_PREFIX = 'GRAPH_ENGINE';
|
|
10
|
+
const GRAPH_ENGINE_DIAGNOSTIC_CATALOG = {
|
|
11
|
+
[ExellixGraphErrorCode.GRAPH_ENTRY_DATA_FILTERS_REJECTED]: {
|
|
12
|
+
defaultLevel: 'error',
|
|
13
|
+
title: 'Graph entry data filters rejected',
|
|
14
|
+
impact: 'The graph run cannot start because structured entry filters did not accept runtime input.',
|
|
15
|
+
possibleCauses: [
|
|
16
|
+
'metadata.graphEntry.dataFilters shape is unsupported or evaluated false.',
|
|
17
|
+
'runtime.executionMemory.input is missing expected fields for the filter contract.',
|
|
18
|
+
],
|
|
19
|
+
remediation: [
|
|
20
|
+
'Inspect metadata.graphEntry.dataFilters against exellix.dataFilters.v1.',
|
|
21
|
+
'Verify runtime.executionMemory.input before executeGraph.',
|
|
22
|
+
],
|
|
23
|
+
retryable: false,
|
|
24
|
+
userActionRequired: true,
|
|
25
|
+
confidence: 'high',
|
|
26
|
+
},
|
|
27
|
+
[ExellixGraphErrorCode.MAIN_READINESS_FAILED]: {
|
|
28
|
+
defaultLevel: 'error',
|
|
29
|
+
title: 'MAIN task readiness failed',
|
|
30
|
+
impact: 'The node MAIN runTask call was blocked before ai-tasks could execute.',
|
|
31
|
+
possibleCauses: [
|
|
32
|
+
'Execution input or synthesized context did not satisfy MAIN readiness policy.',
|
|
33
|
+
'Required smartInput paths or memory buckets are empty.',
|
|
34
|
+
],
|
|
35
|
+
remediation: [
|
|
36
|
+
'Inspect taskNodeMainReadiness evaluation for the node.',
|
|
37
|
+
'Verify executionMemory input and xynthesized seeding.',
|
|
38
|
+
],
|
|
39
|
+
retryable: false,
|
|
40
|
+
userActionRequired: true,
|
|
41
|
+
confidence: 'high',
|
|
42
|
+
},
|
|
43
|
+
[ExellixGraphErrorCode.NODE_EXECUTION_FAILED]: {
|
|
44
|
+
defaultLevel: 'error',
|
|
45
|
+
title: 'Graph node execution failed',
|
|
46
|
+
impact: 'The node did not complete successfully; downstream nodes may be skipped.',
|
|
47
|
+
possibleCauses: [
|
|
48
|
+
'runTask returned an error or threw.',
|
|
49
|
+
'Local skill execution failed.',
|
|
50
|
+
'Engine PRE/POST strategy utility failed.',
|
|
51
|
+
],
|
|
52
|
+
remediation: [
|
|
53
|
+
'Inspect node runLog lines and aiTasksObservability.',
|
|
54
|
+
'Check runTask response error and metadata.runLog.',
|
|
55
|
+
],
|
|
56
|
+
retryable: true,
|
|
57
|
+
userActionRequired: false,
|
|
58
|
+
confidence: 'medium',
|
|
59
|
+
},
|
|
60
|
+
[ExellixGraphErrorCode.GRAPH_EXECUTION_FAILED]: {
|
|
61
|
+
defaultLevel: 'error',
|
|
62
|
+
title: 'Graph execution failed',
|
|
63
|
+
impact: 'The graph run ended in a failed state.',
|
|
64
|
+
possibleCauses: [
|
|
65
|
+
'One or more nodes failed under failFast or finalizer failure.',
|
|
66
|
+
'Graph entry gate or finalizer validation failed.',
|
|
67
|
+
],
|
|
68
|
+
remediation: [
|
|
69
|
+
'Inspect ExecuteGraphResult.errors and runLog.',
|
|
70
|
+
'Use runtimeObjects.logxerClient.getJobLogs for in-process diagnostics.',
|
|
71
|
+
],
|
|
72
|
+
retryable: true,
|
|
73
|
+
userActionRequired: false,
|
|
74
|
+
confidence: 'medium',
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
let defaultLogxer;
|
|
78
|
+
/** Active logger for the current `executeGraph` run (falls back to {@link defaultLogxer}). */
|
|
79
|
+
let activeRunLogxer;
|
|
80
|
+
function buildGraphEngineLogxerConfig(logging) {
|
|
81
|
+
return {
|
|
82
|
+
runtimeIdentity: { service: 'graph-engine' },
|
|
83
|
+
diagnostics: {
|
|
84
|
+
catalog: GRAPH_ENGINE_DIAGNOSTIC_CATALOG,
|
|
85
|
+
},
|
|
86
|
+
...(logging ? { stack: logging } : {}),
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Factory for a graph-engine Logxer instance.
|
|
91
|
+
* Pass `logging` from host {@link StackLoggingOptions} (logxer 4.5+ stack pass-through).
|
|
92
|
+
*/
|
|
93
|
+
export function createGraphEngineLogxer(options) {
|
|
94
|
+
return createLogxer({
|
|
95
|
+
packageName: EXELLIX_GRAPH_RUNTIME_PACKAGE_NAME,
|
|
96
|
+
envPrefix: GRAPH_ENGINE_LOGXER_ENV_PREFIX,
|
|
97
|
+
debugNamespace: 'graph-engine',
|
|
98
|
+
}, buildGraphEngineLogxerConfig(options?.logging));
|
|
99
|
+
}
|
|
100
|
+
/** Default process logger (env / host registry). Lazily created without stack overrides. */
|
|
101
|
+
export function getGraphEngineLogxer() {
|
|
102
|
+
if (!defaultLogxer) {
|
|
103
|
+
defaultLogxer = createGraphEngineLogxer();
|
|
104
|
+
}
|
|
105
|
+
return activeRunLogxer ?? defaultLogxer;
|
|
106
|
+
}
|
|
107
|
+
/** Bind the logger used for the current graph run (cleared in {@link clearGraphEngineRunLogxer}). */
|
|
108
|
+
export function bindGraphEngineRunLogxer(logxer) {
|
|
109
|
+
activeRunLogxer = logxer;
|
|
110
|
+
}
|
|
111
|
+
export function clearGraphEngineRunLogxer() {
|
|
112
|
+
activeRunLogxer = undefined;
|
|
113
|
+
}
|
|
114
|
+
/** Queryable client surface for {@link RuntimeObjects.logxerClient}. */
|
|
115
|
+
export function createGraphEngineLogxerClient(logxer) {
|
|
116
|
+
const target = logxer ?? getGraphEngineLogxer();
|
|
117
|
+
return {
|
|
118
|
+
getJobLogs(input) {
|
|
119
|
+
return target.getJobLogs(input);
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
/** Attach graph-level Logxer query client when hosts omit one on runtimeObjects. */
|
|
124
|
+
export function ensureGraphEngineLogxerOnRuntimeObjects(runtimeObjects, logxer) {
|
|
125
|
+
if (!runtimeObjects || runtimeObjects.logxerClient != null)
|
|
126
|
+
return;
|
|
127
|
+
runtimeObjects.logxerClient = createGraphEngineLogxerClient(logxer);
|
|
128
|
+
}
|
|
129
|
+
/** Run graph work with Logxer correlation ids (jobId, taskId, graphId, runId). */
|
|
130
|
+
export function runGraphWithLogContext(ctx, fn) {
|
|
131
|
+
return runWithLogContext(ctx, fn);
|
|
132
|
+
}
|
|
133
|
+
/** Narrow node-scoped correlation inside an active graph run context. */
|
|
134
|
+
export function patchGraphNodeLogContext(nodeId) {
|
|
135
|
+
patchLogContext({ nodeId });
|
|
136
|
+
}
|
|
137
|
+
/** Gated verbose/state traces (replaces DEBUG_EXECUTION_MEMORY / DEBUG_OUTPUT_MAPPING console.log). */
|
|
138
|
+
export function traceExecutionMemory(scope, message, data) {
|
|
139
|
+
if (process.env.DEBUG_EXECUTION_MEMORY !== 'true' &&
|
|
140
|
+
process.env.DEBUG_OUTPUT_MAPPING !== 'true') {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
getGraphEngineLogxer().verbose(message, {
|
|
144
|
+
scope,
|
|
145
|
+
...data,
|
|
146
|
+
debugKind: DebugLogAbstract.STATE,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
/** Emit a catalog-backed graph error log when a node/graph failure occurs. */
|
|
150
|
+
export function logGraphEngineErrorCode(code, _message, ctx) {
|
|
151
|
+
const logxer = getGraphEngineLogxer();
|
|
152
|
+
const evidence = [
|
|
153
|
+
...(ctx.error != null ? [exceptionEvidence(ctx.error)] : []),
|
|
154
|
+
...Object.entries(ctx.evidence ?? {}).map(([path, value]) => fieldEvidence(path, value)),
|
|
155
|
+
];
|
|
156
|
+
logxer.errorCode(code, {
|
|
157
|
+
graphId: ctx.graphId,
|
|
158
|
+
nodeId: ctx.nodeId,
|
|
159
|
+
jobId: ctx.jobId,
|
|
160
|
+
taskId: ctx.taskId,
|
|
161
|
+
debugKind: DebugLogAbstract.ANOMALY,
|
|
162
|
+
...(evidence.length ? { evidence } : {}),
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
export { DebugLogAbstract, fieldEvidence, exceptionEvidence, runWithLogContext, patchLogContext };
|
|
@@ -28,5 +28,6 @@ export function mergeExellixGraphRuntimeInvocation(input, opts) {
|
|
|
28
28
|
runtimeObjects: input.runtimeObjects ?? opts.runtimeObjects,
|
|
29
29
|
stepRetryPolicy: input.stepRetryPolicy ?? opts.stepRetryPolicy,
|
|
30
30
|
mainReadinessPolicy: input.mainReadinessPolicy ?? opts.mainReadinessPolicy,
|
|
31
|
+
logging: input.logging ?? opts.logging,
|
|
31
32
|
};
|
|
32
33
|
}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Runtime Objects Observability — types and composition for graph + downstream packages.
|
|
3
3
|
* Callers (playground, UIs) use {@link RuntimeObjects} and queryable clients instead of reading Mongo directly.
|
|
4
4
|
*/
|
|
5
|
+
import type { GetJobLogsInput, GetJobLogsResult, QueryableLogLine } from '@x12i/logxer';
|
|
5
6
|
/** Published npm name of this package (root layer in composed observability). */
|
|
6
7
|
export declare const EXELLIX_GRAPH_RUNTIME_PACKAGE_NAME: "@exellix/graph-engine";
|
|
7
8
|
/** Task layer package name in {@link RuntimeObjects.packagesRuntimeObjects}. */
|
|
@@ -18,25 +19,11 @@ export type ActivixQueryableClient = {
|
|
|
18
19
|
activities: unknown[];
|
|
19
20
|
}>;
|
|
20
21
|
};
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
scope?: string;
|
|
25
|
-
packageName?: string;
|
|
26
|
-
nodeId?: string;
|
|
27
|
-
message: string;
|
|
28
|
-
data?: unknown;
|
|
29
|
-
};
|
|
22
|
+
/** Structured log envelope from `@x12i/logxer` `getJobLogs` (4.5.x). */
|
|
23
|
+
export type LogxerLogLine = QueryableLogLine;
|
|
24
|
+
/** Query surface aligned with `@x12i/logxer` `Logxer.getJobLogs` (diagnostic filters included). */
|
|
30
25
|
export type LogxerQueryableClient = {
|
|
31
|
-
getJobLogs(input:
|
|
32
|
-
jobId: string;
|
|
33
|
-
graphId?: string;
|
|
34
|
-
nodeId?: string;
|
|
35
|
-
limit?: number;
|
|
36
|
-
}): Promise<{
|
|
37
|
-
jobId: string;
|
|
38
|
-
lines: LogxerLogLine[];
|
|
39
|
-
}>;
|
|
26
|
+
getJobLogs(input: GetJobLogsInput): Promise<GetJobLogsResult>;
|
|
40
27
|
};
|
|
41
28
|
export type PackageRuntimeObjects = {
|
|
42
29
|
name: string;
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Runtime Objects Observability — types and composition for graph + downstream packages.
|
|
3
|
-
* Callers (playground, UIs) use {@link RuntimeObjects} and queryable clients instead of reading Mongo directly.
|
|
4
|
-
*/
|
|
5
1
|
/** Published npm name of this package (root layer in composed observability). */
|
|
6
2
|
export const EXELLIX_GRAPH_RUNTIME_PACKAGE_NAME = '@exellix/graph-engine';
|
|
7
3
|
/** Task layer package name in {@link RuntimeObjects.packagesRuntimeObjects}. */
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Activix } from '@x12i/activix';
|
|
2
|
+
import type { StackLoggingOptions } from '@x12i/logxer';
|
|
2
3
|
import type { LlmCallConfig, RunTaskRequest as AiTasksRunTaskRequest, RunTaskResponse as AiTasksRunTaskResponse } from '@exellix/ai-tasks';
|
|
3
4
|
import type { GraphModelAliasConfig, ModelConfigSelection, TaskNodeRuntimeObject } from './refs.js';
|
|
4
5
|
import type { RuntimeObjects } from '../runtime/runtimeObjects.js';
|
|
@@ -79,6 +80,11 @@ export interface HostExecuteGraphRunOptions {
|
|
|
79
80
|
* Node `taskConfiguration.mainReadinessPolicy` overrides. Default `off`.
|
|
80
81
|
*/
|
|
81
82
|
mainReadinessPolicy?: MainReadinessPolicy;
|
|
83
|
+
/**
|
|
84
|
+
* Logxer 4.5+ stack pass-through (`GRAPH_ENGINE` and optional downstream package prefixes).
|
|
85
|
+
* Merged: per-invocation input → `createExellixGraphRuntime` defaults.
|
|
86
|
+
*/
|
|
87
|
+
logging?: StackLoggingOptions;
|
|
82
88
|
}
|
|
83
89
|
/**
|
|
84
90
|
* Optional Activix-backed persistence for per-node execution rows.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Structured run log for execution consoles (playground, Activix, HTTP APIs).
|
|
3
3
|
* @see `.docs/exellix-graph-format.md` — Layer 08 / run log contract.
|
|
4
4
|
*/
|
|
5
|
+
import type { DebugLogKind, DiagnosticEvidence, LogDiagnostics } from '@x12i/logxer';
|
|
5
6
|
/**
|
|
6
7
|
* NOTE: `@exellix/ai-tasks` 5.5+ no longer exports `RunLogCorrelationIds`.
|
|
7
8
|
* We preserve the field for downstream consumers but keep it structurally typed.
|
|
@@ -28,6 +29,14 @@ export interface RunLogEntry {
|
|
|
28
29
|
message: string;
|
|
29
30
|
/** Optional structured payload; may be truncated (see buildRunLog / runtime options). */
|
|
30
31
|
data?: unknown;
|
|
32
|
+
/** Diagnostic catalog code when merged from Logxer / ai-tasks metadata (@x12i/logxer 4.5.x). */
|
|
33
|
+
code?: string;
|
|
34
|
+
/** Structured diagnostic context (@x12i/logxer 4.5.x). */
|
|
35
|
+
diagnostics?: LogDiagnostics;
|
|
36
|
+
/** Semantic debug category (@x12i/logxer DebugLogAbstract). */
|
|
37
|
+
debugKind?: DebugLogKind;
|
|
38
|
+
/** Small diagnostic evidence samples (@x12i/logxer 4.5.x). */
|
|
39
|
+
evidence?: DiagnosticEvidence[];
|
|
31
40
|
}
|
|
32
41
|
/** How aggressively to populate `runLog` on {@link ExecuteGraphResult}. */
|
|
33
42
|
export type RunLogMode = 'off' | 'summary' | 'full';
|
package/dist/src/types/runLog.js
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Structured run log for execution consoles (playground, Activix, HTTP APIs).
|
|
3
|
-
* @see `.docs/exellix-graph-format.md` — Layer 08 / run log contract.
|
|
4
|
-
*/
|
|
5
1
|
/**
|
|
6
2
|
* Canonical key on `runTask` response metadata for buffered run-log lines.
|
|
7
3
|
* 5.x: only this key is read; the legacy `exellixRunLog` alias is no longer accepted.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@exellix/graph-engine",
|
|
3
|
-
"version": "7.2.
|
|
3
|
+
"version": "7.2.13",
|
|
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",
|
|
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",
|
|
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
|
"run:pre-synthesis": "npm run build && node --env-file=.env scripts/run-pre-synthesis-graph.mjs",
|
|
@@ -50,19 +50,19 @@
|
|
|
50
50
|
"access": "public"
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
|
-
"@exellix/ai-tasks": "^8.1.
|
|
53
|
+
"@exellix/ai-tasks": "^8.1.12",
|
|
54
54
|
"@x12i/activix": "8.3.1",
|
|
55
55
|
"@x12i/ai-profiles": "1.6.0",
|
|
56
56
|
"@x12i/catalox": "5.1.1",
|
|
57
57
|
"@x12i/env": "4.0.1",
|
|
58
|
-
"@x12i/funcx": "4.2.
|
|
58
|
+
"@x12i/funcx": "4.2.2",
|
|
59
59
|
"@x12i/graphenix": "2.5.0",
|
|
60
60
|
"@x12i/graphenix-format": "2.0.0",
|
|
61
|
-
"@x12i/logxer": "4.
|
|
61
|
+
"@x12i/logxer": "^4.5.0",
|
|
62
62
|
"@x12i/memorix-descriptors": "1.6.0",
|
|
63
|
-
"@x12i/memorix-retrieval": "1.
|
|
63
|
+
"@x12i/memorix-retrieval": "1.11.0",
|
|
64
64
|
"@x12i/memorix-writer": "1.0.0",
|
|
65
|
-
"@x12i/optimixer": "^2.4.
|
|
65
|
+
"@x12i/optimixer": "^2.4.2",
|
|
66
66
|
"@x12i/rendrix": "4.3.0",
|
|
67
67
|
"@x12i/runx": "1.3.0"
|
|
68
68
|
},
|