@kungfu-tech/buildchain 4.0.1-alpha.4 → 4.0.1-alpha.5

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.
Files changed (87) hide show
  1. package/architecture/decisions/0002-next-development-transition.md +101 -0
  2. package/architecture/internal-capabilities.json +52 -3
  3. package/architecture/maintainability-policy.json +22 -10
  4. package/architecture/v3-core-mechanism-inventory.json +89 -0
  5. package/architecture/v4-capability-state-machine-manifest.json +73 -0
  6. package/architecture/v4-compatibility-facts-parity.json +77 -0
  7. package/architecture/v4-next-development-parity.json +192 -0
  8. package/architecture/v4-release-train-parity.json +1 -0
  9. package/architecture/v4-tail-reseal-parity.json +150 -0
  10. package/bin/buildchain.mjs +16 -1
  11. package/bin/internal/command-registry.mjs +2 -0
  12. package/bin/internal/compatibility-facts-cli.mjs +101 -0
  13. package/contracts/fixtures/next-development-transition-v1/anchored-manual-waiting.json +47 -0
  14. package/contracts/fixtures/next-development-transition-v1/semver-auto-planned.json +47 -0
  15. package/contracts/fixtures/next-development-transition-v1/version-model-cases.json +40 -0
  16. package/contracts/fixtures/v4-compatibility-facts-v1/shared.json +1129 -0
  17. package/contracts/fixtures/v4-floating-consumer-policy-v1/cases.json +7 -1
  18. package/contracts/fixtures/v4-tail-reseal-v1/valid.json +229 -0
  19. package/contracts/next-development-request-v1.schema.json +66 -0
  20. package/contracts/next-development-transition-v1.schema.json +292 -0
  21. package/contracts/v4-compatibility-facts-v1.schema.json +230 -0
  22. package/contracts/v4-tail-reseal-v1.schema.json +276 -0
  23. package/dist/site/agent-index.json +1 -0
  24. package/dist/site/artifact-schemas.json +2 -0
  25. package/dist/site/buildchain-contract.json +1388 -23
  26. package/dist/site/buildchain-site.json +257 -19
  27. package/dist/site/capability-registry.json +10 -8
  28. package/dist/site/cli-registry.json +106 -0
  29. package/dist/site/kfd-claims.json +187 -12
  30. package/dist/site/kfd-upstream-aggregate.json +1 -1
  31. package/dist/site/manual-registry.json +35 -4
  32. package/dist/site/node-api-registry.json +6579 -4493
  33. package/dist/site/page-registry.json +233 -11
  34. package/dist/site/public-surface-audit.json +241 -7
  35. package/dist/site/publication-authority-registry.json +6 -1
  36. package/dist/site/publication-registry.json +4 -4
  37. package/dist/site/release-provenance.json +7 -0
  38. package/dist/site/schemas/v4-compatibility-facts-v1.schema.json +230 -0
  39. package/dist/site/site-manifest.json +24 -8
  40. package/dist/site/workflow-registry.json +36 -4
  41. package/docs/MAP.md +4 -1
  42. package/docs/cli-reference.md +125 -0
  43. package/docs/dev-alpha-candidate-patrol.md +8 -0
  44. package/docs/next-development-transition.md +118 -0
  45. package/docs/node-api-reference.md +250 -117
  46. package/docs/v4-compatibility-facts.md +91 -0
  47. package/docs/v4-tail-reseal.md +73 -0
  48. package/docs/versioning.md +4 -3
  49. package/package.json +14 -5
  50. package/packages/core/buildchain-agent-manuals.js +2 -0
  51. package/packages/core/buildchain-compatibility-authority.js +336 -0
  52. package/packages/core/buildchain-compatibility-fact.js +394 -0
  53. package/packages/core/buildchain-compatibility-facts.json +217 -0
  54. package/packages/core/buildchain-compatibility-proof.js +566 -0
  55. package/packages/core/buildchain-contract.js +93 -141
  56. package/packages/core/channel-candidate.js +8 -0
  57. package/packages/core/channel-promotion-baseline.js +55 -0
  58. package/packages/core/dev-alpha-candidate-selection.js +10 -2
  59. package/packages/core/dev-delivery-execution-transfer.js +21 -1
  60. package/packages/core/dev-delivery-process-boundary.js +19 -6
  61. package/packages/core/dev-delivery-provider-heartbeat.js +18 -6
  62. package/packages/core/kungfu-temporal-fact.js +557 -0
  63. package/packages/core/next-development-candidate-reservation.js +186 -0
  64. package/packages/core/next-development-controller.js +728 -0
  65. package/packages/core/next-development-projection.js +287 -0
  66. package/packages/core/next-development-transition.js +738 -0
  67. package/packages/core/paper-agent-entry.js +11 -5
  68. package/packages/core/paper.js +16 -5
  69. package/packages/core/v4-canonical-contracts.js +5 -0
  70. package/packages/core/v4-floating-consumer-policy.js +29 -9
  71. package/packages/core/v4-tail-reseal-contract.js +26 -0
  72. package/packages/core/v4-tail-reseal-github.js +178 -0
  73. package/packages/core/v4-tail-reseal-receipt.js +225 -0
  74. package/packages/core/v4-tail-reseal.js +594 -0
  75. package/scripts/buildchain-cli-help.mjs +20 -0
  76. package/scripts/check-inventory.mjs +11 -0
  77. package/scripts/dev-alpha-candidate-patrol.mjs +22 -1
  78. package/scripts/generate-next-development-guidance.mjs +49 -0
  79. package/scripts/generate-site-bundle.mjs +16 -3
  80. package/scripts/init-repo.mjs +22 -4
  81. package/scripts/next-development-self-dogfood-harness.mjs +460 -0
  82. package/scripts/next-development-self-dogfood.mjs +597 -0
  83. package/scripts/next-development-transition.mjs +47 -0
  84. package/scripts/site-capability-metadata.mjs +12 -0
  85. package/scripts/v4-consumer-policy.mjs +1 -5
  86. package/scripts/v4-tail-reseal-macos-rehearsal.mjs +134 -0
  87. package/scripts/v4-tail-reseal.mjs +416 -0
