@kungfu-tech/buildchain 2.8.2-alpha.1 → 2.8.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.
@@ -0,0 +1,132 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "contract": "kungfu-buildchain-agent-manual-registry",
4
+ "package": "@kungfu-tech/buildchain",
5
+ "source": "npm package docs/",
6
+ "manuals": [
7
+ {
8
+ "id": "install",
9
+ "title": "Install and verify Buildchain",
10
+ "path": "docs/install.md",
11
+ "plane": "use",
12
+ "digest": "sha256:34bc161a26595f95684694d341616e47bfd65b0c51a63225e68a575179636175"
13
+ },
14
+ {
15
+ "id": "release-passport",
16
+ "title": "Release Passport protocol",
17
+ "path": "docs/release-passport.md",
18
+ "plane": "verify",
19
+ "digest": "sha256:4d69798646adb84c6d193b1f32e7dc50e389db8932e63e9cb71489b6015e0333"
20
+ },
21
+ {
22
+ "id": "release-propagation",
23
+ "title": "Release propagation",
24
+ "path": "docs/release-propagation.md",
25
+ "plane": "use",
26
+ "digest": "sha256:10c2bb3bc4ebd692c49fa55f286b77ed3e8caa1526298ad910c00fc80251a893"
27
+ },
28
+ {
29
+ "id": "binary-distribution",
30
+ "title": "Binary distribution contract",
31
+ "path": "docs/binary-distribution.md",
32
+ "plane": "verify",
33
+ "digest": "sha256:36899140a9b2e9ce1565ed41f3d64f73a8829fad3d59a04b9498d9479c85c4be"
34
+ },
35
+ {
36
+ "id": "toolkit-observability",
37
+ "title": "Toolkit observability",
38
+ "path": "docs/toolkit-observability.md",
39
+ "plane": "use",
40
+ "digest": "sha256:239949a75ca81b6002a2e148f7028402dbd98c00e246acd8d0955855781206a1"
41
+ },
42
+ {
43
+ "id": "site-bundle-contract",
44
+ "title": "Site bundle contract",
45
+ "path": "docs/site-bundle-contract.md",
46
+ "plane": "use",
47
+ "digest": "sha256:e6b4f2e76c713063ff750b0a8d6d96595addae2fd48f913744dc86559add0641"
48
+ },
49
+ {
50
+ "id": "product-mechanism",
51
+ "title": "Product mechanism",
52
+ "path": "docs/product-mechanism.md",
53
+ "plane": "why",
54
+ "digest": "sha256:da50022f96f8876bb275a7832190cb1f6ab0fa6aab9d045dda924a7abddc3edf"
55
+ },
56
+ {
57
+ "id": "cli",
58
+ "title": "CLI and npm package",
59
+ "path": "docs/cli.md",
60
+ "plane": "use",
61
+ "digest": "sha256:a8a348181d6419b746e863d1cacc9d6a91aa6ac5cc2b60819843d44487957c49"
62
+ },
63
+ {
64
+ "id": "lifecycle-protocol",
65
+ "title": "Lifecycle protocol",
66
+ "path": "docs/lifecycle-protocol.md",
67
+ "plane": "use",
68
+ "digest": "sha256:02e1be97935c0d9520ea22e8ef0dc61d9b860c347f07127074600cdca02713ce"
69
+ },
70
+ {
71
+ "id": "reusable-build-surface",
72
+ "title": "Reusable build surface",
73
+ "path": "docs/reusable-build-surface.md",
74
+ "plane": "use",
75
+ "digest": "sha256:e5b2222fddd0624b6aff1c999bb156df26eebbd7b365ec65ef3622611dc055ea"
76
+ },
77
+ {
78
+ "id": "publish-transaction",
79
+ "title": "Publish transaction",
80
+ "path": "docs/publish-transaction.md",
81
+ "plane": "verify",
82
+ "digest": "sha256:dd45cf98f0847e3968f150a09bed84aa1f59cb2687ac988e9519f08dc9c91877"
83
+ },
84
+ {
85
+ "id": "release-governance",
86
+ "title": "Release governance",
87
+ "path": "docs/release-governance.md",
88
+ "plane": "why",
89
+ "digest": "sha256:8aab1af617e511011974cb63f04240463fc99c427cb3b29e5f5d385c88620464"
90
+ },
91
+ {
92
+ "id": "release-flow",
93
+ "title": "Release flow",
94
+ "path": "docs/release-flow.md",
95
+ "plane": "verify",
96
+ "digest": "sha256:0a2f46501a64905067cc5872b45ac4824f9e632d59bfdfb2f6a794dfc5f959ea"
97
+ },
98
+ {
99
+ "id": "versioning",
100
+ "title": "Versioning",
101
+ "path": "docs/versioning.md",
102
+ "plane": "why",
103
+ "digest": "sha256:77b92fc979cc100beab3f8a13cd791dea992737b986ace505104edff4810a296"
104
+ },
105
+ {
106
+ "id": "web-surface-deployments",
107
+ "title": "Web surface deployments",
108
+ "path": "docs/web-surface-deployments.md",
109
+ "plane": "use",
110
+ "digest": "sha256:614aea65d745e8978d8329545753adf13b8914f84fe35b0148abbd1aff0c0dc2"
111
+ },
112
+ {
113
+ "id": "infra-contract",
114
+ "title": "Infra Contract",
115
+ "path": "docs/infra-contract.md",
116
+ "plane": "use",
117
+ "digest": "sha256:7826e8c70ac2d90ddd8d4e38bcdd1bcfa36eef5106431d7ad94b2fe9c8d3d5dc"
118
+ }
119
+ ],
120
+ "requiredAgentManuals": [
121
+ "docs/MAP.md",
122
+ "docs/install.md",
123
+ "docs/cli.md",
124
+ "docs/reusable-build-surface.md",
125
+ "docs/release-candidate.md",
126
+ "docs/release-governance.md",
127
+ "docs/release-passport.md",
128
+ "docs/publish-transaction.md",
129
+ "docs/site-bundle-contract.md"
130
+ ],
131
+ "guidance": "Agent consumers should use this registry to find packaged Buildchain manuals before inferring behavior from workflow snippets or release notes."
132
+ }
@@ -0,0 +1,93 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "contract": "kungfu-buildchain-node-api-registry",
4
+ "package": "@kungfu-tech/buildchain",
5
+ "moduleSystem": "module",
6
+ "exports": [
7
+ {
8
+ "specifier": "@kungfu-tech/buildchain",
9
+ "export": ".",
10
+ "target": "./packages/core/index.js",
11
+ "digest": "sha256:cfbe85e8fcac0f1c525ed99d9d488898575d9ea21cc7855e454b55df49cd2e0e"
12
+ },
13
+ {
14
+ "specifier": "@kungfu-tech/buildchain/core",
15
+ "export": "./core",
16
+ "target": "./packages/core/index.js",
17
+ "digest": "sha256:cfbe85e8fcac0f1c525ed99d9d488898575d9ea21cc7855e454b55df49cd2e0e"
18
+ },
19
+ {
20
+ "specifier": "@kungfu-tech/buildchain/artifact-passport",
21
+ "export": "./artifact-passport",
22
+ "target": "./packages/core/artifact-passport.js",
23
+ "digest": "sha256:2f882bf245658fb7a204004d7aa3a22f7e34816e4ba101fb0969a002d05fc12c"
24
+ },
25
+ {
26
+ "specifier": "@kungfu-tech/buildchain/buildchain-contract",
27
+ "export": "./buildchain-contract",
28
+ "target": "./packages/core/buildchain-contract.js",
29
+ "digest": "sha256:0ec4fb82b4a01f303688a74e020e6b718db248cf0470be25d088e7d669e38679"
30
+ },
31
+ {
32
+ "specifier": "@kungfu-tech/buildchain/diagnostics",
33
+ "export": "./diagnostics",
34
+ "target": "./packages/core/diagnostics.js",
35
+ "digest": "sha256:d447f864c719632872c9d90f0e30e2b6d45311bc5115d4f3c661d21164d75ebc"
36
+ },
37
+ {
38
+ "specifier": "@kungfu-tech/buildchain/issue-reporting",
39
+ "export": "./issue-reporting",
40
+ "target": "./packages/core/issue-reporting.js",
41
+ "digest": "sha256:d6e0a450a52b7a4fba84bff855d5370e0cfa2ec3c4be737b3c9099a72f705e2d"
42
+ },
43
+ {
44
+ "specifier": "@kungfu-tech/buildchain/logging",
45
+ "export": "./logging",
46
+ "target": "./packages/core/logging.js",
47
+ "digest": "sha256:8cc29b88dc7968de3b43d495b54c0b53f90984beb85883705d764c40d4da1b4e"
48
+ },
49
+ {
50
+ "specifier": "@kungfu-tech/buildchain/kfd-gate",
51
+ "export": "./kfd-gate",
52
+ "target": "./packages/core/kfd-gate.js",
53
+ "digest": "sha256:6a99ee108c385837ee9f1dbb75848f6ea434b6474977e6e567ae81f8fc9a555c"
54
+ },
55
+ {
56
+ "specifier": "@kungfu-tech/buildchain/release-candidate",
57
+ "export": "./release-candidate",
58
+ "target": "./packages/core/release-candidate.js",
59
+ "digest": "sha256:0aa35ae7482fdb9543214275118da7111c6592b715d2622c525f83f253e5d6dc"
60
+ },
61
+ {
62
+ "specifier": "@kungfu-tech/buildchain/release-passport",
63
+ "export": "./release-passport",
64
+ "target": "./packages/core/release-passport.js",
65
+ "digest": "sha256:22017d4cbe0d89aecfcada7b93f5cdf2935837b2236ae4aeff23f19dbf3d26cb"
66
+ },
67
+ {
68
+ "specifier": "@kungfu-tech/buildchain/release-propagation",
69
+ "export": "./release-propagation",
70
+ "target": "./packages/core/release-propagation.js",
71
+ "digest": "sha256:1960be557e57d738cb242ccf3df9ad41cdf156037648a7ab584905b6629f5840"
72
+ },
73
+ {
74
+ "specifier": "@kungfu-tech/buildchain/buildchain-kfd-claims",
75
+ "export": "./buildchain-kfd-claims",
76
+ "target": "./packages/core/buildchain-kfd-claims.js",
77
+ "digest": "sha256:03e866a7cf7b9d84c71c2353a0865b301a8656dcbaeb67ea47813897f44a0bbc"
78
+ }
79
+ ],
80
+ "docs": [
81
+ {
82
+ "id": "cli-and-node-package",
83
+ "path": "docs/cli.md",
84
+ "digest": "sha256:a8a348181d6419b746e863d1cacc9d6a91aa6ac5cc2b60819843d44487957c49"
85
+ },
86
+ {
87
+ "id": "site-bundle-contract",
88
+ "path": "docs/site-bundle-contract.md",
89
+ "digest": "sha256:e6b4f2e76c713063ff750b0a8d6d96595addae2fd48f913744dc86559add0641"
90
+ }
91
+ ],
92
+ "guidance": "These are the public Node import surfaces shipped by the npm package. Agents should prefer these exports over internal file paths."
93
+ }
@@ -33,5 +33,16 @@
33
33
  "versionSource": "package.json#version",
