@kungfu-tech/buildchain 3.0.2-alpha.0 → 3.0.2-alpha.10

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 (83) hide show
  1. package/README.md +4 -2
  2. package/actions/github-artifact-attestation/README.md +10 -0
  3. package/actions/promote-buildchain-ref/README.md +7 -0
  4. package/bin/buildchain.mjs +5 -0
  5. package/bin/internal/trust-release-cli.mjs +74 -3
  6. package/contracts/auditable-demo-media-profiles-v1.json +168 -0
  7. package/contracts/evidence/auditable-demo-web-delivery-v1.json +103 -0
  8. package/contracts/fixtures/auditable-demo-web-delivery-v1/complete-transcript.txt +2 -0
  9. package/contracts/fixtures/auditable-demo-web-delivery-v1/public-projection.json +16 -0
  10. package/contracts/fixtures/auditable-demo-web-delivery-v1/scene.json +12 -0
  11. package/dist/site/artifact-schemas.json +5 -1
  12. package/dist/site/buildchain-contract.json +133 -34
  13. package/dist/site/buildchain-site.json +159 -40
  14. package/dist/site/capability-registry.json +14 -13
  15. package/dist/site/cli-registry.json +12 -0
  16. package/dist/site/controller-registry.json +72 -4
  17. package/dist/site/kfd-claims.json +338 -20
  18. package/dist/site/kfd-upstream-aggregate.json +1 -1
  19. package/dist/site/manual-registry.json +24 -9
  20. package/dist/site/node-api-registry.json +89 -11
  21. package/dist/site/page-registry.json +135 -25
  22. package/dist/site/public-surface-audit.json +203 -21
  23. package/dist/site/publication-authority-registry.json +72 -2
  24. package/dist/site/publication-registry.json +4 -4
  25. package/dist/site/release-model.json +2 -1
  26. package/dist/site/release-passport-check-manifest.json +1 -0
  27. package/dist/site/release-provenance.json +6 -0
  28. package/dist/site/schemas/release-passport-v1.schema.json +6 -0
  29. package/dist/site/site-manifest.json +21 -13
  30. package/dist/site/workflow-registry.json +167 -13
  31. package/docs/MAP.md +5 -1
  32. package/docs/auditable-demo.md +55 -3
  33. package/docs/binary-distribution.md +7 -0
  34. package/docs/cli.md +9 -0
  35. package/docs/dev-alpha-candidate-patrol.md +111 -0
  36. package/docs/github-artifact-attestation.md +219 -0
  37. package/docs/release-governance.md +32 -0
  38. package/docs/release-passport.md +13 -0
  39. package/docs/reusable-build-surface.md +83 -61
  40. package/docs/runtime-train-validation.md +21 -0
  41. package/docs/versioning.md +1 -0
  42. package/package.json +8 -1
  43. package/packages/core/artifact-signing-result.js +228 -0
  44. package/packages/core/artifact-signing.js +412 -0
  45. package/packages/core/buildchain-config.js +58 -0
  46. package/packages/core/buildchain-contract.js +14 -0
  47. package/packages/core/buildchain-kfd-claims.js +5 -0
  48. package/packages/core/buildchain-publication-authority.js +3 -0
  49. package/packages/core/cache-evidence.js +288 -0
  50. package/packages/core/channel-candidate.js +186 -0
  51. package/packages/core/detached-artifact-signature.js +121 -0
  52. package/packages/core/diagnostics.js +276 -10
  53. package/packages/core/github-artifact-attestation.js +642 -0
  54. package/packages/core/github-governance-authority.js +77 -16
  55. package/packages/core/index.js +62 -0
  56. package/packages/core/publication-authority.js +1 -1
  57. package/packages/core/release-passport-contract.js +2 -0
  58. package/packages/core/release-passport.js +60 -3
  59. package/scripts/auditable-demo.mjs +520 -28
  60. package/scripts/build-contract-core.mjs +31 -0
  61. package/scripts/buildchain-channel-router.mjs +8 -2
  62. package/scripts/check-inventory.mjs +9 -0
  63. package/scripts/create-github-artifact-attestation-policy.mjs +62 -0
  64. package/scripts/dev-alpha-candidate-patrol.mjs +864 -0
  65. package/scripts/dispatch-artifact-signing-authority.mjs +152 -0
  66. package/scripts/finalize-native-artifact-signing-result.mjs +96 -0
  67. package/scripts/generate-channel-promotion-workflow.mjs +6 -0
  68. package/scripts/generate-site-bundle.mjs +20 -0
  69. package/scripts/import-artifact-signing-results.mjs +76 -0
  70. package/scripts/inspect-artifact-signing-requests.mjs +101 -0
  71. package/scripts/locked-source-checkout.mjs +48 -0
  72. package/scripts/materialize-artifact-signing-request.mjs +66 -0
  73. package/scripts/merge-artifact-signing-results.mjs +76 -0
  74. package/scripts/publish-github-artifact-attestation-evidence.mjs +201 -0
  75. package/scripts/reconcile-github-governance.mjs +158 -25
  76. package/scripts/release-candidate-resolver.mjs +12 -0
  77. package/scripts/release-line-policy.mjs +27 -0
  78. package/scripts/runtime-ref-core.mjs +10 -6
  79. package/scripts/seal-artifact-signing-requests.mjs +368 -0
  80. package/scripts/shifu-gate-profile.mjs +26 -20
  81. package/scripts/sign-detached-artifact-requests.mjs +237 -0
  82. package/scripts/stage-github-artifact-attestation-inputs.mjs +65 -0
  83. package/scripts/verify-artifact-signing-results.mjs +99 -0
