feat(engine): register MCP profiles and provider transitions

This commit is contained in:
Codex
2026-07-25 15:39:23 +03:00
parent 951b884c4b
commit e9e03143cd
21 changed files with 3573 additions and 28 deletions
@@ -12,6 +12,33 @@ import {
geliosTelemetryFieldRegistryV5,
} from "../../packages/external-provider-contract/providers/gelios/v12/index.mjs";
const PUBLIC_PROFILE_METADATA = Object.freeze({
"gelios.positions.current.realtime.v7": {
cadence: "hot",
dataClass: "operational",
},
"gelios.positions.current.manual.v7": {
cadence: "on_demand",
dataClass: "operational",
},
"gelios.geozones.current.realtime.v1": {
cadence: "cold",
dataClass: "operational",
},
"gelios.units.profile.cold.v1": {
cadence: "cold",
dataClass: "operational",
},
"gelios.units.contacts.cold.v1": {
cadence: "cold",
dataClass: "restricted",
},
"gelios.units.identity.warm.v1": {
cadence: "warm",
dataClass: "restricted",
},
});
const engineRoot = resolve(
process.env.NODEDC_ENGINE_SOURCE_ROOT || "../NODEDC_ENGINE_INFRA",
);
@@ -72,9 +99,14 @@ function executionCatalogEntry() {
: {},
);
const { packageDigest: _packageDigest, ...artifacts } = plan.artifacts;
const publicMetadata = PUBLIC_PROFILE_METADATA[profile.id];
if (!publicMetadata) {
throw new Error(`gelios_v12_public_profile_metadata_missing:${profile.id}`);
}
return {
id: profile.id,
dataProductId: profile.dataProductId,
...publicMetadata,
capabilityIds: [...profile.capabilityIds],
stepSignatures: plan.steps.map((step) => ({
id: step.id,
@@ -87,6 +119,7 @@ function executionCatalogEntry() {
...(step.config.nodeType ? { nodeType: step.config.nodeType } : {}),
})),
artifacts,
executionPlanTemplate: plan,
};
});
return {