34
34
  "alphaDistTag": "alpha",
35
35
  "stableDistTag": "latest"
36
+ },
37
+ "githubRelease": {
38
+ "exactTagRelease": true,
39
+ "prereleaseTags": "semver prerelease tags set prerelease=true and make_latest=false",
40
+ "stableTags": "stable semver tags set make_latest=true",
41
+ "evidenceAssets": [
42
+ "publish evidence JSON",
43
+ "buildchain.release.json",
44
+ "release passport assets"
45
+ ],
46
+ "owner": "promote-buildchain-ref"
36
47
  }
37
48
  }
@@ -19,9 +19,13 @@
19
19
  "./release-candidate": "./packages/core/release-candidate.js",
20
20
  "./release-passport": "./packages/core/release-passport.js",
21
21
  "./release-propagation": "./packages/core/release-propagation.js",
22
+ "./buildchain-kfd-claims": "./packages/core/buildchain-kfd-claims.js",
22
23
  "./site/buildchain-site.json": "./dist/site/buildchain-site.json",
23
24
  "./site/site-manifest.json": "./dist/site/site-manifest.json",
24
25
  "./site/cli-registry.json": "./dist/site/cli-registry.json",
26
+ "./site/manual-registry.json": "./dist/site/manual-registry.json",
27
+ "./site/node-api-registry.json": "./dist/site/node-api-registry.json",
28
+ "./site/kfd-claims.json": "./dist/site/kfd-claims.json",
25
29
  "./site/workflow-registry.json": "./dist/site/workflow-registry.json",