@@ -3,11 +3,11 @@
3
3
  "contract": "kungfu-buildchain-public-surface-reverse-audit",
4
4
  "status": "passed",
5
5
  "summary": {
6
- "cliCommandCount": 96,
7
- "workflowCount": 53,
8
- "actionCount": 5,
9
- "sitePageCount": 56,
10
- "docCommandRefCount": 286,
6
+ "cliCommandCount": 97,
7
+ "workflowCount": 57,
8
+ "actionCount": 6,
9
+ "sitePageCount": 59,
10
+ "docCommandRefCount": 291,
11
11
  "failureCount": 0
12
12
  },
13
13
  "enumerated": {
@@ -462,6 +462,11 @@
462
462
  "source": "bin/buildchain.mjs",
463
463
  "usage": "buildchain verify artifact-envelope <file-or-json> [--assessment-time <epoch>]"
464
464
  },
465
+ {
466
+ "id": "verify-github-artifact-attestation",
467
+ "source": "bin/buildchain.mjs",
468
+ "usage": "buildchain verify github-artifact-attestation <artifact>"
469
+ },
465
470
  {
466
471
  "id": "verify-infra-contract-evidence-bundle",
467
472
  "source": "bin/buildchain.mjs",
@@ -502,6 +507,7 @@
502
507
  "adapter-path",
503
508
  "artifact-retention-days",
504
509
  "buildchain-repository",
510
+ "media-profile",
505
511
  "render-media",
506
512
  "renderer-image",
507
513
  "require-trusted-event",
@@ -509,7 +515,7 @@
509
515
  "source-artifact-name",
510
516
  "source-ref"
511
517
  ],
512
- "inputCount": 9,
518
+ "inputCount": 10,
513
519
  "secrets": [],
514
520
  "secretCount": 0,
515
521
  "outputs": [
@@ -522,10 +528,12 @@
522
528
  "media-artifact-id",
523
529
  "media-artifact-name",
524
530
  "media-artifact-url",
531
+ "media-profile",
532
+ "media-qualification-root",
525
533
  "media-root",
526
534
  "source-sha"
527
535
  ],
528
- "outputCount": 11
536
+ "outputCount": 13
529
537
  },
530
538
  {
531
539
  "id": ".binary-release-assets",
@@ -577,6 +585,9 @@
577
585
  "buildchain-contract-lock-path",
578
586
  "buildchain-ref",
579
587
  "buildchain-repository",
588
+ "cache-dependency-lock-root",
589
+ "cache-policy-root",
590
+ "cache-toolchain-root",
580
591
  "cargo-registry-index",
581
592
  "checkout-cache-fallback",
582
593
  "checkout-cache-fetch-attempts",
@@ -593,6 +604,9 @@
593
604
  "expected-artifacts-json",
594
605
  "fail-fast",
595
606
  "gate-profile-aggregate-json",
607
+ "github-artifact-attestation-platform-id",
608
+ "github-artifact-attestation-signer-sha",
609
+ "github-artifact-attestation-subject-path",
596
610
  "install-command",
597
611
  "kfd-agent-hub",
598
612
  "lifecycle-timeout-minutes",
@@ -626,7 +640,7 @@
626
640
  "verify-command",
627
641
  "working-directory"
628
642
  ],
