@kungfu-tech/kfd 1.0.0-alpha.12 → 1.0.0-alpha.14

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.
@@ -51,6 +51,12 @@
51
51
  "sourceRegistry": {
52
52
  "$ref": "#/$defs/artifactPointer"
53
53
  },
54
+ "factSources": {
55
+ "type": "array",
56
+ "items": {
57
+ "$ref": "#/$defs/factSource"
58
+ }
59
+ },
54
60
  "participants": {
55
61
  "type": "array",
56
62
  "minItems": 1,
@@ -84,6 +90,12 @@
84
90
  "$ref": "#/$defs/choicePath"
85
91
  }
86
92
  },
93
+ "extensionRequests": {
94
+ "type": "array",
95
+ "items": {
96
+ "$ref": "#/$defs/extensionRequest"
97
+ }
98
+ },
87
99
  "closure": {
88
100
  "type": "object",
89
101
  "required": [
@@ -167,6 +179,69 @@
167
179
  },
168
180
  "additionalProperties": true
169
181
  },
182
+ "factSource": {
183
+ "type": "object",
184
+ "required": [
185
+ "id",
186
+ "kind",
187
+ "repository",
188
+ "loadBearingCoordinate"
189
+ ],
190
+ "properties": {
191
+ "id": {
192
+ "type": "string",
193
+ "pattern": "^[a-z0-9]+(-[a-z0-9]+)*$"
194
+ },
195
+ "kind": {
196
+ "enum": [
197
+ "git-repository",
198
+ "package",
199
+ "site",
200
+ "release-passport",
201
+ "other"
202
+ ]
203
+ },
204
+ "host": {
205
+ "type": "string",
206
+ "minLength": 1
207
+ },
208
+ "repository": {
209
+ "type": "string",
210
+ "minLength": 1
211
+ },
212
+ "url": {
213
+ "type": "string",
214
+ "format": "uri"
215
+ },
216
+ "loadBearingCoordinate": {
217
+ "type": "string",
218
+ "minLength": 1
219
+ },
220
+ "stableRenderedIndex": {
221
+ "type": "string",
222
+ "format": "uri"
223
+ },
224
+ "canonicalPaths": {
225
+ "type": "array",
226
+ "items": {
227
+ "type": "string",
228
+ "minLength": 1
229
+ }
230
+ },
231
+ "projectionSurfaces": {
232
+ "type": "array",
233
+ "items": {
234
+ "type": "string",
235
+ "minLength": 1
236
+ }
237
+ },
238
+ "extensionRequestNote": {
239
+ "type": "string",
240
+ "minLength": 1
241
+ }
242
+ },
243
+ "additionalProperties": true
244
+ },
170
245
  "entrypoint": {
171
246
  "type": "object",
172
247
  "required": [
@@ -343,6 +418,65 @@
343
418
  }
344
419
  },
345
420
  "additionalProperties": true
421
+ },
422
+ "extensionRequest": {
423
+ "type": "object",
424
+ "required": [
425
+ "id",
426
+ "participants",
427
+ "trigger",
428
+ "requestPath"
429
+ ],
430
+ "properties": {
431
+ "id": {
432
+ "type": "string",
433
+ "pattern": "^[a-z0-9]+(-[a-z0-9]+)*$"
434
+ },
435
+ "participants": {
436
+ "type": "array",
437
+ "minItems": 1,
438
+ "items": {
439
+ "type": "string",
440
+ "minLength": 1
441
+ }
442
+ },
443
+ "trigger": {
444
+ "type": "string",
445
+ "minLength": 1
446
+ },
447
+ "requestPath": {
448
+ "type": "object",
449
+ "required": [
450
+ "kind",
451
+ "target"
452
+ ],
453
+ "properties": {
454
+ "kind": {
455
+ "enum": [
456
+ "github-issue",
457
+ "github-discussion",
458
+ "repository-pr",
459
+ "maintainer-channel",
460
+ "other"
461
+ ]
462
+ },
463
+ "target": {
464
+ "type": "string",
465
+ "minLength": 1
466
+ },
467
+ "template": {
468
+ "type": "string",
469
+ "minLength": 1
470
+ }
471
+ },
472
+ "additionalProperties": true
473
+ },
474
+ "expectedOutcome": {
475
+ "type": "string",
476
+ "minLength": 1
477
+ }
478
+ },
479
+ "additionalProperties": true
346
480
  }
347
481
  }
348
482
  }
