fix(deploy): derive validation descriptor from current lineage

This commit is contained in:
Codex 2026-07-23 09:07:06 +03:00
parent 9db0de540d
commit ec45d09509
2 changed files with 9 additions and 5 deletions

View File

@ -16,10 +16,10 @@ const artifactRoot = resolve(
); );
const baselineArtifact = resolve( const baselineArtifact = resolve(
here, here,
"../deploy-artifacts/nodedc-engine-mcp-control-plane-20260718-003.tgz", "../deploy-artifacts/nodedc-engine-mcp-autonomy-provider-v5-20260720-004.tgz",
); );
const baselineArtifactSha256 = const baselineArtifactSha256 =
"249aef9527666c562e9648b15737e66cc5c1dc7c0788b58ea714da270b5eb4ba"; "3400954cdce078892a06b04b9bfd85a90f6ea775b1a0caf99eba1f880ef6601c";
const projectionRel = "nodedc-source/server/nodeIntelligence/upstreamProjection.js"; const projectionRel = "nodedc-source/server/nodeIntelligence/upstreamProjection.js";
const descriptorRel = "nodedc-source/services/node-intelligence/activation.json"; const descriptorRel = "nodedc-source/services/node-intelligence/activation.json";
const [patchId = "", ...extra] = process.argv.slice(2); const [patchId = "", ...extra] = process.argv.slice(2);
@ -34,7 +34,7 @@ const targetSha256 = Object.freeze({
[projectionRel]: [projectionRel]:
"2dfa6b4f37d9bfa8b92a8109d4060d02dd2634ceb8f7924504b83ccf3fdd1523", "2dfa6b4f37d9bfa8b92a8109d4060d02dd2634ceb8f7924504b83ccf3fdd1523",
[descriptorRel]: [descriptorRel]:
"a8adb8c03e1a82ff683c99a8c6482c78eca1b63422e7e7e417424363b995079e", "84b0e15a10cedf334ad04d6f31c908da2dc155503c9974f0eeb75b01e20fb884",
}); });
const entries = Object.freeze(Object.keys(targetSha256)); const entries = Object.freeze(Object.keys(targetSha256));
const artifact = join(artifactRoot, `nodedc-${patchId}.tgz`); const artifact = join(artifactRoot, `nodedc-${patchId}.tgz`);
@ -144,6 +144,8 @@ async function buildTargetDescriptor() {
|| descriptor?.releaseId !== "2.33.2-974a9fb3492f" || descriptor?.releaseId !== "2.33.2-974a9fb3492f"
|| descriptor?.source?.upstreamProjectionSha256 || descriptor?.source?.upstreamProjectionSha256
!== "761a874b102a938bc6018159ddacdaac71ad6ae08e9f0f8d7f3b58a0165a5131" !== "761a874b102a938bc6018159ddacdaac71ad6ae08e9f0f8d7f3b58a0165a5131"
|| descriptor?.source?.gatewaySha256
!== "5331f6dc8dc306f641370a2968eb025ee3e278e27ae9a217e4cfc2901fec369c"
) { ) {
throw new Error("engine_node_intelligence_baseline_descriptor_mismatch"); throw new Error("engine_node_intelligence_baseline_descriptor_mismatch");
} }

View File

@ -422,11 +422,11 @@ ENGINE_PROVIDER_AUTHORITY_DIAGNOSTICS_ARTIFACT_ENTRIES = (
) )
ENGINE_PROVIDER_AUTHORITY_DIAGNOSTICS_PREDECESSOR_SHA256 = { ENGINE_PROVIDER_AUTHORITY_DIAGNOSTICS_PREDECESSOR_SHA256 = {
"nodedc-source/server/nodeIntelligence/upstreamProjection.js": "761a874b102a938bc6018159ddacdaac71ad6ae08e9f0f8d7f3b58a0165a5131", "nodedc-source/server/nodeIntelligence/upstreamProjection.js": "761a874b102a938bc6018159ddacdaac71ad6ae08e9f0f8d7f3b58a0165a5131",
ENGINE_NODE_INTELLIGENCE_DESCRIPTOR_REL: "a9e280520bc487e0b421c548ec840eeb2b8389b6e04f764690250ea1d34cd23e", ENGINE_NODE_INTELLIGENCE_DESCRIPTOR_REL: "8d65991fbc23578fd3e4830844d52827212c78aa94a9cb3d13bac7594b888497",
} }
ENGINE_PROVIDER_AUTHORITY_DIAGNOSTICS_TARGET_SHA256 = { ENGINE_PROVIDER_AUTHORITY_DIAGNOSTICS_TARGET_SHA256 = {
"nodedc-source/server/nodeIntelligence/upstreamProjection.js": "2dfa6b4f37d9bfa8b92a8109d4060d02dd2634ceb8f7924504b83ccf3fdd1523", "nodedc-source/server/nodeIntelligence/upstreamProjection.js": "2dfa6b4f37d9bfa8b92a8109d4060d02dd2634ceb8f7924504b83ccf3fdd1523",
ENGINE_NODE_INTELLIGENCE_DESCRIPTOR_REL: "a8adb8c03e1a82ff683c99a8c6482c78eca1b63422e7e7e417424363b995079e", ENGINE_NODE_INTELLIGENCE_DESCRIPTOR_REL: "84b0e15a10cedf334ad04d6f31c908da2dc155503c9974f0eeb75b01e20fb884",
} }
ENGINE_DEPTTRANS_ZONE_AUTHORITY_V1_ARTIFACT_ENTRIES = ( ENGINE_DEPTTRANS_ZONE_AUTHORITY_V1_ARTIFACT_ENTRIES = (
"nodedc-source/server/assets/provider-packages/v1/catalog.json", "nodedc-source/server/assets/provider-packages/v1/catalog.json",
@ -4648,6 +4648,8 @@ def validate_engine_provider_authority_diagnostics_slice(payload_dir, entries):
if ( if (
descriptor.get("action") != "activate" descriptor.get("action") != "activate"
or descriptor.get("releaseId") != "2.33.2-974a9fb3492f" or descriptor.get("releaseId") != "2.33.2-974a9fb3492f"
or descriptor.get("source", {}).get("gatewaySha256")
!= "5331f6dc8dc306f641370a2968eb025ee3e278e27ae9a217e4cfc2901fec369c"
or descriptor.get("source", {}).get("upstreamProjectionSha256") or descriptor.get("source", {}).get("upstreamProjectionSha256")
!= ENGINE_PROVIDER_AUTHORITY_DIAGNOSTICS_TARGET_SHA256[ != ENGINE_PROVIDER_AUTHORITY_DIAGNOSTICS_TARGET_SHA256[
"nodedc-source/server/nodeIntelligence/upstreamProjection.js" "nodedc-source/server/nodeIntelligence/upstreamProjection.js"