Reorganize Blender Web execution around capabilities
Some checks are pending
M6 deployable RC / quick (push) Waiting to run
M6 deployable RC / chromium (push) Blocked by required conditions
M6 deployable RC / release (push) Blocked by required conditions

This commit is contained in:
mes123456
2026-08-24 18:37:46 -04:00
parent 0b2c3ba0dd
commit a081c68c87
2530 changed files with 763976 additions and 79 deletions

View File

@@ -0,0 +1,24 @@
import assert from "node:assert/strict";
import fs from "node:fs";
import path from "node:path";
import { fileURLToPath } from "node:url";
const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../..");
function arg(name) {
const index = process.argv.indexOf(name);
return index >= 0 ? process.argv[index + 1] : undefined;
}
const baselinePath = arg("--baseline");
const sourceHashesPath = arg("--source-hashes");
if (!baselinePath || !sourceHashesPath) throw new Error("usage: node tools/web/check-corrective-baseline.mjs --baseline path --source-hashes path");
const baseline = JSON.parse(fs.readFileSync(path.resolve(root, baselinePath), "utf8"));
const expected = Object.fromEntries(fs.readFileSync(path.resolve(root, sourceHashesPath), "utf8").trim().split("\n").filter(Boolean).map((line) => {
const [sha256, relative] = line.trim().split(/\s+/, 2);
return [relative, sha256];
}));
assert.deepEqual(baseline.sourceHashes, expected, "baseline source hash map differs from source-hashes.txt");
assert.equal(baseline.invariants.queueMutationAllowed, false);
assert.equal(baseline.invariants.parentPointerMatchesCurrent, true);
assert.equal(baseline.invariants.exactlyOneCatalogActive, true);
assert.equal(baseline.invariants.catalogActiveMatchesPlan, true);
process.stdout.write(`corrective-baseline-check-ok task=${baseline.task} sources=${Object.keys(expected).length} queueMutation=false\n`);