@kungfu-tech/buildchain 2.14.4-alpha.0 → 2.14.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 +5 -5
- package/dist/site/buildchain-site.json +4 -4
- package/dist/site/kfd-upstream-aggregate.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/scripts/generate-channel-promotion-workflow.mjs +16 -2
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"product": {
|
|
5
5
|
"name": "Buildchain",
|
|
6
6
|
"package": "@kungfu-tech/buildchain",
|
|
7
|
-
"version": "2.14.4-alpha.
|
|
7
|
+
"version": "2.14.4-alpha.2",
|
|
8
8
|
"repository": "https://github.com/kungfu-systems/buildchain"
|
|
9
9
|
},
|
|
10
10
|
"majorLine": "v2",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"retryable GitHub fallback fetches use a bounded attempt budget before exact source SHA and tree verification"
|
|
51
51
|
],
|
|
52
52
|
"breakingDigest": "sha256:a6a35370d6b0d0f46e1b2712dcc01961fe53c2febde95409a27a485c10a36650",
|
|
53
|
-
"auditDigest": "sha256:
|
|
53
|
+
"auditDigest": "sha256:8bcdb5e04678bcfc17be4576bc444308756bcd84d671f2ba7fc76cade3004d2b"
|
|
54
54
|
},
|
|
55
55
|
{
|
|
56
56
|
"contractVersion": 1,
|
|
@@ -170,7 +170,7 @@
|
|
|
170
170
|
"GitHub Release passport and evidence publication is delegated to promote-buildchain-ref after the semver release transaction completes"
|
|
171
171
|
],
|
|
172
172
|
"breakingDigest": "sha256:1f476fb9a4854b362c4b24cef89a3c7675d7d63baf3bc828d7b8ae7d2787cead",
|
|
173
|
-
"auditDigest": "sha256:
|
|
173
|
+
"auditDigest": "sha256:d95a2804b117b1aae3b9ff415c1288a654caeac147c731d8f639484c625f6089"
|
|
174
174
|
},
|
|
175
175
|
{
|
|
176
176
|
"contractVersion": 1,
|
|
@@ -1061,7 +1061,7 @@
|
|
|
1061
1061
|
"missing receipts are non-qualifying and must not be represented as a successful controller run"
|
|
1062
1062
|
],
|
|
1063
1063
|
"breakingDigest": "sha256:e264a79f9f399038c2fcfd21e4168c68c2e1485ee5c651c02242a02b622ac2be",
|
|
1064
|
-
"auditDigest": "sha256:
|
|
1064
|
+
"auditDigest": "sha256:8bcdb5e04678bcfc17be4576bc444308756bcd84d671f2ba7fc76cade3004d2b"
|
|
1065
1065
|
},
|
|
1066
1066
|
{
|
|
1067
1067
|
"contractVersion": 1,
|
|
@@ -2844,5 +2844,5 @@
|
|
|
2844
2844
|
}
|
|
2845
2845
|
],
|
|
2846
2846
|
"compatibilityDigest": "sha256:edc3653e5cb34efd97065a6941db16140bbf375a565bbcf329d9d795bb07676f",
|
|
2847
|
-
"contractDigest": "sha256:
|
|
2847
|
+
"contractDigest": "sha256:37f62c159142ac5486cf43c2c7cf3891db1e29ec3f16ec0a8a26c98aa83f3219"
|
|
2848
2848
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"contract": "kungfu-buildchain-site-bundle",
|
|
4
|
-
"generatedAt": "2026-07-
|
|
5
|
-
"publishedAt": "2026-07-
|
|
4
|
+
"generatedAt": "2026-07-20T15:37:06.040Z",
|
|
5
|
+
"publishedAt": "2026-07-20T15:37:06.040Z",
|
|
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": "980bdb3117661fc220f7e5050e8e7424e2cfca5b",
|
|
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.14.4-alpha.
|
|
40
|
+
"version": "2.14.4-alpha.2",
|
|
41
41
|
"versionSource": "package.json#version"
|
|
42
42
|
},
|
|
43
43
|
"source": {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"contract": "kungfu-buildchain-publication-release-registry",
|
|
4
|
-
"generatedAt": "2026-07-
|
|
5
|
-
"publishedAt": "2026-07-
|
|
4
|
+
"generatedAt": "2026-07-20T15:37:06.040Z",
|
|
5
|
+
"publishedAt": "2026-07-20T15:37:06.040Z",
|
|
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": "980bdb3117661fc220f7e5050e8e7424e2cfca5b",
|
|
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.14.4-alpha.
|
|
35
|
+
"version": "2.14.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-
|
|
5
|
-
"publishedAt": "2026-07-
|
|
4
|
+
"generatedAt": "2026-07-20T15:37:06.040Z",
|
|
5
|
+
"publishedAt": "2026-07-20T15:37:06.040Z",
|
|
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": "980bdb3117661fc220f7e5050e8e7424e2cfca5b",
|
|
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.14.4-alpha.
|
|
40
|
+
"version": "2.14.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.14.4-alpha.
|
|
3
|
+
"version": "2.14.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",
|
|
@@ -90,9 +90,11 @@ function publicOutputs(outputBlock) {
|
|
|
90
90
|
return [...routed, ...forwarded].join("\n");
|
|
91
91
|
}
|
|
92
92
|
|
|
93
|
-
function forwardedInputs(inputNames, { includeInternal = true } = {}) {
|
|
93
|
+
function forwardedInputs(inputNames, { includeInternal = true, unsupportedInputs = [] } = {}) {
|
|
94
|
+
const unsupported = new Set(unsupportedInputs);
|
|
94
95
|
return inputNames
|
|
95
96
|
.filter((name) => includeInternal || !internalInputs.has(name))
|
|
97
|
+
.filter((name) => !unsupported.has(name))
|
|
96
98
|
.map((name) => {
|
|
97
99
|
const routed = {
|
|
98
100
|
"buildchain-ref": "runtime-ref",
|
|
@@ -134,7 +136,15 @@ function validateWorkflowRoute(name, route, expectedLogicalRef) {
|
|
|
134
136
|
if (typeof route.forwardInternalInputs !== "boolean") {
|
|
135
137
|
throw new Error(`promotion shell ${name} forwardInternalInputs must be boolean`);
|
|
136
138
|
}
|
|
137
|
-
|
|
139
|
+
const unsupportedInputs = route.unsupportedInputs ?? [];
|
|
140
|
+
if (
|
|
141
|
+
!Array.isArray(unsupportedInputs) ||
|
|
142
|
+
unsupportedInputs.some((input) => !/^[a-z0-9-]+$/.test(input)) ||
|
|
143
|
+
new Set(unsupportedInputs).size !== unsupportedInputs.length
|
|
144
|
+
) {
|
|
145
|
+
throw new Error(`promotion shell ${name} unsupportedInputs must contain unique workflow input names`);
|
|
146
|
+
}
|
|
147
|
+
return { ...route, unsupportedInputs };
|
|
138
148
|
}
|
|
139
149
|
|
|
140
150
|
export function parsePromotionShellRouting(source, { major = 2 } = {}) {
|
|
@@ -154,12 +164,14 @@ export function generateChannelPromotionWorkflow(source, { major = 2, shellRouti
|
|
|
154
164
|
callRef: `v${major}-alpha`,
|
|
155
165
|
workflowPath: ".github/workflows/.release-candidate-promote.yml",
|
|
156
166
|
forwardInternalInputs: true,
|
|
167
|
+
unsupportedInputs: [],
|
|
157
168
|
},
|
|
158
169
|
stable: {
|
|
159
170
|
logicalRef: `v${major}`,
|
|
160
171
|
callRef: `v${major}`,
|
|
161
172
|
workflowPath: ".github/workflows/.release-candidate-promote.yml",
|
|
162
173
|
forwardInternalInputs: true,
|
|
174
|
+
unsupportedInputs: [],
|
|
163
175
|
},
|
|
164
176
|
};
|
|
165
177
|
const alphaRoute = validateWorkflowRoute("alpha", routes.alpha, `v${major}-alpha`);
|
|
@@ -173,9 +185,11 @@ export function generateChannelPromotionWorkflow(source, { major = 2, shellRouti
|
|
|
173
185
|
}
|
|
174
186
|
const alphaForwarded = forwardedInputs(inputNames, {
|
|
175
187
|
includeInternal: alphaRoute.forwardInternalInputs,
|
|
188
|
+
unsupportedInputs: alphaRoute.unsupportedInputs,
|
|
176
189
|
});
|
|
177
190
|
const stableForwarded = forwardedInputs(inputNames, {
|
|
178
191
|
includeInternal: stableRoute.forwardInternalInputs,
|
|
192
|
+
unsupportedInputs: stableRoute.unsupportedInputs,
|
|
179
193
|
});
|
|
180
194
|
return `# Generated by scripts/generate-channel-promotion-workflow.mjs. Do not edit directly.
|
|
181
195
|
name: Release Candidate Promote
|