@kungfu-tech/buildchain 3.0.2 → 3.0.3-alpha.1
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/AGENTS.md +1 -1
- package/CONTRIBUTING.md +1 -1
- package/README.md +27 -1
- package/actions/promote-buildchain-ref/README.md +90 -19
- package/actions/report-buildchain-issue/README.md +20 -2
- package/actions/run-lifecycle/README.md +5 -0
- package/actions/validate-config/README.md +19 -1
- package/bin/buildchain.mjs +56 -2
- package/bin/internal/command-registry.mjs +82 -0
- package/bin/internal/trust-release-cli.mjs +1 -0
- package/contracts/auditable-demo-media-profiles-v1.json +116 -1
- package/contracts/buildchain-v2-residuals-v1.json +146 -0
- package/contracts/evidence/auditable-demo-responsive-web-delivery-v1.json +143 -0
- package/contracts/evidence/auditable-demo-web-delivery-v1.json +7 -3
- package/contracts/fixtures/auditable-demo-responsive-web-delivery-v1/complete-transcript.txt +2 -0
- package/contracts/fixtures/auditable-demo-responsive-web-delivery-v1/public-projection.json +16 -0
- package/contracts/fixtures/auditable-demo-responsive-web-delivery-v1/scene.json +12 -0
- package/dist/site/buildchain-contract.json +188 -46
- package/dist/site/buildchain-site.json +181 -90
- package/dist/site/capability-registry.json +5 -5
- package/dist/site/cli-registry.json +860 -98
- package/dist/site/controller-registry.json +118 -5
- package/dist/site/kfd-claims.json +233 -19
- package/dist/site/kfd-upstream-aggregate.json +1 -1
- package/dist/site/manual-registry.json +20 -20
- package/dist/site/node-api-registry.json +374 -59
- package/dist/site/page-registry.json +156 -65
- package/dist/site/public-surface-audit.json +231 -22
- package/dist/site/publication-registry.json +4 -4
- package/dist/site/release-provenance.json +3 -0
- package/dist/site/site-manifest.json +24 -24
- package/dist/site/workflow-registry.json +575 -79
- package/docs/MAP.md +22 -4
- package/docs/auditable-demo.md +54 -13
- package/docs/aws-us-elastic-runner-burst-plane.md +381 -0
- package/docs/cli.md +119 -12
- package/docs/consumer-issue-reporting.md +20 -2
- package/docs/dev-alpha-candidate-patrol.md +24 -10
- package/docs/github-governance-authority.md +24 -31
- package/docs/lifecycle-protocol.md +20 -2
- package/docs/migration-inventory.md +24 -5
- package/docs/observed-evidence-patrol.md +28 -12
- package/docs/ownership.md +19 -1
- package/docs/publication-artifacts.md +158 -18
- package/docs/publication-authority.md +4 -4
- package/docs/publish-transaction.md +78 -31
- package/docs/release-candidate.md +24 -0
- package/docs/release-flow.md +50 -32
- package/docs/release-governance.md +39 -32
- package/docs/release-passport.md +4 -0
- package/docs/release-propagation.md +57 -12
- package/docs/reusable-build-surface.md +218 -90
- package/docs/runtime-train-validation.md +20 -2
- package/docs/shifu-gate-profiles.md +7 -1
- package/docs/stable-candidate-patrol.md +6 -6
- package/docs/toolkit-observability.md +22 -0
- package/docs/versioning.md +46 -24
- package/docs/web-surface-deployments.md +82 -1
- package/package.json +7 -5
- package/packages/core/README.md +60 -4
- package/packages/core/artifact-signing.js +1 -0
- package/packages/core/buildchain-contract.js +9 -4
- package/packages/core/cache-evidence.js +1 -0
- package/packages/core/controller-evidence.js +2 -0
- package/packages/core/diagnostics.js +105 -30
- package/packages/core/github-governance-authority.js +25 -17
- package/packages/core/index.js +40 -0
- package/packages/core/paper.js +3226 -0
- package/packages/core/public-surface-audit.js +3 -0
- package/packages/core/publication-artifact.js +1 -6
- package/packages/core/publication-authority.js +1 -0
- package/packages/core/publication-control-plane-audit.js +28 -0
- package/packages/core/publication-reproducibility.js +947 -0
- package/packages/core/publication-sealed-bundle.js +190 -0
- package/packages/core/publish-transaction.js +147 -17
- package/packages/core/release-candidate.js +234 -0
- package/packages/core/release-passport.js +519 -228
- package/packages/core/release-propagation.js +175 -1
- package/packages/core/stable-release-gate.js +4 -1
- package/scripts/artifact-signing-delegation.mjs +268 -0
- package/scripts/audit-github-governance.mjs +32 -13
- package/scripts/audit-publication-control-plane.mjs +17 -8
- package/scripts/auditable-demo.mjs +266 -7
- package/scripts/aws-codebuild-toolchain.mjs +285 -0
- package/scripts/aws-macos-jit-core.mjs +378 -0
- package/scripts/aws-macos-jit.mjs +123 -0
- package/scripts/aws-runner-burst-core.mjs +248 -0
- package/scripts/aws-runner-burst.mjs +79 -0
- package/scripts/aws-windows-jit-core.mjs +374 -0
- package/scripts/aws-windows-jit.mjs +121 -0
- package/scripts/build-contract-core.mjs +69 -6
- package/scripts/build-standalone-binary.mjs +23 -0
- package/scripts/buildchain-contract-lock.mjs +1 -1
- package/scripts/buildchain-patrol.mjs +1 -1
- package/scripts/check-internal-architecture.mjs +69 -2
- package/scripts/check-inventory.mjs +70 -2
- package/scripts/check-javascript-syntax.mjs +31 -0
- package/scripts/check-maintainability.mjs +371 -0
- package/scripts/compiler-cache-evidence.mjs +221 -0
- package/scripts/dev-alpha-candidate-patrol.mjs +288 -43
- package/scripts/dispatch-artifact-signing-authority.mjs +7 -1
- package/scripts/finalize-native-artifact-signing-result.mjs +185 -31
- package/scripts/gate-profile-core.mjs +6 -1
- package/scripts/generate-channel-promotion-workflow.mjs +3 -12
- package/scripts/generate-release-candidate-passport.mjs +4 -0
- package/scripts/generate-site-bundle.mjs +84 -18
- package/scripts/import-artifact-signing-results.mjs +64 -5
- package/scripts/inspect-artifact-signing-requests.mjs +52 -14
- package/scripts/maintainability-metrics.mjs +339 -0
- package/scripts/npm-publish-transaction.mjs +57 -6
- package/scripts/observed-evidence.mjs +151 -33
- package/scripts/paper.mjs +645 -0
- package/scripts/promotion-channel-router.mjs +16 -4
- package/scripts/publication-reproducibility.mjs +62 -0
- package/scripts/reconcile-github-governance.mjs +8 -1
- package/scripts/release-propagation.mjs +39 -0
- package/scripts/resolve-artifact-signing-upload-route.mjs +55 -0
- package/scripts/resolve-build-contract.mjs +6 -0
- package/scripts/route-offline-runners.mjs +236 -0
- package/scripts/run-candidate-body-prefix-renderer.mjs +187 -0
- package/scripts/run-lifecycle-core.mjs +62 -1
- package/scripts/runtime-ref-core.mjs +36 -4
- package/scripts/seal-artifact-signing-requests.mjs +64 -12
- package/scripts/stable-candidate-qualification.mjs +50 -0
- package/scripts/verify-artifact-signing-results.mjs +26 -1
- package/scripts/web-surface-core.mjs +272 -86
- package/scripts/web-surface-production-decision.mjs +19 -3
|
@@ -645,27 +645,84 @@ function observedMetric(unit, value, source, evidenceRoot) {
|
|
|
645
645
|
};
|
|
646
646
|
}
|
|
647
647
|
|
|
648
|
-
function
|
|
649
|
-
|
|
648
|
+
function numericTotal(value) {
|
|
649
|
+
if (typeof value === "number" && Number.isFinite(value)) return value;
|
|
650
|
+
if (value && typeof value === "object") {
|
|
651
|
+
return Object.values(value).reduce((sum, entry) => sum + numericTotal(entry), 0);
|
|
652
|
+
}
|
|
653
|
+
return 0;
|
|
650
654
|
}
|
|
651
655
|
|
|
652
|
-
function
|
|
656
|
+
function cacheStatsCount(stats, names) {
|
|
657
|
+
return names.reduce((sum, name) => sum + numericTotal(stats?.[name]), 0);
|
|
658
|
+
}
|
|
659
|
+
|
|
660
|
+
function compilerCacheObservation(compilerCaches, compilerCachePreparation) {
|
|
661
|
+
const preparationValid =
|
|
662
|
+
compilerCachePreparation?.contract ===
|
|
663
|
+
"kungfu-buildchain-compiler-cache-preparation" &&
|
|
664
|
+
compilerCachePreparation?.provider === "sccache" &&
|
|
665
|
+
compilerCachePreparation?.status === "prepared" &&
|
|
666
|
+
compilerCachePreparation?.action?.statsReset === true &&
|
|
667
|
+
/^sha256:[0-9a-f]{64}$/.test(compilerCachePreparation?.root || "");
|
|
668
|
+
const sccache = compilerCaches?.sccache;
|
|
669
|
+
if (preparationValid && sccache?.available && sccache.stats) {
|
|
670
|
+
const stats = sccache.stats.stats || sccache.stats;
|
|
671
|
+
return {
|
|
672
|
+
provider: "sccache",
|
|
673
|
+
producer: "sccache",
|
|
674
|
+
source: "sccache-current-run-stats",
|
|
675
|
+
stats,
|
|
676
|
+
hits: cacheStatsCount(stats, [
|
|
677
|
+
"cache_hits",
|
|
678
|
+
"cache_hit",
|
|
679
|
+
"cache_hits_count",
|
|
680
|
+
"cache_hit_count",
|
|
681
|
+
]),
|
|
682
|
+
misses: cacheStatsCount(stats, [
|
|
683
|
+
"cache_misses",
|
|
684
|
+
"cache_miss",
|
|
685
|
+
"cache_misses_count",
|
|
686
|
+
"cache_miss_count",
|
|
687
|
+
]),
|
|
688
|
+
};
|
|
689
|
+
}
|
|
653
690
|
const logStats = compilerCaches?.ccache?.logStats;
|
|
654
|
-
if (
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
691
|
+
if (logStats?.available && logStats.stats) {
|
|
692
|
+
return {
|
|
693
|
+
provider: "ccache",
|
|
694
|
+
producer: "ccache",
|
|
695
|
+
source: "ccache-current-run-stats-log",
|
|
696
|
+
stats: logStats.stats,
|
|
697
|
+
hits: cacheStatsCount(logStats.stats, [
|
|
698
|
+
"direct_cache_hit",
|
|
699
|
+
"preprocessed_cache_hit",
|
|
700
|
+
]),
|
|
701
|
+
misses: cacheStatsCount(logStats.stats, ["cache_miss"]),
|
|
702
|
+
};
|
|
703
|
+
}
|
|
704
|
+
return {
|
|
705
|
+
provider: sccache?.available ? "sccache" : "compiler-cache",
|
|
706
|
+
producer: "unavailable",
|
|
707
|
+
source: sccache?.available ? "sccache-cumulative-stats" : "compiler-cache-diagnostics",
|
|
708
|
+
stats: undefined,
|
|
709
|
+
hits: 0,
|
|
710
|
+
misses: 0,
|
|
711
|
+
};
|
|
712
|
+
}
|
|
713
|
+
|
|
714
|
+
function compilerCacheOutcome(observation) {
|
|
715
|
+
if (!observation?.stats) return "unavailable";
|
|
716
|
+
if (observation.hits > 0 && observation.misses > 0) return "partial";
|
|
717
|
+
if (observation.hits > 0) return "hit";
|
|
718
|
+
if (observation.misses > 0) return "miss";
|
|
663
719
|
return "bypassed";
|
|
664
720
|
}
|
|
665
721
|
|
|
666
|
-
function createStructuredCacheEvidence({
|
|
722
|
+
export function createStructuredCacheEvidence({
|
|
667
723
|
sourceCheckout,
|
|
668
724
|
compilerCaches,
|
|
725
|
+
compilerCachePreparation,
|
|
669
726
|
platform,
|
|
670
727
|
env = process.env,
|
|
671
728
|
}) {
|
|
@@ -696,6 +753,9 @@ function createStructuredCacheEvidence({
|
|
|
696
753
|
? { policyRoot: env.BUILDCHAIN_CACHE_POLICY_ROOT }
|
|
697
754
|
: {}),
|
|
698
755
|
...(policyRoot ? { cacheProfileRoot: policyRoot } : {}),
|
|
756
|
+
...(compilerCachePreparation?.root
|
|
757
|
+
? { compilerCachePreparationRoot: compilerCachePreparation.root }
|
|
758
|
+
: {}),
|
|
699
759
|
};
|
|
700
760
|
const operations = [];
|
|
701
761
|
if (sourceCheckout) {
|
|
@@ -780,53 +840,65 @@ function createStructuredCacheEvidence({
|
|
|
780
840
|
}),
|
|
781
841
|
);
|
|
782
842
|
}
|
|
783
|
-
const
|
|
843
|
+
const compilerObservation = compilerCacheObservation(
|
|
844
|
+
compilerCaches,
|
|
845
|
+
compilerCachePreparation,
|
|
846
|
+
);
|
|
847
|
+
const compilerEvidenceRoot = cacheEvidenceDigest({
|
|
848
|
+
compilerCaches: compilerCaches || {},
|
|
849
|
+
compilerCachePreparation: compilerCachePreparation || null,
|
|
850
|
+
});
|
|
851
|
+
const compilerMetricReason = compilerObservation.stats
|
|
852
|
+
? `${compilerObservation.provider} current-run stats do not expose this metric`
|
|
853
|
+
: compilerObservation.provider === "sccache"
|
|
854
|
+
? "sccache stats were not admitted without a current-run reset preparation receipt"
|
|
855
|
+
: "compiler cache current-run stats were unavailable";
|
|
784
856
|
operations.push(
|
|
785
857
|
createCacheOperationReceipt({
|
|
786
858
|
operationId: `compiler-cache:${platform}`,
|
|
787
859
|
operation: "restore",
|
|
788
|
-
provider:
|
|
789
|
-
producer:
|
|
860
|
+
provider: compilerObservation.provider,
|
|
861
|
+
producer: compilerObservation.producer,
|
|
790
862
|
platform,
|
|
791
|
-
cacheKey: policyRoot || null,
|
|
863
|
+
cacheKey: compilerCachePreparation?.root || policyRoot || null,
|
|
792
864
|
cacheRoot: policyRoot || null,
|
|
793
|
-
outcome: compilerCacheOutcome(
|
|
865
|
+
outcome: compilerCacheOutcome(compilerObservation),
|
|
794
866
|
bindings,
|
|
795
867
|
metrics: {
|
|
796
868
|
lookupDuration: unavailableMetric(
|
|
797
869
|
"ms",
|
|
798
|
-
|
|
799
|
-
|
|
870
|
+
compilerMetricReason,
|
|
871
|
+
compilerObservation.source,
|
|
800
872
|
compilerEvidenceRoot,
|
|
801
873
|
),
|
|
802
874
|
restoreDuration: unavailableMetric(
|
|
803
875
|
"ms",
|
|
804
|
-
|
|
805
|
-
|
|
876
|
+
compilerMetricReason,
|
|
877
|
+
compilerObservation.source,
|
|
806
878
|
compilerEvidenceRoot,
|
|
807
879
|
),
|
|
808
880
|
saveDuration: unavailableMetric(
|
|
809
881
|
"ms",
|
|
810
|
-
|
|
811
|
-
|
|
882
|
+
compilerMetricReason,
|
|
883
|
+
compilerObservation.source,
|
|
812
884
|
compilerEvidenceRoot,
|
|
813
885
|
),
|
|
814
886
|
restoredBytes: unavailableMetric(
|
|
815
887
|
"bytes",
|
|
816
|
-
|
|
817
|
-
|
|
888
|
+
compilerMetricReason,
|
|
889
|
+
compilerObservation.source,
|
|
818
890
|
compilerEvidenceRoot,
|
|
819
891
|
),
|
|
820
892
|
writtenBytes: unavailableMetric(
|
|
821
893
|
"bytes",
|
|
822
|
-
|
|
823
|
-
|
|
894
|
+
compilerMetricReason,
|
|
895
|
+
compilerObservation.source,
|
|
824
896
|
compilerEvidenceRoot,
|
|
825
897
|
),
|
|
826
898
|
savedTime: unavailableMetric(
|
|
827
899
|
"ms",
|
|
828
|
-
|
|
829
|
-
|
|
900
|
+
compilerMetricReason,
|
|
901
|
+
compilerObservation.source,
|
|
830
902
|
compilerEvidenceRoot,
|
|
831
903
|
),
|
|
832
904
|
},
|
|
@@ -1343,6 +1415,7 @@ export function createDiagnosticsArtifact({
|
|
|
1343
1415
|
processSummary = undefined,
|
|
1344
1416
|
requestedParallelism = 0,
|
|
1345
1417
|
sourceCheckout = undefined,
|
|
1418
|
+
compilerCachePreparation = undefined,
|
|
1346
1419
|
links = {},
|
|
1347
1420
|
} = {}) {
|
|
1348
1421
|
const resolvedCwd = path.resolve(cwd);
|
|
@@ -1370,6 +1443,7 @@ export function createDiagnosticsArtifact({
|
|
|
1370
1443
|
cacheEvidence: createStructuredCacheEvidence({
|
|
1371
1444
|
sourceCheckout,
|
|
1372
1445
|
compilerCaches,
|
|
1446
|
+
compilerCachePreparation,
|
|
1373
1447
|
platform,
|
|
1374
1448
|
}),
|
|
1375
1449
|
nativeCacheDirs: native.cacheDirs || [],
|
|
@@ -1377,6 +1451,7 @@ export function createDiagnosticsArtifact({
|
|
|
1377
1451
|
lifecycleObservability: lifecycleObservability || summarizeLifecycleObservability({ events, logPath }),
|
|
1378
1452
|
process: processSummary || summarizeProcessSamples({ samples: processSamples, requestedParallelism }),
|
|
1379
1453
|
...(sourceCheckout ? { sourceCheckout } : {}),
|
|
1454
|
+
...(compilerCachePreparation ? { compilerCachePreparation } : {}),
|
|
1380
1455
|
links,
|
|
1381
1456
|
};
|
|
1382
1457
|
}
|
|
@@ -34,6 +34,9 @@ const target = (
|
|
|
34
34
|
allowedBypassActors,
|
|
35
35
|
});
|
|
36
36
|
const PUBLIC_REPOSITORY_TARGETS = Object.freeze({
|
|
37
|
+
".github": [
|
|
38
|
+
target("main", [check("governance")], false),
|
|
39
|
+
],
|
|
37
40
|
"agent-hub-demo": [
|
|
38
41
|
target("dev/v0/v0.2", [check("check / check")], true),
|
|
39
42
|
target("alpha/v0/v0.2", [check("check / check")], false),
|
|
@@ -60,9 +63,13 @@ const PUBLIC_REPOSITORY_TARGETS = Object.freeze({
|
|
|
60
63
|
target("alpha/v1/v1.0", [check("check / check")], true),
|
|
61
64
|
],
|
|
62
65
|
kungfu: [
|
|
63
|
-
target("dev/v4/v4.0", [
|
|
66
|
+
target("dev/v4/v4.0", [
|
|
67
|
+
check("Candidate source acceptance / check"),
|
|
68
|
+
check("Queue admission lease", null),
|
|
69
|
+
check("affected-native / linux"),
|
|
70
|
+
], true),
|
|
64
71
|
target("alpha/v4/v4.0", [
|
|
65
|
-
check("build"
|
|
72
|
+
check("build / Finalize build controller evidence"),
|
|
66
73
|
check("signoff"),
|
|
67
74
|
check("validate"),
|
|
68
75
|
], true),
|
|
@@ -81,6 +88,10 @@ const PUBLIC_REPOSITORY_TARGETS = Object.freeze({
|
|
|
81
88
|
true,
|
|
82
89
|
),
|
|
83
90
|
],
|
|
91
|
+
"runtime-images": [
|
|
92
|
+
target("dev/v1/v1.0", [check("Signed-off commits"), check("check")], true),
|
|
93
|
+
target("alpha/v1/v1.0", [check("Signed-off commits"), check("check")], false),
|
|
94
|
+
],
|
|
84
95
|
"paper-episodes-to-primitives": [
|
|
85
96
|
target("main", [check("governance")], false),
|
|
86
97
|
target("dev/v0/v0.1", [check("check / check")], true),
|
|
@@ -91,6 +102,11 @@ const PUBLIC_REPOSITORY_TARGETS = Object.freeze({
|
|
|
91
102
|
target("dev/v0/v0.1", [check("check / check")], true),
|
|
92
103
|
target("alpha/v0/v0.1", [check("check / check")], true),
|
|
93
104
|
],
|
|
105
|
+
"paper-kfd-machine-life-roadmap": [
|
|
106
|
+
target("main", [check("check / check")], false),
|
|
107
|
+
target("dev/v0/v0.1", [check("check / check")], true),
|
|
108
|
+
target("alpha/v0/v0.1", [check("check / check")], true),
|
|
109
|
+
],
|
|
94
110
|
"paper-kungfu-product-white-paper": [
|
|
95
111
|
target("main", [check("check / check")], false),
|
|
96
112
|
target("dev/v0/v0.1", [check("check / check")], true),
|
|
@@ -109,11 +125,6 @@ const PUBLIC_REPOSITORY_TARGETS = Object.freeze({
|
|
|
109
125
|
],
|
|
110
126
|
});
|
|
111
127
|
const PUBLIC_REPOSITORIES = Object.freeze(Object.keys(PUBLIC_REPOSITORY_TARGETS).sort());
|
|
112
|
-
const PRIVATE_REPOSITORY_IDENTITIES = Object.freeze([
|
|
113
|
-
"sha256:581823ab841e1d9a9025c92d0c47b164c6aaa1ea22112fdbc8d73bd2c862a05f",
|
|
114
|
-
"sha256:b7255e01d10000eb3a2786456b4c558178675ccb6cf28a6e39a74dbfe918df35",
|
|
115
|
-
"sha256:f41bd767e9c4a0ab429ca2a2f456d29ddefab0e996d75000ba36334689eb177e",
|
|
116
|
-
]);
|
|
117
128
|
const PROTECTED_AUTHORITY_PATHS = Object.freeze([
|
|
118
129
|
".github/CODEOWNERS",
|
|
119
130
|
".github/workflows/.publication-authority.yml",
|
|
@@ -477,6 +488,7 @@ export function createBuildchainGithubGovernanceAuthority() {
|
|
|
477
488
|
],
|
|
478
489
|
},
|
|
479
490
|
repositoryAdmission: {
|
|
491
|
+
managedVisibilities: ["public"],
|
|
480
492
|
publicRepositories: [...PUBLIC_REPOSITORIES],
|
|
481
493
|
publicAuthoritativeTargets: Object.fromEntries(
|
|
482
494
|
Object.entries(PUBLIC_REPOSITORY_TARGETS).map(([repository, targets]) => [
|
|
@@ -493,25 +505,21 @@ export function createBuildchainGithubGovernanceAuthority() {
|
|
|
493
505
|
})),
|
|
494
506
|
]),
|
|
495
507
|
),
|
|
496
|
-
privateRepositoryIdentities:
|
|
497
|
-
|
|
498
|
-
targetPolicy: "default-and-current-version-line",
|
|
499
|
-
requiredCheckPolicies: {},
|
|
500
|
-
})),
|
|
501
|
-
privateRepositoryPolicy: "non-authoritative-until-plan-capability-qualifies",
|
|
508
|
+
privateRepositoryIdentities: [],
|
|
509
|
+
privateRepositoryPolicy: "excluded-from-managed-zone",
|
|
502
510
|
unknownRepositoryPolicy: "non-authoritative-until-explicit-admission",
|
|
503
511
|
baseline: {
|
|
504
|
-
observedOn: "2026-07-
|
|
512
|
+
observedOn: "2026-07-30",
|
|
505
513
|
repositoryCount: 16,
|
|
506
|
-
publicCount:
|
|
507
|
-
privateCount:
|
|
514
|
+
publicCount: 16,
|
|
515
|
+
privateCount: 0,
|
|
508
516
|
authoritativePublicTargetCount: Object.values(PUBLIC_REPOSITORY_TARGETS)
|
|
509
517
|
.reduce((count, targets) => count + targets.length, 0),
|
|
510
518
|
},
|
|
511
519
|
},
|
|
512
520
|
planCapability: {
|
|
513
521
|
publicRepositories: ["free", "team", "enterprise"],
|
|
514
|
-
privateRepositories: [
|
|
522
|
+
privateRepositories: [],
|
|
515
523
|
organizationRulesets: ["team", "enterprise"],
|
|
516
524
|
},
|
|
517
525
|
effectivePolicy: {
|
package/packages/core/index.js
CHANGED
|
@@ -157,6 +157,7 @@ export {
|
|
|
157
157
|
} from "./build-facts.js";
|
|
158
158
|
|
|
159
159
|
export {
|
|
160
|
+
FAMILY_RELEASE_EVIDENCE_CONTRACT,
|
|
160
161
|
RELEASE_CANDIDATE_PASSPORT_CONTRACT,
|
|
161
162
|
createReleaseCandidatePassport,
|
|
162
163
|
sha256Json,
|
|
@@ -386,6 +387,7 @@ export {
|
|
|
386
387
|
KFD2_TRUST_PROOF_CONTRACT,
|
|
387
388
|
PRODUCT_MECHANISM_CONTRACT,
|
|
388
389
|
RELEASE_CHECK_REPORT_CONTRACT,
|
|
390
|
+
RELEASE_EVIDENCE_ATTACHMENT_CONTRACT,
|
|
389
391
|
RELEASE_PASSPORT_CONTRACT,
|
|
390
392
|
collectGitHubReleasePassport,
|
|
391
393
|
createArtifactEvidence,
|
|
@@ -592,6 +594,8 @@ export {
|
|
|
592
594
|
RELEASE_PROPAGATION_GRAPH_CONTRACT,
|
|
593
595
|
RELEASE_PROPAGATION_LOCK_CONTRACT,
|
|
594
596
|
RELEASE_PROPAGATION_PLAN_CONTRACT,
|
|
597
|
+
RELEASE_PROPAGATION_RECEIPT_CONTRACT,
|
|
598
|
+
createReleasePropagationReceipt,
|
|
595
599
|
createReleasePropagationLock,
|
|
596
600
|
normalizeReleasePropagationGraph,
|
|
597
601
|
planReleasePropagation,
|
|
@@ -614,6 +618,42 @@ export {
|
|
|
614
618
|
validateReleaseActivationTransaction,
|
|
615
619
|
} from "./release-activation-transaction.js";
|
|
616
620
|
|
|
621
|
+
export {
|
|
622
|
+
PUBLICATION_REPRODUCIBILITY_RECEIPT_CONTRACT,
|
|
623
|
+
verifyPublicationReproducibility,
|
|
624
|
+
} from "./publication-reproducibility.js";
|
|
625
|
+
|
|
626
|
+
export {
|
|
627
|
+
PUBLICATION_SEALED_BUNDLE_CONTRACT,
|
|
628
|
+
createPublicationSealedBundle,
|
|
629
|
+
verifyPublicationSealedBundle,
|
|
630
|
+
} from "./publication-sealed-bundle.js";
|
|
631
|
+
|
|
632
|
+
export {
|
|
633
|
+
PAPER_ALPHA_PLAN_CONTRACT,
|
|
634
|
+
PAPER_BUILD_PLAN_CONTRACT,
|
|
635
|
+
PAPER_MIGRATION_CONTRACT,
|
|
636
|
+
PAPER_NPM_BOOTSTRAP_CONTRACT,
|
|
637
|
+
PAPER_PATHS,
|
|
638
|
+
PAPER_PREFLIGHT_CONTRACT,
|
|
639
|
+
PAPER_RESUME_PLAN_CONTRACT,
|
|
640
|
+
PAPER_SCAFFOLD_CONTRACT,
|
|
641
|
+
PAPER_STATE_ORDER,
|
|
642
|
+
PAPER_STATUS_CONTRACT,
|
|
643
|
+
PAPER_VISIBILITY_CONTRACT,
|
|
644
|
+
collectPaperPreflight,
|
|
645
|
+
collectPaperStatus,
|
|
646
|
+
createPaperAlphaPlan,
|
|
647
|
+
createPaperBuildPlan,
|
|
648
|
+
createPaperResumePlan,
|
|
649
|
+
executePaperNpmBootstrap,
|
|
650
|
+
planPaperMigration,
|
|
651
|
+
planPaperScaffold,
|
|
652
|
+
resolvePaperRepository,
|
|
653
|
+
writePaperMigration,
|
|
654
|
+
writePaperScaffold,
|
|
655
|
+
} from "./paper.js";
|
|
656
|
+
|
|
617
657
|
export {
|
|
618
658
|
SURFACE_TIMESTAMP_POLICY_CONTRACT,
|
|
619
659
|
applySurfaceTimestampPolicy,
|