@kungfu-tech/kfd 1.0.0-alpha.1 → 1.0.0-alpha.13

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,239 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://kfd.libkungfu.dev/schemas/kfd-standards.schema.json",
4
+ "title": "KFD standards metadata",
5
+ "type": "object",
6
+ "required": [
7
+ "schemaVersion",
8
+ "contract",
9
+ "metadataSchema",
10
+ "source",
11
+ "standards"
12
+ ],
13
+ "properties": {
14
+ "schemaVersion": {
15
+ "const": 1
16
+ },
17
+ "contract": {
18
+ "const": "kfd-standards-metadata"
19
+ },
20
+ "metadataSchema": {
21
+ "type": "object",
22
+ "required": [
23
+ "id",
24
+ "path",
25
+ "version"
26
+ ],
27
+ "properties": {
28
+ "id": {
29
+ "type": "string",
30
+ "format": "uri"
31
+ },
32
+ "path": {
33
+ "type": "string"
34
+ },
35
+ "version": {
36
+ "type": "string"
37
+ }
38
+ },
39
+ "additionalProperties": false
40
+ },
41
+ "source": {
42
+ "type": "object",
43
+ "required": [
44
+ "package",
45
+ "registry",
46
+ "decisionsDir"
47
+ ],
48
+ "properties": {
49
+ "package": {
50
+ "const": "@kungfu-tech/kfd"
51
+ },
52
+ "registry": {
53
+ "const": "registry.json"
54
+ },
55
+ "decisionsDir": {
56
+ "const": "decisions"
57
+ }
58
+ },
59
+ "additionalProperties": false
60
+ },
61
+ "standards": {
62
+ "type": "object",
63
+ "patternProperties": {
64
+ "^kfd-[1-9][0-9]*$": {
65
+ "$ref": "#/$defs/standard"
66
+ }
67
+ },
68
+ "additionalProperties": false
69
+ }
70
+ },
71
+ "additionalProperties": false,
72
+ "$defs": {
73
+ "standard": {
74
+ "type": "object",
75
+ "required": [
76
+ "key",
77
+ "id",
78
+ "number",
79
+ "label",
80
+ "title",
81
+ "kind",
82
+ "status",
83
+ "revision",
84
+ "metadataSchemaVersion",
85
+ "document",
86
+ "compatibility",
87
+ "schemaIds",
88
+ "schemaPaths",
89
+ "concepts"
90
+ ],
91
+ "properties": {
92
+ "key": {
93
+ "type": "string",
94
+ "pattern": "^kfd-[1-9][0-9]*$"
95
+ },
96
+ "id": {
97
+ "type": "string",
98
+ "pattern": "^KFD-[1-9][0-9]*$"
99
+ },
100
+ "number": {
101
+ "type": "integer",
102
+ "minimum": 1
103
+ },
104
+ "label": {
105
+ "type": "string",
106
+ "pattern": "^KFD-[1-9][0-9]*$"
107
+ },
108
+ "title": {
109
+ "type": "string",
110
+ "minLength": 1
111
+ },
112
+ "kind": {
113
+ "enum": [
114
+ "principle",
115
+ "procedure"
116
+ ]
117
+ },
118
+ "status": {
119
+ "enum": [
120
+ "draft",
121
+ "active",
122
+ "superseded"
123
+ ]
124
+ },
125
+ "revision": {
126
+ "type": "integer",
127
+ "minimum": 1
128
+ },
129
+ "metadataSchemaVersion": {
130
+ "type": "string"
131
+ },
132
+ "document": {
133
+ "type": "object",
134
+ "required": [
135
+ "path",
136
+ "url"
137
+ ],
138
+ "properties": {
139
+ "path": {
140
+ "type": "string"
141
+ },
142
+ "url": {
143
+ "type": "string",
144
+ "format": "uri"
145
+ },
146
+ "sha256": {
147
+ "type": "string",
148
+ "pattern": "^[0-9a-f]{64}$"
149
+ }
150
+ },
151
+ "additionalProperties": false
152
+ },
153
+ "compatibility": {
154
+ "type": "object",
155
+ "required": [
156
+ "packageLine",
157
+ "registrySchemaVersion",
158
+ "metadataSchemaVersion",
159
+ "rule"
160
+ ],
161
+ "properties": {
162
+ "packageLine": {
163
+ "type": "string"
164
+ },
165
+ "registrySchemaVersion": {
166
+ "type": "integer",
167
+ "minimum": 1
168
+ },
169
+ "metadataSchemaVersion": {
170
+ "type": "string"
171
+ },
172
+ "rule": {
173
+ "type": "string"
174
+ }
175
+ },
176
+ "additionalProperties": false
177
+ },
178
+ "schemaIds": {
179
+ "type": "object",
180
+ "minProperties": 1,
181
+ "additionalProperties": {
182
+ "type": "string",
183
+ "format": "uri"
184
+ }
185
+ },
186
+ "schemaPaths": {
187
+ "type": "object",
188
+ "minProperties": 1,
189
+ "additionalProperties": {
190
+ "type": "string"
191
+ }
192
+ },
193
+ "interfaces": {
194
+ "type": "object",
195
+ "additionalProperties": {
196
+ "type": "object",
197
+ "required": [
198
+ "contract",
199
+ "schemaVersion",
200
+ "schemaId",
201
+ "schemaPath"
202
+ ],
203
+ "properties": {
204
+ "contract": {
205
+ "type": "string",
206
+ "minLength": 1
207
+ },
208
+ "schemaVersion": {
209
+ "type": "integer",
210
+ "minimum": 1
211
+ },
212
+ "schemaId": {
213
+ "type": "string",
214
+ "format": "uri"
215
+ },
216
+ "schemaPath": {
217
+ "type": "string",
218
+ "minLength": 1
219
+ },
220
+ "compatibilityRule": {
221
+ "type": "string",
222
+ "minLength": 1
223
+ }
224
+ },
225
+ "additionalProperties": false
226
+ }
227
+ },
228
+ "concepts": {
229
+ "type": "object",
230
+ "minProperties": 1,
231
+ "additionalProperties": {
232
+ "type": "string"
233
+ }
234
+ }
235
+ },
236
+ "additionalProperties": false
237
+ }
238
+ }
239
+ }
@@ -23,7 +23,7 @@
23
23
  "commitments": [
24
24
  {
25
25
  "id": "KFD-1",
26
- "text": "contracts must not drift."
26
+ "text": "facts must not drift."
27
27
  },
28
28
  {
29
29
  "id": "KFD-2",
@@ -31,10 +31,10 @@
31
31
  },
32
32
  {
33
33
  "id": "KFD-3",
34
- "text": "cooperation must start from transparent value, not coercion."
34
+ "text": "cooperation must start from transparent value."
35
35
  }
36
36
  ],