@@ -3,11 +3,11 @@
3
3
  "contract": "kungfu-buildchain-public-surface-reverse-audit",
4
4
  "status": "passed",
5
5
  "summary": {
6
- "cliCommandCount": 114,
7
- "workflowCount": 71,
6
+ "cliCommandCount": 116,
7
+ "workflowCount": 72,
8
8
  "actionCount": 7,
9
- "sitePageCount": 77,
10
- "docCommandRefCount": 987,
9
+ "sitePageCount": 80,
10
+ "docCommandRefCount": 1025,
11
11
  "failureCount": 0
12
12
  },
13
13
  "enumerated": {
@@ -362,6 +362,11 @@
362
362
  "source": "bin/buildchain.mjs",
363
363
  "usage": "buildchain mark --event <name> [--phase <phase>] [--component <name>]"
364
364
  },
365
+ {
366
+ "id": "next-development",
367
+ "source": "bin/buildchain.mjs",
368
+ "usage": "buildchain next-development materialize --input <request.json> [--cwd <dir>]"
369
+ },
365
370
  {
366
371
  "id": "npm",
367
372
  "source": "bin/buildchain.mjs",
@@ -522,6 +527,11 @@
522
527
  "source": "bin/buildchain.mjs",
523
528
  "usage": "buildchain span --event <name> [--phase <phase>] [--component <name>]"
524
529
  },
530
+ {
531
+ "id": "tail-reseal",
532
+ "source": "bin/buildchain.mjs",
533
+ "usage": "buildchain tail-reseal plan --request <request.json> [--output <plan.json>]"
534
+ },
525
535
  {
526
536
  "id": "transaction-inspect",
527
537
  "source": "bin/buildchain.mjs",
@@ -2910,6 +2920,28 @@
2910
2920
  "outputs": [],
2911
2921
  "outputCount": 0
2912
2922
  },