629
- "inputCount": 66,
643
+ "inputCount": 72,
630
644
  "secrets": [
631
645
  "BUILDCHAIN_ARTIFACT_RELAY_S3_DOWNLOAD_ROLE_ARN",
632
646
  "BUILDCHAIN_ARTIFACT_RELAY_S3_ROLE_ARN",
@@ -635,9 +649,10 @@
635
649
  "BUILDCHAIN_MACOS_CERTIFICATE_PASSWORD",
636
650
  "BUILDCHAIN_MACOS_NOTARY_API_ISSUER",
637
651
  "BUILDCHAIN_MACOS_NOTARY_API_KEY_ID",
638
- "BUILDCHAIN_MACOS_NOTARY_API_KEY_P8_BASE64"
652
+ "BUILDCHAIN_MACOS_NOTARY_API_KEY_P8_BASE64",
653
+ "BUILDCHAIN_PROMOTION_TOKEN"
639
654
  ],
640
- "secretCount": 8,
655
+ "secretCount": 9,
641
656
  "outputs": [
642
657
  "artifact-coordinates-json",
643
658
  "build-diagnostics-summary-artifact",
@@ -825,6 +840,9 @@
825
840
  "buildchain-repository",
826
841
  "channel",
827
842
  "dry-run",
843
+ "github-artifact-attestation-environment",
844
+ "github-artifact-attestation-policy-json",
845
+ "github-artifact-attestation-retention-days",
828
846
  "github-governance-receipt-json",
829
847
  "github-release",
830
848
  "github-release-notes",
@@ -898,7 +916,7 @@
898
916
  "target-sha",
899
917
  "trusted-publishing"
900
918
  ],
901
- "inputCount": 85,
919
+ "inputCount": 88,
902
920
  "secrets": [
903
921
  "BUILDCHAIN_ISSUE_APP_ID",
904
922
  "BUILDCHAIN_ISSUE_APP_PRIVATE_KEY",
@@ -921,6 +939,10 @@
921
939
  "controller-receipt-digest",
922
940
  "controller-receipt-json",
923
941
  "controller-receipt-status",
942
+ "github-artifact-attestation-evidence-root",
943
+ "github-artifact-attestation-id",
944
+ "github-artifact-attestation-publication-receipt-digest",
945
+ "github-artifact-attestation-url",
924
946
  "promoted-sha",
925
947
  "publication-capability-digest",
926
948
  "publication-commit-evidence-digest",
@@ -929,7 +951,7 @@
929
951
  "publication-commit-url",
930
952
  "release-candidate-artifact"
931
953
  ],
932
- "outputCount": 15
954
+ "outputCount": 19
933
955
  },
934
956
  {
935
957
  "id": ".release-docker",
@@ -1282,6 +1304,28 @@
1282
1304
  "outputs": [],
1283
1305
  "outputCount": 0
1284
1306
  },