26
30
  "./site/release-model.json": "./dist/site/release-model.json",
27
31
  "./site/artifact-schemas.json": "./dist/site/artifact-schemas.json",
@@ -17,121 +17,140 @@
17
17
  "title": "Install and verify Buildchain",
18
18
  "path": "docs/install.md",
19
19
  "plane": "use",
20
- "exists": true
20
+ "exists": true,
21
+ "digest": "sha256:34bc161a26595f95684694d341616e47bfd65b0c51a63225e68a575179636175"
21
22
  },
22
23
  {
23
24
  "id": "release-passport",
24
25
  "title": "Release Passport protocol",
25
26
  "path": "docs/release-passport.md",
26
27
  "plane": "verify",
27
- "exists": true
28
+ "exists": true,
29
+ "digest": "sha256:4d69798646adb84c6d193b1f32e7dc50e389db8932e63e9cb71489b6015e0333"
28
30
  },
29
31
  {
30
32
  "id": "release-propagation",
31
33
  "title": "Release propagation",
32
34
  "path": "docs/release-propagation.md",
33
35
  "plane": "use",
34
- "exists": true
36
+ "exists": true,
37
+ "digest": "sha256:10c2bb3bc4ebd692c49fa55f286b77ed3e8caa1526298ad910c00fc80251a893"
35
38
  },