2923
+ {
2924
+ "id": "v4-tail-reseal",
2925
+ "path": ".github/workflows/v4-tail-reseal.yml",
2926
+ "reusable": true,
2927
+ "inputs": [
2928
+ "artifact-retention-days",
2929
+ "consumer-policy-receipt-json",
2930
+ "macos-finalization-command",
2931
+ "request-json"
2932
+ ],
2933
+ "inputCount": 4,
2934
+ "secrets": [
2935
+ "BUILDCHAIN_EVIDENCE_READ_TOKEN",
2936
+ "BUILDCHAIN_SIGNING_TOKEN"
2937
+ ],
2938
+ "secretCount": 2,
2939
+ "outputs": [
2940
+ "release-candidate-passport-json",
2941
+ "tail-reseal-receipt-root"
2942
+ ],
2943
+ "outputCount": 2
2944
+ },
2913
2945
  {
2914
2946
  "id": "verify",
2915
2947
  "path": ".github/workflows/verify.yml",
@@ -3345,6 +3377,10 @@
3345
3377
  "id": "manual:migration-inventory",
3346
3378
  "category": "manual"
3347
3379
  },
3380
+ {
3381
+ "id": "manual:next-development-transition",
3382
+ "category": "manual"
3383
+ },
3348
3384
  {
3349
3385
  "id": "manual:node-api-reference",
3350
3386
  "category": "manual"
@@ -3441,6 +3477,10 @@
3441
3477
  "id": "manual:v4-canonical-contracts",
3442
3478
  "category": "manual"
3443
3479
  },
3480
+ {
3481
+ "id": "manual:v4-compatibility-facts",
3482
+ "category": "manual"
3483
+ },
3444
3484
  {
3445
3485
  "id": "manual:v4-delivery-warrant-read-candidate",
3446
3486
  "category": "manual"
@@ -3461,6 +3501,10 @@
3461
3501
  "id": "manual:v4-stage-capsule",
3462
3502
  "category": "manual"
3463
3503
  },
3504
+ {
3505
+ "id": "manual:v4-tail-reseal",
3506
+ "category": "manual"
3507
+ },
3464
3508
  {
3465
3509
  "id": "manual:versioning",
3466
3510
  "category": "manual"
@@ -3835,6 +3879,26 @@
3835
3879
  "path": "docs/cli-reference.md",
3836
3880
  "command": "buildchain facts aggregate"
3837
3881
  },
3882
+ {
3883
+ "id": "build-facts",
3884
+ "path": "docs/cli-reference.md",
3885
+ "command": "buildchain facts compatibility project"
3886
+ },
3887
+ {
3888
+ "id": "build-facts",
3889
+ "path": "docs/cli-reference.md",
3890
+ "command": "buildchain facts compatibility query"
3891
+ },
3892
+ {
3893
+ "id": "build-facts",
3894
+ "path": "docs/cli-reference.md",
3895
+ "command": "buildchain facts compatibility query-template"
3896
+ },
3897
+ {
3898
+ "id": "build-facts",
3899
+ "path": "docs/cli-reference.md",
3900
+ "command": "buildchain facts compatibility verify"
3901
+ },
3838
3902
  {
3839
3903
  "id": "build-facts",
3840
3904
  "path": "docs/cli-reference.md",
@@ -3860,6 +3924,46 @@
3860
3924
  "path": "docs/cli-reference.md",
3861
3925
  "command": "buildchain facts aggregate --help"
3862
3926
  },
3927
+ {
3928
+ "id": "build-facts",
3929
+ "path": "docs/cli-reference.md",
3930
+ "command": "buildchain facts compatibility project"
3931
+ },
3932
+ {
3933
+ "id": "build-facts",
3934
+ "path": "docs/cli-reference.md",
3935
+ "command": "buildchain facts compatibility project"
3936
+ },
3937
+ {
3938
+ "id": "build-facts",
3939
+ "path": "docs/cli-reference.md",
3940
+ "command": "buildchain facts compatibility query"
3941
+ },
3942
+ {
3943
+ "id": "build-facts",
3944
+ "path": "docs/cli-reference.md",
3945
+ "command": "buildchain facts compatibility query"
3946
+ },
3947
+ {
3948
+ "id": "build-facts",
3949
+ "path": "docs/cli-reference.md",
3950
+ "command": "buildchain facts compatibility query-template"
3951
+ },
3952
+ {
3953
+ "id": "build-facts",
3954
+ "path": "docs/cli-reference.md",
3955
+ "command": "buildchain facts compatibility query-template"
3956
+ },
3957
+ {
3958
+ "id": "build-facts",
3959
+ "path": "docs/cli-reference.md",
3960
+ "command": "buildchain facts compatibility verify"
3961
+ },
3962
+ {
3963
+ "id": "build-facts",
3964
+ "path": "docs/cli-reference.md",
3965
+ "command": "buildchain facts compatibility verify"
3966
+ },
3863
3967
  {
3864
3968
  "id": "build-facts",
3865
3969
  "path": "docs/cli-reference.md",
@@ -3895,6 +3999,26 @@
3895
3999
  "path": "docs/cli.md",
3896
4000
  "command": "buildchain facts verify --fact"
3897
4001
  },
