@exellix/exellix-runtime 3.5.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.
- package/README.md +422 -0
- package/dist/catalox-inventory/catalox-execution-matrix-inventory-cli.d.ts +4 -0
- package/dist/catalox-inventory/catalox-execution-matrix-inventory-cli.d.ts.map +1 -0
- package/dist/catalox-inventory/catalox-execution-matrix-inventory-cli.js +311 -0
- package/dist/catalox-inventory/catalox-execution-matrix-inventory-cli.js.map +1 -0
- package/dist/catalox-inventory/catalox-execution-matrix-inventory.d.ts +64 -0
- package/dist/catalox-inventory/catalox-execution-matrix-inventory.d.ts.map +1 -0
- package/dist/catalox-inventory/catalox-execution-matrix-inventory.js +226 -0
- package/dist/catalox-inventory/catalox-execution-matrix-inventory.js.map +1 -0
- package/dist/catalox-inventory/catalox-xmemory-entity-count-report.d.ts +145 -0
- package/dist/catalox-inventory/catalox-xmemory-entity-count-report.d.ts.map +1 -0
- package/dist/catalox-inventory/catalox-xmemory-entity-count-report.js +477 -0
- package/dist/catalox-inventory/catalox-xmemory-entity-count-report.js.map +1 -0
- package/dist/catalox-inventory/catalox-xmemory-entity-count-report.spec.d.ts +2 -0
- package/dist/catalox-inventory/catalox-xmemory-entity-count-report.spec.d.ts.map +1 -0
- package/dist/catalox-inventory/catalox-xmemory-entity-count-report.spec.js +34 -0
- package/dist/catalox-inventory/catalox-xmemory-entity-count-report.spec.js.map +1 -0
- package/dist/cli/argv.d.ts +5 -0
- package/dist/cli/argv.d.ts.map +1 -0
- package/dist/cli/argv.js +32 -0
- package/dist/cli/argv.js.map +1 -0
- package/dist/cli/commands/health.d.ts +2 -0
- package/dist/cli/commands/health.d.ts.map +1 -0
- package/dist/cli/commands/health.js +23 -0
- package/dist/cli/commands/health.js.map +1 -0
- package/dist/cli/commands/matrix-link.d.ts +2 -0
- package/dist/cli/commands/matrix-link.d.ts.map +1 -0
- package/dist/cli/commands/matrix-link.js +56 -0
- package/dist/cli/commands/matrix-link.js.map +1 -0
- package/dist/cli/commands/matrix-read.d.ts +2 -0
- package/dist/cli/commands/matrix-read.d.ts.map +1 -0
- package/dist/cli/commands/matrix-read.js +73 -0
- package/dist/cli/commands/matrix-read.js.map +1 -0
- package/dist/cli/env.d.ts +6 -0
- package/dist/cli/env.d.ts.map +1 -0
- package/dist/cli/env.js +39 -0
- package/dist/cli/env.js.map +1 -0
- package/dist/cli/exellix-runtime-cli.d.ts +3 -0
- package/dist/cli/exellix-runtime-cli.d.ts.map +1 -0
- package/dist/cli/exellix-runtime-cli.js +55 -0
- package/dist/cli/exellix-runtime-cli.js.map +1 -0
- package/dist/cli/help.d.ts +19 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +94 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/client-toolbox/bundle.d.ts +17 -0
- package/dist/client-toolbox/bundle.d.ts.map +1 -0
- package/dist/client-toolbox/bundle.js +17 -0
- package/dist/client-toolbox/bundle.js.map +1 -0
- package/dist/client-toolbox/client-toolbox.spec.d.ts +2 -0
- package/dist/client-toolbox/client-toolbox.spec.d.ts.map +1 -0
- package/dist/client-toolbox/client-toolbox.spec.js +145 -0
- package/dist/client-toolbox/client-toolbox.spec.js.map +1 -0
- package/dist/client-toolbox/index.d.ts +4 -0
- package/dist/client-toolbox/index.d.ts.map +1 -0
- package/dist/client-toolbox/index.js +4 -0
- package/dist/client-toolbox/index.js.map +1 -0
- package/dist/client-toolbox/matrix-config.d.ts +67 -0
- package/dist/client-toolbox/matrix-config.d.ts.map +1 -0
- package/dist/client-toolbox/matrix-config.js +140 -0
- package/dist/client-toolbox/matrix-config.js.map +1 -0
- package/dist/client-toolbox/matrix-materialize.d.ts +56 -0
- package/dist/client-toolbox/matrix-materialize.d.ts.map +1 -0
- package/dist/client-toolbox/matrix-materialize.js +130 -0
- package/dist/client-toolbox/matrix-materialize.js.map +1 -0
- package/dist/dev/matrix-read-dashboard-smoke.d.ts +2 -0
- package/dist/dev/matrix-read-dashboard-smoke.d.ts.map +1 -0
- package/dist/dev/matrix-read-dashboard-smoke.js +12 -0
- package/dist/dev/matrix-read-dashboard-smoke.js.map +1 -0
- package/dist/dev/runtime-real-dev-server.d.ts +2 -0
- package/dist/dev/runtime-real-dev-server.d.ts.map +1 -0
- package/dist/dev/runtime-real-dev-server.js +90 -0
- package/dist/dev/runtime-real-dev-server.js.map +1 -0
- package/dist/execution-matrix/catalox-loader.d.ts +55 -0
- package/dist/execution-matrix/catalox-loader.d.ts.map +1 -0
- package/dist/execution-matrix/catalox-loader.js +199 -0
- package/dist/execution-matrix/catalox-loader.js.map +1 -0
- package/dist/execution-matrix/catalox-matrix-host.d.ts +20 -0
- package/dist/execution-matrix/catalox-matrix-host.d.ts.map +1 -0
- package/dist/execution-matrix/catalox-matrix-host.js +19 -0
- package/dist/execution-matrix/catalox-matrix-host.js.map +1 -0
- package/dist/execution-matrix/collections.d.ts +16 -0
- package/dist/execution-matrix/collections.d.ts.map +1 -0
- package/dist/execution-matrix/collections.js +75 -0
- package/dist/execution-matrix/collections.js.map +1 -0
- package/dist/execution-matrix/config-store.d.ts +104 -0
- package/dist/execution-matrix/config-store.d.ts.map +1 -0
- package/dist/execution-matrix/config-store.js +273 -0
- package/dist/execution-matrix/config-store.js.map +1 -0
- package/dist/execution-matrix/constants.d.ts +19 -0
- package/dist/execution-matrix/constants.d.ts.map +1 -0
- package/dist/execution-matrix/constants.js +19 -0
- package/dist/execution-matrix/constants.js.map +1 -0
- package/dist/execution-matrix/contracts.d.ts +568 -0
- package/dist/execution-matrix/contracts.d.ts.map +1 -0
- package/dist/execution-matrix/contracts.js +44 -0
- package/dist/execution-matrix/contracts.js.map +1 -0
- package/dist/execution-matrix/data-source.d.ts +43 -0
- package/dist/execution-matrix/data-source.d.ts.map +1 -0
- package/dist/execution-matrix/data-source.js +307 -0
- package/dist/execution-matrix/data-source.js.map +1 -0
- package/dist/execution-matrix/eligibility.d.ts +48 -0
- package/dist/execution-matrix/eligibility.d.ts.map +1 -0
- package/dist/execution-matrix/eligibility.js +89 -0
- package/dist/execution-matrix/eligibility.js.map +1 -0
- package/dist/execution-matrix/execution-matrix-claim-pause.d.ts +20 -0
- package/dist/execution-matrix/execution-matrix-claim-pause.d.ts.map +1 -0
- package/dist/execution-matrix/execution-matrix-claim-pause.js +18 -0
- package/dist/execution-matrix/execution-matrix-claim-pause.js.map +1 -0
- package/dist/execution-matrix/execution-matrix-claim-pause.spec.d.ts +2 -0
- package/dist/execution-matrix/execution-matrix-claim-pause.spec.d.ts.map +1 -0
- package/dist/execution-matrix/execution-matrix-claim-pause.spec.js +23 -0
- package/dist/execution-matrix/execution-matrix-claim-pause.spec.js.map +1 -0
- package/dist/execution-matrix/execution-matrix.live.spec.d.ts +2 -0
- package/dist/execution-matrix/execution-matrix.live.spec.d.ts.map +1 -0
- package/dist/execution-matrix/execution-matrix.live.spec.js +152 -0
- package/dist/execution-matrix/execution-matrix.live.spec.js.map +1 -0
- package/dist/execution-matrix/execution-matrix.live.xmemory.spec.d.ts +2 -0
- package/dist/execution-matrix/execution-matrix.live.xmemory.spec.d.ts.map +1 -0
- package/dist/execution-matrix/execution-matrix.live.xmemory.spec.js +346 -0
- package/dist/execution-matrix/execution-matrix.live.xmemory.spec.js.map +1 -0
- package/dist/execution-matrix/execution-matrix.spec.d.ts +2 -0
- package/dist/execution-matrix/execution-matrix.spec.d.ts.map +1 -0
- package/dist/execution-matrix/execution-matrix.spec.js +1786 -0
- package/dist/execution-matrix/execution-matrix.spec.js.map +1 -0
- package/dist/execution-matrix/execution-mode.d.ts +34 -0
- package/dist/execution-matrix/execution-mode.d.ts.map +1 -0
- package/dist/execution-matrix/execution-mode.js +72 -0
- package/dist/execution-matrix/execution-mode.js.map +1 -0
- package/dist/execution-matrix/factory.d.ts +72 -0
- package/dist/execution-matrix/factory.d.ts.map +1 -0
- package/dist/execution-matrix/factory.js +77 -0
- package/dist/execution-matrix/factory.js.map +1 -0
- package/dist/execution-matrix/graph-engine-datafilters-reexport.spec.d.ts +2 -0
- package/dist/execution-matrix/graph-engine-datafilters-reexport.spec.d.ts.map +1 -0
- package/dist/execution-matrix/graph-engine-datafilters-reexport.spec.js +48 -0
- package/dist/execution-matrix/graph-engine-datafilters-reexport.spec.js.map +1 -0
- package/dist/execution-matrix/graph-entry-xmemory-load.d.ts +130 -0
- package/dist/execution-matrix/graph-entry-xmemory-load.d.ts.map +1 -0
- package/dist/execution-matrix/graph-entry-xmemory-load.js +146 -0
- package/dist/execution-matrix/graph-entry-xmemory-load.js.map +1 -0
- package/dist/execution-matrix/graph-entry-xmemory-load.spec.d.ts +2 -0
- package/dist/execution-matrix/graph-entry-xmemory-load.spec.d.ts.map +1 -0
- package/dist/execution-matrix/graph-entry-xmemory-load.spec.js +66 -0
- package/dist/execution-matrix/graph-entry-xmemory-load.spec.js.map +1 -0
- package/dist/execution-matrix/graph-operational-aggregates.d.ts +47 -0
- package/dist/execution-matrix/graph-operational-aggregates.d.ts.map +1 -0
- package/dist/execution-matrix/graph-operational-aggregates.js +137 -0
- package/dist/execution-matrix/graph-operational-aggregates.js.map +1 -0
- package/dist/execution-matrix/graph-operational-lifecycle.d.ts +43 -0
- package/dist/execution-matrix/graph-operational-lifecycle.d.ts.map +1 -0
- package/dist/execution-matrix/graph-operational-lifecycle.js +88 -0
- package/dist/execution-matrix/graph-operational-lifecycle.js.map +1 -0
- package/dist/execution-matrix/graph-operational.spec.d.ts +2 -0
- package/dist/execution-matrix/graph-operational.spec.d.ts.map +1 -0
- package/dist/execution-matrix/graph-operational.spec.js +203 -0
- package/dist/execution-matrix/graph-operational.spec.js.map +1 -0
- package/dist/execution-matrix/index.d.ts +73 -0
- package/dist/execution-matrix/index.d.ts.map +1 -0
- package/dist/execution-matrix/index.js +57 -0
- package/dist/execution-matrix/index.js.map +1 -0
- package/dist/execution-matrix/live-tier-open.d.ts +6 -0
- package/dist/execution-matrix/live-tier-open.d.ts.map +1 -0
- package/dist/execution-matrix/live-tier-open.js +6 -0
- package/dist/execution-matrix/live-tier-open.js.map +1 -0
- package/dist/execution-matrix/materializer.d.ts +99 -0
- package/dist/execution-matrix/materializer.d.ts.map +1 -0
- package/dist/execution-matrix/materializer.js +210 -0
- package/dist/execution-matrix/materializer.js.map +1 -0
- package/dist/execution-matrix/matrix-activix.d.ts +24 -0
- package/dist/execution-matrix/matrix-activix.d.ts.map +1 -0
- package/dist/execution-matrix/matrix-activix.js +34 -0
- package/dist/execution-matrix/matrix-activix.js.map +1 -0
- package/dist/execution-matrix/matrix-data-tier.d.ts +55 -0
- package/dist/execution-matrix/matrix-data-tier.d.ts.map +1 -0
- package/dist/execution-matrix/matrix-data-tier.js +74 -0
- package/dist/execution-matrix/matrix-data-tier.js.map +1 -0
- package/dist/execution-matrix/matrix-execute-graph-adapter.d.ts +43 -0
- package/dist/execution-matrix/matrix-execute-graph-adapter.d.ts.map +1 -0
- package/dist/execution-matrix/matrix-execute-graph-adapter.js +62 -0
- package/dist/execution-matrix/matrix-execute-graph-adapter.js.map +1 -0
- package/dist/execution-matrix/matrix-execute-graph-adapter.spec.d.ts +2 -0
- package/dist/execution-matrix/matrix-execute-graph-adapter.spec.d.ts.map +1 -0
- package/dist/execution-matrix/matrix-execute-graph-adapter.spec.js +60 -0
- package/dist/execution-matrix/matrix-execute-graph-adapter.spec.js.map +1 -0
- package/dist/execution-matrix/matrix-logxer.d.ts +15 -0
- package/dist/execution-matrix/matrix-logxer.d.ts.map +1 -0
- package/dist/execution-matrix/matrix-logxer.js +65 -0
- package/dist/execution-matrix/matrix-logxer.js.map +1 -0
- package/dist/execution-matrix/matrix-read-tier.d.ts +41 -0
- package/dist/execution-matrix/matrix-read-tier.d.ts.map +1 -0
- package/dist/execution-matrix/matrix-read-tier.js +41 -0
- package/dist/execution-matrix/matrix-read-tier.js.map +1 -0
- package/dist/execution-matrix/memorix-entity-type-helpers.d.ts +25 -0
- package/dist/execution-matrix/memorix-entity-type-helpers.d.ts.map +1 -0
- package/dist/execution-matrix/memorix-entity-type-helpers.js +32 -0
- package/dist/execution-matrix/memorix-entity-type-helpers.js.map +1 -0
- package/dist/execution-matrix/memorix-entity-type-helpers.spec.d.ts +2 -0
- package/dist/execution-matrix/memorix-entity-type-helpers.spec.d.ts.map +1 -0
- package/dist/execution-matrix/memorix-entity-type-helpers.spec.js +83 -0
- package/dist/execution-matrix/memorix-entity-type-helpers.spec.js.map +1 -0
- package/dist/execution-matrix/memorix-inference-persister.d.ts +73 -0
- package/dist/execution-matrix/memorix-inference-persister.d.ts.map +1 -0
- package/dist/execution-matrix/memorix-inference-persister.js +126 -0
- package/dist/execution-matrix/memorix-inference-persister.js.map +1 -0
- package/dist/execution-matrix/memorix-inference-persister.spec.d.ts +2 -0
- package/dist/execution-matrix/memorix-inference-persister.spec.d.ts.map +1 -0
- package/dist/execution-matrix/memorix-inference-persister.spec.js +117 -0
- package/dist/execution-matrix/memorix-inference-persister.spec.js.map +1 -0
- package/dist/execution-matrix/memorix-matrix-entity-facet.d.ts +71 -0
- package/dist/execution-matrix/memorix-matrix-entity-facet.d.ts.map +1 -0
- package/dist/execution-matrix/memorix-matrix-entity-facet.js +91 -0
- package/dist/execution-matrix/memorix-matrix-entity-facet.js.map +1 -0
- package/dist/execution-matrix/memorix-matrix-entity-facet.spec.d.ts +2 -0
- package/dist/execution-matrix/memorix-matrix-entity-facet.spec.d.ts.map +1 -0
- package/dist/execution-matrix/memorix-matrix-entity-facet.spec.js +151 -0
- package/dist/execution-matrix/memorix-matrix-entity-facet.spec.js.map +1 -0
- package/dist/execution-matrix/memorix-runtime-tier.d.ts +153 -0
- package/dist/execution-matrix/memorix-runtime-tier.d.ts.map +1 -0
- package/dist/execution-matrix/memorix-runtime-tier.js +185 -0
- package/dist/execution-matrix/memorix-runtime-tier.js.map +1 -0
- package/dist/execution-matrix/memorix-tier-statistics.d.ts +103 -0
- package/dist/execution-matrix/memorix-tier-statistics.d.ts.map +1 -0
- package/dist/execution-matrix/memorix-tier-statistics.js +164 -0
- package/dist/execution-matrix/memorix-tier-statistics.js.map +1 -0
- package/dist/execution-matrix/memory-store.d.ts +20 -0
- package/dist/execution-matrix/memory-store.d.ts.map +1 -0
- package/dist/execution-matrix/memory-store.js +185 -0
- package/dist/execution-matrix/memory-store.js.map +1 -0
- package/dist/execution-matrix/navigator.d.ts +97 -0
- package/dist/execution-matrix/navigator.d.ts.map +1 -0
- package/dist/execution-matrix/navigator.js +119 -0
- package/dist/execution-matrix/navigator.js.map +1 -0
- package/dist/execution-matrix/orchestrator.d.ts +204 -0
- package/dist/execution-matrix/orchestrator.d.ts.map +1 -0
- package/dist/execution-matrix/orchestrator.js +656 -0
- package/dist/execution-matrix/orchestrator.js.map +1 -0
- package/dist/execution-matrix/records-eligibility.d.ts +34 -0
- package/dist/execution-matrix/records-eligibility.d.ts.map +1 -0
- package/dist/execution-matrix/records-eligibility.js +110 -0
- package/dist/execution-matrix/records-eligibility.js.map +1 -0
- package/dist/execution-matrix/records-eligibility.spec.d.ts +2 -0
- package/dist/execution-matrix/records-eligibility.spec.d.ts.map +1 -0
- package/dist/execution-matrix/records-eligibility.spec.js +154 -0
- package/dist/execution-matrix/records-eligibility.spec.js.map +1 -0
- package/dist/execution-matrix/run-loop.d.ts +140 -0
- package/dist/execution-matrix/run-loop.d.ts.map +1 -0
- package/dist/execution-matrix/run-loop.js +350 -0
- package/dist/execution-matrix/run-loop.js.map +1 -0
- package/dist/execution-matrix/runtime-connectivity-health.d.ts +128 -0
- package/dist/execution-matrix/runtime-connectivity-health.d.ts.map +1 -0
- package/dist/execution-matrix/runtime-connectivity-health.js +253 -0
- package/dist/execution-matrix/runtime-connectivity-health.js.map +1 -0
- package/dist/execution-matrix/runtime-connectivity-health.spec.d.ts +2 -0
- package/dist/execution-matrix/runtime-connectivity-health.spec.d.ts.map +1 -0
- package/dist/execution-matrix/runtime-connectivity-health.spec.js +23 -0
- package/dist/execution-matrix/runtime-connectivity-health.spec.js.map +1 -0
- package/dist/execution-matrix/runtime-objects.d.ts +16 -0
- package/dist/execution-matrix/runtime-objects.d.ts.map +1 -0
- package/dist/execution-matrix/runtime-objects.js +20 -0
- package/dist/execution-matrix/runtime-objects.js.map +1 -0
- package/dist/execution-matrix/runtime-store.d.ts +114 -0
- package/dist/execution-matrix/runtime-store.d.ts.map +1 -0
- package/dist/execution-matrix/runtime-store.js +506 -0
- package/dist/execution-matrix/runtime-store.js.map +1 -0
- package/dist/execution-matrix/snapshot-runner.d.ts +50 -0
- package/dist/execution-matrix/snapshot-runner.d.ts.map +1 -0
- package/dist/execution-matrix/snapshot-runner.js +111 -0
- package/dist/execution-matrix/snapshot-runner.js.map +1 -0
- package/dist/execution-matrix/source-resolver-factories.d.ts +31 -0
- package/dist/execution-matrix/source-resolver-factories.d.ts.map +1 -0
- package/dist/execution-matrix/source-resolver-factories.js +71 -0
- package/dist/execution-matrix/source-resolver-factories.js.map +1 -0
- package/dist/execution-matrix/source-resolver-factories.spec.d.ts +2 -0
- package/dist/execution-matrix/source-resolver-factories.spec.d.ts.map +1 -0
- package/dist/execution-matrix/source-resolver-factories.spec.js +127 -0
- package/dist/execution-matrix/source-resolver-factories.spec.js.map +1 -0
- package/dist/execution-matrix/source-resolver.d.ts +31 -0
- package/dist/execution-matrix/source-resolver.d.ts.map +1 -0
- package/dist/execution-matrix/source-resolver.js +26 -0
- package/dist/execution-matrix/source-resolver.js.map +1 -0
- package/dist/execution-matrix/status.d.ts +7 -0
- package/dist/execution-matrix/status.d.ts.map +1 -0
- package/dist/execution-matrix/status.js +33 -0
- package/dist/execution-matrix/status.js.map +1 -0
- package/dist/execution-matrix/xmemory-entity-collections.d.ts +69 -0
- package/dist/execution-matrix/xmemory-entity-collections.d.ts.map +1 -0
- package/dist/execution-matrix/xmemory-entity-collections.js +120 -0
- package/dist/execution-matrix/xmemory-entity-collections.js.map +1 -0
- package/dist/execution-matrix/xmemory-entity-collections.spec.d.ts +2 -0
- package/dist/execution-matrix/xmemory-entity-collections.spec.d.ts.map +1 -0
- package/dist/execution-matrix/xmemory-entity-collections.spec.js +112 -0
- package/dist/execution-matrix/xmemory-entity-collections.spec.js.map +1 -0
- package/dist/execution-matrix/xmemory-op-tier.d.ts +172 -0
- package/dist/execution-matrix/xmemory-op-tier.d.ts.map +1 -0
- package/dist/execution-matrix/xmemory-op-tier.js +339 -0
- package/dist/execution-matrix/xmemory-op-tier.js.map +1 -0
- package/dist/execution-matrix/xmemory-op-tier.spec.d.ts +2 -0
- package/dist/execution-matrix/xmemory-op-tier.spec.d.ts.map +1 -0
- package/dist/execution-matrix/xmemory-op-tier.spec.js +198 -0
- package/dist/execution-matrix/xmemory-op-tier.spec.js.map +1 -0
- package/dist/execution-matrix/xronox-matrix-factory.d.ts +38 -0
- package/dist/execution-matrix/xronox-matrix-factory.d.ts.map +1 -0
- package/dist/execution-matrix/xronox-matrix-factory.js +77 -0
- package/dist/execution-matrix/xronox-matrix-factory.js.map +1 -0
- package/dist/execution-matrix/xronox-store-native-driver-hooks.d.ts +15 -0
- package/dist/execution-matrix/xronox-store-native-driver-hooks.d.ts.map +1 -0
- package/dist/execution-matrix/xronox-store-native-driver-hooks.js +41 -0
- package/dist/execution-matrix/xronox-store-native-driver-hooks.js.map +1 -0
- package/dist/test-fixtures/exellix-test-matrix-ids.d.ts +16 -0
- package/dist/test-fixtures/exellix-test-matrix-ids.d.ts.map +1 -0
- package/dist/test-fixtures/exellix-test-matrix-ids.js +16 -0
- package/dist/test-fixtures/exellix-test-matrix-ids.js.map +1 -0
- package/dist/test-fixtures/seed-exellix-test-matrix-config.d.ts +26 -0
- package/dist/test-fixtures/seed-exellix-test-matrix-config.d.ts.map +1 -0
- package/dist/test-fixtures/seed-exellix-test-matrix-config.js +82 -0
- package/dist/test-fixtures/seed-exellix-test-matrix-config.js.map +1 -0
- package/package.json +67 -0
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Load Memorix entity payloads for graph Layer-01 materialization via **`@x12i/memorix-retrieval`**
|
|
3
|
+
* (`fetchMemorixItem`). Replaces legacy `@x12i/xmemory-scoper` / `xmemory-op` reads.
|
|
4
|
+
*/
|
|
5
|
+
import { type BuildExecutionSeedResult, type BuildExecutionSeedSources, type GraphEntryContract } from '@exellix/graph-engine';
|
|
6
|
+
import { type FetchMemorixItemResponse, type MemorixRetrievalClient } from '@x12i/memorix-retrieval';
|
|
7
|
+
/** Stable codes for BFF / CI (do not throw for expected misses). */
|
|
8
|
+
export declare const GraphEntryXmemoryLoadCodes: {
|
|
9
|
+
readonly INVALID_INPUT: "INVALID_INPUT";
|
|
10
|
+
readonly MISSING_ENTITY_ID: "MISSING_ENTITY_ID";
|
|
11
|
+
readonly MISSING_ITEM_DESCRIPTOR_ID: "MISSING_ITEM_DESCRIPTOR_ID";
|
|
12
|
+
readonly MEMORIX_ITEM_NOT_FOUND: "MEMORIX_ITEM_NOT_FOUND";
|
|
13
|
+
readonly MEMORIX_ITEM_EMPTY: "MEMORIX_ITEM_EMPTY";
|
|
14
|
+
/** Legacy modes removed with xmemory-scoper. */
|
|
15
|
+
readonly LEGACY_MODE_REMOVED: "LEGACY_MODE_REMOVED";
|
|
16
|
+
readonly MISSING_ENTITY_ID_LEGACY: "MISSING_ENTITY_ID";
|
|
17
|
+
readonly MISSING_QUESTION_ID: "MISSING_QUESTION_ID";
|
|
18
|
+
readonly MISSING_QUESTION: "MISSING_QUESTION";
|
|
19
|
+
readonly MISSING_ABOUT: "MISSING_ABOUT";
|
|
20
|
+
readonly MISSING_EXTENDED_DEPS: "MISSING_EXTENDED_DEPS";
|
|
21
|
+
readonly MEMORIX_ENTITY_RESOLUTION_FAILED: "MEMORIX_ENTITY_RESOLUTION_FAILED";
|
|
22
|
+
readonly SCOPED_DATA_NOT_FOUND: "SCOPED_DATA_NOT_FOUND";
|
|
23
|
+
readonly SCOPED_DATA_AMBIGUOUS: "SCOPED_DATA_AMBIGUOUS";
|
|
24
|
+
readonly MISSING_SCOPED_DATA_KEY: "MISSING_SCOPED_DATA_KEY";
|
|
25
|
+
readonly MISSING_ENTITY_TYPE: "MISSING_ENTITY_TYPE";
|
|
26
|
+
readonly NARRATIVE_NOT_FOUND: "NARRATIVE_NOT_FOUND";
|
|
27
|
+
};
|
|
28
|
+
export type GraphEntryXmemoryLoadCode = (typeof GraphEntryXmemoryLoadCodes)[keyof typeof GraphEntryXmemoryLoadCodes];
|
|
29
|
+
export type GraphEntryXmemoryLoadDeps = {
|
|
30
|
+
client: MemorixRetrievalClient;
|
|
31
|
+
};
|
|
32
|
+
/** Optional keys under `input.*` for the memorix merge layer (second layer after matrix row). */
|
|
33
|
+
export type GraphEntryMemorixInputKeys = {
|
|
34
|
+
scopedDataInputKey?: string;
|
|
35
|
+
narrativeInputKey?: string;
|
|
36
|
+
snapshotInputKey?: string;
|
|
37
|
+
memorixItemInputKey?: string;
|
|
38
|
+
};
|
|
39
|
+
export type GraphEntryXmemoryLoadRequestMemorixItem = {
|
|
40
|
+
mode: 'memorix-item';
|
|
41
|
+
itemDescriptorId: string;
|
|
42
|
+
entityId: string;
|
|
43
|
+
eventId?: string;
|
|
44
|
+
knowledgeId?: string;
|
|
45
|
+
} & GraphEntryMemorixInputKeys;
|
|
46
|
+
/** @deprecated Use {@link GraphEntryXmemoryLoadRequestMemorixItem}. */
|
|
47
|
+
export type GraphEntryXmemoryLoadRequestScopedData = {
|
|
48
|
+
mode: 'scoped-data-row';
|
|
49
|
+
entityId: string;
|
|
50
|
+
questionId: string;
|
|
51
|
+
memorixCatalogEntityName?: string;
|
|
52
|
+
xScopedDataCollection?: string;
|
|
53
|
+
} & GraphEntryMemorixInputKeys;
|
|
54
|
+
/** @deprecated Use {@link GraphEntryXmemoryLoadRequestMemorixItem}. */
|
|
55
|
+
export type GraphEntryXmemoryLoadRequestScopedDataBySourceKey = {
|
|
56
|
+
mode: 'scoped-data-by-source-key';
|
|
57
|
+
entityType?: string;
|
|
58
|
+
memorixCatalogEntityName?: string;
|
|
59
|
+
sourceId?: string;
|
|
60
|
+
metaSourceId?: string;
|
|
61
|
+
documentId?: string;
|
|
62
|
+
xScopedDataCollection?: string;
|
|
63
|
+
onMultiple?: 'first' | 'error';
|
|
64
|
+
projection?: Record<string, unknown>;
|
|
65
|
+
} & GraphEntryMemorixInputKeys;
|
|
66
|
+
/** @deprecated Removed with xmemory-scoper. */
|
|
67
|
+
export type GraphEntryXmemoryLoadRequestNarrative = {
|
|
68
|
+
mode: 'narrative';
|
|
69
|
+
question: string;
|
|
70
|
+
about: string;
|
|
71
|
+
namespace?: string;
|
|
72
|
+
useExtendedContext?: boolean;
|
|
73
|
+
includeLinked?: boolean;
|
|
74
|
+
includeTriageAdjacentThings?: boolean;
|
|
75
|
+
adjacentThingsMaxAgeMs?: number;
|
|
76
|
+
} & GraphEntryMemorixInputKeys;
|
|
77
|
+
/** @deprecated Removed with xmemory-scoper. */
|
|
78
|
+
export type GraphEntryXmemoryLoadRequestSnapshot = {
|
|
79
|
+
mode: 'snapshot-scoped-data';
|
|
80
|
+
snapshotData: Record<string, unknown>;
|
|
81
|
+
snapshotCollection: string;
|
|
82
|
+
scopingMap: {
|
|
83
|
+
questionTitle: string;
|
|
84
|
+
[key: string]: unknown;
|
|
85
|
+
};
|
|
86
|
+
fieldMetaCache: Map<string, unknown>;
|
|
87
|
+
snapshotOptions?: Record<string, unknown>;
|
|
88
|
+
} & GraphEntryMemorixInputKeys;
|
|
89
|
+
export type GraphEntryXmemoryLoadRequest = GraphEntryXmemoryLoadRequestMemorixItem | GraphEntryXmemoryLoadRequestScopedData | GraphEntryXmemoryLoadRequestScopedDataBySourceKey | GraphEntryXmemoryLoadRequestNarrative | GraphEntryXmemoryLoadRequestSnapshot;
|
|
90
|
+
export type GraphEntryXmemoryLoadSuccess = {
|
|
91
|
+
ok: true;
|
|
92
|
+
memorixItem?: FetchMemorixItemResponse;
|
|
93
|
+
scopedDataRow?: Record<string, unknown>;
|
|
94
|
+
seedSources: BuildExecutionSeedSources;
|
|
95
|
+
memorixResolution?: {
|
|
96
|
+
ok: boolean;
|
|
97
|
+
message?: string;
|
|
98
|
+
};
|
|
99
|
+
narrative?: unknown;
|
|
100
|
+
snapshot?: unknown;
|
|
101
|
+
lookupMatches?: unknown[];
|
|
102
|
+
};
|
|
103
|
+
export type GraphEntryXmemoryLoadFailure = {
|
|
104
|
+
ok: false;
|
|
105
|
+
code: GraphEntryXmemoryLoadCode;
|
|
106
|
+
message: string;
|
|
107
|
+
memorixResolution?: {
|
|
108
|
+
ok: boolean;
|
|
109
|
+
message?: string;
|
|
110
|
+
};
|
|
111
|
+
lookupMatches?: unknown[];
|
|
112
|
+
};
|
|
113
|
+
export type GraphEntryXmemoryLoadResult = GraphEntryXmemoryLoadSuccess | GraphEntryXmemoryLoadFailure;
|
|
114
|
+
/** Flatten {@link FetchMemorixItemResponse} into a plain record for `runtime.input` / seed layers. */
|
|
115
|
+
export declare function memorixItemToInputRecord(item: FetchMemorixItemResponse): Record<string, unknown>;
|
|
116
|
+
/**
|
|
117
|
+
* Load a Memorix entity item for graph-entry seeding (`fetchMemorixItem`).
|
|
118
|
+
*
|
|
119
|
+
* **Supported:** `mode: 'memorix-item'` with `itemDescriptorId` + `entityId`.
|
|
120
|
+
*
|
|
121
|
+
* Legacy scoper modes (`scoped-data-row`, `scoped-data-by-source-key`, `narrative`, `snapshot-scoped-data`)
|
|
122
|
+
* return {@link GraphEntryXmemoryLoadCodes.LEGACY_MODE_REMOVED}.
|
|
123
|
+
*/
|
|
124
|
+
export declare function loadGraphEntryMemorixPayload(deps: GraphEntryXmemoryLoadDeps, request: GraphEntryXmemoryLoadRequest): Promise<GraphEntryXmemoryLoadResult>;
|
|
125
|
+
/**
|
|
126
|
+
* Merge matrix row `input` with memorix {@link BuildExecutionSeedSources} using the same
|
|
127
|
+
* precedence rules as {@link buildExecutionSeedFromGraphEntry} (later layers override earlier).
|
|
128
|
+
*/
|
|
129
|
+
export declare function buildExecutionSeedWithMemorixLayer(graphEntry: GraphEntryContract | undefined, matrixInputRow: Record<string, unknown>, memorixSources: BuildExecutionSeedSources): BuildExecutionSeedResult;
|
|
130
|
+
//# sourceMappingURL=graph-entry-xmemory-load.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-entry-xmemory-load.d.ts","sourceRoot":"","sources":["../../src/execution-matrix/graph-entry-xmemory-load.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEL,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAC5B,MAAM,yBAAyB,CAAC;AAEjC,oEAAoE;AACpE,eAAO,MAAM,0BAA0B;;;;;;IAMrC,gDAAgD;;;;;;;;;;;;;CAaxC,CAAC;AAEX,MAAM,MAAM,yBAAyB,GACnC,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,OAAO,0BAA0B,CAAC,CAAC;AAE/E,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,sBAAsB,CAAC;CAChC,CAAC;AAEF,iGAAiG;AACjG,MAAM,MAAM,0BAA0B,GAAG;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,cAAc,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,0BAA0B,CAAC;AAE/B,uEAAuE;AACvE,MAAM,MAAM,sCAAsC,GAAG;IACnD,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC,GAAG,0BAA0B,CAAC;AAE/B,uEAAuE;AACvE,MAAM,MAAM,iDAAiD,GAAG;IAC9D,IAAI,EAAE,2BAA2B,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC,GAAG,0BAA0B,CAAC;AAE/B,+CAA+C;AAC/C,MAAM,MAAM,qCAAqC,GAAG;IAClD,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC,GAAG,0BAA0B,CAAC;AAE/B,+CAA+C;AAC/C,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAC9D,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C,GAAG,0BAA0B,CAAC;AAE/B,MAAM,MAAM,4BAA4B,GACpC,uCAAuC,GACvC,sCAAsC,GACtC,iDAAiD,GACjD,qCAAqC,GACrC,oCAAoC,CAAC;AAEzC,MAAM,MAAM,4BAA4B,GAAG;IACzC,EAAE,EAAE,IAAI,CAAC;IACT,WAAW,CAAC,EAAE,wBAAwB,CAAC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,WAAW,EAAE,yBAAyB,CAAC;IACvC,iBAAiB,CAAC,EAAE;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,EAAE,EAAE,KAAK,CAAC;IACV,IAAI,EAAE,yBAAyB,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,4BAA4B,GAAG,4BAA4B,CAAC;AActG,sGAAsG;AACtG,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAiBhG;AAyBD;;;;;;;GAOG;AACH,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,yBAAyB,EAC/B,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,2BAA2B,CAAC,CAgEtC;AAED;;;GAGG;AACH,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,kBAAkB,GAAG,SAAS,EAC1C,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvC,cAAc,EAAE,yBAAyB,GACxC,wBAAwB,CAS1B"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Load Memorix entity payloads for graph Layer-01 materialization via **`@x12i/memorix-retrieval`**
|
|
3
|
+
* (`fetchMemorixItem`). Replaces legacy `@x12i/xmemory-scoper` / `xmemory-op` reads.
|
|
4
|
+
*/
|
|
5
|
+
import { buildExecutionSeedFromGraphEntry as engineBuildExecutionSeedFromGraphEntry, } from '@exellix/graph-engine';
|
|
6
|
+
import { fetchMemorixItem, } from '@x12i/memorix-retrieval';
|
|
7
|
+
/** Stable codes for BFF / CI (do not throw for expected misses). */
|
|
8
|
+
export const GraphEntryXmemoryLoadCodes = {
|
|
9
|
+
INVALID_INPUT: 'INVALID_INPUT',
|
|
10
|
+
MISSING_ENTITY_ID: 'MISSING_ENTITY_ID',
|
|
11
|
+
MISSING_ITEM_DESCRIPTOR_ID: 'MISSING_ITEM_DESCRIPTOR_ID',
|
|
12
|
+
MEMORIX_ITEM_NOT_FOUND: 'MEMORIX_ITEM_NOT_FOUND',
|
|
13
|
+
MEMORIX_ITEM_EMPTY: 'MEMORIX_ITEM_EMPTY',
|
|
14
|
+
/** Legacy modes removed with xmemory-scoper. */
|
|
15
|
+
LEGACY_MODE_REMOVED: 'LEGACY_MODE_REMOVED',
|
|
16
|
+
MISSING_ENTITY_ID_LEGACY: 'MISSING_ENTITY_ID',
|
|
17
|
+
MISSING_QUESTION_ID: 'MISSING_QUESTION_ID',
|
|
18
|
+
MISSING_QUESTION: 'MISSING_QUESTION',
|
|
19
|
+
MISSING_ABOUT: 'MISSING_ABOUT',
|
|
20
|
+
MISSING_EXTENDED_DEPS: 'MISSING_EXTENDED_DEPS',
|
|
21
|
+
MEMORIX_ENTITY_RESOLUTION_FAILED: 'MEMORIX_ENTITY_RESOLUTION_FAILED',
|
|
22
|
+
SCOPED_DATA_NOT_FOUND: 'SCOPED_DATA_NOT_FOUND',
|
|
23
|
+
SCOPED_DATA_AMBIGUOUS: 'SCOPED_DATA_AMBIGUOUS',
|
|
24
|
+
MISSING_SCOPED_DATA_KEY: 'MISSING_SCOPED_DATA_KEY',
|
|
25
|
+
MISSING_ENTITY_TYPE: 'MISSING_ENTITY_TYPE',
|
|
26
|
+
NARRATIVE_NOT_FOUND: 'NARRATIVE_NOT_FOUND',
|
|
27
|
+
};
|
|
28
|
+
const LEGACY_MODE_MESSAGE = 'xmemory-scoper modes removed — use mode "memorix-item" with itemDescriptorId + entityId (fetchMemorixItem)';
|
|
29
|
+
function nonEmptyString(value, label, code) {
|
|
30
|
+
if (typeof value === 'string' && value.trim())
|
|
31
|
+
return value.trim();
|
|
32
|
+
return { ok: false, code, message: `${label} is required` };
|
|
33
|
+
}
|
|
34
|
+
/** Flatten {@link FetchMemorixItemResponse} into a plain record for `runtime.input` / seed layers. */
|
|
35
|
+
export function memorixItemToInputRecord(item) {
|
|
36
|
+
const out = {
|
|
37
|
+
entity: item.entity,
|
|
38
|
+
...(item.entityId ? { entityId: item.entityId } : {}),
|
|
39
|
+
...(item.eventId ? { eventId: item.eventId } : {}),
|
|
40
|
+
...(item.knowledgeId ? { knowledgeId: item.knowledgeId } : {}),
|
|
41
|
+
};
|
|
42
|
+
for (const section of item.sections ?? []) {
|
|
43
|
+
for (const [key, field] of Object.entries(section.fields ?? {})) {
|
|
44
|
+
if (field && typeof field === 'object' && !Array.isArray(field) && 'value' in field) {
|
|
45
|
+
out[key] = field.value;
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
out[key] = field;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return out;
|
|
53
|
+
}
|
|
54
|
+
function buildMemorixSeedLayer(request, parts) {
|
|
55
|
+
const input = {};
|
|
56
|
+
if (parts.memorixItem) {
|
|
57
|
+
const key = request.memorixItemInputKey ?? 'memorixItem';
|
|
58
|
+
input[key] = parts.memorixItem;
|
|
59
|
+
Object.assign(input, memorixItemToInputRecord(parts.memorixItem));
|
|
60
|
+
}
|
|
61
|
+
if (parts.scopedDataRow) {
|
|
62
|
+
const key = 'scopedDataInputKey' in request && request.scopedDataInputKey
|
|
63
|
+
? request.scopedDataInputKey
|
|
64
|
+
: 'scopedDataRow';
|
|
65
|
+
input[key] = parts.scopedDataRow;
|
|
66
|
+
}
|
|
67
|
+
if (Object.keys(input).length === 0) {
|
|
68
|
+
return {};
|
|
69
|
+
}
|
|
70
|
+
return { layers: [{ input }] };
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Load a Memorix entity item for graph-entry seeding (`fetchMemorixItem`).
|
|
74
|
+
*
|
|
75
|
+
* **Supported:** `mode: 'memorix-item'` with `itemDescriptorId` + `entityId`.
|
|
76
|
+
*
|
|
77
|
+
* Legacy scoper modes (`scoped-data-row`, `scoped-data-by-source-key`, `narrative`, `snapshot-scoped-data`)
|
|
78
|
+
* return {@link GraphEntryXmemoryLoadCodes.LEGACY_MODE_REMOVED}.
|
|
79
|
+
*/
|
|
80
|
+
export async function loadGraphEntryMemorixPayload(deps, request) {
|
|
81
|
+
if (request.mode !== 'memorix-item') {
|
|
82
|
+
return {
|
|
83
|
+
ok: false,
|
|
84
|
+
code: GraphEntryXmemoryLoadCodes.LEGACY_MODE_REMOVED,
|
|
85
|
+
message: `${LEGACY_MODE_MESSAGE} (requested mode: ${request.mode})`,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
const entityId = nonEmptyString(request.entityId, 'entityId', GraphEntryXmemoryLoadCodes.MISSING_ENTITY_ID);
|
|
89
|
+
if (typeof entityId !== 'string')
|
|
90
|
+
return entityId;
|
|
91
|
+
const itemDescriptorId = nonEmptyString(request.itemDescriptorId, 'itemDescriptorId', GraphEntryXmemoryLoadCodes.MISSING_ITEM_DESCRIPTOR_ID);
|
|
92
|
+
if (typeof itemDescriptorId !== 'string')
|
|
93
|
+
return itemDescriptorId;
|
|
94
|
+
const item = await fetchMemorixItem(deps.client, {
|
|
95
|
+
itemDescriptorId,
|
|
96
|
+
entityId,
|
|
97
|
+
...(request.eventId ? { eventId: request.eventId } : {}),
|
|
98
|
+
...(request.knowledgeId ? { knowledgeId: request.knowledgeId } : {}),
|
|
99
|
+
});
|
|
100
|
+
const errorIssue = item.issues?.find((i) => i.severity === 'error');
|
|
101
|
+
if (errorIssue) {
|
|
102
|
+
return {
|
|
103
|
+
ok: false,
|
|
104
|
+
code: GraphEntryXmemoryLoadCodes.INVALID_INPUT,
|
|
105
|
+
message: errorIssue.message ?? 'Memorix item fetch failed',
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
if (!item.sections?.length) {
|
|
109
|
+
return {
|
|
110
|
+
ok: false,
|
|
111
|
+
code: GraphEntryXmemoryLoadCodes.MEMORIX_ITEM_EMPTY,
|
|
112
|
+
message: `No sections on Memorix item descriptor=${itemDescriptorId} entityId=${entityId}`,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
const flat = memorixItemToInputRecord(item);
|
|
116
|
+
if (Object.keys(flat).length <= 1) {
|
|
117
|
+
return {
|
|
118
|
+
ok: false,
|
|
119
|
+
code: GraphEntryXmemoryLoadCodes.MEMORIX_ITEM_NOT_FOUND,
|
|
120
|
+
message: `Memorix item has no field values (descriptor=${itemDescriptorId}, entityId=${entityId})`,
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
const scopedDataRow = flat;
|
|
124
|
+
const seedSources = buildMemorixSeedLayer(request, { memorixItem: item, scopedDataRow });
|
|
125
|
+
return {
|
|
126
|
+
ok: true,
|
|
127
|
+
memorixItem: item,
|
|
128
|
+
scopedDataRow,
|
|
129
|
+
seedSources,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Merge matrix row `input` with memorix {@link BuildExecutionSeedSources} using the same
|
|
134
|
+
* precedence rules as {@link buildExecutionSeedFromGraphEntry} (later layers override earlier).
|
|
135
|
+
*/
|
|
136
|
+
export function buildExecutionSeedWithMemorixLayer(graphEntry, matrixInputRow, memorixSources) {
|
|
137
|
+
const baseLayers = [{ input: matrixInputRow }];
|
|
138
|
+
if (memorixSources.layers?.length) {
|
|
139
|
+
baseLayers.push(...memorixSources.layers);
|
|
140
|
+
}
|
|
141
|
+
return engineBuildExecutionSeedFromGraphEntry(graphEntry, {
|
|
142
|
+
layers: baseLayers,
|
|
143
|
+
valuesByPath: memorixSources.valuesByPath,
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=graph-entry-xmemory-load.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-entry-xmemory-load.js","sourceRoot":"","sources":["../../src/execution-matrix/graph-entry-xmemory-load.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-entry-xmemory-load.spec.d.ts","sourceRoot":"","sources":["../../src/execution-matrix/graph-entry-xmemory-load.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
2
|
+
import { fetchMemorixItem } from '@x12i/memorix-retrieval';
|
|
3
|
+
import { GraphEntryXmemoryLoadCodes, loadGraphEntryMemorixPayload, memorixItemToInputRecord, } from './graph-entry-xmemory-load.js';
|
|
4
|
+
vi.mock('@x12i/memorix-retrieval', async (importOriginal) => {
|
|
5
|
+
const actual = await importOriginal();
|
|
6
|
+
return { ...actual, fetchMemorixItem: vi.fn() };
|
|
7
|
+
});
|
|
8
|
+
const client = {};
|
|
9
|
+
describe('loadGraphEntryMemorixPayload', () => {
|
|
10
|
+
beforeEach(() => {
|
|
11
|
+
vi.mocked(fetchMemorixItem).mockReset();
|
|
12
|
+
});
|
|
13
|
+
it('loads memorix-item via fetchMemorixItem', async () => {
|
|
14
|
+
vi.mocked(fetchMemorixItem).mockResolvedValue({
|
|
15
|
+
itemDescriptorId: 'desc-1',
|
|
16
|
+
entity: 'subnet',
|
|
17
|
+
entityId: 'ent-1',
|
|
18
|
+
sections: [
|
|
19
|
+
{
|
|
20
|
+
id: 'main',
|
|
21
|
+
title: 'Main',
|
|
22
|
+
fields: {
|
|
23
|
+
subnetId: { value: '10.0.0.0/24' },
|
|
24
|
+
question: { value: 'Analyze' },
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
],
|
|
28
|
+
});
|
|
29
|
+
const r = await loadGraphEntryMemorixPayload({ client }, { mode: 'memorix-item', itemDescriptorId: 'desc-1', entityId: 'ent-1' });
|
|
30
|
+
expect(r.ok).toBe(true);
|
|
31
|
+
if (!r.ok)
|
|
32
|
+
return;
|
|
33
|
+
expect(r.scopedDataRow?.subnetId).toBe('10.0.0.0/24');
|
|
34
|
+
expect(fetchMemorixItem).toHaveBeenCalledWith(client, {
|
|
35
|
+
itemDescriptorId: 'desc-1',
|
|
36
|
+
entityId: 'ent-1',
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
it('rejects legacy scoped-data-row mode', async () => {
|
|
40
|
+
const r = await loadGraphEntryMemorixPayload({ client }, { mode: 'scoped-data-row', entityId: 'e', questionId: 'q' });
|
|
41
|
+
expect(r.ok).toBe(false);
|
|
42
|
+
if (r.ok)
|
|
43
|
+
return;
|
|
44
|
+
expect(r.code).toBe(GraphEntryXmemoryLoadCodes.LEGACY_MODE_REMOVED);
|
|
45
|
+
});
|
|
46
|
+
it('requires itemDescriptorId', async () => {
|
|
47
|
+
const r = await loadGraphEntryMemorixPayload({ client }, { mode: 'memorix-item', itemDescriptorId: '', entityId: 'e' });
|
|
48
|
+
expect(r.ok).toBe(false);
|
|
49
|
+
if (r.ok)
|
|
50
|
+
return;
|
|
51
|
+
expect(r.code).toBe(GraphEntryXmemoryLoadCodes.MISSING_ITEM_DESCRIPTOR_ID);
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
describe('memorixItemToInputRecord', () => {
|
|
55
|
+
it('unwraps field envelopes', () => {
|
|
56
|
+
const flat = memorixItemToInputRecord({
|
|
57
|
+
itemDescriptorId: 'd',
|
|
58
|
+
entity: 'subnet',
|
|
59
|
+
entityId: 'e1',
|
|
60
|
+
sections: [{ id: 's', title: 'S', fields: { subnetId: { value: '10.0.0.0/24' } } }],
|
|
61
|
+
});
|
|
62
|
+
expect(flat.subnetId).toBe('10.0.0.0/24');
|
|
63
|
+
expect(flat.entityId).toBe('e1');
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
//# sourceMappingURL=graph-entry-xmemory-load.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-entry-xmemory-load.spec.js","sourceRoot":"","sources":["../../src/execution-matrix/graph-entry-xmemory-load.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,+BAA+B,CAAC;AAEvC,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;IAC1D,MAAM,MAAM,GAAG,MAAM,cAAc,EAA4C,CAAC;IAChF,OAAO,EAAE,GAAG,MAAM,EAAE,gBAAgB,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;AAClD,CAAC,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,EAA4B,CAAC;AAE5C,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC5C,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,SAAS,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,iBAAiB,CAAC;YAC5C,gBAAgB,EAAE,QAAQ;YAC1B,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR;oBACE,EAAE,EAAE,MAAM;oBACV,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE;wBACN,QAAQ,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE;wBAClC,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;qBAC/B;iBACF;aACF;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,GAAG,MAAM,4BAA4B,CAC1C,EAAE,MAAM,EAAE,EACV,EAAE,IAAI,EAAE,cAAc,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,CACxE,CAAC;QAEF,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,CAAC,CAAC,EAAE;YAAE,OAAO;QAClB,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,MAAM,EAAE;YACpD,gBAAgB,EAAE,QAAQ;YAC1B,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,CAAC,GAAG,MAAM,4BAA4B,CAC1C,EAAE,MAAM,EAAE,EACV,EAAE,IAAI,EAAE,iBAAiB,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAC5D,CAAC;QACF,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,CAAC,EAAE;YAAE,OAAO;QACjB,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,CAAC,GAAG,MAAM,4BAA4B,CAC1C,EAAE,MAAM,EAAE,EACV,EAAE,IAAI,EAAE,cAAc,EAAE,gBAAgB,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAC9D,CAAC;QACF,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,CAAC,EAAE;YAAE,OAAO;QACjB,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,0BAA0B,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,IAAI,GAAG,wBAAwB,CAAC;YACpC,gBAAgB,EAAE,GAAG;YACrB,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;SACpF,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { ExecutionMatrixStatusCounts, GraphConfigRecord, GraphOperationalState, GraphPublicationStatus } from './contracts.js';
|
|
2
|
+
import type { ExecutionMatrixRuntime } from './runtime-store.js';
|
|
3
|
+
/**
|
|
4
|
+
* Validates a dot-path under `input` for grouping (alphanumeric segments; no `$`).
|
|
5
|
+
*/
|
|
6
|
+
export declare function assertSafeInputGroupByPath(path: string): void;
|
|
7
|
+
export type GraphOperationalDashboardOutputCountMode = 'inferenceRows';
|
|
8
|
+
export type FetchGraphOperationalDashboardSliceQuery = {
|
|
9
|
+
matrixCatalogId: string;
|
|
10
|
+
matrixRunId?: string;
|
|
11
|
+
graphId: string;
|
|
12
|
+
extraFilter?: Record<string, unknown>;
|
|
13
|
+
/** Dot path under row `input` (e.g. `entityKind`). Omit for a single {@link ALL_BUCKET} bucket. */
|
|
14
|
+
inputGroupByPath?: string;
|
|
15
|
+
outputCountMode?: GraphOperationalDashboardOutputCountMode;
|
|
16
|
+
/** Max rows read when `inputGroupByPath` is set (default `10_000`). */
|
|
17
|
+
aggregateRowScanCap?: number;
|
|
18
|
+
};
|
|
19
|
+
export type GraphOperationalDashboardInputBucket = {
|
|
20
|
+
key: string;
|
|
21
|
+
totalRows: number;
|
|
22
|
+
bySlotStatus: ExecutionMatrixStatusCounts;
|
|
23
|
+
};
|
|
24
|
+
export type GraphOperationalDashboardSlice = {
|
|
25
|
+
graphId: string;
|
|
26
|
+
matrixCatalogId: string;
|
|
27
|
+
matrixRunId?: string;
|
|
28
|
+
graphConfigFound: boolean;
|
|
29
|
+
publicationStatus: GraphPublicationStatus;
|
|
30
|
+
operationalState: GraphOperationalState;
|
|
31
|
+
configVersion?: number;
|
|
32
|
+
inputBuckets: GraphOperationalDashboardInputBucket[];
|
|
33
|
+
output: {
|
|
34
|
+
completedInferenceRows: number;
|
|
35
|
+
failedSlotRows: number;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
export type FetchGraphOperationalDashboardSliceDeps = {
|
|
39
|
+
runtime: ExecutionMatrixRuntime;
|
|
40
|
+
loadGraphConfig: (graphId: string) => Promise<GraphConfigRecord | null>;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Read-only dashboard slice: graph operational fields from config plus execution-matrix row counts
|
|
44
|
+
* for one `graphId` within a matrix scope. Uses {@link ExecutionMatrixRuntime.countRowsMatching} when available.
|
|
45
|
+
*/
|
|
46
|
+
export declare function fetchGraphOperationalDashboardSlice(deps: FetchGraphOperationalDashboardSliceDeps, query: FetchGraphOperationalDashboardSliceQuery): Promise<GraphOperationalDashboardSlice>;
|
|
47
|
+
//# sourceMappingURL=graph-operational-aggregates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-operational-aggregates.d.ts","sourceRoot":"","sources":["../../src/execution-matrix/graph-operational-aggregates.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGV,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,gBAAgB,CAAC;AAOxB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAgBjE;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAa7D;AAkBD,MAAM,MAAM,wCAAwC,GAAG,eAAe,CAAC;AAEvE,MAAM,MAAM,wCAAwC,GAAG;IACrD,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,mGAAmG;IACnG,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,wCAAwC,CAAC;IAC3D,uEAAuE;IACvE,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,2BAA2B,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,oCAAoC,EAAE,CAAC;IACrD,MAAM,EAAE;QACN,sBAAsB,EAAE,MAAM,CAAC;QAC/B,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG;IACpD,OAAO,EAAE,sBAAsB,CAAC;IAChC,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;CACzE,CAAC;AAEF;;;GAGG;AACH,wBAAsB,mCAAmC,CACvD,IAAI,EAAE,uCAAuC,EAC7C,KAAK,EAAE,wCAAwC,GAC9C,OAAO,CAAC,8BAA8B,CAAC,CA6FzC"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { ExecutionMatrixCatalogValidationError } from './catalox-loader.js';
|
|
2
|
+
import { DEFAULT_GRAPH_OPERATIONAL_STATE, DEFAULT_GRAPH_PUBLICATION_STATUS, EXECUTION_MATRIX_STATUSES, } from './contracts.js';
|
|
3
|
+
import { resolveGraphConfigOperationalView } from './graph-operational-lifecycle.js';
|
|
4
|
+
import { buildMatrixRowReadFilter } from './runtime-store.js';
|
|
5
|
+
import { normalizeExecutionMatrixStatus } from './status.js';
|
|
6
|
+
const ALL_BUCKET = '_all';
|
|
7
|
+
function emptyStatusCounts() {
|
|
8
|
+
return {
|
|
9
|
+
'not-started': 0,
|
|
10
|
+
'in-progress': 0,
|
|
11
|
+
completed: 0,
|
|
12
|
+
failed: 0,
|
|
13
|
+
skipped: 0,
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Validates a dot-path under `input` for grouping (alphanumeric segments; no `$`).
|
|
18
|
+
*/
|
|
19
|
+
export function assertSafeInputGroupByPath(path) {
|
|
20
|
+
const trimmed = path.trim();
|
|
21
|
+
if (!trimmed) {
|
|
22
|
+
throw new ExecutionMatrixCatalogValidationError('Invalid inputGroupByPath', ['path must be non-empty']);
|
|
23
|
+
}
|
|
24
|
+
const parts = trimmed.split('.').filter(Boolean);
|
|
25
|
+
for (const p of parts) {
|
|
26
|
+
if (!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(p)) {
|
|
27
|
+
throw new ExecutionMatrixCatalogValidationError('Invalid inputGroupByPath', [
|
|
28
|
+
`segment ${JSON.stringify(p)} must match /^[a-zA-Z_][a-zA-Z0-9_]*$/`,
|
|
29
|
+
]);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
function inputGroupKey(input, path) {
|
|
34
|
+
const parts = path.split('.').filter(Boolean);
|
|
35
|
+
let cur = input;
|
|
36
|
+
for (const p of parts) {
|
|
37
|
+
if (cur === null || cur === undefined || typeof cur !== 'object')
|
|
38
|
+
return '_unknown';
|
|
39
|
+
cur = cur[p];
|
|
40
|
+
}
|
|
41
|
+
if (cur === undefined || cur === null)
|
|
42
|
+
return '_unknown';
|
|
43
|
+
if (typeof cur === 'string' || typeof cur === 'number' || typeof cur === 'boolean')
|
|
44
|
+
return String(cur);
|
|
45
|
+
return '_object';
|
|
46
|
+
}
|
|
47
|
+
function slotForGraph(row, graphId) {
|
|
48
|
+
return row.execution.find((s) => s.graphId === graphId);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Read-only dashboard slice: graph operational fields from config plus execution-matrix row counts
|
|
52
|
+
* for one `graphId` within a matrix scope. Uses {@link ExecutionMatrixRuntime.countRowsMatching} when available.
|
|
53
|
+
*/
|
|
54
|
+
export async function fetchGraphOperationalDashboardSlice(deps, query) {
|
|
55
|
+
const { matrixCatalogId, matrixRunId, graphId, extraFilter } = query;
|
|
56
|
+
const cap = query.aggregateRowScanCap ?? 10_000;
|
|
57
|
+
const cfg = await deps.loadGraphConfig(graphId);
|
|
58
|
+
const graphConfigFound = cfg !== null;
|
|
59
|
+
const eff = cfg
|
|
60
|
+
? resolveGraphConfigOperationalView(cfg)
|
|
61
|
+
: {
|
|
62
|
+
publicationStatus: DEFAULT_GRAPH_PUBLICATION_STATUS,
|
|
63
|
+
operationalState: DEFAULT_GRAPH_OPERATIONAL_STATE,
|
|
64
|
+
};
|
|
65
|
+
const baseSlotFilter = buildMatrixRowReadFilter(matrixCatalogId, matrixRunId, graphId, undefined, extraFilter);
|
|
66
|
+
const failedSlotRows = await deps.runtime.countRowsMatching(buildMatrixRowReadFilter(matrixCatalogId, matrixRunId, graphId, 'failed', extraFilter));
|
|
67
|
+
const outputMode = query.outputCountMode ?? 'inferenceRows';
|
|
68
|
+
let completedInferenceRows = 0;
|
|
69
|
+
if (outputMode === 'inferenceRows') {
|
|
70
|
+
completedInferenceRows = await deps.runtime.countRowsMatching({
|
|
71
|
+
...baseSlotFilter,
|
|
72
|
+
inferences: { $elemMatch: { graphId } },
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
if (query.inputGroupByPath !== undefined) {
|
|
76
|
+
assertSafeInputGroupByPath(query.inputGroupByPath);
|
|
77
|
+
const path = query.inputGroupByPath.trim();
|
|
78
|
+
const rows = (await deps.runtime.listRecords({
|
|
79
|
+
matrixCatalogId,
|
|
80
|
+
matrixRunId,
|
|
81
|
+
graphId,
|
|
82
|
+
limit: cap,
|
|
83
|
+
extraFilter,
|
|
84
|
+
}));
|
|
85
|
+
const buckets = new Map();
|
|
86
|
+
for (const row of rows) {
|
|
87
|
+
const key = inputGroupKey(row.input, path);
|
|
88
|
+
const slot = slotForGraph(row, graphId);
|
|
89
|
+
const st = (slot
|
|
90
|
+
? normalizeExecutionMatrixStatus(slot.status)
|
|
91
|
+
: 'not-started');
|
|
92
|
+
if (!buckets.has(key)) {
|
|
93
|
+
buckets.set(key, { totalRows: 0, bySlotStatus: emptyStatusCounts() });
|
|
94
|
+
}
|
|
95
|
+
const b = buckets.get(key);
|
|
96
|
+
b.totalRows += 1;
|
|
97
|
+
if (st)
|
|
98
|
+
b.bySlotStatus[st] += 1;
|
|
99
|
+
}
|
|
100
|
+
const inputBuckets = [...buckets.entries()]
|
|
101
|
+
.sort(([a], [b]) => a.localeCompare(b))
|
|
102
|
+
.map(([key, v]) => ({ key, totalRows: v.totalRows, bySlotStatus: v.bySlotStatus }));
|
|
103
|
+
return {
|
|
104
|
+
graphId,
|
|
105
|
+
matrixCatalogId,
|
|
106
|
+
...(matrixRunId !== undefined ? { matrixRunId } : {}),
|
|
107
|
+
graphConfigFound,
|
|
108
|
+
publicationStatus: eff.publicationStatus,
|
|
109
|
+
operationalState: eff.operationalState,
|
|
110
|
+
...(cfg ? { configVersion: cfg.version } : {}),
|
|
111
|
+
inputBuckets,
|
|
112
|
+
output: { completedInferenceRows, failedSlotRows },
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
const inputBuckets = [
|
|
116
|
+
{
|
|
117
|
+
key: ALL_BUCKET,
|
|
118
|
+
totalRows: await deps.runtime.countRowsMatching(baseSlotFilter),
|
|
119
|
+
bySlotStatus: emptyStatusCounts(),
|
|
120
|
+
},
|
|
121
|
+
];
|
|
122
|
+
for (const st of EXECUTION_MATRIX_STATUSES) {
|
|
123
|
+
inputBuckets[0].bySlotStatus[st] = await deps.runtime.countRowsMatching(buildMatrixRowReadFilter(matrixCatalogId, matrixRunId, graphId, st, extraFilter));
|
|
124
|
+
}
|
|
125
|
+
return {
|
|
126
|
+
graphId,
|
|
127
|
+
matrixCatalogId,
|
|
128
|
+
...(matrixRunId !== undefined ? { matrixRunId } : {}),
|
|
129
|
+
graphConfigFound,
|
|
130
|
+
publicationStatus: eff.publicationStatus,
|
|
131
|
+
operationalState: eff.operationalState,
|
|
132
|
+
...(cfg ? { configVersion: cfg.version } : {}),
|
|
133
|
+
inputBuckets,
|
|
134
|
+
output: { completedInferenceRows, failedSlotRows },
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=graph-operational-aggregates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-operational-aggregates.js","sourceRoot":"","sources":["../../src/execution-matrix/graph-operational-aggregates.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { GraphConfigRecord, GraphOperationalState, GraphPublicationStatus } from './contracts.js';
|
|
2
|
+
export declare class GraphNotSchedulableError extends Error {
|
|
3
|
+
readonly graphId: string;
|
|
4
|
+
readonly publicationStatus: GraphPublicationStatus;
|
|
5
|
+
readonly operationalState: GraphOperationalState;
|
|
6
|
+
constructor(message: string, graphId: string, publicationStatus: GraphPublicationStatus, operationalState: GraphOperationalState);
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Effective publication / operational values for a graph config row (fills legacy omissions).
|
|
10
|
+
*/
|
|
11
|
+
export declare function resolveGraphConfigOperationalView(record: GraphConfigRecord): {
|
|
12
|
+
publicationStatus: GraphPublicationStatus;
|
|
13
|
+
operationalState: GraphOperationalState;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Throws when the graph must not be claimed or executed by workers (Draft/Archived, or NotOperational).
|
|
17
|
+
* {@link GraphOperationalState} `Ready` and `Running` are both schedulable when publication is `Published`.
|
|
18
|
+
*/
|
|
19
|
+
export declare function assertGraphSchedulable(record: GraphConfigRecord): void;
|
|
20
|
+
export type GraphOperationalWriteInput = {
|
|
21
|
+
publicationStatus?: GraphPublicationStatus;
|
|
22
|
+
operationalState?: GraphOperationalState;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Validates merged publication + operational fields before persist.
|
|
26
|
+
*
|
|
27
|
+
* @param prevEffective — previous effective view (after {@link resolveGraphConfigOperationalView}); omit on create.
|
|
28
|
+
*/
|
|
29
|
+
export declare function validateGraphOperationalFields(next: {
|
|
30
|
+
publicationStatus: GraphPublicationStatus;
|
|
31
|
+
operationalState: GraphOperationalState;
|
|
32
|
+
}, prevEffective?: {
|
|
33
|
+
publicationStatus: GraphPublicationStatus;
|
|
34
|
+
operationalState: GraphOperationalState;
|
|
35
|
+
}): void;
|
|
36
|
+
/**
|
|
37
|
+
* Merges partial write input with current record defaults and runs {@link validateGraphOperationalFields}.
|
|
38
|
+
*/
|
|
39
|
+
export declare function mergeAndValidateGraphOperationalUpdate(cur: GraphConfigRecord, patch: GraphOperationalWriteInput): {
|
|
40
|
+
publicationStatus: GraphPublicationStatus;
|
|
41
|
+
operationalState: GraphOperationalState;
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=graph-operational-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-operational-lifecycle.d.ts","sourceRoot":"","sources":["../../src/execution-matrix/graph-operational-lifecycle.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,gBAAgB,CAAC;AAQxB,qBAAa,wBAAyB,SAAQ,KAAK;aAG/B,OAAO,EAAE,MAAM;aACf,iBAAiB,EAAE,sBAAsB;aACzC,gBAAgB,EAAE,qBAAqB;gBAHvD,OAAO,EAAE,MAAM,EACC,OAAO,EAAE,MAAM,EACf,iBAAiB,EAAE,sBAAsB,EACzC,gBAAgB,EAAE,qBAAqB;CAK1D;AAUD;;GAEG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,iBAAiB,GAAG;IAC5E,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,gBAAgB,EAAE,qBAAqB,CAAC;CACzC,CAIA;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAmBtE;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE;IAAE,iBAAiB,EAAE,sBAAsB,CAAC;IAAC,gBAAgB,EAAE,qBAAqB,CAAA;CAAE,EAC5F,aAAa,CAAC,EAAE;IAAE,iBAAiB,EAAE,sBAAsB,CAAC;IAAC,gBAAgB,EAAE,qBAAqB,CAAA;CAAE,GACrG,IAAI,CAiCN;AAED;;GAEG;AACH,wBAAgB,sCAAsC,CACpD,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE,0BAA0B,GAChC;IAAE,iBAAiB,EAAE,sBAAsB,CAAC;IAAC,gBAAgB,EAAE,qBAAqB,CAAA;CAAE,CAMxF"}
|