37
- "summary": "Together they define the load-bearing path for Kungfu products: make contract worlds explicit, make important claims inspectable, and let humans and agents cooperate through visible value rather than hidden pressure."
37
+ "summary": "Together they define the load-bearing path for Kungfu products: make facts non-drifting, make trust inspectable from those facts, and let humans and agents cooperate through visible value rather than hidden pressure."
38
38
  },
39
39
  "foundationModel": {
40
40
  "heading": "Foundation model",
@@ -44,7 +44,7 @@
44
44
  "layer": "Fact-source ontology",
45
45
  "decision": "KFD-1",
46
46
  "readerQuestion": "What can count as a fact?",
47
- "commitment": "A load-bearing fact must not drift: its contract world comes from one declared fact source."
47
+ "commitment": "Facts must not drift: a load-bearing contract world comes from one declared fact source."
48
48
  },
49
49
  {
50
50
  "layer": "Participant-to-object trust",
@@ -59,15 +59,15 @@
59
59
  "commitment": "Cooperation starts from transparent value, stable choice, and explainable constraints, not pressure."
60
60
  }
61
61
  ],
62
- "chain": "stable facts -> trustworthy objects -> non-coercive cooperation",
62
+ "chain": "non-drifting facts -> inspectable trust -> transparent cooperation",
63
63
  "explanation": [
64
- "This is why KFDs are not only internal governance text. KFD-1 is a procedure, but it gives the foundation model its first layer by making fact sources operational: a fact-bearing contract world must be declared, inspectable, and unable to drift invisibly. KFD-2 then defines how trust can stand on those facts. KFD-3 defines how humans and agents can cooperate once facts and trust are visible.",
64
+ "This is why KFDs are not only internal governance text. KFD-1 gives the foundation model its first layer by making fact sources operational: a fact-bearing contract world must be declared, inspectable, and unable to drift invisibly. KFD-2 then defines how trust can stand on those facts. KFD-3 defines how humans and agents can cooperate once facts and trust are visible.",
65
65
  "Real-world agent work turns ordinary work into a dense system of products, files, repositories, traces, policies, humans, and agents. In that world, complexity cannot be made safe by hidden state or forced compliance. It has to be compressed through non-drifting facts, inspectable trust, and voluntary cooperation. The goal is not to force increasingly capable participants into compliance through stronger pressure. It is to give humans and agents a shared worldview for adapting to a more complex world."
66
66
  ]