@@ -124,6 +124,12 @@
124
124
  "fail",
125
125
  "warning"
126
126
  ]
127
+ },
128
+ "residualRisk": {
129
+ "type": "array",
130
+ "items": {
131
+ "$ref": "https://kfd.libkungfu.dev/schemas/kfd-2/trust-taxonomy.schema.json#/$defs/residualRisk"
132
+ }
127
133
  }
128
134
  },
129
135
  "additionalProperties": true,
@@ -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 CHANGED
@@ -17,7 +17,7 @@
17
17
  "id": "KFD-1",
18
18
  "number": 1,
19
19
  "label": "KFD-1",
20
- "title": "Contracts must not drift: contract worlds need one fact source",
20
+ "title": "Facts must not drift: contract worlds need one fact source",
21
21
  "kind": "procedure",
22
22
  "status": "active",
23
23
  "revision": 1,
@@ -25,7 +25,7 @@
25
25
  "document": {
26
26
  "path": "decisions/kfd-1.md",
27
27
  "url": "https://kfd.libkungfu.dev/1",
28
- "sha256": "2ef7438b0737009d36da248d2ecec5f788d46a93b184efadf5e2e31ca20254f0"
28
+ "sha256": "32016c0962edcea9286db04ba24dab6c55400e9b26ce16a9d4b4ad647e17e7df"
29
29
  },
30
30
  "compatibility": {
31
31
  "packageLine": "v1.0",
@@ -79,7 +79,7 @@
79
79
  "document": {
80
80
  "path": "decisions/kfd-2.md",
81
81
  "url": "https://kfd.libkungfu.dev/2",
82
- "sha256": "b8be7b7526dcec9ea501998056c55f546492abc4eb63484a9bb8856eb434b710"
82
+ "sha256": "0c2da2113df6ef2829592f7ba67593059cb06e195ea527ee742501939efb3b9b"
83
83
  },
84
84
  "compatibility": {
85
85
  "packageLine": "v1.0",
@@ -89,15 +89,24 @@
89
89
  },
90
90
  "schemaIds": {
91
91
  "metadata": "https://kfd.libkungfu.dev/schemas/kfd-standards.schema.json",
92
+ "trustTaxonomy": "https://kfd.libkungfu.dev/schemas/kfd-2/trust-taxonomy.schema.json",
92
93
  "releaseClaims": "https://kfd.libkungfu.dev/schemas/kfd-2/release-claims.schema.json",
93
94
  "releaseTrustPassport": "https://kfd.libkungfu.dev/schemas/kfd-2/release-trust-passport.schema.json"
94
95
  },
95
96
  "schemaPaths": {
96
97
  "metadata": "schemas/kfd-standards.schema.json",
98
+ "trustTaxonomy": "schemas/kfd-2/trust-taxonomy.schema.json",
97
99
  "releaseClaims": "schemas/kfd-2/release-claims.schema.json",
98
100
  "releaseTrustPassport": "schemas/kfd-2/release-trust-passport.schema.json"
99
101
  },
100
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
+ },
101
110
  "releaseClaims": {
102
111
  "contract": "kfd-2-release-claims",
103
112
  "schemaVersion": 1,
@@ -120,6 +129,11 @@
120
129
  "evidenceBinding": "evidence binding",
121
130
  "auditBoundary": "audit boundary",
122
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",
123
137
  "releaseTrustPassport": "release trust passport",
124
138
  "responsibilityState": "responsibility state",
125
139
  "trust": "trust from facts"
@@ -138,7 +152,7 @@
138
152
  "document": {
139
153
  "path": "decisions/kfd-3.md",
140
154
  "url": "https://kfd.libkungfu.dev/3",
141
- "sha256": "e329bef41ab5cb689346333df317b39918ea1016424a872e438eea8090070b96"
155
+ "sha256": "f37320562b6d82630358663acc239a3ee84bdc930b287c6cb0b2fb0295110672"
142
156
  },
143
157
  "compatibility": {
144
158
  "packageLine": "v1.0",
@@ -182,7 +196,9 @@
182
196
  "minimalEntrypoint": "minimal entrypoint",
183
197
  "discoverability": "discoverability",
184
198
  "closure": "closed-world interface classification",
185
- "choicePath": "choice path"
199
+ "choicePath": "choice path",
200
+ "extensionRequest": "extension request",
201
+ "extensionPath": "extension path"
186
202
  }
187
203
  }
188
204
  }