Reuse verified immutable plans and streamline cooperative hashing
Continue final hosted development reliability qualification.
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
import { createHash } from "node:crypto";
|
||||
import { canonicalJson } from "../capability-model/evolution.js";
|
||||
import {
|
||||
executionPlanDigestAsync,
|
||||
type ExecutionPlan,
|
||||
type PlanPackage,
|
||||
ExecutionPlanError,
|
||||
hexDigest,
|
||||
hexDigestAsync,
|
||||
executionVersions,
|
||||
} from "./plan.js";
|
||||
import { createHash } from "node:crypto";
|
||||
import { canonicalJson } from "../capability-model/evolution.js";
|
||||
|
||||
export interface ArtifactFile {
|
||||
path: string;
|
||||
@@ -366,7 +366,7 @@ export async function checkExecutionWorld(
|
||||
): Promise<CheckedWorld> {
|
||||
if (canonicalJson(plan.definition.versions) !== canonicalJson(executionVersions))
|
||||
fail("world", "Unsupported plan codec versions");
|
||||
if ((await hexDigestAsync(plan.definition)) !== plan.digest) fail("plan", "Plan digest mismatch");
|
||||
if ((await executionPlanDigestAsync(plan)) !== plan.digest) fail("plan", "Plan digest mismatch");
|
||||
const manifests = inputs.map(parsePackageArtifacts);
|
||||
unique(
|
||||
manifests.map((m) => m.packageRevisionId),
|
||||
|
||||
Reference in New Issue
Block a user