1307
+ {
1308
+ "id": "artifact-signing-authority",
1309
+ "path": ".github/workflows/artifact-signing-authority.yml",
1310
+ "reusable": false,
1311
+ "inputs": [],
1312
+ "inputCount": 0,
1313
+ "secrets": [],
1314
+ "secretCount": 0,
1315
+ "outputs": [],
1316
+ "outputCount": 0
1317
+ },
1318
+ {
1319
+ "id": "auditable-demo-media-profile-qualification",
1320
+ "path": ".github/workflows/auditable-demo-media-profile-qualification.yml",
1321
+ "reusable": false,
1322
+ "inputs": [],
1323
+ "inputCount": 0,
1324
+ "secrets": [],
1325
+ "secretCount": 0,
1326
+ "outputs": [],
1327
+ "outputCount": 0
1328
+ },
1285
1329
  {
1286
1330
  "id": "binary-distribution",
1287
1331
  "path": ".github/workflows/binary-distribution.yml",
@@ -1341,6 +1385,9 @@
1341
1385
  "buildchain-ref",
1342
1386
  "buildchain-repository",
1343
1387
  "buildchain-stable-contract-lock-path",
1388
+ "cache-dependency-lock-root",
1389
+ "cache-policy-root",
1390
+ "cache-toolchain-root",
1344
1391
  "cargo-registry-index",
1345
1392
  "checkout-cache-fallback",
1346
1393
  "checkout-cache-fetch-attempts",
@@ -1357,6 +1404,9 @@
1357
1404
  "expected-artifacts-json",
1358
1405
  "fail-fast",
1359
1406
  "gate-profile-aggregate-json",
1407
+ "github-artifact-attestation-platform-id",
1408
+ "github-artifact-attestation-signer-sha",
1409
+ "github-artifact-attestation-subject-path",
1360
1410
  "install-command",
1361
1411
  "kfd-agent-hub",
1362
1412
  "lifecycle-timeout-minutes",
@@ -1390,7 +1440,7 @@
1390
1440
  "verify-command",
1391
1441
  "working-directory"
1392
1442
  ],
1393
- "inputCount": 69,
1443
+ "inputCount": 75,
1394
1444
  "secrets": [
1395
1445
  "BUILDCHAIN_ARTIFACT_RELAY_S3_DOWNLOAD_ROLE_ARN",
1396
1446
  "BUILDCHAIN_ARTIFACT_RELAY_S3_ROLE_ARN",
@@ -1399,9 +1449,10 @@
1399
1449
  "BUILDCHAIN_MACOS_CERTIFICATE_PASSWORD",
1400
1450
  "BUILDCHAIN_MACOS_NOTARY_API_ISSUER",
1401
1451
  "BUILDCHAIN_MACOS_NOTARY_API_KEY_ID",
1402
- "BUILDCHAIN_MACOS_NOTARY_API_KEY_P8_BASE64"
1452
+ "BUILDCHAIN_MACOS_NOTARY_API_KEY_P8_BASE64",
1453
+ "BUILDCHAIN_PROMOTION_TOKEN"
1403
1454
  ],
1404
- "secretCount": 8,
1455
+ "secretCount": 9,
1405
1456
  "outputs": [
1406
1457
  "artifact-coordinates-json",
1407
1458
  "build-diagnostics-summary-artifact",
@@ -1602,6 +1653,41 @@
1602
1653
  ],
1603
1654
  "outputCount": 7
1604
1655
  },
1656
+ {
1657
+ "id": "dev-alpha-candidate-patrol",
1658
+ "path": ".github/workflows/dev-alpha-candidate-patrol.yml",
1659
+ "reusable": true,
1660
+ "inputs": [
1661
+ "alpha-workflow-path",
1662
+ "buildchain-ref",
1663
+ "buildchain-repository",
1664
+ "create-pull-request",
1665
+ "dev-workflow-path",
1666
+ "dry-run",
1667
+ "max-age-seconds",
1668
+ "pull-request-body-prefix",
1669
+ "settlement-authorized",
1670
+ "source-branch",
1671
+ "target-branch"
1672
+ ],
1673
+ "inputCount": 11,
1674
+ "secrets": [
1675
+ "promotion-token"
1676
+ ],
1677
+ "secretCount": 1,
1678
+ "outputs": [
1679
+ "active-candidate-pr",
1680
+ "controller-state",
1681
+ "eligible",
1682
+ "next-candidate-sha",
1683
+ "promotion-pr",
1684
+ "result-path",
1685
+ "selected-sha",
1686
+ "settlement-action",
1687
+ "source-lock-ref"
1688
+ ],
1689
+ "outputCount": 9
1690
+ },
1605
1691
  {
1606
1692
  "id": "dev-merge-queue-governance",
1607
1693
  "path": ".github/workflows/dev-merge-queue-governance.yml",
@@ -1647,6 +1733,37 @@
1647
1733
  ],
1648
1734
  "outputCount": 6
1649
1735
  },