67
67
  },
68
68
  "productProofPath": {
69
69
  "heading": "Product proof path",
70
- "body": "KFDs are not a detached manifesto, but they are not a demand that readers adopt a Kungfu product before understanding the decisions. A philosophy becomes load-bearing only when it can be seen in a concrete case. For that reference case, use the main Kungfu product entrypoint (`https://kungfu.tech`) for product philosophy, and Buildchain (`https://buildchain.libkungfu.dev`) for release and provenance accountability. This registry states the commitments; those entrypoints show how the commitments are meant to be borne in practice."
70
+ "body": "KFDs are not a detached manifesto, but they are not a demand that readers adopt a Kungfu product before understanding the decisions. A philosophy becomes load-bearing only when it can be seen in a concrete case. The first concrete case is this package itself: `standards.json`, `schemas/`, `docs/`, `site/kfd-site.json`, and `scripts/check.mjs` show how KFD-1, KFD-2, and KFD-3 are expressed as consumable interfaces for both humans and agents. For the broader product case, use the main Kungfu product entrypoint (`https://kungfu.tech`) for product philosophy, and Buildchain (`https://buildchain.libkungfu.dev`) for release and provenance accountability. This registry states the commitments; this package and those entrypoints show how the commitments are meant to be borne in practice."
71
71
  },
