@kungfu-tech/kfd 1.0.0-alpha.21 → 1.0.0-alpha.22
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/.buildchain/kfd-1/contract-world.witness.json +49 -28
- package/.buildchain/kfd-2/kfd-foundation.trust-assessment.json +7 -7
- package/.buildchain/kfd-2/kfd-foundation.trust-claims.json +6 -6
- package/.buildchain/kfd-2/public-release-trust.claim.json +14 -14
- package/.buildchain/kfd-3/collaboration-interface.artifact.json +48 -48
- package/.buildchain/kfd-3/collaboration-interface.prebuild.json +13 -13
- package/README.md +4 -1
- package/decisions/KFD-1.md +29 -2
- package/docs/KFD-1-usage.md +42 -0
- package/docs/MAP.md +1 -0
- package/kfd.release.json +1 -1
- package/package.json +1 -1
- package/release-impact.json +9 -3
- package/schemas/kfd-1/publication-url-semantics.schema.json +255 -0
- package/scripts/check.mjs +31 -2
- package/site/kfd-site.json +1 -1
- package/standards.json +37 -4
|
@@ -265,7 +265,7 @@
|
|
|
265
265
|
{
|
|
266
266
|
"id": "doc:readme",
|
|
267
267
|
"sourcePath": "README.md",
|
|
268
|
-
"sha256": "
|
|
268
|
+
"sha256": "145bf51a3912089262e67a4c445743fbe538a438786768429dfb05e9e8246a08"
|
|
269
269
|
},
|
|
270
270
|
{
|
|
271
271
|
"id": "doc:trademarks",
|
|
@@ -275,12 +275,12 @@
|
|
|
275
275
|
{
|
|
276
276
|
"id": "doc:docs-map",
|
|
277
277
|
"sourcePath": "docs/MAP.md",
|
|
278
|
-
"sha256": "
|
|
278
|
+
"sha256": "cbc48a98c58c85e4899526ed810c3ff20a4694e856c067a245d23d16527c9378"
|
|
279
279
|
},
|
|
280
280
|
{
|
|
281
281
|
"id": "doc:kfd-1-usage",
|
|
282
282
|
"sourcePath": "docs/KFD-1-usage.md",
|
|
283
|
-
"sha256": "
|
|
283
|
+
"sha256": "018cf16c950c485af813826ba19485b58a09e6f00a8e5852fc09fff355d848b6"
|
|
284
284
|
},
|
|
285
285
|
{
|
|
286
286
|
"id": "doc:kfd-2-usage",
|
|
@@ -300,7 +300,7 @@
|
|
|
300
300
|
{
|
|
301
301
|
"id": "decision:kfd-1",
|
|
302
302
|
"sourcePath": "decisions/KFD-1.md",
|
|
303
|
-
"sha256": "
|
|
303
|
+
"sha256": "dcc97d2e24ffc8f0380cd027ba973bf8268cff59fa9ab766b178e894bcf1f164"
|
|
304
304
|
},
|
|
305
305
|
{
|
|
306
306
|
"id": "decision:kfd-2",
|
|
@@ -384,17 +384,17 @@
|
|
|
384
384
|
{
|
|
385
385
|
"id": "metadata:standards",
|
|
386
386
|
"sourcePath": "standards.json",
|
|
387
|
-
"sha256": "
|
|
387
|
+
"sha256": "de9f5b53cde78460f3794c65b6921a5de7186179f02200778bf3f7543beee343"
|
|
388
388
|
},
|
|
389
389
|
{
|
|
390
390
|
"id": "metadata:release-impact",
|
|
391
391
|
"sourcePath": "release-impact.json",
|
|
392
|
-
"sha256": "
|
|
392
|
+
"sha256": "95a11d50b963e9b5655b3ad0dbbe47baae6e6cf425b0e46c16a00e294bae12fb"
|
|
393
393
|
},
|
|
394
394
|
{
|
|
395
395
|
"id": "metadata:release-anchor",
|
|
396
396
|
"sourcePath": "kfd.release.json",
|
|
397
|
-
"sha256": "
|
|
397
|
+
"sha256": "20000792307af18effba3337d5fd9f2dfdf06898f08560888200377b048cf9d7"
|
|
398
398
|
},
|
|
399
399
|
{
|
|
400
400
|
"id": "metadata:buildchain-contract-lock",
|
|
@@ -404,36 +404,36 @@
|
|
|
404
404
|
{
|
|
405
405
|
"id": "metadata:kfd-2-public-release-trust-claim",
|
|
406
406
|
"sourcePath": ".buildchain/kfd-2/public-release-trust.claim.json",
|
|
407
|
-
"sha256": "
|
|
407
|
+
"sha256": "9db0969b8fae77cfd9748d4b54f8c6030ce56e4e5605a8af9c0b65cdeba84d7b"
|
|
408
408
|
},
|
|
409
409
|
{
|
|
410
410
|
"id": "metadata:kfd-2-foundation-trust-claims",
|
|
411
411
|
"sourcePath": ".buildchain/kfd-2/kfd-foundation.trust-claims.json",
|
|
412
|
-
"sha256": "
|
|
412
|
+
"sha256": "198f6b081cdd8b2901cfa8bd5de480e2ec7d194d9b309ea215862128e030f0bc"
|
|
413
413
|
},
|
|
414
414
|
{
|
|
415
415
|
"id": "metadata:kfd-2-foundation-trust-assessment",
|
|
416
416
|
"sourcePath": ".buildchain/kfd-2/kfd-foundation.trust-assessment.json",
|
|
417
|
-
"sha256": "
|
|
417
|
+
"sha256": "b1b8acca5df17f4c34fb7c5eacda26f25192f8f8a74d1d0d10f75e2b7aaee9ea"
|
|
418
418
|
}
|
|
419
419
|
],
|
|
420
420
|
"packageExports": [
|
|
421
421
|
{
|
|
422
422
|
"id": "export:package-json",
|
|
423
423
|
"sourcePath": "package.json#exports",
|
|
424
|
-
"sha256": "
|
|
424
|
+
"sha256": "8777774ecb354854b863fddb036544a989712d091168f6a34e4b41267621ab1e"
|
|
425
425
|
},
|
|
426
426
|
{
|
|
427
427
|
"id": "export:npm-files",
|
|
428
428
|
"sourcePath": "package.json#files",
|
|
429
|
-
"sha256": "
|
|
429
|
+
"sha256": "8777774ecb354854b863fddb036544a989712d091168f6a34e4b41267621ab1e"
|
|
430
430
|
}
|
|
431
431
|
],
|
|
432
432
|
"siteConsumptionContracts": [
|
|
433
433
|
{
|
|
434
434
|
"id": "site:kfd-site-bundle",
|
|
435
435
|
"sourcePath": "site/kfd-site.json",
|
|
436
|
-
"sha256": "
|
|
436
|
+
"sha256": "9427781d9a7bea6d8cf1a93bd43b60d6d48645b8eb9c9b18425feb2d9ee50ec5"
|
|
437
437
|
},
|
|
438
438
|
{
|
|
439
439
|
"id": "site:release-propagation",
|
|
@@ -445,12 +445,12 @@
|
|
|
445
445
|
"minimalEntrypoints": [
|
|
446
446
|
{
|
|
447
447
|
"path": "README.md",
|
|
448
|
-
"sha256": "
|
|
448
|
+
"sha256": "145bf51a3912089262e67a4c445743fbe538a438786768429dfb05e9e8246a08",
|
|
449
449
|
"description": "Start from the KFD worldview and current decision set."
|
|
450
450
|
},
|
|
451
451
|
{
|
|
452
452
|
"path": "docs/MAP.md",
|
|
453
|
-
"sha256": "
|
|
453
|
+
"sha256": "cbc48a98c58c85e4899526ed810c3ff20a4694e856c067a245d23d16527c9378",
|
|
454
454
|
"description": "Route readers and agents to the right KFD document or machine surface."
|
|
455
455
|
},
|
|
456
456
|
{
|
|
@@ -465,44 +465,44 @@
|
|
|
465
465
|
},
|
|
466
466
|
{
|
|
467
467
|
"path": "standards.json",
|
|
468
|
-
"sha256": "
|
|
468
|
+
"sha256": "de9f5b53cde78460f3794c65b6921a5de7186179f02200778bf3f7543beee343",
|
|
469
469
|
"description": "Discover KFD schema IDs, schema paths, concepts, and interface contracts."
|
|
470
470
|
},
|
|
471
471
|
{
|
|
472
472
|
"path": "package.json#exports",
|
|
473
|
-
"sha256": "
|
|
473
|
+
"sha256": "8777774ecb354854b863fddb036544a989712d091168f6a34e4b41267621ab1e",
|
|
474
474
|
"description": "Consume the shipped npm package surfaces."
|
|
475
475
|
},
|
|
476
476
|
{
|
|
477
477
|
"path": "kfd.release.json",
|
|
478
|
-
"sha256": "
|
|
478
|
+
"sha256": "20000792307af18effba3337d5fd9f2dfdf06898f08560888200377b048cf9d7",
|
|
479
479
|
"description": "Inspect the explicit KFD package version anchor for the current Buildchain release line."
|
|
480
480
|
},
|
|
481
481
|
{
|
|
482
482
|
"path": ".buildchain/kfd-2/public-release-trust.claim.json",
|
|
483
|
-
"sha256": "
|
|
483
|
+
"sha256": "9db0969b8fae77cfd9748d4b54f8c6030ce56e4e5605a8af9c0b65cdeba84d7b",
|
|
484
484
|
"description": "Inspect the explicit public KFD-2 claim passed into Buildchain release passport generation."
|
|
485
485
|
},
|
|
486
486
|
{
|
|
487
487
|
"path": ".buildchain/kfd-2/kfd-foundation.trust-claims.json",
|
|
488
|
-
"sha256": "
|
|
488
|
+
"sha256": "198f6b081cdd8b2901cfa8bd5de480e2ec7d194d9b309ea215862128e030f0bc",
|
|
489
489
|
"description": "Inspect generic KFD-2 claims for the KFD package self-dogfood assessment."
|
|
490
490
|
},
|
|
491
491
|
{
|
|
492
492
|
"path": ".buildchain/kfd-2/kfd-foundation.trust-assessment.json",
|
|
493
|
-
"sha256": "
|
|
493
|
+
"sha256": "b1b8acca5df17f4c34fb7c5eacda26f25192f8f8a74d1d0d10f75e2b7aaee9ea",
|
|
494
494
|
"description": "Inspect KFD-2's generic assessment of KFD-1, KFD-3, and KFD-4 claims."
|
|
495
495
|
},
|
|
496
496
|
{
|
|
497
497
|
"path": "site/kfd-site.json",
|
|
498
|
-
"sha256": "
|
|
498
|
+
"sha256": "9427781d9a7bea6d8cf1a93bd43b60d6d48645b8eb9c9b18425feb2d9ee50ec5",
|
|
499
499
|
"description": "Render KFD-owned site text and decision pages without duplicating extraction logic."
|
|
500
500
|
}
|
|
501
501
|
],
|
|
502
502
|
"discoverability": [
|
|
503
503
|
{
|
|
504
504
|
"path": "README.md",
|
|
505
|
-
"sha256": "
|
|
505
|
+
"sha256": "145bf51a3912089262e67a4c445743fbe538a438786768429dfb05e9e8246a08",
|
|
506
506
|
"description": "Human and agent entrypoint"
|
|
507
507
|
},
|
|
508
508
|
{
|
|
@@ -512,7 +512,7 @@
|
|
|
512
512
|
},
|
|
513
513
|
{
|
|
514
514
|
"path": "docs/MAP.md",
|
|
515
|
-
"sha256": "
|
|
515
|
+
"sha256": "cbc48a98c58c85e4899526ed810c3ff20a4694e856c067a245d23d16527c9378",
|
|
516
516
|
"description": "Documentation routing entrypoint"
|
|
517
517
|
},
|
|
518
518
|
{
|
|
@@ -522,44 +522,44 @@
|
|
|
522
522
|
},
|
|
523
523
|
{
|
|
524
524
|
"path": "standards.json",
|
|
525
|
-
"sha256": "
|
|
525
|
+
"sha256": "de9f5b53cde78460f3794c65b6921a5de7186179f02200778bf3f7543beee343",
|
|
526
526
|
"description": "Machine-readable standards metadata"
|
|
527
527
|
},
|
|
528
528
|
{
|
|
529
529
|
"path": ".buildchain/kfd-2/public-release-trust.claim.json",
|
|
530
|
-
"sha256": "
|
|
530
|
+
"sha256": "9db0969b8fae77cfd9748d4b54f8c6030ce56e4e5605a8af9c0b65cdeba84d7b",
|
|
531
531
|
"description": "KFD-2 public release trust claim"
|
|
532
532
|
},
|
|
533
533
|
{
|
|
534
534
|
"path": ".buildchain/kfd-2/kfd-foundation.trust-claims.json",
|
|
535
|
-
"sha256": "
|
|
535
|
+
"sha256": "198f6b081cdd8b2901cfa8bd5de480e2ec7d194d9b309ea215862128e030f0bc",
|
|
536
536
|
"description": "KFD-2 generic trust claims for KFD self-dogfood"
|
|
537
537
|
},
|
|
538
538
|
{
|
|
539
539
|
"path": ".buildchain/kfd-2/kfd-foundation.trust-assessment.json",
|
|
540
|
-
"sha256": "
|
|
540
|
+
"sha256": "b1b8acca5df17f4c34fb7c5eacda26f25192f8f8a74d1d0d10f75e2b7aaee9ea",
|
|
541
541
|
"description": "KFD-2 generic trust assessment for KFD self-dogfood"
|
|
542
542
|
},
|
|
543
543
|
{
|
|
544
544
|
"path": "package.json",
|
|
545
|
-
"sha256": "
|
|
545
|
+
"sha256": "8777774ecb354854b863fddb036544a989712d091168f6a34e4b41267621ab1e",
|
|
546
546
|
"description": "Package export map"
|
|
547
547
|
},
|
|
548
548
|
{
|
|
549
549
|
"path": "site/kfd-site.json",
|
|
550
|
-
"sha256": "
|
|
550
|
+
"sha256": "9427781d9a7bea6d8cf1a93bd43b60d6d48645b8eb9c9b18425feb2d9ee50ec5",
|
|
551
551
|
"description": "Site content projection"
|
|
552
552
|
}
|
|
553
553
|
],
|
|
554
554
|
"valueEvidence": [
|
|
555
555
|
{
|
|
556
556
|
"path": "README.md",
|
|
557
|
-
"sha256": "
|
|
557
|
+
"sha256": "145bf51a3912089262e67a4c445743fbe538a438786768429dfb05e9e8246a08",
|
|
558
558
|
"description": "KFD-3 value evidence for kfd-foundation-model: KFD helps humans and agents understand the foundation model before adopting or extending kungfu-systems decisions."
|
|
559
559
|
},
|
|
560
560
|
{
|
|
561
561
|
"path": "decisions/KFD-1.md",
|
|
562
|
-
"sha256": "
|
|
562
|
+
"sha256": "dcc97d2e24ffc8f0380cd027ba973bf8268cff59fa9ab766b178e894bcf1f164",
|
|
563
563
|
"description": "KFD-3 value evidence for kfd-foundation-model: KFD helps humans and agents understand the foundation model before adopting or extending kungfu-systems decisions."
|
|
564
564
|
},
|
|
565
565
|
{
|
|
@@ -579,22 +579,22 @@
|
|
|
579
579
|
},
|
|
580
580
|
{
|
|
581
581
|
"path": "standards.json",
|
|
582
|
-
"sha256": "
|
|
582
|
+
"sha256": "de9f5b53cde78460f3794c65b6921a5de7186179f02200778bf3f7543beee343",
|
|
583
583
|
"description": "KFD-3 value evidence for kfd-foundation-model: KFD helps humans and agents understand the foundation model before adopting or extending kungfu-systems decisions."
|
|
584
584
|
},
|
|
585
585
|
{
|
|
586
586
|
"path": "site/kfd-site.json",
|
|
587
|
-
"sha256": "
|
|
587
|
+
"sha256": "9427781d9a7bea6d8cf1a93bd43b60d6d48645b8eb9c9b18425feb2d9ee50ec5",
|
|
588
588
|
"description": "KFD-3 value evidence for kfd-foundation-model: KFD helps humans and agents understand the foundation model before adopting or extending kungfu-systems decisions."
|
|
589
589
|
},
|
|
590
590
|
{
|
|
591
591
|
"path": "scripts/check.mjs",
|
|
592
|
-
"sha256": "
|
|
592
|
+
"sha256": "a9b277e6fe5ff0ed276ff169b3eac7734455f148ae4ad33657126dca309a3899",
|
|
593
593
|
"description": "KFD-3 value evidence for kfd-foundation-model: KFD helps humans and agents understand the foundation model before adopting or extending kungfu-systems decisions."
|
|
594
594
|
},
|
|
595
595
|
{
|
|
596
596
|
"path": ".buildchain/kfd-2/kfd-foundation.trust-assessment.json",
|
|
597
|
-
"sha256": "
|
|
597
|
+
"sha256": "b1b8acca5df17f4c34fb7c5eacda26f25192f8f8a74d1d0d10f75e2b7aaee9ea",
|
|
598
598
|
"description": "KFD-3 value evidence for kfd-foundation-model: KFD helps humans and agents understand the foundation model before adopting or extending kungfu-systems decisions."
|
|
599
599
|
},
|
|
600
600
|
{
|
|
@@ -609,12 +609,12 @@
|
|
|
609
609
|
},
|
|
610
610
|
{
|
|
611
611
|
"path": "package.json#exports",
|
|
612
|
-
"sha256": "
|
|
612
|
+
"sha256": "8777774ecb354854b863fddb036544a989712d091168f6a34e4b41267621ab1e",
|
|
613
613
|
"description": "KFD-3 value evidence for kfd-machine-consumption: KFD gives agents and release systems machine-readable standards, schemas, package exports, and witnesses so they can consume KFD without relying on private context."
|
|
614
614
|
},
|
|
615
615
|
{
|
|
616
616
|
"path": ".buildchain/kfd-2/kfd-foundation.trust-claims.json",
|
|
617
|
-
"sha256": "
|
|
617
|
+
"sha256": "198f6b081cdd8b2901cfa8bd5de480e2ec7d194d9b309ea215862128e030f0bc",
|
|
618
618
|
"description": "KFD-3 value evidence for kfd-machine-consumption: KFD gives agents and release systems machine-readable standards, schemas, package exports, and witnesses so they can consume KFD without relying on private context."
|
|
619
619
|
},
|
|
620
620
|
{
|
|
@@ -651,19 +651,19 @@
|
|
|
651
651
|
},
|
|
652
652
|
{
|
|
653
653
|
"path": "scripts/check.mjs",
|
|
654
|
-
"sha256": "
|
|
654
|
+
"sha256": "a9b277e6fe5ff0ed276ff169b3eac7734455f148ae4ad33657126dca309a3899",
|
|
655
655
|
"description": "Repository self-verification gate"
|
|
656
656
|
},
|
|
657
657
|
{
|
|
658
658
|
"path": "site/kfd-site.json",
|
|
659
|
-
"sha256": "
|
|
659
|
+
"sha256": "9427781d9a7bea6d8cf1a93bd43b60d6d48645b8eb9c9b18425feb2d9ee50ec5",
|
|
660
660
|
"description": "Site rendering boundary"
|
|
661
661
|
}
|
|
662
662
|
],
|
|
663
663
|
"choicePaths": [
|
|
664
664
|
{
|
|
665
665
|
"path": "README.md",
|
|
666
|
-
"sha256": "
|
|
666
|
+
"sha256": "145bf51a3912089262e67a4c445743fbe538a438786768429dfb05e9e8246a08",
|
|
667
667
|
"description": "Human reading path"
|
|
668
668
|
},
|
|
669
669
|
{
|
|
@@ -673,34 +673,34 @@
|
|
|
673
673
|
},
|
|
674
674
|
{
|
|
675
675
|
"path": "standards.json",
|
|
676
|
-
"sha256": "
|
|
676
|
+
"sha256": "de9f5b53cde78460f3794c65b6921a5de7186179f02200778bf3f7543beee343",
|
|
677
677
|
"description": "Agent standards metadata path"
|
|
678
678
|
},
|
|
679
679
|
{
|
|
680
680
|
"path": ".buildchain/kfd-2/public-release-trust.claim.json",
|
|
681
|
-
"sha256": "
|
|
681
|
+
"sha256": "9db0969b8fae77cfd9748d4b54f8c6030ce56e4e5605a8af9c0b65cdeba84d7b",
|
|
682
682
|
"description": "Agent release trust claim path"
|
|
683
683
|
},
|
|
684
684
|
{
|
|
685
685
|
"path": ".buildchain/kfd-2/kfd-foundation.trust-claims.json",
|
|
686
|
-
"sha256": "
|
|
686
|
+
"sha256": "198f6b081cdd8b2901cfa8bd5de480e2ec7d194d9b309ea215862128e030f0bc",
|
|
687
687
|
"description": "Agent generic trust claims path"
|
|
688
688
|
},
|
|
689
689
|
{
|
|
690
690
|
"path": ".buildchain/kfd-2/kfd-foundation.trust-assessment.json",
|
|
691
|
-
"sha256": "
|
|
691
|
+
"sha256": "b1b8acca5df17f4c34fb7c5eacda26f25192f8f8a74d1d0d10f75e2b7aaee9ea",
|
|
692
692
|
"description": "Agent generic trust assessment path"
|
|
693
693
|
},
|
|
694
694
|
{
|
|
695
695
|
"path": "package.json",
|
|
696
|
-
"sha256": "
|
|
696
|
+
"sha256": "8777774ecb354854b863fddb036544a989712d091168f6a34e4b41267621ab1e",
|
|
697
697
|
"description": "Package consumption path"
|
|
698
698
|
}
|
|
699
699
|
],
|
|
700
700
|
"manuals": [
|
|
701
701
|
{
|
|
702
702
|
"path": "docs/MAP.md",
|
|
703
|
-
"sha256": "
|
|
703
|
+
"sha256": "cbc48a98c58c85e4899526ed810c3ff20a4694e856c067a245d23d16527c9378"
|
|
704
704
|
},
|
|
705
705
|
{
|
|
706
706
|
"path": "TRADEMARKS.md",
|
|
@@ -708,7 +708,7 @@
|
|
|
708
708
|
},
|
|
709
709
|
{
|
|
710
710
|
"path": "docs/KFD-1-usage.md",
|
|
711
|
-
"sha256": "
|
|
711
|
+
"sha256": "018cf16c950c485af813826ba19485b58a09e6f00a8e5852fc09fff355d848b6"
|
|
712
712
|
},
|
|
713
713
|
{
|
|
714
714
|
"path": "docs/KFD-2-usage.md",
|
|
@@ -924,7 +924,7 @@
|
|
|
924
924
|
{
|
|
925
925
|
"id": "doc:readme",
|
|
926
926
|
"sourcePath": "README.md",
|
|
927
|
-
"sha256": "
|
|
927
|
+
"sha256": "145bf51a3912089262e67a4c445743fbe538a438786768429dfb05e9e8246a08"
|
|
928
928
|
},
|
|
929
929
|
{
|
|
930
930
|
"id": "doc:trademarks",
|
|
@@ -934,12 +934,12 @@
|
|
|
934
934
|
{
|
|
935
935
|
"id": "doc:docs-map",
|
|
936
936
|
"sourcePath": "docs/MAP.md",
|
|
937
|
-
"sha256": "
|
|
937
|
+
"sha256": "cbc48a98c58c85e4899526ed810c3ff20a4694e856c067a245d23d16527c9378"
|
|
938
938
|
},
|
|
939
939
|
{
|
|
940
940
|
"id": "doc:kfd-1-usage",
|
|
941
941
|
"sourcePath": "docs/KFD-1-usage.md",
|
|
942
|
-
"sha256": "
|
|
942
|
+
"sha256": "018cf16c950c485af813826ba19485b58a09e6f00a8e5852fc09fff355d848b6"
|
|
943
943
|
},
|
|
944
944
|
{
|
|
945
945
|
"id": "doc:kfd-2-usage",
|
|
@@ -959,7 +959,7 @@
|
|
|
959
959
|
{
|
|
960
960
|
"id": "decision:kfd-1",
|
|
961
961
|
"sourcePath": "decisions/KFD-1.md",
|
|
962
|
-
"sha256": "
|
|
962
|
+
"sha256": "dcc97d2e24ffc8f0380cd027ba973bf8268cff59fa9ab766b178e894bcf1f164"
|
|
963
963
|
},
|
|
964
964
|
{
|
|
965
965
|
"id": "decision:kfd-2",
|
|
@@ -1043,17 +1043,17 @@
|
|
|
1043
1043
|
{
|
|
1044
1044
|
"id": "metadata:standards",
|
|
1045
1045
|
"sourcePath": "standards.json",
|
|
1046
|
-
"sha256": "
|
|
1046
|
+
"sha256": "de9f5b53cde78460f3794c65b6921a5de7186179f02200778bf3f7543beee343"
|
|
1047
1047
|
},
|
|
1048
1048
|
{
|
|
1049
1049
|
"id": "metadata:release-impact",
|
|
1050
1050
|
"sourcePath": "release-impact.json",
|
|
1051
|
-
"sha256": "
|
|
1051
|
+
"sha256": "95a11d50b963e9b5655b3ad0dbbe47baae6e6cf425b0e46c16a00e294bae12fb"
|
|
1052
1052
|
},
|
|
1053
1053
|
{
|
|
1054
1054
|
"id": "metadata:release-anchor",
|
|
1055
1055
|
"sourcePath": "kfd.release.json",
|
|
1056
|
-
"sha256": "
|
|
1056
|
+
"sha256": "20000792307af18effba3337d5fd9f2dfdf06898f08560888200377b048cf9d7"
|
|
1057
1057
|
},
|
|
1058
1058
|
{
|
|
1059
1059
|
"id": "metadata:buildchain-contract-lock",
|
|
@@ -1063,36 +1063,36 @@
|
|
|
1063
1063
|
{
|
|
1064
1064
|
"id": "metadata:kfd-2-public-release-trust-claim",
|
|
1065
1065
|
"sourcePath": ".buildchain/kfd-2/public-release-trust.claim.json",
|
|
1066
|
-
"sha256": "
|
|
1066
|
+
"sha256": "9db0969b8fae77cfd9748d4b54f8c6030ce56e4e5605a8af9c0b65cdeba84d7b"
|
|
1067
1067
|
},
|
|
1068
1068
|
{
|
|
1069
1069
|
"id": "metadata:kfd-2-foundation-trust-claims",
|
|
1070
1070
|
"sourcePath": ".buildchain/kfd-2/kfd-foundation.trust-claims.json",
|
|
1071
|
-
"sha256": "
|
|
1071
|
+
"sha256": "198f6b081cdd8b2901cfa8bd5de480e2ec7d194d9b309ea215862128e030f0bc"
|
|
1072
1072
|
},
|
|
1073
1073
|
{
|
|
1074
1074
|
"id": "metadata:kfd-2-foundation-trust-assessment",
|
|
1075
1075
|
"sourcePath": ".buildchain/kfd-2/kfd-foundation.trust-assessment.json",
|
|
1076
|
-
"sha256": "
|
|
1076
|
+
"sha256": "b1b8acca5df17f4c34fb7c5eacda26f25192f8f8a74d1d0d10f75e2b7aaee9ea"
|
|
1077
1077
|
}
|
|
1078
1078
|
],
|
|
1079
1079
|
"packageExports": [
|
|
1080
1080
|
{
|
|
1081
1081
|
"id": "export:package-json",
|
|
1082
1082
|
"sourcePath": "package.json#exports",
|
|
1083
|
-
"sha256": "
|
|
1083
|
+
"sha256": "8777774ecb354854b863fddb036544a989712d091168f6a34e4b41267621ab1e"
|
|
1084
1084
|
},
|
|
1085
1085
|
{
|
|
1086
1086
|
"id": "export:npm-files",
|
|
1087
1087
|
"sourcePath": "package.json#files",
|
|
1088
|
-
"sha256": "
|
|
1088
|
+
"sha256": "8777774ecb354854b863fddb036544a989712d091168f6a34e4b41267621ab1e"
|
|
1089
1089
|
}
|
|
1090
1090
|
],
|
|
1091
1091
|
"siteConsumptionContracts": [
|
|
1092
1092
|
{
|
|
1093
1093
|
"id": "site:kfd-site-bundle",
|
|
1094
1094
|
"sourcePath": "site/kfd-site.json",
|
|
1095
|
-
"sha256": "
|
|
1095
|
+
"sha256": "9427781d9a7bea6d8cf1a93bd43b60d6d48645b8eb9c9b18425feb2d9ee50ec5"
|
|
1096
1096
|
},
|
|
1097
1097
|
{
|
|
1098
1098
|
"id": "site:release-propagation",
|
package/README.md
CHANGED
|
@@ -185,7 +185,10 @@ Agents consuming this package should start from the same sources as humans:
|
|
|
185
185
|
KFD-2 assessment instead of a release-specific passport.
|
|
186
186
|
6. Use `schemas/kfd-3/collaboration-interface.schema.json` and
|
|
187
187
|
`schemas/kfd-3/witness.schema.json` to inspect collaboration interfaces.
|
|
188
|
-
7.
|
|
188
|
+
7. Use `schemas/kfd-1/publication-url-semantics.schema.json` when a package,
|
|
189
|
+
paper, specification, or site bundle must distinguish stable reader URLs,
|
|
190
|
+
latest aliases, and immutable versioned artifacts.
|
|
191
|
+
8. If a needed KFD-2 taxonomy value is missing, open a KFD GitHub issue rather
|
|
189
192
|
than inventing a local value:
|
|
190
193
|
`https://github.com/kungfu-systems/kfd/issues/new?title=KFD-2%20trust%20taxonomy%20extension%20request`.
|
|
191
194
|
|
package/decisions/KFD-1.md
CHANGED
|
@@ -29,8 +29,10 @@ they are integrating with, replaying, auditing, or trusting.
|
|
|
29
29
|
KFD-1 has concrete implementation surfaces across the Kungfu ecosystem:
|
|
30
30
|
versioning protects release lines from contract drift, config contracts protect
|
|
31
31
|
multi-target configuration from drifting across runtimes, products, and
|
|
32
|
-
agent-facing surfaces,
|
|
33
|
-
|
|
32
|
+
agent-facing surfaces, publication URL semantics protect released documents and
|
|
33
|
+
evidence from drifting across site rebuilds, and KFD metadata protects the
|
|
34
|
+
decision package's own standard surfaces from drifting away from their declared
|
|
35
|
+
source.
|
|
34
36
|
|
|
35
37
|
## Premise: the welded-surface register
|
|
36
38
|
|
|
@@ -63,6 +65,31 @@ steps, and the final product must consume the same contract mechanism. It is
|
|
|
63
65
|
not enough for the packaged artifact to be internally consistent if the
|
|
64
66
|
developer path used a different, driftable config source.
|
|
65
67
|
|
|
68
|
+
## Concrete case: publication URL semantics
|
|
69
|
+
|
|
70
|
+
A public paper, specification, or long-lived document often needs two route
|
|
71
|
+
classes at the same time:
|
|
72
|
+
|
|
73
|
+
- a **stable reader entrypoint**, such as a product page or canonical paper
|
|
74
|
+
URL, which may point readers to the current recommended version; and
|
|
75
|
+
- an **immutable version entrypoint**, where the released PDF, source bundle,
|
|
76
|
+
release passport, site bundle, registry entry, or other evidence for one
|
|
77
|
+
version remains content-addressed and does not change after publication.
|
|
78
|
+
|
|
79
|
+
Those routes are welded surfaces. A site repository may render the current
|
|
80
|
+
page from the latest upstream package, but it must not become the only place
|
|
81
|
+
where historical artifacts live. The historical artifact fact must remain in
|
|
82
|
+
an archive or release registry whose versioned URL and digest do not drift.
|
|
83
|
+
Mutable pages may move; immutable version artifacts must not.
|
|
84
|
+
|
|
85
|
+
The KFD-owned interface for this case is
|
|
86
|
+
`schemas/kfd-1/publication-url-semantics.schema.json`. It defines the generic
|
|
87
|
+
vocabulary for `canonicalUrl`, `latestUrl`, `immutableVersionBaseUrl`,
|
|
88
|
+
artifact digests, source coordinates, lineage, and the archive policy that
|
|
89
|
+
forbids same-version digest changes or destructive sync over immutable
|
|
90
|
+
prefixes. Concrete repositories own their routes and storage layout; KFD owns
|
|
91
|
+
the semantics that make those declarations auditable.
|
|
92
|
+
|
|
66
93
|
## The compatibility impact core
|
|
67
94
|
|
|
68
95
|
Classify the actual diff against the register; the strongest match wins:
|
package/docs/KFD-1-usage.md
CHANGED
|
@@ -12,6 +12,9 @@ The KFD package implements KFD-1 through a declared contract world:
|
|
|
12
12
|
surface register.
|
|
13
13
|
- `schemas/kfd-1/contract-world.schema.json` defines the contract-world schema.
|
|
14
14
|
- `schemas/kfd-1/witness.schema.json` defines the witness schema.
|
|
15
|
+
- `schemas/kfd-1/publication-url-semantics.schema.json` defines the
|
|
16
|
+
canonical/latest/immutable publication URL contract for papers,
|
|
17
|
+
specifications, release notes, and other long-lived publication artifacts.
|
|
15
18
|
- `.buildchain/kfd-1/contract-world.witness.json` projects registered surfaces,
|
|
16
19
|
source hashes, artifact hashes, surface classes, and impact projections.
|
|
17
20
|
- `scripts/check.mjs` verifies the register, schema enums, witness hashes, and
|
|
@@ -30,6 +33,45 @@ Release versioning is only one projection of those classes. Other domains can
|
|
|
30
33
|
project the same core into config migration, ABI epochs, API namespaces,
|
|
31
34
|
runtime compatibility bridges, or workflow gates.
|
|
32
35
|
|
|
36
|
+
## Publication URL Semantics
|
|
37
|
+
|
|
38
|
+
Publication artifacts frequently need both mutable and immutable routes. A
|
|
39
|
+
canonical reader page may remain stable while its content is updated to point
|
|
40
|
+
at the latest recommended version. A versioned PDF, source bundle, release
|
|
41
|
+
passport, publication registry entry, or site bundle is different: once
|
|
42
|
+
published, the versioned URL and digest are facts that downstream readers,
|
|
43
|
+
agents, release passports, citations, and audits may weld to.
|
|
44
|
+
|
|
45
|
+
The KFD-1 publication URL schema gives Buildchain and site repositories a
|
|
46
|
+
shared vocabulary:
|
|
47
|
+
|
|
48
|
+
- `canonicalUrl`: stable reader entrypoint; it may display the latest
|
|
49
|
+
recommended version.
|
|
50
|
+
- `latestUrl`: mutable latest alias or evidence entrypoint; it may move when a
|
|
51
|
+
new version is published.
|
|
52
|
+
- `immutableVersionBaseUrl`: version-addressed archive prefix; its published
|
|
53
|
+
artifacts must not change content.
|
|
54
|
+
- `immutableArtifacts[]`: digest-bound artifacts such as PDF, source bundle,
|
|
55
|
+
release passport, site bundle, or publication registry entry.
|
|
56
|
+
- `sourceCoordinate`: repository commit, tag, source bundle, release passport,
|
|
57
|
+
or equivalent coordinate for the source fact.
|
|
58
|
+
- `archivePolicy`: the rule that same-version digest drift fails, destructive
|
|
59
|
+
sync must not cover immutable prefixes, and site builds must preserve
|
|
60
|
+
declared historical versions.
|
|
61
|
+
|
|
62
|
+
KFD does not choose bucket names, CDN providers, product slugs, or exact route
|
|
63
|
+
layout. Concrete packages declare those facts in their own site bundle or
|
|
64
|
+
Buildchain release metadata. KFD owns the route semantics so those facts can be
|
|
65
|
+
validated consistently.
|
|
66
|
+
|
|
67
|
+
This connects the foundation triad:
|
|
68
|
+
|
|
69
|
+
- KFD-1: the immutable artifact URL and digest must not drift.
|
|
70
|
+
- KFD-2: trust in the publication starts from version, digest, source
|
|
71
|
+
coordinate, release passport, and archive location.
|
|
72
|
+
- KFD-3: site renderers and agents should see the route facts instead of
|
|
73
|
+
reverse-engineering or forking them locally.
|
|
74
|
+
|
|
33
75
|
## Dogfood Role
|
|
34
76
|
|
|
35
77
|
This package uses KFD-1 on itself. New public package surfaces should be added
|
package/docs/MAP.md
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
| How should a product show timeline order from a declared perspective? | [KFD-4](../decisions/KFD-4.md) |
|
|
10
10
|
| What schema should products use for KFD-4 observer-relative timeline views? | [`../schemas/kfd-4/observer-perspective.schema.json`](../schemas/kfd-4/observer-perspective.schema.json) |
|
|
11
11
|
| What are the package implementation notes for KFD-1? | [`KFD-1-usage.md`](KFD-1-usage.md) |
|
|
12
|
+
| What schema should papers, specifications, or sites use for canonical/latest/immutable publication URL semantics? | [`../schemas/kfd-1/publication-url-semantics.schema.json`](../schemas/kfd-1/publication-url-semantics.schema.json) and [`KFD-1-usage.md`](KFD-1-usage.md#publication-url-semantics) |
|
|
12
13
|
| What are the package implementation notes for KFD-2? | [`KFD-2-usage.md`](KFD-2-usage.md) |
|
|
13
14
|
| What are the package implementation notes for KFD-3? | [`KFD-3-usage.md`](KFD-3-usage.md) |
|
|
14
15
|
| What are the package implementation notes for KFD-4? | [`KFD-4-usage.md`](KFD-4-usage.md) |
|
package/kfd.release.json
CHANGED
package/package.json
CHANGED
package/release-impact.json
CHANGED
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
},
|
|
9
9
|
"versionImpact": {
|
|
10
10
|
"final": "minor",
|
|
11
|
-
"source": "kfd-
|
|
12
|
-
"rationale": "This change additively exposes
|
|
11
|
+
"source": "kfd-1-publication-url-semantics",
|
|
12
|
+
"rationale": "This change additively exposes KFD-1 publication URL semantics for canonical/latest/immutable publication routes, while preserving existing registry, package, and schemaVersion 1 compatibility."
|
|
13
13
|
},
|
|
14
14
|
"surfaceImpacts": [
|
|
15
15
|
{
|
|
@@ -107,7 +107,13 @@
|
|
|
107
107
|
"impact": "minor",
|
|
108
108
|
"class": "additive",
|
|
109
109
|
"rationale": "standards.json now publishes the KFD package surface register as the KFD-1 fact source, and the KFD-1 witness projects each registered surface class and impact projection from that fact source."
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"id": "kfd-1-publication-url-semantics",
|
|
113
|
+
"impact": "minor",
|
|
114
|
+
"class": "additive",
|
|
115
|
+
"rationale": "KFD-1 now publishes a machine-readable schema for canonical reader URLs, latest aliases, immutable version artifact URLs, artifact digests, source coordinates, lineage, site consumption, and archive policies that prevent same-version digest drift or destructive deletion of immutable publication prefixes."
|
|
110
116
|
}
|
|
111
117
|
],
|
|
112
|
-
"summary": "KFD v1.0 production promotion is minor-impact because it additively exposes
|
|
118
|
+
"summary": "KFD v1.0 production promotion is minor-impact because it additively exposes publication URL semantics and related machine metadata while preserving existing package and schemaVersion 1 compatibility."
|
|
113
119
|
}
|