1736
+ {
1737
+ "id": "github-artifact-attestation",
1738
+ "path": ".github/workflows/github-artifact-attestation.yml",
1739
+ "reusable": true,
1740
+ "inputs": [
1741
+ "buildchain-ref",
1742
+ "environment",
1743
+ "evidence-artifact-name",
1744
+ "evidence-run-id",
1745
+ "platform-manifest-artifact-name",
1746
+ "platform-manifest-relative-path",
1747
+ "policy-json",
1748
+ "release-passport-artifact-name",
1749
+ "release-passport-relative-path",
1750
+ "retention-days",
1751
+ "source-sha",
1752
+ "subject-artifact-name",
1753
+ "subject-relative-path"
1754
+ ],
1755
+ "inputCount": 13,
1756
+ "secrets": [],
1757
+ "secretCount": 0,
1758
+ "outputs": [
1759
+ "attestation-id",
1760
+ "attestation-url",
1761
+ "bundle-digest",
1762
+ "evidence-artifact-name",
1763
+ "evidence-root"
1764
+ ],
1765
+ "outputCount": 5
1766
+ },
1650
1767
  {
1651
1768
  "id": "github-governance-audit",
1652
1769
  "path": ".github/workflows/github-governance-audit.yml",
@@ -1956,6 +2073,9 @@
1956
2073
  "buildchain-stable-contract-lock-path",
1957
2074
  "channel",
1958
2075
  "dry-run",
2076
+ "github-artifact-attestation-environment",
2077
+ "github-artifact-attestation-policy-json",
2078
+ "github-artifact-attestation-retention-days",
1959
2079
  "github-governance-receipt-json",
1960
2080
  "github-release",
1961
2081
  "github-release-notes",
@@ -2018,7 +2138,7 @@
2018
2138
  "target-sha",
2019
2139
  "trusted-publishing"
2020
2140
  ],
2021
- "inputCount": 77,
2141
+ "inputCount": 80,
2022
2142
  "secrets": [
2023
2143
  "BUILDCHAIN_ISSUE_APP_ID",
2024
2144
  "BUILDCHAIN_ISSUE_APP_PRIVATE_KEY",
@@ -2042,6 +2162,10 @@
2042
2162
  "controller-receipt-digest",
2043
2163
  "controller-receipt-json",
2044
2164
  "controller-receipt-status",
2165
+ "github-artifact-attestation-evidence-root",
2166
+ "github-artifact-attestation-id",
2167
+ "github-artifact-attestation-publication-receipt-digest",
2168
+ "github-artifact-attestation-url",
2045
2169
  "promoted-sha",
2046
2170
  "promotion-contract-lock-digest",
2047
2171
  "promotion-contract-lock-path",
@@ -2061,7 +2185,7 @@
2061
2185
  "publication-commit-url",
2062
2186
  "release-candidate-artifact"
2063
2187
  ],
2064
- "outputCount": 27
2188
+ "outputCount": 31
2065
2189
  },
2066
2190
  {
2067
2191
  "id": "release-governance-reconcile",
@@ -2225,6 +2349,26 @@
2225
2349
  }
2226
2350
  ],
2227
2351
  "actionInputs": [
2352
+ {
2353
+ "id": "github-artifact-attestation",
2354
+ "path": "actions/github-artifact-attestation/action.yml",
2355
+ "inputs": [
2356
+ "attestation-id",
2357
+ "attestation-url",
2358
+ "bundle-path",
2359
+ "expected-buildchain-ref",
2360
+ "expected-caller-repository",
2361
+ "expected-source-sha",
2362
+ "mode",
2363
+ "output-dir",
2364
+ "platform-manifest-path",
2365
+ "policy-json",
2366
+ "preparation-json",
2367
+ "release-passport-path",
2368
+ "subject-path"
2369
+ ],
2370
+ "inputCount": 13
2371
+ },
2228
2372
  {
2229
2373
  "id": "macos-credential-island",
2230
2374
  "path": "actions/macos-credential-island/action.yml",
@@ -2297,6 +2441,7 @@
2297
2441
  "release-passport",
2298
2442
  "release-passport-build-summary-path",
2299
2443
  "release-passport-buildchain-self-kfd",
2444
+ "release-passport-github-artifact-attestation-policy-jsons",
2300
2445
  "release-passport-impact-json",
2301
2446
  "release-passport-invariant-passport-command",
2302
2447
  "release-passport-invariant-passport-jsons",
@@ -2323,7 +2468,7 @@
2323
2468
  "transaction-state-path",
2324
2469
  "verification-command"
2325
2470
  ],
2326
- "inputCount": 66
2471
+ "inputCount": 67
2327
2472
  },
