@kungfu-tech/buildchain 3.0.7-alpha.0 → 3.0.7
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/actions/promote-buildchain-ref/README.md +10 -0
- package/contracts/auditable-demo-scenario-v1.schema.json +1 -1
- package/contracts/engineering-housekeeper-v1.schema.json +143 -0
- package/contracts/fixtures/engineering-housekeeper-v1/cases.json +68 -0
- package/dist/site/buildchain-contract.json +24 -24
- package/dist/site/buildchain-site.json +91 -30
- package/dist/site/capability-registry.json +3 -3
- package/dist/site/controller-registry.json +6 -2
- package/dist/site/kfd-claims.json +122 -11
- package/dist/site/kfd-upstream-aggregate.json +1 -1
- package/dist/site/manual-registry.json +8 -7
- package/dist/site/node-api-registry.json +683 -105
- package/dist/site/page-registry.json +80 -19
- package/dist/site/public-surface-audit.json +98 -7
- package/dist/site/publication-authority-registry.json +81 -1
- package/dist/site/publication-registry.json +4 -4
- package/dist/site/release-provenance.json +2 -0
- package/dist/site/site-manifest.json +11 -11
- package/dist/site/workflow-registry.json +119 -2
- package/docs/MAP.md +1 -0
- package/docs/auditable-demo.md +2 -2
- package/docs/dev-delivery-warrant.md +49 -4
- package/docs/engineering-housekeeper.md +138 -0
- package/docs/lifecycle-protocol.md +4 -2
- package/docs/node-api-reference.md +277 -212
- package/docs/release-governance.md +17 -2
- package/docs/release-tail-provider-plane.md +1 -1
- package/docs/reusable-build-surface.md +11 -0
- package/package.json +4 -1
- package/packages/core/artifact-signing.js +61 -0
- package/packages/core/buildchain-config.js +66 -6
- package/packages/core/buildchain-publication-authority.js +4 -0
- package/packages/core/controller-evidence.js +2 -1
- package/packages/core/dev-delivery-warrant-cancellation.js +1 -0
- package/packages/core/dev-delivery-warrant-shadow.js +502 -0
- package/packages/core/dev-delivery-warrant.js +15 -6
- package/packages/core/diagnostics.js +8 -3
- package/packages/core/engineering-housekeeper-github-client.js +222 -0
- package/packages/core/engineering-housekeeper-github.js +501 -0
- package/packages/core/engineering-housekeeper.js +259 -0
- package/packages/core/index.js +3 -0
- package/packages/core/kfd-gate.js +45 -15
- package/packages/core/publication-rehearsal-runtime.js +13 -1
- package/packages/core/release-passport.js +130 -20
- package/scripts/assemble-self-publication-admission.mjs +1 -1
- package/scripts/audit-publication-control-plane.mjs +1 -1
- package/scripts/auditable-demo-bundle-verification.mjs +2 -3
- package/scripts/auditable-demo-platform.mjs +2 -2
- package/scripts/auditable-demo-renditions.mjs +1 -1
- package/scripts/auditable-demo.mjs +2 -2
- package/scripts/build-contract-core.mjs +8 -3
- package/scripts/build-standalone-binary.mjs +14 -3
- package/scripts/check-inventory.mjs +3 -1
- package/scripts/dev-delivery-warrant.mjs +31 -4
- package/scripts/dev-pr-auto-merge.mjs +30 -4
- package/scripts/dev-pr-delivery-warrant.mjs +50 -0
- package/scripts/engineering-housekeeper-workflow.mjs +394 -0
- package/scripts/generate-site-bundle.mjs +23 -4
- package/scripts/inspect-artifact-signing-requests.mjs +6 -0
- package/scripts/materialize-self-release-candidate-version.mjs +6 -0
- package/scripts/publication-commit-evidence.mjs +69 -23
- package/scripts/release-candidate-resolver.mjs +16 -10
- package/scripts/resume-from-candidate-run.mjs +123 -9
- package/scripts/seal-artifact-signing-requests.mjs +6 -0
- package/scripts/site-capability-metadata.mjs +2 -0
- package/scripts/web-surface-core.mjs +8 -2
- package/scripts/workflow-call-contract.mjs +1 -1
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
"status": "passed",
|
|
5
5
|
"summary": {
|
|
6
6
|
"cliCommandCount": 114,
|
|
7
|
-
"workflowCount":
|
|
7
|
+
"workflowCount": 69,
|
|
8
8
|
"actionCount": 7,
|
|
9
|
-
"sitePageCount":
|
|
10
|
-
"docCommandRefCount":
|
|
9
|
+
"sitePageCount": 70,
|
|
10
|
+
"docCommandRefCount": 924,
|
|
11
11
|
"failureCount": 0
|
|
12
12
|
},
|
|
13
13
|
"enumerated": {
|
|
@@ -1988,6 +1988,7 @@
|
|
|
1988
1988
|
"path": ".github/workflows/dev-pr-auto-merge.yml",
|
|
1989
1989
|
"reusable": true,
|
|
1990
1990
|
"inputs": [
|
|
1991
|
+
"active-lease-context",
|
|
1991
1992
|
"affected-paths-json",
|
|
1992
1993
|
"allowed-head-prefixes",
|
|
1993
1994
|
"assignment-root",
|
|
@@ -2003,6 +2004,7 @@
|
|
|
2003
2004
|
"dry-run",
|
|
2004
2005
|
"expected-head-sha",
|
|
2005
2006
|
"expected-pr-number",
|
|
2007
|
+
"handoff-workflow-id",
|
|
2006
2008
|
"initiative-root",
|
|
2007
2009
|
"landing-mode",
|
|
2008
2010
|
"max-merges",
|
|
@@ -2017,11 +2019,13 @@
|
|
|
2017
2019
|
"shard-evidence-roots-json",
|
|
2018
2020
|
"source-identity-root",
|
|
2019
2021
|
"source-patch-root",
|
|
2022
|
+
"source-workflow-id",
|
|
2023
|
+
"source-workflow-run-id",
|
|
2020
2024
|
"target-branch",
|
|
2021
2025
|
"toolchain-root",
|
|
2022
2026
|
"warrant-lease-seconds"
|
|
2023
2027
|
],
|
|
2024
|
-
"inputCount":
|
|
2028
|
+
"inputCount": 36,
|
|
2025
2029
|
"secrets": [
|
|
2026
2030
|
"github-token"
|
|
2027
2031
|
],
|
|
@@ -2075,6 +2079,78 @@
|
|
|
2075
2079
|
],
|
|
2076
2080
|
"outputCount": 7
|
|
2077
2081
|
},
|
|
2082
|
+
{
|
|
2083
|
+
"id": "engineering-housekeeper-daily",
|
|
2084
|
+
"path": ".github/workflows/engineering-housekeeper-daily.yml",
|
|
2085
|
+
"reusable": false,
|
|
2086
|
+
"inputs": [],
|
|
2087
|
+
"inputCount": 0,
|
|
2088
|
+
"secrets": [],
|
|
2089
|
+
"secretCount": 0,
|
|
2090
|
+
"outputs": [],
|
|
2091
|
+
"outputCount": 0
|
|
2092
|
+
},
|
|
2093
|
+
{
|
|
2094
|
+
"id": "engineering-housekeeper-monthly",
|
|
2095
|
+
"path": ".github/workflows/engineering-housekeeper-monthly.yml",
|
|
2096
|
+
"reusable": false,
|
|
2097
|
+
"inputs": [],
|
|
2098
|
+
"inputCount": 0,
|
|
2099
|
+
"secrets": [],
|
|
2100
|
+
"secretCount": 0,
|
|
2101
|
+
"outputs": [],
|
|
2102
|
+
"outputCount": 0
|
|
2103
|
+
},
|
|
2104
|
+
{
|
|
2105
|
+
"id": "engineering-housekeeper-weekly",
|
|
2106
|
+
"path": ".github/workflows/engineering-housekeeper-weekly.yml",
|
|
2107
|
+
"reusable": false,
|
|
2108
|
+
"inputs": [],
|
|
2109
|
+
"inputCount": 0,
|
|
2110
|
+
"secrets": [],
|
|
2111
|
+
"secretCount": 0,
|
|
2112
|
+
"outputs": [],
|
|
2113
|
+
"outputCount": 0
|
|
2114
|
+
},
|
|
2115
|
+
{
|
|
2116
|
+
"id": "engineering-housekeeper",
|
|
2117
|
+
"path": ".github/workflows/engineering-housekeeper.yml",
|
|
2118
|
+
"reusable": true,
|
|
2119
|
+
"inputs": [
|
|
2120
|
+
"apply-enabled",
|
|
2121
|
+
"artifact-prefix",
|
|
2122
|
+
"artifact-retention-days",
|
|
2123
|
+
"buildchain-ref",
|
|
2124
|
+
"buildchain-repository",
|
|
2125
|
+
"max-actions",
|
|
2126
|
+
"mode",
|
|
2127
|
+
"protected-patterns",
|
|
2128
|
+
"repository",
|
|
2129
|
+
"retained-patterns",
|
|
2130
|
+
"stale-days",
|
|
2131
|
+
"stale-pull-request-label",
|
|
2132
|
+
"target-branch"
|
|
2133
|
+
],
|
|
2134
|
+
"inputCount": 13,
|
|
2135
|
+
"secrets": [
|
|
2136
|
+
"github_app_id",
|
|
2137
|
+
"github_app_private_key",
|
|
2138
|
+
"github_token"
|
|
2139
|
+
],
|
|
2140
|
+
"secretCount": 3,
|
|
2141
|
+
"outputs": [
|
|
2142
|
+
"action-count",
|
|
2143
|
+
"branch-receipt-root",
|
|
2144
|
+
"outcome",
|
|
2145
|
+
"plan-artifact",
|
|
2146
|
+
"plan-root",
|
|
2147
|
+
"pull-request-receipt-root",
|
|
2148
|
+
"receipt-artifact",
|
|
2149
|
+
"report-artifact",
|
|
2150
|
+
"report-receipt-root"
|
|
2151
|
+
],
|
|
2152
|
+
"outputCount": 9
|
|
2153
|
+
},
|
|
2078
2154
|
{
|
|
2079
2155
|
"id": "github-artifact-attestation",
|
|
2080
2156
|
"path": ".github/workflows/github-artifact-attestation.yml",
|
|
@@ -2844,6 +2920,7 @@
|
|
|
2844
2920
|
"publish-package-set-order",
|
|
2845
2921
|
"publish-rematerialize-on-resume",
|
|
2846
2922
|
"publish-required-artifacts-json",
|
|
2923
|
+
"publish-required-artifacts-path",
|
|
2847
2924
|
"publish-sealed-bundle-manifest",
|
|
2848
2925
|
"publish-sealed-bundle-root",
|
|
2849
2926
|
"publish-source-locked",
|
|
@@ -2895,7 +2972,7 @@
|
|
|
2895
2972
|
"transaction-state-path",
|
|
2896
2973
|
"verification-command"
|
|
2897
2974
|
],
|
|
2898
|
-
"inputCount":
|
|
2975
|
+
"inputCount": 80
|
|
2899
2976
|
},
|
|
2900
2977
|
{
|
|
2901
2978
|
"id": "release-tail",
|
|
@@ -3130,6 +3207,10 @@
|
|
|
3130
3207
|
"id": "manual:dev-qualification-patrol",
|
|
3131
3208
|
"category": "manual"
|
|
3132
3209
|
},
|
|
3210
|
+
{
|
|
3211
|
+
"id": "manual:engineering-housekeeper",
|
|
3212
|
+
"category": "manual"
|
|
3213
|
+
},
|
|
3133
3214
|
{
|
|
3134
3215
|
"id": "manual:getting-started",
|
|
3135
3216
|
"category": "manual"
|
|
@@ -4175,6 +4256,16 @@
|
|
|
4175
4256
|
"path": "docs/dev-delivery-warrant.md",
|
|
4176
4257
|
"command": "buildchain dev proof integration"
|
|
4177
4258
|
},
|
|
4259
|
+
{
|
|
4260
|
+
"id": "dev",
|
|
4261
|
+
"path": "docs/dev-delivery-warrant.md",
|
|
4262
|
+
"command": "buildchain dev warrant shadow-plan"
|
|
4263
|
+
},
|
|
4264
|
+
{
|
|
4265
|
+
"id": "dev",
|
|
4266
|
+
"path": "docs/dev-delivery-warrant.md",
|
|
4267
|
+
"command": "buildchain dev warrant shadow-qualify"
|
|
4268
|
+
},
|
|
4178
4269
|
{
|
|
4179
4270
|
"id": "dev",
|
|
4180
4271
|
"path": "docs/release-governance.md",
|
|
@@ -7897,8 +7988,8 @@
|
|
|
7897
7988
|
"workflowRegistryPath": "dist/site/workflow-registry.json",
|
|
7898
7989
|
"pageRegistryPath": "dist/site/page-registry.json",
|
|
7899
7990
|
"cliRegistryDigest": "e7b90e95dabcffb3fecb8e84cec48d7a99261c5e90732aff0ebc174b01c4e35c",
|
|
7900
|
-
"workflowRegistryDigest": "
|
|
7901
|
-
"pageRegistryDigest": "
|
|
7991
|
+
"workflowRegistryDigest": "ddf86974ae3c900948598aca2d28309681cd5c910f3fcd6fc75fd74a06bebdfa",
|
|
7992
|
+
"pageRegistryDigest": "504454df002494e1bc5cdf37679c28a3914f2df43cf4a70524019d2d97b6c320"
|
|
7902
7993
|
},
|
|
7903
7994
|
"comparison": {
|
|
7904
7995
|
"missingCliRegistry": [],
|
|
@@ -440,6 +440,58 @@
|
|
|
440
440
|
"runnerPolicy": "unqualified",
|
|
441
441
|
"notes": ""
|
|
442
442
|
},
|
|
443
|
+
{
|
|
444
|
+
"workflowPath": ".github/workflows/engineering-housekeeper-daily.yml",
|
|
445
|
+
"authorityClass": "governance-write",
|
|
446
|
+
"publicationCapable": false,
|
|
447
|
+
"capabilityIds": [],
|
|
448
|
+
"credentialMode": "none",
|
|
449
|
+
"publisherWorkflowMode": "fixed",
|
|
450
|
+
"publisherWorkflowPath": ".github/workflows/engineering-housekeeper-daily.yml",
|
|
451
|
+
"environment": "",
|
|
452
|
+
"environmentMode": "fixed",
|
|
453
|
+
"runnerPolicy": "unqualified",
|
|
454
|
+
"notes": ""
|
|
455
|
+
},
|
|
456
|
+
{
|
|
457
|
+
"workflowPath": ".github/workflows/engineering-housekeeper-monthly.yml",
|
|
458
|
+
"authorityClass": "governance-write",
|
|
459
|
+
"publicationCapable": false,
|
|
460
|
+
"capabilityIds": [],
|
|
461
|
+
"credentialMode": "none",
|
|
462
|
+
"publisherWorkflowMode": "fixed",
|
|
463
|
+
"publisherWorkflowPath": ".github/workflows/engineering-housekeeper-monthly.yml",
|
|
464
|
+
"environment": "",
|
|
465
|
+
"environmentMode": "fixed",
|
|
466
|
+
"runnerPolicy": "unqualified",
|
|
467
|
+
"notes": ""
|
|
468
|
+
},
|
|
469
|
+
{
|
|
470
|
+
"workflowPath": ".github/workflows/engineering-housekeeper-weekly.yml",
|
|
471
|
+
"authorityClass": "governance-write",
|
|
472
|
+
"publicationCapable": false,
|
|
473
|
+
"capabilityIds": [],
|
|
474
|
+
"credentialMode": "none",
|
|
475
|
+
"publisherWorkflowMode": "fixed",
|
|
476
|
+
"publisherWorkflowPath": ".github/workflows/engineering-housekeeper-weekly.yml",
|
|
477
|
+
"environment": "",
|
|
478
|
+
"environmentMode": "fixed",
|
|
479
|
+
"runnerPolicy": "unqualified",
|
|
480
|
+
"notes": ""
|
|
481
|
+
},
|
|
482
|
+
{
|
|
483
|
+
"workflowPath": ".github/workflows/engineering-housekeeper.yml",
|
|
484
|
+
"authorityClass": "governance-write",
|
|
485
|
+
"publicationCapable": false,
|
|
486
|
+
"capabilityIds": [],
|
|
487
|
+
"credentialMode": "none",
|
|
488
|
+
"publisherWorkflowMode": "fixed",
|
|
489
|
+
"publisherWorkflowPath": ".github/workflows/engineering-housekeeper.yml",
|
|
490
|
+
"environment": "",
|
|
491
|
+
"environmentMode": "fixed",
|
|
492
|
+
"runnerPolicy": "unqualified",
|
|
493
|
+
"notes": ""
|
|
494
|
+
},
|
|
443
495
|
{
|
|
444
496
|
"workflowPath": ".github/workflows/github-artifact-attestation.yml",
|
|
445
497
|
"authorityClass": "evidence-publication",
|
|
@@ -962,6 +1014,34 @@
|
|
|
962
1014
|
],
|
|
963
1015
|
"classified": true
|
|
964
1016
|
},
|
|
1017
|
+
{
|
|
1018
|
+
"path": ".github/workflows/engineering-housekeeper-daily.yml",
|
|
1019
|
+
"signals": [
|
|
1020
|
+
"write-permission"
|
|
1021
|
+
],
|
|
1022
|
+
"classified": true
|
|
1023
|
+
},
|
|
1024
|
+
{
|
|
1025
|
+
"path": ".github/workflows/engineering-housekeeper-monthly.yml",
|
|
1026
|
+
"signals": [
|
|
1027
|
+
"write-permission"
|
|
1028
|
+
],
|
|
1029
|
+
"classified": true
|
|
1030
|
+
},
|
|
1031
|
+
{
|
|
1032
|
+
"path": ".github/workflows/engineering-housekeeper-weekly.yml",
|
|
1033
|
+
"signals": [
|
|
1034
|
+
"write-permission"
|
|
1035
|
+
],
|
|
1036
|
+
"classified": true
|
|
1037
|
+
},
|
|
1038
|
+
{
|
|
1039
|
+
"path": ".github/workflows/engineering-housekeeper.yml",
|
|
1040
|
+
"signals": [
|
|
1041
|
+
"write-permission"
|
|
1042
|
+
],
|
|
1043
|
+
"classified": true
|
|
1044
|
+
},
|
|
965
1045
|
{
|
|
966
1046
|
"path": ".github/workflows/github-artifact-attestation.yml",
|
|
967
1047
|
"signals": [
|
|
@@ -1109,5 +1189,5 @@
|
|
|
1109
1189
|
"classified": false
|
|
1110
1190
|
}
|
|
1111
1191
|
],
|
|
1112
|
-
"registryDigest": "
|
|
1192
|
+
"registryDigest": "074111987b82f532c9c0a7da9c81a7bf36e93c35ab8ec1a51b9321c8f657fdae"
|
|
1113
1193
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"contract": "kungfu-buildchain-publication-release-registry",
|
|
4
|
-
"generatedAt": "2026-08-
|
|
5
|
-
"publishedAt": "2026-08-
|
|
4
|
+
"generatedAt": "2026-08-10T08:49:53.000Z",
|
|
5
|
+
"publishedAt": "2026-08-10T08:49:53.000Z",
|
|
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": "828d10df56a6b091a4f117340ff8ca19be5a6a90",
|
|
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": "3.0.7
|
|
35
|
+
"version": "3.0.7",
|
|
36
36
|
"versionSource": "package.json#version"
|
|
37
37
|
},
|
|
38
38
|
"sourceKind": "package-site-bundle",
|
|
@@ -46,6 +46,8 @@
|
|
|
46
46
|
"./publication-control-plane-audit": "./packages/core/publication-control-plane-audit.js",
|
|
47
47
|
"./buildchain-publication-authority": "./packages/core/buildchain-publication-authority.js",
|
|
48
48
|
"./github-governance-authority": "./packages/core/github-governance-authority.js",
|
|
49
|
+
"./engineering-housekeeper": "./packages/core/engineering-housekeeper.js",
|
|
50
|
+
"./engineering-housekeeper-github": "./packages/core/engineering-housekeeper-github.js",
|
|
49
51
|
"./kfd-gate": "./packages/core/kfd-gate.js",
|
|
50
52
|
"./release-candidate": "./packages/core/release-candidate.js",
|
|
51
53
|
"./release-candidate-recovery": "./packages/core/release-candidate-recovery.js",
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"contract": "kungfu-buildchain-site-manifest",
|
|
4
|
-
"generatedAt": "2026-08-
|
|
5
|
-
"publishedAt": "2026-08-
|
|
4
|
+
"generatedAt": "2026-08-10T08:49:53.000Z",
|
|
5
|
+
"publishedAt": "2026-08-10T08:49:53.000Z",
|
|
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": "828d10df56a6b091a4f117340ff8ca19be5a6a90",
|
|
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": "3.0.7
|
|
40
|
+
"version": "3.0.7",
|
|
41
41
|
"versionSource": "package.json#version"
|
|
42
42
|
},
|
|
43
43
|
"entrypoint": "buildchain-site.json",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"path": "docs/MAP.md",
|
|
54
54
|
"plane": "use",
|
|
55
55
|
"exists": true,
|
|
56
|
-
"digest": "sha256:
|
|
56
|
+
"digest": "sha256:08cfae94c78776694736e81142e2d64480fdc3e67341b415340c03d3539531e7"
|
|
57
57
|
},
|
|
58
58
|
{
|
|
59
59
|
"id": "getting-started",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
"path": "docs/auditable-demo.md",
|
|
70
70
|
"plane": "verify",
|
|
71
71
|
"exists": true,
|
|
72
|
-
"digest": "sha256:
|
|
72
|
+
"digest": "sha256:43989b951667f5dd3bf352209ffe551add4f83d5d551f960aeb787b2220aa665"
|
|
73
73
|
},
|
|
74
74
|
{
|
|
75
75
|
"id": "install",
|
|
@@ -237,7 +237,7 @@
|
|
|
237
237
|
"path": "docs/node-api-reference.md",
|
|
238
238
|
"plane": "use",
|
|
239
239
|
"exists": true,
|
|
240
|
-
"digest": "sha256:
|
|
240
|
+
"digest": "sha256:ed843753964193ecb59610a54f0f23d76578228ebe6d31d1d6edce526729910c"
|
|
241
241
|
},
|
|
242
242
|
{
|
|
243
243
|
"id": "build-facts",
|
|
@@ -269,7 +269,7 @@
|
|
|
269
269
|
"path": "docs/lifecycle-protocol.md",
|
|
270
270
|
"plane": "use",
|
|
271
271
|
"exists": true,
|
|
272
|
-
"digest": "sha256:
|
|
272
|
+
"digest": "sha256:9fdab92b63eae0085d460a4ec78511fbb63999a311cd7693c669705bd9897eb2"
|
|
273
273
|
},
|
|
274
274
|
{
|
|
275
275
|
"id": "reusable-build-surface",
|
|
@@ -277,7 +277,7 @@
|
|
|
277
277
|
"path": "docs/reusable-build-surface.md",
|
|
278
278
|
"plane": "use",
|
|
279
279
|
"exists": true,
|
|
280
|
-
"digest": "sha256:
|
|
280
|
+
"digest": "sha256:4741dc7661d40e14df8203d88a709b9becb08edc4313f5ad308c7e80bf672085"
|
|
281
281
|
},
|
|
282
282
|
{
|
|
283
283
|
"id": "publish-transaction",
|
|
@@ -301,7 +301,7 @@
|
|
|
301
301
|
"path": "docs/release-tail-provider-plane.md",
|
|
302
302
|
"plane": "use",
|
|
303
303
|
"exists": true,
|
|
304
|
-
"digest": "sha256:
|
|
304
|
+
"digest": "sha256:12f291124f51520b4f64c21d7fb249e89928b607a30bc00ba81eb1fc5acea5bd"
|
|
305
305
|
},
|
|
306
306
|
{
|
|
307
307
|
"id": "publication-rehearsal",
|
|
@@ -317,7 +317,7 @@
|
|
|
317
317
|
"path": "docs/release-governance.md",
|
|
318
318
|
"plane": "why",
|
|
319
319
|
"exists": true,
|
|
320
|
-
"digest": "sha256:
|
|
320
|
+
"digest": "sha256:b37d4de1f1cf9155c0e3f42c8c20a0280a263f50173eb0cad2c5f1961954822e"
|
|
321
321
|
},
|
|
322
322
|
{
|
|
323
323
|
"id": "release-flow",
|
|
@@ -1827,6 +1827,7 @@
|
|
|
1827
1827
|
"path": ".github/workflows/dev-pr-auto-merge.yml",
|
|
1828
1828
|
"reusable": true,
|
|
1829
1829
|
"inputs": [
|
|
1830
|
+
"active-lease-context",
|
|
1830
1831
|
"affected-paths-json",
|
|
1831
1832
|
"allowed-head-prefixes",
|
|
1832
1833
|
"assignment-root",
|
|
@@ -1842,6 +1843,7 @@
|
|
|
1842
1843
|
"dry-run",
|
|
1843
1844
|
"expected-head-sha",
|
|
1844
1845
|
"expected-pr-number",
|
|
1846
|
+
"handoff-workflow-id",
|
|
1845
1847
|
"initiative-root",
|
|
1846
1848
|
"landing-mode",
|
|
1847
1849
|
"max-merges",
|
|
@@ -1856,11 +1858,13 @@
|
|
|
1856
1858
|
"shard-evidence-roots-json",
|
|
1857
1859
|
"source-identity-root",
|
|
1858
1860
|
"source-patch-root",
|
|
1861
|
+
"source-workflow-id",
|
|
1862
|
+
"source-workflow-run-id",
|
|
1859
1863
|
"target-branch",
|
|
1860
1864
|
"toolchain-root",
|
|
1861
1865
|
"warrant-lease-seconds"
|
|
1862
1866
|
],
|
|
1863
|
-
"inputCount":
|
|
1867
|
+
"inputCount": 36,
|
|
1864
1868
|
"secrets": [
|
|
1865
1869
|
"github-token"
|
|
1866
1870
|
],
|
|
@@ -1934,6 +1938,118 @@
|
|
|
1934
1938
|
"sunsetCondition": "explicit-breaking-change-review-in-a-future-major-line",
|
|
1935
1939
|
"nonDuplicationRationale": "Existing workflow identity retained for caller compatibility and repository orchestration."
|
|
1936
1940
|
},
|
|
1941
|
+
{
|
|
1942
|
+
"id": "engineering-housekeeper-daily",
|
|
1943
|
+
"path": ".github/workflows/engineering-housekeeper-daily.yml",
|
|
1944
|
+
"reusable": false,
|
|
1945
|
+
"inputs": [],
|
|
1946
|
+
"inputCount": 0,
|
|
1947
|
+
"secrets": [],
|
|
1948
|
+
"secretCount": 0,
|
|
1949
|
+
"outputs": [],
|
|
1950
|
+
"outputCount": 0,
|
|
1951
|
+
"surface": "repository-patrol",
|
|
1952
|
+
"capabilityGroup": "governance-versioning",
|
|
1953
|
+
"status": "preview",
|
|
1954
|
+
"owner": "buildchain-workflows",
|
|
1955
|
+
"maturity": "preview",
|
|
1956
|
+
"introducedVersion": "3.0.7",
|
|
1957
|
+
"compatibilityPromise": "preserved-through-the-v3-major-line",
|
|
1958
|
+
"deprecationReplacement": "",
|
|
1959
|
+
"sunsetCondition": "explicit-breaking-change-review-in-a-future-major-line",
|
|
1960
|
+
"nonDuplicationRationale": "One reusable policy and evidence boundary owns Engineering Housekeeper execution; scheduled callers contain cadence values only."
|
|
1961
|
+
},
|
|
1962
|
+
{
|
|
1963
|
+
"id": "engineering-housekeeper-monthly",
|
|
1964
|
+
"path": ".github/workflows/engineering-housekeeper-monthly.yml",
|
|
1965
|
+
"reusable": false,
|
|
1966
|
+
"inputs": [],
|
|
1967
|
+
"inputCount": 0,
|
|
1968
|
+
"secrets": [],
|
|
1969
|
+
"secretCount": 0,
|
|
1970
|
+
"outputs": [],
|
|
1971
|
+
"outputCount": 0,
|
|
1972
|
+
"surface": "repository-patrol",
|
|
1973
|
+
"capabilityGroup": "governance-versioning",
|
|
1974
|
+
"status": "preview",
|
|
1975
|
+
"owner": "buildchain-workflows",
|
|
1976
|
+
"maturity": "preview",
|
|
1977
|
+
"introducedVersion": "3.0.7",
|
|
1978
|
+
"compatibilityPromise": "preserved-through-the-v3-major-line",
|
|
1979
|
+
"deprecationReplacement": "",
|
|
1980
|
+
"sunsetCondition": "explicit-breaking-change-review-in-a-future-major-line",
|
|
1981
|
+
"nonDuplicationRationale": "One reusable policy and evidence boundary owns Engineering Housekeeper execution; scheduled callers contain cadence values only."
|
|
1982
|
+
},
|
|
1983
|
+
{
|
|
1984
|
+
"id": "engineering-housekeeper-weekly",
|
|
1985
|
+
"path": ".github/workflows/engineering-housekeeper-weekly.yml",
|
|
1986
|
+
"reusable": false,
|
|
1987
|
+
"inputs": [],
|
|
1988
|
+
"inputCount": 0,
|
|
1989
|
+
"secrets": [],
|
|
1990
|
+
"secretCount": 0,
|
|
1991
|
+
"outputs": [],
|
|
1992
|
+
"outputCount": 0,
|
|
1993
|
+
"surface": "repository-patrol",
|
|
1994
|
+
"capabilityGroup": "governance-versioning",
|
|
1995
|
+
"status": "preview",
|
|
1996
|
+
"owner": "buildchain-workflows",
|
|
1997
|
+
"maturity": "preview",
|
|
1998
|
+
"introducedVersion": "3.0.7",
|
|
1999
|
+
"compatibilityPromise": "preserved-through-the-v3-major-line",
|
|
2000
|
+
"deprecationReplacement": "",
|
|
2001
|
+
"sunsetCondition": "explicit-breaking-change-review-in-a-future-major-line",
|
|
2002
|
+
"nonDuplicationRationale": "One reusable policy and evidence boundary owns Engineering Housekeeper execution; scheduled callers contain cadence values only."
|
|
2003
|
+
},
|
|
2004
|
+
{
|
|
2005
|
+
"id": "engineering-housekeeper",
|
|
2006
|
+
"path": ".github/workflows/engineering-housekeeper.yml",
|
|
2007
|
+
"reusable": true,
|
|
2008
|
+
"inputs": [
|
|
2009
|
+
"apply-enabled",
|
|
2010
|
+
"artifact-prefix",
|
|
2011
|
+
"artifact-retention-days",
|
|
2012
|
+
"buildchain-ref",
|
|
2013
|
+
"buildchain-repository",
|
|
2014
|
+
"max-actions",
|
|
2015
|
+
"mode",
|
|
2016
|
+
"protected-patterns",
|
|
2017
|
+
"repository",
|
|
2018
|
+
"retained-patterns",
|
|
2019
|
+
"stale-days",
|
|
2020
|
+
"stale-pull-request-label",
|
|
2021
|
+
"target-branch"
|
|
2022
|
+
],
|
|
2023
|
+
"inputCount": 13,
|
|
2024
|
+
"secrets": [
|
|
2025
|
+
"github_app_id",
|
|
2026
|
+
"github_app_private_key",
|
|
2027
|
+
"github_token"
|
|
2028
|
+
],
|
|
2029
|
+
"secretCount": 3,
|
|
2030
|
+
"outputs": [
|
|
2031
|
+
"action-count",
|
|
2032
|
+
"branch-receipt-root",
|
|
2033
|
+
"outcome",
|
|
2034
|
+
"plan-artifact",
|
|
2035
|
+
"plan-root",
|
|
2036
|
+
"pull-request-receipt-root",
|
|
2037
|
+
"receipt-artifact",
|
|
2038
|
+
"report-artifact",
|
|
2039
|
+
"report-receipt-root"
|
|
2040
|
+
],
|
|
2041
|
+
"outputCount": 9,
|
|
2042
|
+
"surface": "repository-patrol",
|
|
2043
|
+
"capabilityGroup": "governance-versioning",
|
|
2044
|
+
"status": "preview",
|
|
2045
|
+
"owner": "buildchain-workflows",
|
|
2046
|
+
"maturity": "preview",
|
|
2047
|
+
"introducedVersion": "3.0.7",
|
|
2048
|
+
"compatibilityPromise": "preserved-through-the-v3-major-line",
|
|
2049
|
+
"deprecationReplacement": "",
|
|
2050
|
+
"sunsetCondition": "explicit-breaking-change-review-in-a-future-major-line",
|
|
2051
|
+
"nonDuplicationRationale": "One reusable policy and evidence boundary owns Engineering Housekeeper execution; scheduled callers contain cadence values only."
|
|
2052
|
+
},
|
|
1937
2053
|
{
|
|
1938
2054
|
"id": "github-artifact-attestation",
|
|
1939
2055
|
"path": ".github/workflows/github-artifact-attestation.yml",
|
|
@@ -2932,6 +3048,7 @@
|
|
|
2932
3048
|
"publish-package-set-order",
|
|
2933
3049
|
"publish-rematerialize-on-resume",
|
|
2934
3050
|
"publish-required-artifacts-json",
|
|
3051
|
+
"publish-required-artifacts-path",
|
|
2935
3052
|
"publish-sealed-bundle-manifest",
|
|
2936
3053
|
"publish-sealed-bundle-root",
|
|
2937
3054
|
"publish-source-locked",
|
|
@@ -2983,7 +3100,7 @@
|
|
|
2983
3100
|
"transaction-state-path",
|
|
2984
3101
|
"verification-command"
|
|
2985
3102
|
],
|
|
2986
|
-
"inputCount":
|
|
3103
|
+
"inputCount": 80,
|
|
2987
3104
|
"capabilityGroup": "release-passport-trust",
|
|
2988
3105
|
"status": "active",
|
|
2989
3106
|
"owner": "buildchain-actions",
|
package/docs/MAP.md
CHANGED
|
@@ -115,6 +115,7 @@ replace them.
|
|
|
115
115
|
| How does the durable fair Dev Delivery Warrant Queue prevent slow-candidate starvation? | [`dev-delivery-warrant.md`](dev-delivery-warrant.md) | use/verify | preview |
|
|
116
116
|
| How do I coalesce rapid Dev changes, preserve release runner priority, and retry only transient failed jobs? | [`dev-qualification-patrol.md`](dev-qualification-patrol.md) | use/verify | preview |
|
|
117
117
|
| How do I run daily, weekly, or monthly repository patrols? | [`release-governance.md`](release-governance.md#buildchain-patrol) | use | stable |
|
|
118
|
+
| How do I report or safely apply branch and pull-request engineering hygiene? | [`engineering-housekeeper.md`](engineering-housekeeper.md) | use/verify | preview |
|
|
118
119
|
| How does Buildchain decide patch, minor, and major release lines? | [`versioning.md`](versioning.md) | why | stable |
|
|
119
120
|
| What exact branch/tag state machine runs on alpha, release, and major gate? | [`release-flow.md`](release-flow.md) | verify | stable |
|
|
120
121
|
| What did Buildchain migrate or retire from old action repositories? | [`migration-inventory.md`](migration-inventory.md) | verify | stable |
|
package/docs/auditable-demo.md
CHANGED
|
@@ -47,7 +47,7 @@ literal argv steps. Steps in one demo share a disposable workspace; separate
|
|
|
47
47
|
demos and the two rendition captures do not. Commands are never accepted as a
|
|
48
48
|
shell string. An omitted or explicit `standard` duration class remains bounded
|
|
49
49
|
to 60 seconds. A reviewed `execution.durationClass: long-form` declaration may
|
|
50
|
-
raise the scenario and literal step ceilings to
|
|
50
|
+
raise the scenario and literal step ceilings to 360 seconds; it does not change
|
|
51
51
|
the default. Both classes retain 4 MiB per step, a clean Home/XDG environment,
|
|
52
52
|
no inherited credentials, and a network-disabled read-only container with
|
|
53
53
|
bounded tmpfs.
|
|
@@ -155,7 +155,7 @@ scene.json
|
|
|
155
155
|
|
|
156
156
|
It may additionally emit one declared `terminal-capture.json` using
|
|
157
157
|
`kungfu.terminal-capture/v1`. The optional capture is bounded to 60 seconds by
|
|
158
|
-
default or
|
|
158
|
+
default or 360 seconds only when its scene explicitly declares `long-form`,
|
|
159
159
|
fixed 80-200 by 24-80 terminal cells, 10,000 events, and 4 MiB of canonical
|
|
160
160
|
base64 bytes. It must contain a qualified completion sentinel and an explicitly
|
|
161
161
|
empty authority-grant list. Existing three-file adapters remain valid.
|