36
39
  {
37
40
  "id": "binary-distribution",
38
41
  "title": "Binary distribution contract",
39
42
  "path": "docs/binary-distribution.md",
40
43
  "plane": "verify",
41
- "exists": true
44
+ "exists": true,
45
+ "digest": "sha256:36899140a9b2e9ce1565ed41f3d64f73a8829fad3d59a04b9498d9479c85c4be"
42
46
  },
43
47
  {
44
48
  "id": "toolkit-observability",
45
49
  "title": "Toolkit observability",
46
50
  "path": "docs/toolkit-observability.md",
47
51
  "plane": "use",
48
- "exists": true
52
+ "exists": true,
53
+ "digest": "sha256:239949a75ca81b6002a2e148f7028402dbd98c00e246acd8d0955855781206a1"
49
54
  },
50
55
  {
51
56
  "id": "site-bundle-contract",
52
57
  "title": "Site bundle contract",
53
58
  "path": "docs/site-bundle-contract.md",
54
59
  "plane": "use",
55
- "exists": true
60
+ "exists": true,
61
+ "digest": "sha256:e6b4f2e76c713063ff750b0a8d6d96595addae2fd48f913744dc86559add0641"
56
62
  },
57
63
  {
58
64
  "id": "product-mechanism",
59
65
  "title": "Product mechanism",
60
66
  "path": "docs/product-mechanism.md",
61
67
  "plane": "why",
62
- "exists": true
68
+ "exists": true,
69
+ "digest": "sha256:da50022f96f8876bb275a7832190cb1f6ab0fa6aab9d045dda924a7abddc3edf"
63
70
  },
64
71
  {
65
72
  "id": "cli",
66
73
  "title": "CLI and npm package",
67
74
  "path": "docs/cli.md",
68
75
  "plane": "use",
69
- "exists": true
76
+ "exists": true,
77
+ "digest": "sha256:a8a348181d6419b746e863d1cacc9d6a91aa6ac5cc2b60819843d44487957c49"
70
78
  },
71
79
  {
72
80
  "id": "lifecycle-protocol",
73
81
  "title": "Lifecycle protocol",
74
82
  "path": "docs/lifecycle-protocol.md",
75
83
  "plane": "use",
76
- "exists": true
84
+ "exists": true,
85
+ "digest": "sha256:02e1be97935c0d9520ea22e8ef0dc61d9b860c347f07127074600cdca02713ce"
77
86
  },
78
87
  {
79
88
  "id": "reusable-build-surface",
80
89
  "title": "Reusable build surface",
81
90
  "path": "docs/reusable-build-surface.md",
82
91
  "plane": "use",
83
- "exists": true
92
+ "exists": true,
93
+ "digest": "sha256:e5b2222fddd0624b6aff1c999bb156df26eebbd7b365ec65ef3622611dc055ea"
84
94
  },