72
72
  "currentDecisions": {
73
73
  "heading": "Current decisions",
@@ -77,7 +77,34 @@
77
77
  "decisionPages": {
78
78
  "source": "registry.json",
79
79
  "bodySource": "registry.entries[].path",
80
- "stableUrlField": "url"
80
+ "stableUrlField": "url",
81
+ "metadata": {
82
+ "licenseBoundary": {
83
+ "license": "Apache-2.0",
84
+ "licenseFile": "LICENSE",
85
+ "officialStatusAndTrademarks": "TRADEMARKS.md",
86
+ "summary": "Apache-2.0 covers repository contents; it does not grant KFD/Kungfu trademarks, official status, certification status, or endorsement."
87
+ },
88
+ "publicFactSource": {
89
+ "kind": "git-repository",
90
+ "host": "github",
91
+ "repository": "kungfu-systems/kfd",
92
+ "url": "https://github.com/kungfu-systems/kfd",
93
+ "loadBearingCoordinate": "commit-addressed repository contents",
94
+ "stableRenderedIndex": "https://kfd.libkungfu.dev",
95
+ "canonicalPaths": [
96
+ "decisions/kfd-N.md",
97
+ "registry.json",
98
+ "standards.json"
99
+ ],
100
+ "projectionSurfaces": [
101
+ "https://kfd.libkungfu.dev/N",
102
+ "npm:@kungfu-tech/kfd",
103
+ "Buildchain release passports"
104
+ ],
105
+ "extensionRequestNote": "GitHub issues are extension request paths; KFD facts are created only by committed repository contents."
106
+ }
107
+ }
81
108
  },
82
109
  "renderingBoundary": {
83
110
  "ownedByKfd": [
@@ -86,6 +113,8 @@
86
113
  "foundation model layers and chain",
87
114
  "product proof path text",
88
115
  "decision metadata",
116
+ "decision metadata fact source",
117
+ "license and official-status boundary",
89
118
  "decision markdown bodies"
90
119
  ],
91
120
  "ownedBySite": [
package/standards.json ADDED
@@ -0,0 +1,205 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "contract": "kfd-standards-metadata",
4
+ "metadataSchema": {
5
+ "id": "https://kfd.libkungfu.dev/schemas/kfd-standards.schema.json",
6
+ "path": "schemas/kfd-standards.schema.json",
7
+ "version": "1"
8
+ },
9
+ "source": {
10
+ "package": "@kungfu-tech/kfd",
11
+ "registry": "registry.json",
12
+ "decisionsDir": "decisions"
13
+ },
14
+ "standards": {
15
+ "kfd-1": {
16
+ "key": "kfd-1",
17
+ "id": "KFD-1",
18
+ "number": 1,
19
+ "label": "KFD-1",
20
+ "title": "Facts must not drift: contract worlds need one fact source",
21
+ "kind": "procedure",
22
+ "status": "active",
23
+ "revision": 1,
24
+ "metadataSchemaVersion": "1",
25
+ "document": {
26
+ "path": "decisions/kfd-1.md",
27
+ "url": "https://kfd.libkungfu.dev/1",
28
+ "sha256": "32016c0962edcea9286db04ba24dab6c55400e9b26ce16a9d4b4ad647e17e7df"
29
+ },
30
+ "compatibility": {
31
+ "packageLine": "v1.0",
32
+ "registrySchemaVersion": 1,
33
+ "metadataSchemaVersion": "1",
34
+ "rule": "Substantive semantic changes mint a new KFD; compatible metadata additions keep schemaVersion 1."
35
+ },
36
+ "schemaIds": {
37
+ "metadata": "https://kfd.libkungfu.dev/schemas/kfd-standards.schema.json",
38
+ "contractWorld": "https://kfd.libkungfu.dev/schemas/kfd-1/contract-world.schema.json",
39
+ "witness": "https://kfd.libkungfu.dev/schemas/kfd-1/witness.schema.json"
40
+ },
41
+ "schemaPaths": {
42
+ "metadata": "schemas/kfd-standards.schema.json",
43
+ "contractWorld": "schemas/kfd-1/contract-world.schema.json",
44
+ "witness": "schemas/kfd-1/witness.schema.json"
45
+ },
46
+ "interfaces": {
47
+ "contractWorld": {
48
+ "contract": "kfd-1-contract-world",
49
+ "schemaVersion": 1,
50
+ "schemaId": "https://kfd.libkungfu.dev/schemas/kfd-1/contract-world.schema.json",
51
+ "schemaPath": "schemas/kfd-1/contract-world.schema.json",
52
+ "compatibilityRule": "Compatible additions may keep schemaVersion 1; semantic or required-field changes require a new interface version or contract."
53
+ },
54
+ "witness": {
55
+ "contract": "kfd-1-witness",
56
+ "schemaVersion": 1,
57
+ "schemaId": "https://kfd.libkungfu.dev/schemas/kfd-1/witness.schema.json",
58
+ "schemaPath": "schemas/kfd-1/witness.schema.json",
59
+ "compatibilityRule": "Compatible additions may keep schemaVersion 1; semantic or required-field changes require a new interface version or contract."
60
+ }
61
+ },
62
+ "concepts": {
63
+ "factSource": "fact source",
64
+ "contractWorld": "contract world",
65
+ "weldedSurfaceRegister": "welded-surface register",
66
+ "witness": "contract witness"
67
+ }
68
+ },
69
+ "kfd-2": {
70
+ "key": "kfd-2",
71
+ "id": "KFD-2",
72
+ "number": 2,
73
+ "label": "KFD-2",
74
+ "title": "Trust must start from facts: responsibility must be inspectable",
75
+ "kind": "principle",
76
+ "status": "active",
77
+ "revision": 1,
78
+ "metadataSchemaVersion": "1",
79
+ "document": {
80
+ "path": "decisions/kfd-2.md",
81
+ "url": "https://kfd.libkungfu.dev/2",
82
+ "sha256": "0c2da2113df6ef2829592f7ba67593059cb06e195ea527ee742501939efb3b9b"
83
+ },
84
+ "compatibility": {
85
+ "packageLine": "v1.0",
86
+ "registrySchemaVersion": 1,
87
+ "metadataSchemaVersion": "1",
88
+ "rule": "Substantive semantic changes mint a new KFD; compatible metadata additions keep schemaVersion 1."
89
+ },
90
+ "schemaIds": {
91
+ "metadata": "https://kfd.libkungfu.dev/schemas/kfd-standards.schema.json",
92
+ "trustTaxonomy": "https://kfd.libkungfu.dev/schemas/kfd-2/trust-taxonomy.schema.json",
93
+ "releaseClaims": "https://kfd.libkungfu.dev/schemas/kfd-2/release-claims.schema.json",
94
+ "releaseTrustPassport": "https://kfd.libkungfu.dev/schemas/kfd-2/release-trust-passport.schema.json"
95
+ },
96
+ "schemaPaths": {
97
+ "metadata": "schemas/kfd-standards.schema.json",
98
+ "trustTaxonomy": "schemas/kfd-2/trust-taxonomy.schema.json",
99
+ "releaseClaims": "schemas/kfd-2/release-claims.schema.json",
100
+ "releaseTrustPassport": "schemas/kfd-2/release-trust-passport.schema.json"
101
+ },
102
+ "interfaces": {
103
+ "trustTaxonomy": {
104
+ "contract": "kfd-2-trust-taxonomy",
105
+ "schemaVersion": 1,
106
+ "schemaId": "https://kfd.libkungfu.dev/schemas/kfd-2/trust-taxonomy.schema.json",
107
+ "schemaPath": "schemas/kfd-2/trust-taxonomy.schema.json",
108
+ "compatibilityRule": "Compatible additions may keep schemaVersion 1; unknown taxonomy values fail validation until KFD records them in this schema."
109
+ },
110
+ "releaseClaims": {
111
+ "contract": "kfd-2-release-claims",
112
+ "schemaVersion": 1,
113
+ "schemaId": "https://kfd.libkungfu.dev/schemas/kfd-2/release-claims.schema.json",
114
+ "schemaPath": "schemas/kfd-2/release-claims.schema.json",
115
+ "compatibilityRule": "Compatible additions may keep schemaVersion 1; semantic or required-field changes require a new interface version or contract."
116
+ },
117
+ "releaseTrustPassport": {
118
+ "contract": "kfd-2-release-trust-passport",
119
+ "schemaVersion": 1,
120
+ "schemaId": "https://kfd.libkungfu.dev/schemas/kfd-2/release-trust-passport.schema.json",
121
+ "schemaPath": "schemas/kfd-2/release-trust-passport.schema.json",
122
+ "compatibilityRule": "Compatible additions may keep schemaVersion 1; semantic or required-field changes require a new interface version or contract."
123
+ }
124
+ },
125
+ "concepts": {
126
+ "facts": "inspectable facts",
127
+ "releaseClaim": "release claim",
128
+ "releaseClaims": "release claims",
129
+ "evidenceBinding": "evidence binding",
130
+ "auditBoundary": "audit boundary",
131
+ "residualRisk": "residual risk",
132
+ "riskType": "residual risk type",
133
+ "trustImpact": "trust impact",
134
+ "machineProvability": "machine provability",
135
+ "agentAction": "agent action",
136
+ "extensionRequest": "extension request",
137
+ "releaseTrustPassport": "release trust passport",
138
+ "responsibilityState": "responsibility state",
139
+ "trust": "trust from facts"
140
+ }
141
+ },
142
+ "kfd-3": {
143
+ "key": "kfd-3",
144
+ "id": "KFD-3",
145
+ "number": 3,
146
+ "label": "KFD-3",
147
+ "title": "Cooperation must start from transparent value: compliance must not be coerced",
148
+ "kind": "principle",
149
+ "status": "active",
150
+ "revision": 1,
151
+ "metadataSchemaVersion": "1",
152
+ "document": {
153
+ "path": "decisions/kfd-3.md",
154
+ "url": "https://kfd.libkungfu.dev/3",
155
+ "sha256": "f37320562b6d82630358663acc239a3ee84bdc930b287c6cb0b2fb0295110672"
156
+ },
157
+ "compatibility": {
158
+ "packageLine": "v1.0",
159
+ "registrySchemaVersion": 1,
160
+ "metadataSchemaVersion": "1",
161
+ "rule": "Substantive semantic changes mint a new KFD; compatible metadata additions keep schemaVersion 1."
162
+ },
163
+ "schemaIds": {
164
+ "metadata": "https://kfd.libkungfu.dev/schemas/kfd-standards.schema.json",
165
+ "collaborationInterface": "https://kfd.libkungfu.dev/schemas/kfd-3/collaboration-interface.schema.json",
166
+ "witness": "https://kfd.libkungfu.dev/schemas/kfd-3/witness.schema.json"
167
+ },
168
+ "schemaPaths": {
169
+ "metadata": "schemas/kfd-standards.schema.json",
170
+ "collaborationInterface": "schemas/kfd-3/collaboration-interface.schema.json",
171
+ "witness": "schemas/kfd-3/witness.schema.json"
172
+ },
173
+ "interfaces": {
174
+ "collaborationInterface": {
175
+ "contract": "kfd-3-collaboration-interface",
176
+ "schemaVersion": 1,
177
+ "schemaId": "https://kfd.libkungfu.dev/schemas/kfd-3/collaboration-interface.schema.json",
178
+ "schemaPath": "schemas/kfd-3/collaboration-interface.schema.json",
179
+ "compatibilityRule": "Compatible additions may keep schemaVersion 1; semantic or required-field changes require a new interface version or contract."
180
+ },
181
+ "witness": {
182
+ "contract": "kfd-3-witness",
183
+ "schemaVersion": 1,
184
+ "schemaId": "https://kfd.libkungfu.dev/schemas/kfd-3/witness.schema.json",
185
+ "schemaPath": "schemas/kfd-3/witness.schema.json",
186
+ "compatibilityRule": "Compatible additions may keep schemaVersion 1; semantic or required-field changes require a new interface version or contract."
187
+ }
188
+ },
189
+ "concepts": {
190
+ "transparentValue": "transparent value",
191
+ "stableChoice": "stable choice",
192
+ "explainableConstraints": "explainable constraints",
193
+ "nonCoercion": "non-coercive cooperation",
194
+ "participant": "participant",
195
+ "collaborationInterface": "collaboration interface",
196
+ "minimalEntrypoint": "minimal entrypoint",
197
+ "discoverability": "discoverability",
198
+ "closure": "closed-world interface classification",
199
+ "choicePath": "choice path",
200
+ "extensionRequest": "extension request",
201
+ "extensionPath": "extension path"
202
+ }
203
+ }
204
+ }
205
+ }