4002
+ {
4003
+ "id": "build-facts",
4004
+ "path": "docs/v4-compatibility-facts.md",
4005
+ "command": "buildchain facts compatibility project"
4006
+ },
4007
+ {
4008
+ "id": "build-facts",
4009
+ "path": "docs/v4-compatibility-facts.md",
4010
+ "command": "buildchain facts compatibility verify"
4011
+ },
4012
+ {
4013
+ "id": "build-facts",
4014
+ "path": "docs/v4-compatibility-facts.md",
4015
+ "command": "buildchain facts compatibility query-template"
4016
+ },
4017
+ {
4018
+ "id": "build-facts",
4019
+ "path": "docs/v4-compatibility-facts.md",
4020
+ "command": "buildchain facts compatibility query"
4021
+ },
3898
4022
  {
3899
4023
  "id": "candidate",
3900
4024
  "path": "docs/cli-reference.md",
@@ -6710,6 +6834,36 @@
6710
6834
  "path": "README.md",
6711
6835
  "command": "buildchain mark --event native"
6712
6836
  },
6837
+ {
6838
+ "id": "next-development",
6839
+ "path": "docs/cli-reference.md",
6840
+ "command": "buildchain next-development"
6841
+ },
6842
+ {
6843
+ "id": "next-development",
6844
+ "path": "docs/cli-reference.md",
6845
+ "command": "buildchain next-development materialize --input"
6846
+ },
6847
+ {
6848
+ "id": "next-development",
6849
+ "path": "docs/cli-reference.md",
6850
+ "command": "buildchain next-development"
6851
+ },
6852
+ {
6853
+ "id": "next-development",
6854
+ "path": "docs/cli-reference.md",
6855
+ "command": "buildchain next-development --help"
6856
+ },
6857
+ {
6858
+ "id": "next-development",
6859
+ "path": "docs/cli-reference.md",
6860
+ "command": "buildchain next-development materialize"
6861
+ },
6862
+ {
6863
+ "id": "next-development",
6864
+ "path": "docs/cli-reference.md",
6865
+ "command": "buildchain next-development materialize --help"
6866
+ },
6713
6867
  {
6714
6868
  "id": "npm-dry-run",
6715
6869
  "path": "docs/cli-reference.md",
@@ -7965,6 +8119,86 @@
7965
8119
  "path": "README.md",
7966
8120
  "command": "buildchain span --event native"
7967
8121
  },