85
95
  {
86
96
  "id": "publish-transaction",
87
97
  "title": "Publish transaction",
88
98
  "path": "docs/publish-transaction.md",
89
99
  "plane": "verify",
90
- "exists": true
100
+ "exists": true,
101
+ "digest": "sha256:dd45cf98f0847e3968f150a09bed84aa1f59cb2687ac988e9519f08dc9c91877"
91
102
  },
92
103
  {
93
104
  "id": "release-governance",
94
105
  "title": "Release governance",
95
106
  "path": "docs/release-governance.md",
96
107
  "plane": "why",
97
- "exists": true
108
+ "exists": true,
109
+ "digest": "sha256:8aab1af617e511011974cb63f04240463fc99c427cb3b29e5f5d385c88620464"
98
110
  },
99
111
  {
100
112
  "id": "release-flow",
101
113
  "title": "Release flow",
102
114
  "path": "docs/release-flow.md",
103
115
  "plane": "verify",
104
- "exists": true
116
+ "exists": true,
117
+ "digest": "sha256:0a2f46501a64905067cc5872b45ac4824f9e632d59bfdfb2f6a794dfc5f959ea"
105
118
  },
106
119
  {
107
120
  "id": "versioning",
108
121
  "title": "Versioning",
109
122
  "path": "docs/versioning.md",
110
123
  "plane": "why",
111
- "exists": true
124
+ "exists": true,
125
+ "digest": "sha256:77b92fc979cc100beab3f8a13cd791dea992737b986ace505104edff4810a296"
112
126
  },
113
127
  {
114
128
  "id": "web-surface-deployments",
115
129
  "title": "Web surface deployments",
116
130
  "path": "docs/web-surface-deployments.md",
117
131
  "plane": "use",
118
- "exists": true
132
+ "exists": true,
133
+ "digest": "sha256:614aea65d745e8978d8329545753adf13b8914f84fe35b0148abbd1aff0c0dc2"
119
134
  },
120
135
  {
121
136
  "id": "infra-contract",
122
137
  "title": "Infra Contract",
123
138
  "path": "docs/infra-contract.md",
124
139
  "plane": "use",
125
- "exists": true
140
+ "exists": true,
141
+ "digest": "sha256:7826e8c70ac2d90ddd8d4e38bcdd1bcfa36eef5106431d7ad94b2fe9c8d3d5dc"
126
142
  }
127
143
  ],
128
144
  "facts": [
129
145
  "cli-registry.json",
146
+ "manual-registry.json",
147
+ "node-api-registry.json",
130
148
  "workflow-registry.json",
131
149
  "release-model.json",
132
150
  "artifact-schemas.json",
133
151
  "product-mechanism.json",
134
152
  "release-provenance.json",
153
+ "kfd-claims.json",
135
154
  "agent-index.json"
136
155
  ]
137
156
  }
package/docs/MAP.md CHANGED
@@ -12,6 +12,27 @@ running artifact), *use* (consume / extend) - and a **status**:
12
12
  - `to write` - planned; the material exists but is not yet a single doc.
13
13
  - `retired` - intentionally not part of the active Buildchain v2 surface.
14
14
 