2328
2473
  {
2329
2474
  "id": "report-buildchain-issue",
@@ -2415,6 +2560,10 @@
2415
2560
  }
2416
2561
  ],
2417
2562
  "sitePages": [
2563
+ {
2564
+ "id": "action:github-artifact-attestation",
2565
+ "category": "action"
2566
+ },
2418
2567
  {
2419
2568
  "id": "action:macos-credential-island",
2420
2569
  "category": "action"
@@ -2515,6 +2664,14 @@
2515
2664
  "id": "manual:controller-evidence",
2516
2665
  "category": "manual"
2517
2666
  },
2667
+ {
2668
+ "id": "manual:dev-alpha-candidate-patrol",
2669
+ "category": "manual"
2670
+ },
2671
+ {
2672
+ "id": "manual:github-artifact-attestation",
2673
+ "category": "manual"
2674
+ },
2518
2675
  {
2519
2676
  "id": "manual:github-governance-authority",
2520
2677
  "category": "manual"
@@ -2871,6 +3028,11 @@
2871
3028
  "path": "docs/cli.md",
2872
3029
  "command": "buildchain collect github-release"
2873
3030
  },
3031
+ {
3032
+ "id": "collect-github-release",
3033
+ "path": "docs/github-artifact-attestation.md",
3034
+ "command": "buildchain collect github-release"
3035
+ },
2874
3036
  {
2875
3037
  "id": "collect-github-release",
2876
3038
  "path": "docs/kfd-agent-hub.md",
@@ -2886,6 +3048,16 @@
2886
3048
  "path": "docs/release-passport.md",
2887
3049
  "command": "buildchain collect github-release"
2888
3050
  },
3051
+ {
3052
+ "id": "create",
3053
+ "path": "docs/cli.md",
3054
+ "command": "buildchain create github-artifact-attestation-policy"
3055
+ },
3056
+ {
3057
+ "id": "create",
3058
+ "path": "docs/github-artifact-attestation.md",
3059
+ "command": "buildchain create github-artifact-attestation-policy"
3060
+ },
2889
3061
  {
2890
3062
  "id": "dev",
2891
3063
  "path": "docs/cli.md",
@@ -3966,6 +4138,16 @@
3966
4138
  "path": "docs/release-passport.md",
3967
4139
  "command": "buildchain verify artifact"
3968
4140
  },
4141
+ {
4142
+ "id": "verify-github-artifact-attestation",
4143
+ "path": "docs/cli.md",
4144
+ "command": "buildchain verify github-artifact-attestation"
4145
+ },
4146
+ {
4147
+ "id": "verify-github-artifact-attestation",
4148
+ "path": "docs/github-artifact-attestation.md",
4149
+ "command": "buildchain verify github-artifact-attestation"
4150
+ },
3969
4151
  {
3970
4152
  "id": "verify-infra-contract-evidence-bundle",
3971
4153
  "path": "docs/cli.md",
@@ -4077,9 +4259,9 @@
4077
4259
  "cliRegistryPath": "dist/site/cli-registry.json",
4078
4260
  "workflowRegistryPath": "dist/site/workflow-registry.json",
4079
4261
  "pageRegistryPath": "dist/site/page-registry.json",
4080
- "cliRegistryDigest": "a1c10dd6977d85a7bc793054baa549108b46d6d18098de109733e01b9151a024",
4081
- "workflowRegistryDigest": "97e21bf5f4332b830cbaffecc3c1891d9fa1036984c7093e77daac78dc8e3221",
4082
- "pageRegistryDigest": "d11a4b7ed807d075b52fedb80c85bfa8f13431f5aa86dae38fc00d3f428f0c6e"
4262
+ "cliRegistryDigest": "0be723caa314a36a1a36b03522527eb5b13e9b741e6566ff7f6ee06958df02ca",
4263
+ "workflowRegistryDigest": "01792ad09bcdcd3c12d018e6ee9613a09b5a1b87525d6f643a18f963f0d973a1",
4264
+ "pageRegistryDigest": "56583b14046754bc0c02c512602c4e1c4e9ecdf68e6e639fcab8d550c3e082b4"
4083
4265
  },
4084
4266
  "comparison": {
4085
4267
  "missingCliRegistry": [],
@@ -167,6 +167,19 @@
167
167
  "runnerPolicy": "unqualified",
168
168
  "notes": ""
169
169
  },
170
+ {
171
+ "workflowPath": ".github/workflows/artifact-signing-authority.yml",
172
+ "authorityClass": "evidence-publication",
173
+ "publicationCapable": false,
174
+ "capabilityIds": [],
175
+ "credentialMode": "none",
176
+ "publisherWorkflowMode": "fixed",
177
+ "publisherWorkflowPath": ".github/workflows/artifact-signing-authority.yml",
178
+ "environment": "",
179
+ "environmentMode": "fixed",
180
+ "runnerPolicy": "unqualified",
181
+ "notes": ""
182
+ },
170
183
  {
171
184
  "workflowPath": ".github/workflows/binary-distribution.yml",
172
185
  "authorityClass": "evidence-publication",
@@ -310,6 +323,19 @@
310
323
  "runnerPolicy": "unqualified",
311
324
  "notes": ""
312
325
  },
326
+ {
327
+ "workflowPath": ".github/workflows/dev-alpha-candidate-patrol.yml",
328
+ "authorityClass": "governance-write",
329
+ "publicationCapable": false,
330
+ "capabilityIds": [],
331
+ "credentialMode": "none",
332
+ "publisherWorkflowMode": "fixed",
333
+ "publisherWorkflowPath": ".github/workflows/dev-alpha-candidate-patrol.yml",
334
+ "environment": "",
335
+ "environmentMode": "fixed",
336
+ "runnerPolicy": "unqualified",
337
+ "notes": ""
338
+ },
313
339
  {
314
340
  "workflowPath": ".github/workflows/dev-merge-queue-governance.yml",
315
341
  "authorityClass": "governance-write",
@@ -336,6 +362,21 @@
336
362
  "runnerPolicy": "unqualified",
337
363
  "notes": ""
338
364
  },
365
+ {
366
+ "workflowPath": ".github/workflows/github-artifact-attestation.yml",
367
+ "authorityClass": "evidence-publication",
368
+ "publicationCapable": true,
369
+ "capabilityIds": [
370
+ "github-artifact-attestation"
371
+ ],
372
+ "credentialMode": "oidc",
373
+ "publisherWorkflowMode": "caller-bound",
374
+ "publisherWorkflowPath": ".github/workflows/github-artifact-attestation.yml",
375
+ "environment": "consumer-defined",
376
+ "environmentMode": "caller-bound",
377
+ "runnerPolicy": "qualified-measured",
378
+ "notes": ""
379
+ },
339
380
  {
340
381
  "workflowPath": ".github/workflows/github-governance-audit.yml",
341
382
  "authorityClass": "governance-write",
@@ -575,7 +616,8 @@
575
616
  "path": ".github/workflows/.release-candidate-promote.yml",
576
617
  "signals": [
577
618
  "write-permission",
578
- "oidc"
619
+ "oidc",
620
+ "environment"
579
621
  ],
580
622
  "classified": true
581
623
  },
@@ -648,6 +690,18 @@
648
690
  ],