8122
+ {
8123
+ "id": "tail-reseal",
8124
+ "path": "docs/cli-reference.md",
8125
+ "command": "buildchain tail-reseal"
8126
+ },
8127
+ {
8128
+ "id": "tail-reseal",
8129
+ "path": "docs/cli-reference.md",
8130
+ "command": "buildchain tail-reseal admit --request"
8131
+ },
8132
+ {
8133
+ "id": "tail-reseal",
8134
+ "path": "docs/cli-reference.md",
8135
+ "command": "buildchain tail-reseal plan --request"
8136
+ },
8137
+ {
8138
+ "id": "tail-reseal",
8139
+ "path": "docs/cli-reference.md",
8140
+ "command": "buildchain tail-reseal seal --request"
8141
+ },
8142
+ {
8143
+ "id": "tail-reseal",
8144
+ "path": "docs/cli-reference.md",
8145
+ "command": "buildchain tail-reseal verify-platform --request"
8146
+ },
8147
+ {
8148
+ "id": "tail-reseal",
8149
+ "path": "docs/cli-reference.md",
8150
+ "command": "buildchain tail-reseal"
8151
+ },
8152
+ {
8153
+ "id": "tail-reseal",
8154
+ "path": "docs/cli-reference.md",
8155
+ "command": "buildchain tail-reseal --help"
8156
+ },
8157
+ {
8158
+ "id": "tail-reseal",
8159
+ "path": "docs/cli-reference.md",
8160
+ "command": "buildchain tail-reseal admit"
8161
+ },
8162
+ {
8163
+ "id": "tail-reseal",
8164
+ "path": "docs/cli-reference.md",
8165
+ "command": "buildchain tail-reseal admit --help"
8166
+ },
8167
+ {
8168
+ "id": "tail-reseal",
8169
+ "path": "docs/cli-reference.md",
8170
+ "command": "buildchain tail-reseal plan"
8171
+ },
8172
+ {
8173
+ "id": "tail-reseal",
8174
+ "path": "docs/cli-reference.md",
8175
+ "command": "buildchain tail-reseal plan --help"
8176
+ },
8177
+ {
8178
+ "id": "tail-reseal",
8179
+ "path": "docs/cli-reference.md",
8180
+ "command": "buildchain tail-reseal seal"
8181
+ },
8182
+ {
8183
+ "id": "tail-reseal",
8184
+ "path": "docs/cli-reference.md",
8185
+ "command": "buildchain tail-reseal seal --help"
8186
+ },
8187
+ {
8188
+ "id": "tail-reseal",
8189
+ "path": "docs/cli-reference.md",
8190
+ "command": "buildchain tail-reseal verify-platform"
8191
+ },
8192
+ {
8193
+ "id": "tail-reseal",
8194
+ "path": "docs/cli-reference.md",
8195
+ "command": "buildchain tail-reseal verify-platform --help"
8196
+ },
8197
+ {
8198
+ "id": "tail-reseal",
8199
+ "path": "docs/v4-tail-reseal.md",
8200
+ "command": "buildchain tail-reseal plan"
8201
+ },
7968
8202
  {
7969
8203
  "id": "transaction-inspect",
7970
8204
  "path": "docs/cli-reference.md",
@@ -8416,9 +8650,9 @@
8416
8650
  "cliRegistryPath": "dist/site/cli-registry.json",
8417
8651
  "workflowRegistryPath": "dist/site/workflow-registry.json",
8418
8652
  "pageRegistryPath": "dist/site/page-registry.json",
8419
- "cliRegistryDigest": "3632f0332f9c0e270a522a4af358482833974757d77ac40a2d7e2efe6a56cb28",
8420
- "workflowRegistryDigest": "91b72955489bf4a98fa0c3d3b8ef245e34acb5993e3a59c26caad214b004cfde",
8421
- "pageRegistryDigest": "07068ff6f889aaae1bb0def76cc041b2e8c63092eebf728b245f3f9451e1ea24"
8653
+ "cliRegistryDigest": "c240837b7885defa68e300e6b6178557824f7bd4dce8f258115b990516bf63c7",
8654
+ "workflowRegistryDigest": "732b7a2a25f9b9b6beda4158da29240c186df7eb45a14fb12cb285423b5c9831",
8655
+ "pageRegistryDigest": "d0893422eaf356b36a0439e573beaa4da56466293d2a47a5f7769ec82844ffb3"
8422
8656
  },
8423
8657
  "comparison": {
8424
8658
  "missingCliRegistry": [],
@@ -1191,11 +1191,16 @@
1191
1191
  "signals": [],
1192
1192
  "classified": false
1193
1193
  },
1194
+ {
1195
+ "path": ".github/workflows/v4-tail-reseal.yml",
1196
+ "signals": [],
1197
+ "classified": false
1198
+ },
1194
1199
  {
1195
1200
  "path": ".github/workflows/verify.yml",
1196
1201
  "signals": [],
1197
1202
  "classified": false
1198
1203
  }
1199
1204
  ],
1200
- "registryDigest": "456987223fcd21bb1db29583187fcbefacf91668a1a245ed1fb186ffe95c15c3"
1205
+ "registryDigest": "95e7d88ca3d3492b7852d715c24d3f4f2cec59f3c3fbb8665aa781d15afd6b63"
1201
1206
  }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "contract": "kungfu-buildchain-publication-release-registry",
4
- "generatedAt": "2026-08-16T00:38:02.716Z",
5
- "publishedAt": "2026-08-16T00:38:02.716Z",
4
+ "generatedAt": "2026-08-16T06:14:57.817Z",
5
+ "publishedAt": "2026-08-16T06:14:57.817Z",
6
6
  "reproducible": true,