15
+ ## Capability Coverage
16
+
17
+ This package should be usable by an agent from the npm artifact alone. The
18
+ machine-readable `dist/site/` bundle is the first fact source; the Markdown
19
+ manuals explain those facts and give operator examples.
20
+
21
+ | Capability | Machine-readable entry | Manual entry |
22
+ | --- | --- | --- |
23
+ | KFD-1 / KFD-2 / KFD-3 release-passport gates | `dist/site/kfd-claims.json`, `dist/site/buildchain-contract.json`, `dist/site/artifact-schemas.json` | [`release-passport.md`](release-passport.md) |
24
+ | Floating `@v2` drift detection and compatibility issues | `dist/site/buildchain-contract.json` | [`reusable-build-surface.md`](reusable-build-surface.md#floating-ref-contract-lock) |
25
+ | npm publish transactions, evidence, dist-tags, and recovery | `dist/site/release-model.json`, `dist/site/artifact-schemas.json` | [`publish-transaction.md`](publish-transaction.md) |
26
+ | GitHub Release passport/evidence publication | `dist/site/release-model.json`, `dist/site/artifact-schemas.json` | [`release-governance.md`](release-governance.md), [`release-candidate.md`](release-candidate.md) |
27
+ | release propagation for package/site chains | `dist/site/release-model.json` | [`release-propagation.md`](release-propagation.md) |
28
+ | Buildchain CLI manual | `dist/site/cli-registry.json`, `dist/site/manual-registry.json` | [`cli.md`](cli.md) |
29
+ | Node API / package exports | `dist/site/node-api-registry.json`, `dist/site/release-provenance.json` | [`cli.md`](cli.md#node-api-and-package-exports) |
30
+
31
+ `dist/site/kfd-claims.json` is generated from
32
+ `packages/core/buildchain-kfd-claims.js`. Treat that module and JSON file as the
33
+ source claim registry; this map and the manuals explain those claims but do not
34
+ replace them.
35
+
15
36
  ## Map
16
37
 
17
38
  | Your question | Document | Plane | Status |
package/docs/cli.md CHANGED
@@ -51,6 +51,31 @@ non-JavaScript environments. JavaScript code that already depends on
51
51
  `@kungfu-tech/buildchain` should import the toolkit API instead of spawning
52
52
  `npx buildchain` or a downloaded binary.
53
53
 
54
+ ## Node API and Package Exports
55
+
56
+ Buildchain's public Node API is the package `exports` surface, not arbitrary
57
+ internal file paths. The npm package also ships
58
+ `dist/site/node-api-registry.json` and exports it as
59
+ `@kungfu-tech/buildchain/site/node-api-registry.json` so agents can enumerate
60
+ the supported imports from the installed package.
61
+
62
+ Current public import families include:
63
+
64
+ ```js
65
+ import * as buildchain from "@kungfu-tech/buildchain";
66
+ import { createBuildchainLogger } from "@kungfu-tech/buildchain/logging";
67
+ import { verifyKfd1ReleaseGate } from "@kungfu-tech/buildchain/kfd-gate";
68
+ import { verifyReleasePassport } from "@kungfu-tech/buildchain/release-passport";
69
+ import { createReleasePropagationPlan } from "@kungfu-tech/buildchain/release-propagation";
70
+ import contractWorld from "@kungfu-tech/buildchain/site/buildchain-contract.json" with { type: "json" };
71
+ import manualRegistry from "@kungfu-tech/buildchain/site/manual-registry.json" with { type: "json" };
72
+ import nodeApiRegistry from "@kungfu-tech/buildchain/site/node-api-registry.json" with { type: "json" };
73
+ ```
74
+
75
+ Use `dist/site/manual-registry.json` to find the packaged operating manuals and
76
+ their SHA-256 digests. Use `dist/site/buildchain-contract.json` to verify the
77
+ floating-ref contract world for a runtime such as `@v2`.
78
+
54
79
  ## Commands
55
80
 
56
81
  `buildchain init` writes a starter `buildchain.toml` and a reusable workflow
@@ -82,13 +82,13 @@ other package as `role: platform`. Consumer workflows therefore stay
82
82
  declarative and do not need their own artifact download or publish-evidence
83
83
  generation scripts.
84
84
 
85
- When `github-release: true`, the wrapper also owns the GitHub Release side of
86
- the publish model. Once the release transaction is complete, it creates or
87
- updates the exact-tag GitHub Release, applies prerelease/latest metadata from
88
- the semver tag, and uploads the publish evidence file together with the
89
- generated release passport assets. This keeps npm/registry publication,
90
- Buildchain release passport persistence, and `release.published` propagation in
91
- one declarative reusable workflow.
85
+ When `github-release: true`, the wrapper forwards GitHub Release publication to
86
+ the underlying `promote-buildchain-ref` semver model. Once the release
87
+ transaction is complete, the action creates or updates the exact-tag GitHub
88
+ Release, applies prerelease/latest metadata from the semver tag, and uploads the
89
+ publish evidence file together with the generated release passport assets. This
90
+ keeps npm/registry publication, Buildchain release passport persistence, and
91
+ `release.published` propagation in one declarative reusable workflow.
92
92
 
93
93
  Products that publish KFD release trust evidence can keep that path declarative
94
94
  too. Pass KFD-1 self contract witnesses, KFD-2 public claim files, and KFD-3
@@ -62,6 +62,11 @@ Buildchain implements the same governance loop with:
62
62
  promotion; this workflow dogfoods the declarative
63
63
  `release-candidate-promote.yml` wrapper and does not hand-wire resolver,
64
64
  artifact download, publish-gate, or promote action steps;
65
+ - Buildchain self promotion enables `release-passport-buildchain-self-kfd`, so
66
+ the release passport consumes generated KFD-1 witnesses, KFD-2 public claim
67
+ JSON, and KFD-3 collaboration-interface witnesses from
68
+ `packages/core/buildchain-kfd-claims.js` instead of relying on prose release
69
+ notes;
65
70
  - `actions/promote-buildchain-ref` for branch, tag, version-state, and
66
71
  governance checks;
67
72
  - package-manager adapters that can update version state for pnpm, npm, and
@@ -435,13 +440,16 @@ from the reusable build outputs. Workflows that only collect passports or run
435
440
  dry-run package checks do not move publish refs and are not publish-gate
436
441
  publication models.
437
442
 
438
- The same wrapper is the declarative GitHub Release publication entrypoint for
439
- semver releases. Consumers set `github-release: true`; after the publish
440
- transaction reaches `complete`, Buildchain creates or updates the exact-tag
441
- GitHub Release and uploads the generated `buildchain.release.json`,
442
- release-passport assets, and publish evidence. Semver prerelease tags are marked
443
- `prerelease=true` and `make_latest=false`; stable semver tags are marked latest.
444
- This is the supported path for downstream `release.published` propagation.
443
+ Semver GitHub Release publication is owned by `promote-buildchain-ref`, not by
444
+ consumer shell glue. Consumers normally use the `release-candidate-promote.yml`
445
+ wrapper and set `github-release: true`; the wrapper passes that declaration to
446
+ the action. After the publish transaction reaches `complete`, Buildchain creates
447
+ or updates the exact-tag GitHub Release and uploads the generated
448
+ `buildchain.release.json`, release-passport assets, and publish evidence. Semver
449
+ prerelease tags are marked `prerelease=true` and `make_latest=false`; stable
450
+ semver tags are marked latest. This is the supported path for downstream
451
+ `release.published` propagation across semver, major, and promote-only release
452
+ candidate publication models.
445
453
 
446
454
  Buildchain also does not maintain bare exact tags such as `1.0.0`. The supported
447
455
  exact release and alpha refs are v-prefixed:
@@ -204,6 +204,33 @@ machine-bound but only supported by prose downgrade the KFD-2 audit and produce
204
204
  a warning, so agents can distinguish "verified", "needs review", and "not
205
205
  bound to evidence" without reading release notes.
206
206
 
207
+ For Buildchain's own releases, public release claims are not authored in prose
208
+ inside the workflow. The source registry is
209
+ `packages/core/buildchain-kfd-claims.js`, published as
210
+ `dist/site/kfd-claims.json` and exported as
211
+ `@kungfu-tech/buildchain/buildchain-kfd-claims`. That registry is the
212
+ version-invariant source of public claims and collaboration surfaces: it does
213
+ not store the exact release version, promotion SHA, or exact runtime contract
214
+ digest. Those run-specific facts belong in the release passport and generated
215
+ witnesses. During Buildchain promotion,
216
+ `scripts/generate-buildchain-kfd-witnesses.mjs` binds the source registry to the
217
+ current source/artifact hashes and generates:
218
+
219
+ - a KFD-1 self contract-world witness for the packaged docs, schemas, workflows,
220
+ actions, Node exports, and site-consumption facts;
221
+ - one KFD-2 claim JSON per public Buildchain release claim;
222
+ - KFD-3 pre-build and artifact witnesses for the same public collaboration
223
+ surfaces.
224
+
225
+ The generated claim set covers Buildchain's KFD release passport support,
226
+ agent-first single source of truth, floating `@v2` contract drift protection,
227
+ semver GitHub Release evidence publication, channel-preserving release
228
+ propagation, and npm publish evidence/finalization. Buildchain self promotion
229
+ passes those files into `promote-buildchain-ref`; `verifyReleasePassport()` then
230
+ fails closed if any claim is missing source bindings, machine evidence, hashes,
231
+ artifact coordinates, verification result, audit boundary, responsibility, or
232
+ residual risk.
233
+
207
234
  ### KFD-3 collaboration-interface release gate
208
235
 
209
236
  KFD-3 asks a different release question than KFD-1. KFD-1 proves that named
@@ -211,6 +238,15 @@ payload bytes match one contract world. KFD-3 proves that a product's shipped
211
238
  participant-facing collaboration/control surface is closed over its declared
212
239
  interface.
213
240
 
241
+ For Buildchain itself, the declared interface starts in
242
+ `packages/core/buildchain-kfd-claims.js`, not in this Markdown file. The
243
+ registry enumerates public human/agent surfaces across manuals, schema and
244
+ standard metadata, package exports, site-consumption contracts, workflows, and
245
+ actions. `dist/site/kfd-claims.json` is the packaged machine-readable form used
246
+ by downstream sites and by Buildchain's own release passport. Exact release
247
+ version/SHA binding is deliberately deferred to the promotion witness, so the
248
+ source registry can remain stable across semver version-state bumps.
249
+
214
250
  The product remains the fact source. Before build/publish, the product writes a
215
251
  pre-build witness:
216
252
 
@@ -14,10 +14,13 @@ dist/site/
14
14
  buildchain-site.json
15
15
  site-manifest.json
16
16
  cli-registry.json
17
+ manual-registry.json
18
+ node-api-registry.json
17
19
  workflow-registry.json
18
20
  release-model.json
19
21
  artifact-schemas.json
20
22
  buildchain-contract.json
23
+ kfd-claims.json
21
24
  product-mechanism.json
22
25
  release-provenance.json
23
26
  agent-index.json
@@ -28,6 +31,15 @@ dist/site/
28
31
  world used by floating-ref contract locks. It records public workflow/action/CLI
29
32
  surfaces, compatibility digests, and audit digests for the files that implement
30
33
  those surfaces.
34
+ `manual-registry.json` enumerates the packaged Markdown manuals with source
35
+ digests so an agent can find complete operating documentation from the npm
36
+ artifact. `node-api-registry.json` enumerates public Node import surfaces from
37
+ `package.json#exports`, so agents do not have to infer supported APIs from
38
+ internal paths.
39
+ `kfd-claims.json` is the Buildchain-owned KFD claim registry. It is generated
40
+ from `packages/core/buildchain-kfd-claims.js` and enumerates the public release
41
+ claims plus the KFD-3 collaboration surfaces that Buildchain self-verifies
42
+ during release promotion.
31
43
 
32
44
  ## npm Consumption
33
45
 
@@ -63,10 +75,16 @@ The P0 bundle includes:
63
75
 
64
76
  - site manifest;
65
77
  - CLI command registry;
78
+ - manual registry for packaged agent-facing documentation;
79
+ - Node API registry for public package exports;
66
80
  - workflow/action registry;
67
81
  - release model facts;
68
82
  - artifact and evidence schema index;
69
- - Buildchain runtime contract world for `@v2` floating-ref compatibility checks;
83
+ - Buildchain runtime contract world for `@v2` floating-ref compatibility checks,
84
+ KFD-1/KFD-2/KFD-3 release gates, GitHub Release evidence publication, and
85
+ site-consumption contracts;
86
+ - Buildchain KFD claim registry for release-passport self verification and
87
+ agent-first public claim discovery;
70
88
  - product mechanism manifest;
71
89
  - release provenance;
72
90
  - agent read order.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kungfu-tech/buildchain",
3
- "version": "2.8.2-alpha.1",
3
+ "version": "2.8.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",
@@ -22,9 +22,13 @@
22
22
  "./release-candidate": "./packages/core/release-candidate.js",
23
23
  "./release-passport": "./packages/core/release-passport.js",
24
24
  "./release-propagation": "./packages/core/release-propagation.js",
25
+ "./buildchain-kfd-claims": "./packages/core/buildchain-kfd-claims.js",
25
26
  "./site/buildchain-site.json": "./dist/site/buildchain-site.json",
26
27
  "./site/site-manifest.json": "./dist/site/site-manifest.json",
27
28
  "./site/cli-registry.json": "./dist/site/cli-registry.json",
29
+ "./site/manual-registry.json": "./dist/site/manual-registry.json",
30
+ "./site/node-api-registry.json": "./dist/site/node-api-registry.json",
31
+ "./site/kfd-claims.json": "./dist/site/kfd-claims.json",
28
32
  "./site/workflow-registry.json": "./dist/site/workflow-registry.json",
29
33
  "./site/release-model.json": "./dist/site/release-model.json",
30
34
  "./site/artifact-schemas.json": "./dist/site/artifact-schemas.json",