@kungfu-tech/buildchain 2.12.3 → 2.12.4-alpha.2
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/dist/site/buildchain-contract.json +3 -3
- package/dist/site/buildchain-site.json +4 -4
- package/dist/site/kfd-upstream-aggregate.json +1 -1
- package/dist/site/node-api-registry.json +1 -1
- package/dist/site/publication-registry.json +4 -4
- package/dist/site/site-manifest.json +4 -4
- package/package.json +1 -1
- package/packages/core/stable-candidate-ledger.js +3 -1
- package/scripts/shifu-gate-profile.mjs +5 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"product": {
|
|
5
5
|
"name": "Buildchain",
|
|
6
6
|
"package": "@kungfu-tech/buildchain",
|
|
7
|
-
"version": "2.12.
|
|
7
|
+
"version": "2.12.4-alpha.2",
|
|
8
8
|
"repository": "https://github.com/kungfu-systems/buildchain"
|
|
9
9
|
},
|
|
10
10
|
"majorLine": "v2",
|
|
@@ -549,9 +549,9 @@
|
|
|
549
549
|
"agents can discover supported Node APIs without importing internal file paths"
|
|
550
550
|
],
|
|
551
551
|
"breakingDigest": "sha256:48f925608d3e2131d90936b07dc2a30341204cae3e6e785c0f77d61ad755c945",
|
|
552
|
-
"auditDigest": "sha256:
|
|
552
|
+
"auditDigest": "sha256:0b025f14bab42fd92705ce4e63e3b1881a70f43ee903eaa4e0d853b23e46ade3"
|
|
553
553
|
}
|
|
554
554
|
],
|
|
555
555
|
"compatibilityDigest": "sha256:2090784977bc7d54fc647215ef73532b9db26147a0b40ec3f56c31d611d806cc",
|
|
556
|
-
"contractDigest": "sha256:
|
|
556
|
+
"contractDigest": "sha256:2269c84729a244558c839a7fd4f3da3d4d3078900c5fea50574c0d3ee536e904"
|
|
557
557
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"contract": "kungfu-buildchain-site-bundle",
|
|
4
|
-
"generatedAt": "2026-07-13T14:
|
|
5
|
-
"publishedAt": "2026-07-13T14:
|
|
4
|
+
"generatedAt": "2026-07-13T14:46:16.105Z",
|
|
5
|
+
"publishedAt": "2026-07-13T14:46:16.105Z",
|
|
6
6
|
"reproducible": true,
|
|
7
7
|
"timestampPolicy": "ci-injected",
|
|
8
8
|
"deterministicInputs": [
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"declared Buildchain surface manifest contract"
|
|
20
20
|
],
|
|
21
21
|
"sourceDateEpoch": "0",
|
|
22
|
-
"sourceRevision": "
|
|
22
|
+
"sourceRevision": "c4dd3fbaf0241d8872c54a574718cbd7869266ab",
|
|
23
23
|
"timestampPolicyDetails": {
|
|
24
24
|
"contract": "kungfu-buildchain-surface-timestamp-policy",
|
|
25
25
|
"timestampFields": [
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
},
|
|
38
38
|
"package": {
|
|
39
39
|
"name": "@kungfu-tech/buildchain",
|
|
40
|
-
"version": "2.12.
|
|
40
|
+
"version": "2.12.4-alpha.2",
|
|
41
41
|
"versionSource": "package.json#version"
|
|
42
42
|
},
|
|
43
43
|
"source": {
|
|
@@ -255,7 +255,7 @@
|
|
|
255
255
|
"specifier": "@kungfu-tech/buildchain/stable-candidate-ledger",
|
|
256
256
|
"export": "./stable-candidate-ledger",
|
|
257
257
|
"target": "./packages/core/stable-candidate-ledger.js",
|
|
258
|
-
"digest": "sha256:
|
|
258
|
+
"digest": "sha256:c816025953dda54e43fc13c01139a19ea96b4377844108af537eb190255a8dbd",
|
|
259
259
|
"summary": "Immutable alpha candidate ledger, qualification, revocation, selection, and exact stable source-lock APIs.",
|
|
260
260
|
"capabilityGroup": "governance-versioning",
|
|
261
261
|
"audience": [
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"contract": "kungfu-buildchain-publication-release-registry",
|
|
4
|
-
"generatedAt": "2026-07-13T14:
|
|
5
|
-
"publishedAt": "2026-07-13T14:
|
|
4
|
+
"generatedAt": "2026-07-13T14:46:16.105Z",
|
|
5
|
+
"publishedAt": "2026-07-13T14:46:16.105Z",
|
|
6
6
|
"reproducible": true,
|
|
7
7
|
"timestampPolicy": "ci-injected",
|
|
8
8
|
"deterministicInputs": [
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"declared Buildchain surface manifest contract"
|
|
20
20
|
],
|
|
21
21
|
"sourceDateEpoch": "0",
|
|
22
|
-
"sourceRevision": "
|
|
22
|
+
"sourceRevision": "c4dd3fbaf0241d8872c54a574718cbd7869266ab",
|
|
23
23
|
"timestampPolicyDetails": {
|
|
24
24
|
"contract": "kungfu-buildchain-surface-timestamp-policy",
|
|
25
25
|
"timestampFields": [
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
},
|
|
33
33
|
"package": {
|
|
34
34
|
"name": "@kungfu-tech/buildchain",
|
|
35
|
-
"version": "2.12.
|
|
35
|
+
"version": "2.12.4-alpha.2",
|
|
36
36
|
"versionSource": "package.json#version"
|
|
37
37
|
},
|
|
38
38
|
"sourceKind": "package-site-bundle",
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"contract": "kungfu-buildchain-site-manifest",
|
|
4
|
-
"generatedAt": "2026-07-13T14:
|
|
5
|
-
"publishedAt": "2026-07-13T14:
|
|
4
|
+
"generatedAt": "2026-07-13T14:46:16.105Z",
|
|
5
|
+
"publishedAt": "2026-07-13T14:46:16.105Z",
|
|
6
6
|
"reproducible": true,
|
|
7
7
|
"timestampPolicy": "ci-injected",
|
|
8
8
|
"deterministicInputs": [
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"declared Buildchain surface manifest contract"
|
|
20
20
|
],
|
|
21
21
|
"sourceDateEpoch": "0",
|
|
22
|
-
"sourceRevision": "
|
|
22
|
+
"sourceRevision": "c4dd3fbaf0241d8872c54a574718cbd7869266ab",
|
|
23
23
|
"timestampPolicyDetails": {
|
|
24
24
|
"contract": "kungfu-buildchain-surface-timestamp-policy",
|
|
25
25
|
"timestampFields": [
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
},
|
|
38
38
|
"package": {
|
|
39
39
|
"name": "@kungfu-tech/buildchain",
|
|
40
|
-
"version": "2.12.
|
|
40
|
+
"version": "2.12.4-alpha.2",
|
|
41
41
|
"versionSource": "package.json#version"
|
|
42
42
|
},
|
|
43
43
|
"entrypoint": "buildchain-site.json",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kungfu-tech/buildchain",
|
|
3
|
-
"version": "2.12.
|
|
3
|
+
"version": "2.12.4-alpha.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Buildchain Release Passport, release governance, CLI toolkit, and site facts.",
|
|
6
6
|
"repository": "https://github.com/kungfu-systems/buildchain",
|
|
@@ -235,7 +235,9 @@ export function markStableCandidatePromoted(
|
|
|
235
235
|
const version = exactAlpha(versionInput).version;
|
|
236
236
|
const candidate = ledger.candidates.find((entry) => entry.version === version);
|
|
237
237
|
if (!candidate) throw new Error(`candidate ${version} is not registered`);
|
|
238
|
-
|
|
238
|
+
const humanAuthority = candidate.decision?.reason === "human-release-now"
|
|
239
|
+
|| candidate.promotionRequest?.authority === "human";
|
|
240
|
+
if (!candidate.qualification?.ok && !humanAuthority) {
|
|
239
241
|
throw new Error(`candidate ${version} is not qualified for promotion`);
|
|
240
242
|
}
|
|
241
243
|
candidate.state = "promoted";
|
|
@@ -110,6 +110,10 @@ export function windowsBatchInvocation(command, args, { cwd, comSpec } = {}) {
|
|
|
110
110
|
};
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
+
export function prepareGateExecutionFiles(files) {
|
|
114
|
+
for (const file of files) fs.rmSync(file, { force: true });
|
|
115
|
+
}
|
|
116
|
+
|
|
113
117
|
function runArgv(
|
|
114
118
|
argv,
|
|
115
119
|
args,
|
|
@@ -234,6 +238,7 @@ function runMode() {
|
|
|
234
238
|
const executionPath = path.join(outputRoot, "execution.json");
|
|
235
239
|
const env = gateEnvironment();
|
|
236
240
|
fs.mkdirSync(outputRoot, { recursive: true });
|
|
241
|
+
prepareGateExecutionFiles([receiptPath, validationPath, executionPath]);
|
|
237
242
|
const argv = commandForPlatform(commandJson, entry.platform);
|
|
238
243
|
const runArgs = gateArgs(
|
|
239
244
|
[
|