7
7
  "timestampPolicy": "ci-injected",
8
8
  "deterministicInputs": [
@@ -19,7 +19,7 @@
19
19
  "declared Buildchain surface manifest contract"
20
20
  ],
21
21
  "sourceDateEpoch": "0",
22
- "sourceRevision": "e6b14caa6b3dd2af4ea2f6c480baf84006ed0131",
22
+ "sourceRevision": "358df2d1ab42465111896a42cde85dcca08549d5",
23
23
  "timestampPolicyDetails": {
24
24
  "contract": "kungfu-buildchain-surface-timestamp-policy",
25
25
  "timestampFields": [
@@ -32,7 +32,7 @@
32
32
  },
33
33
  "package": {
34
34
  "name": "@kungfu-tech/buildchain",
35
- "version": "4.0.1-alpha.4",
35
+ "version": "4.0.1-alpha.5",
36
36
  "versionSource": "package.json#version"
37
37
  },
38
38
  "sourceKind": "package-site-bundle",
@@ -20,6 +20,7 @@
20
20
  "./detached-artifact-signature": "./packages/core/detached-artifact-signature.js",
21
21
  "./anchored-version-material": "./packages/core/anchored-version-material.js",
22
22
  "./buildchain-contract": "./packages/core/buildchain-contract.js",
23
+ "./compatibility-fact-authority": "./packages/core/buildchain-compatibility-proof.js",
23
24
  "./candidate-timeline": "./packages/core/candidate-timeline.js",
24
25
  "./channel-candidate": "./packages/core/channel-candidate.js",
25
26
  "./cache-evidence": "./packages/core/cache-evidence.js",
@@ -40,6 +41,8 @@
40
41
  "./public-surface-audit": "./packages/core/public-surface-audit.js",
41
42
  "./v4-floating-consumer-policy": "./packages/core/v4-floating-consumer-policy.js",
42
43
  "./v4-runtime-ref-resume-authority": "./packages/core/v4-runtime-ref-resume-authority.js",
44
+ "./v4-tail-reseal": "./packages/core/v4-tail-reseal.js",
45
+ "./v4-tail-reseal-receipt": "./packages/core/v4-tail-reseal-receipt.js",
43
46
  "./logging": "./packages/core/logging.js",
44
47
  "./portable-dev-cache": "./packages/core/portable-dev-cache.js",
45
48
  "./publication-artifact": "./packages/core/publication-artifact.js",
@@ -57,6 +60,9 @@
57
60
  "./release-candidate": "./packages/core/release-candidate.js",
58
61
  "./release-candidate-recovery": "./packages/core/release-candidate-recovery.js",
59
62
  "./release-train": "./packages/core/release-train.js",
63
+ "./next-development-transition": "./packages/core/next-development-transition.js",
64
+ "./next-development-controller": "./packages/core/next-development-controller.js",
65
+ "./next-development-projection": "./packages/core/next-development-projection.js",
60
66
  "./stable-candidate-ledger": "./packages/core/stable-candidate-ledger.js",
61
67
  "./release-passport": "./packages/core/release-passport.js",
62
68
  "./release-passport-contract": "./packages/core/release-passport-contract.js",
@@ -89,6 +95,7 @@
89
95
  "./site/schemas/kfd-product-gate-input-v1.schema.json": "./dist/site/schemas/kfd-product-gate-input-v1.schema.json",
90
96
  "./site/schemas/kfd-support-projection-v1.schema.json": "./dist/site/schemas/kfd-support-projection-v1.schema.json",
91
97
  "./site/schemas/dev-delivery-authority-v2.schema.json": "./dist/site/schemas/dev-delivery-authority-v2.schema.json",
98
+ "./site/schemas/v4-compatibility-facts-v1.schema.json": "./dist/site/schemas/v4-compatibility-facts-v1.schema.json",
92
99
  "./site/buildchain-contract.json": "./dist/site/buildchain-contract.json",
93
100
  "./site/product-mechanism.json": "./dist/site/product-mechanism.json",
94
101
  "./site/release-provenance.json": "./dist/site/release-provenance.json",
@@ -0,0 +1,230 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://buildchain.libkungfu.dev/schemas/v4-compatibility-facts-v1.schema.json",
4
+ "title": "Buildchain v4 compatibility Facts",
5
+ "description": "Closed public shapes for directional, Cut-bound compatibility Facts, explicit path queries, and rooted receipts.",
6
+ "oneOf": [
7
+ { "$ref": "#/$defs/fact" },
8
+ { "$ref": "#/$defs/registry" },
9
+ { "$ref": "#/$defs/query" },
10
+ { "$ref": "#/$defs/receiptEntry" }
11
+ ],
12
+ "$defs": {
13
+ "root": {
14
+ "type": "string",
15
+ "pattern": "^sha256:[0-9a-f]{64}$"
16
+ },
17
+ "entry": {
18
+ "type": "object",
19
+ "additionalProperties": false,
20
+ "required": ["root", "record"],
21
+ "properties": {
22
+ "root": { "$ref": "#/$defs/root" },
23
+ "record": { "type": "object" }
24
+ }
25
+ },
26
+ "proof": {
27
+ "type": "object",
28
+ "required": [
29
+ "schema",
30
+ "proofId",
31
+ "predicate",
32
+ "direction",
33
+ "operation",
34
+ "source",
35
+ "target",
36
+ "scope",
37
+ "scopeRoot",
38
+ "evidence",
39
+ "evidenceRoot",
40
+ "authority",
41
+ "authorityRoot",
42
+ "cut",
43
+ "cutRoot",
44
+ "proofRoot"
45
+ ],
46
+ "properties": {
47
+ "schema": { "const": "kungfu.buildchain.compatibility-proof/v1" },
48
+ "proofId": { "type": "string", "minLength": 1 },
49
+ "predicate": { "const": "compatible-breaking-digest" },
50
+ "direction": { "const": "source-to-target" },
51
+ "operation": { "const": "accept-contract-lock" },
52
+ "source": { "type": "object" },
53
+ "target": { "type": "object" },
54
+ "scope": { "type": "object" },
55
+ "scopeRoot": { "$ref": "#/$defs/root" },
56
+ "evidence": { "type": "object" },
57
+ "evidenceRoot": { "$ref": "#/$defs/root" },
58
+ "authority": { "type": "object" },
59
+ "authorityRoot": { "$ref": "#/$defs/root" },
60
+ "cut": { "type": "object" },
61
+ "cutRoot": { "$ref": "#/$defs/root" },
62
+ "proofRoot": { "$ref": "#/$defs/root" }
63
+ }
64
+ },
65
+ "fact": {
66
+ "type": "object",
67
+ "additionalProperties": false,
68
+ "required": [
69
+ "schema",
70
+ "factId",
71
+ "factRoot",
72
+ "sourceRoot",
73
+ "targetRoot",
74
+ "predicate",
75
+ "relation",
76
+ "proof"
77
+ ],
78
+ "properties": {
79
+ "schema": { "const": "kungfu.buildchain.compatibility-fact/v1" },
80
+ "factId": { "type": "string", "minLength": 1 },
81
+ "factRoot": { "$ref": "#/$defs/root" },
82
+ "sourceRoot": { "$ref": "#/$defs/root" },
83
+ "targetRoot": { "$ref": "#/$defs/root" },
84
+ "predicate": { "$ref": "#/$defs/entry" },
85
+ "relation": { "$ref": "#/$defs/entry" },
86
+ "proof": { "$ref": "#/$defs/proof" }
87
+ }
88
+ },
89
+ "registry": {
90
+ "type": "object",
91
+ "additionalProperties": false,
92
+ "required": [
93
+ "schema",
94
+ "rootProtocol",
95
+ "currentCutRoot",
96
+ "predicateRoots",
97
+ "factRoots",
98
+ "supersessionRoots",
99
+ "revocationRoots",
100
+ "legacyProofRoots",
101
+ "temporalBundleRoot",
102
+ "facts",
103
+ "legacyProofs",
104
+ "currentCut",
105
+ "temporalBundle",
106
+ "registryRoot"
107
+ ],
108
+ "properties": {
109
+ "schema": {
110
+ "const": "kungfu.buildchain.compatibility-fact-registry/v1"
111
+ },
112
+ "rootProtocol": { "const": "kungfu.fact-root.canonical/v2" },
113
+ "currentCutRoot": { "$ref": "#/$defs/root" },
114
+ "predicateRoots": {
115
+ "type": "array",
116
+ "items": { "$ref": "#/$defs/root" },
117
+ "uniqueItems": true
118
+ },
119
+ "factRoots": {
120
+ "type": "array",
121
+ "items": { "$ref": "#/$defs/root" },
122
+ "uniqueItems": true
123
+ },
124
+ "supersessionRoots": {
125
+ "type": "array",
126
+ "items": { "$ref": "#/$defs/root" },
127
+ "uniqueItems": true
128
+ },
129
+ "revocationRoots": {
130
+ "type": "array",
131
+ "items": { "$ref": "#/$defs/root" },
132
+ "uniqueItems": true
133
+ },
134
+ "legacyProofRoots": {
135
+ "type": "array",
136
+ "items": { "$ref": "#/$defs/root" },
137
+ "uniqueItems": true
138
+ },
139
+ "temporalBundleRoot": { "$ref": "#/$defs/root" },
140
+ "facts": {
141
+ "type": "array",
142
+ "items": { "$ref": "#/$defs/fact" },
143
+ "minItems": 1
144
+ },
145
+ "legacyProofs": {
146
+ "type": "array",
147
+ "items": { "$ref": "#/$defs/proof" }
148
+ },
149
+ "currentCut": { "type": "object" },
150
+ "temporalBundle": { "type": "object" },
151
+ "registryRoot": { "$ref": "#/$defs/root" }
152
+ }
153
+ },
154
+ "query": {
155
+ "type": "object",
156
+ "additionalProperties": false,
157
+ "required": [
158
+ "schema",
159
+ "queryId",
160
+ "operation",
161
+ "predicateRoot",
162
+ "sourceRoot",
163
+ "targetRoot",
164
+ "cutRoot",
165
+ "relationPathRoots",
166
+ "requiredAuthorityRoot",
167
+ "maxDepth"
168
+ ],
169
+ "properties": {
170
+ "schema": { "const": "kungfu.fact.temporal-path-query/v1" },
171
+ "queryId": { "type": "string", "minLength": 1 },
172
+ "operation": { "const": "accept-contract-lock" },
173
+ "predicateRoot": { "$ref": "#/$defs/root" },
174
+ "sourceRoot": { "$ref": "#/$defs/root" },
175
+ "targetRoot": { "$ref": "#/$defs/root" },
176
+ "cutRoot": { "$ref": "#/$defs/root" },
177
+ "relationPathRoots": {
178
+ "type": "array",
179
+ "items": { "$ref": "#/$defs/root" },
180
+ "uniqueItems": true
181
+ },
182
+ "requiredAuthorityRoot": { "$ref": "#/$defs/root" },
183
+ "maxDepth": { "type": "integer", "minimum": 1, "maximum": 32 }
184
+ }
185
+ },
186
+ "receiptEntry": {
187
+ "type": "object",
188
+ "additionalProperties": false,
189
+ "required": ["root", "record"],
190
+ "properties": {
191
+ "root": { "$ref": "#/$defs/root" },
192
+ "record": {
193
+ "type": "object",
194
+ "additionalProperties": false,
195
+ "required": [
196
+ "schema",
197
+ "queryRoot",
198
+ "status",
199
+ "failureCode",
200
+ "cutRoot",
201
+ "relationPathRoots",
202
+ "authorityProofRoots",
203
+ "omissionRoots"
204
+ ],
205
+ "properties": {
206
+ "schema": { "const": "kungfu.fact.temporal-path-receipt/v1" },
207
+ "queryRoot": { "$ref": "#/$defs/root" },
208
+ "status": { "enum": ["accepted", "rejected"] },
209
+ "failureCode": { "type": "string" },
210
+ "cutRoot": { "$ref": "#/$defs/root" },
211
+ "relationPathRoots": {
212
+ "type": "array",
213
+ "items": { "$ref": "#/$defs/root" }
214
+ },
215
+ "authorityProofRoots": {
216
+ "type": "array",
217
+ "items": { "$ref": "#/$defs/root" },
218
+ "uniqueItems": true
219
+ },
220
+ "omissionRoots": {
221
+ "type": "array",
222
+ "items": { "$ref": "#/$defs/root" },
223
+ "uniqueItems": true
224
+ }
225
+ }
226
+ }
227
+ }
228
+ }
229
+ }
230
+ }