649
691
  "classified": true
650
692
  },
693
+ {
694
+ "path": ".github/workflows/artifact-signing-authority.yml",
695
+ "signals": [
696
+ "environment"
697
+ ],
698
+ "classified": true
699
+ },
700
+ {
701
+ "path": ".github/workflows/auditable-demo-media-profile-qualification.yml",
702
+ "signals": [],
703
+ "classified": false
704
+ },
651
705
  {
652
706
  "path": ".github/workflows/binary-distribution.yml",
653
707
  "signals": [
@@ -745,6 +799,13 @@
745
799
  "signals": [],
746
800
  "classified": false
747
801
  },
802
+ {
803
+ "path": ".github/workflows/dev-alpha-candidate-patrol.yml",
804
+ "signals": [
805
+ "write-permission"
806
+ ],
807
+ "classified": true
808
+ },
748
809
  {
749
810
  "path": ".github/workflows/dev-merge-queue-governance.yml",
750
811
  "signals": [],
@@ -757,6 +818,15 @@
757
818
  ],
758
819
  "classified": true
759
820
  },
821
+ {
822
+ "path": ".github/workflows/github-artifact-attestation.yml",
823
+ "signals": [
824
+ "write-permission",
825
+ "oidc",
826
+ "environment"
827
+ ],
828
+ "classified": true
829
+ },
760
830
  {
761
831
  "path": ".github/workflows/github-governance-audit.yml",
762
832
  "signals": [
@@ -888,5 +958,5 @@
888
958
  "classified": false
889
959
  }
890
960
  ],
891
- "registryDigest": "cb18522c1957f0cb2e03c525847602a6163d3b276c106a8bce5b8028d8b9a011"
961
+ "registryDigest": "0f4705fb7b2afcb72e9136dac44eac7fc47d9440330aa3c72a8ae8bd8f3339c3"
892
962
  }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "contract": "kungfu-buildchain-publication-release-registry",
4
- "generatedAt": "2026-07-26T15:42:26.745Z",
5
- "publishedAt": "2026-07-26T15:42:26.745Z",
4
+ "generatedAt": "2026-07-28T18:18:43.092Z",
5
+ "publishedAt": "2026-07-28T18:18:43.092Z",
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": "ed47430f8cadfc327c52004aae9e5ef62aaa6e37",
22
+ "sourceRevision": "6d22340e3c2ab0202ce8d830cf1f85400ada5ae7",
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": "3.0.2-alpha.0",
35
+ "version": "3.0.2-alpha.10",
36
36
  "versionSource": "package.json#version"
37
37
  },
38
38
  "sourceKind": "package-site-bundle",
@@ -45,7 +45,8 @@
45
45
  "evidenceAssets": [
46
46
  "publish evidence JSON",
47
47
  "buildchain.release.json",
48
- "release passport assets"
48
+ "release passport assets",
49
+ "GitHub artifact attestation Sigstore bundle and Buildchain evidence JSON"
49
50
  ],
50
51
  "owner": "promote-buildchain-ref"
51
52
  },
@@ -43,6 +43,7 @@
43
43
  "distTagPromotion",
44
44
  "controllerReceipts",
45
45
  "kfdSupport",
46
+ "githubArtifactAttestations",
46
47
  "artifacts",
47
48
  "evidence",
48
49
  "recovery"
@@ -14,9 +14,15 @@
14
14
  "./core": "./packages/core/index.js",
15
15
  "./artifact-passport": "./packages/core/artifact-passport.js",
16
16
  "./artifact-verification-envelope": "./packages/core/artifact-verification-envelope.js",
17
+ "./github-artifact-attestation": "./packages/core/github-artifact-attestation.js",
18
+ "./artifact-signing": "./packages/core/artifact-signing.js",
19
+ "./artifact-signing-result": "./packages/core/artifact-signing-result.js",
20
+ "./detached-artifact-signature": "./packages/core/detached-artifact-signature.js",
17
21
  "./anchored-version-material": "./packages/core/anchored-version-material.js",
18
22
  "./buildchain-contract": "./packages/core/buildchain-contract.js",
19
23
  "./candidate-timeline": "./packages/core/candidate-timeline.js",
24
+ "./channel-candidate": "./packages/core/channel-candidate.js",
25
+ "./cache-evidence": "./packages/core/cache-evidence.js",
20
26
  "./controller-evidence": "./packages/core/controller-evidence.js",
21
27
  "./diagnostics": "./packages/core/diagnostics.js",
22
28
  "./homebrew": "./packages/core/homebrew.js",
@@ -187,6 +187,12 @@
187
187
  "type": "object"
188
188
  }
189
189
  },
190
+ "githubArtifactAttestations": {
191
+ "type": "array",
192
+ "items": {
193
+ "type": "object"
194
+ }
195
+ },
190
196
  "kfd-1": {
191
197
  "type": "object"
192
198
  },