@sourcey/catalog-verifier 1.0.0 → 1.1.0
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/README.md +1 -1
- package/SBOM.cdx.json +3 -3
- package/SOURCEY-CLOSURE.json +697 -217
- package/SOURCEY-LICENSE-POLICY.json +19 -1
- package/SOURCEY-TOOLCHAIN.json +1 -1
- package/THIRD_PARTY_NOTICES.json +1 -1
- package/dist/contracts/agent-readiness/src/declaration.d.ts +30 -30
- package/dist/contracts/agent-readiness/src/index.d.ts +82 -74
- package/dist/contracts/agent-readiness/src/index.d.ts.map +1 -1
- package/dist/contracts/agent-readiness/src/index.js +29 -8
- package/dist/contracts/agent-readiness/src/index.js.map +1 -1
- package/dist/contracts/agent-readiness/src/method-pack.d.ts +1 -0
- package/dist/contracts/agent-readiness/src/method-pack.d.ts.map +1 -1
- package/dist/contracts/agent-readiness/src/method-pack.js.map +1 -1
- package/dist/contracts/api/src/index.d.ts +11602 -6013
- package/dist/contracts/api/src/index.d.ts.map +1 -1
- package/dist/contracts/api/src/index.js +156 -16
- package/dist/contracts/api/src/index.js.map +1 -1
- package/dist/contracts/artifact/src/index.d.ts +114 -64
- package/dist/contracts/artifact/src/index.d.ts.map +1 -1
- package/dist/contracts/artifact/src/index.js +15 -4
- package/dist/contracts/artifact/src/index.js.map +1 -1
- package/dist/contracts/assets/src/index.d.ts +30 -0
- package/dist/contracts/assets/src/index.d.ts.map +1 -1
- package/dist/contracts/assets/src/index.js +16 -0
- package/dist/contracts/assets/src/index.js.map +1 -1
- package/dist/contracts/assurance/src/index.d.ts +149 -0
- package/dist/contracts/assurance/src/index.d.ts.map +1 -0
- package/dist/contracts/assurance/src/index.js +146 -0
- package/dist/contracts/assurance/src/index.js.map +1 -0
- package/dist/contracts/authoring/src/index.d.ts.map +1 -1
- package/dist/contracts/authoring/src/index.js +9 -1
- package/dist/contracts/authoring/src/index.js.map +1 -1
- package/dist/contracts/billing/src/index.d.ts +54 -0
- package/dist/contracts/billing/src/index.d.ts.map +1 -1
- package/dist/contracts/billing/src/index.js +77 -11
- package/dist/contracts/billing/src/index.js.map +1 -1
- package/dist/contracts/catalog-verifier/src/index.d.ts +49 -0
- package/dist/contracts/catalog-verifier/src/index.d.ts.map +1 -1
- package/dist/contracts/catalog-verifier/src/index.js +31 -3
- package/dist/contracts/catalog-verifier/src/index.js.map +1 -1
- package/dist/contracts/commercial-work/src/index.d.ts +1330 -392
- package/dist/contracts/commercial-work/src/index.d.ts.map +1 -1
- package/dist/contracts/commercial-work/src/index.js +554 -111
- package/dist/contracts/commercial-work/src/index.js.map +1 -1
- package/dist/contracts/datasets/src/index.d.ts +762 -0
- package/dist/contracts/datasets/src/index.d.ts.map +1 -0
- package/dist/contracts/datasets/src/index.js +80 -0
- package/dist/contracts/datasets/src/index.js.map +1 -0
- package/dist/contracts/events/src/index.d.ts +67 -56
- package/dist/contracts/events/src/index.d.ts.map +1 -1
- package/dist/contracts/events/src/index.js +100 -53
- package/dist/contracts/events/src/index.js.map +1 -1
- package/dist/contracts/evidence/src/index.d.ts +4 -0
- package/dist/contracts/evidence/src/index.d.ts.map +1 -1
- package/dist/contracts/evidence/src/index.js +1 -0
- package/dist/contracts/evidence/src/index.js.map +1 -1
- package/dist/contracts/funded-work/src/index.d.ts +2 -2
- package/dist/contracts/funded-work/src/index.js +1 -1
- package/dist/contracts/funded-work/src/index.js.map +1 -1
- package/dist/contracts/observations/src/index.d.ts +2 -2
- package/dist/contracts/observations/src/index.d.ts.map +1 -1
- package/dist/contracts/observations/src/index.js +2 -2
- package/dist/contracts/observations/src/index.js.map +1 -1
- package/dist/contracts/policies/src/index.d.ts.map +1 -1
- package/dist/contracts/policies/src/index.js +3 -0
- package/dist/contracts/policies/src/index.js.map +1 -1
- package/dist/contracts/publication/src/index.d.ts +2472 -7
- package/dist/contracts/publication/src/index.d.ts.map +1 -1
- package/dist/contracts/publication/src/index.js +73 -5
- package/dist/contracts/publication/src/index.js.map +1 -1
- package/dist/contracts/release/src/index.d.ts +109 -42
- package/dist/contracts/release/src/index.d.ts.map +1 -1
- package/dist/contracts/release/src/index.js +49 -1
- package/dist/contracts/release/src/index.js.map +1 -1
- package/dist/contracts/revisions/src/index.d.ts +16 -0
- package/dist/contracts/revisions/src/index.d.ts.map +1 -1
- package/dist/contracts/revisions/src/index.js +49 -1
- package/dist/contracts/revisions/src/index.js.map +1 -1
- package/dist/contracts/routes/src/index.d.ts +66 -0
- package/dist/contracts/routes/src/index.d.ts.map +1 -1
- package/dist/contracts/routes/src/index.js +102 -4
- package/dist/contracts/routes/src/index.js.map +1 -1
- package/dist/contracts/routes/src/public-route-allocations.generated.d.ts +1 -1
- package/dist/contracts/routes/src/public-route-allocations.generated.d.ts.map +1 -1
- package/dist/contracts/routes/src/public-route-allocations.generated.js +3 -0
- package/dist/contracts/routes/src/public-route-allocations.generated.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/current-policy-metrics.js +2 -2
- package/dist/modules/agent-readiness-policy/src/current-policy-metrics.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/current-policy-validation.d.ts +4 -0
- package/dist/modules/agent-readiness-policy/src/current-policy-validation.d.ts.map +1 -0
- package/dist/modules/agent-readiness-policy/src/current-policy-validation.js +11 -0
- package/dist/modules/agent-readiness-policy/src/current-policy-validation.js.map +1 -0
- package/dist/modules/agent-readiness-policy/src/current-policy.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/current-policy.js +10 -15
- package/dist/modules/agent-readiness-policy/src/current-policy.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/grading.js +1 -1
- package/dist/modules/agent-readiness-policy/src/impact.d.ts +4 -3
- package/dist/modules/agent-readiness-policy/src/impact.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/impact.js +5 -6
- package/dist/modules/agent-readiness-policy/src/impact.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/index.d.ts +3 -0
- package/dist/modules/agent-readiness-policy/src/index.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/index.js +14 -4
- package/dist/modules/agent-readiness-policy/src/index.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/offer-relations.d.ts +6 -0
- package/dist/modules/agent-readiness-policy/src/offer-relations.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/offer-relations.js +6 -0
- package/dist/modules/agent-readiness-policy/src/offer-relations.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/policy-validation.d.ts +0 -1
- package/dist/modules/agent-readiness-policy/src/policy-validation.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/policy-validation.js +3 -23
- package/dist/modules/agent-readiness-policy/src/policy-validation.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/standard-mapping.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/standard-mapping.js +2 -1
- package/dist/modules/agent-readiness-policy/src/standard-mapping.js.map +1 -1
- package/dist/modules/agent-readiness-repository/src/change.js +2 -2
- package/dist/modules/agent-readiness-repository/src/change.js.map +1 -1
- package/dist/modules/artifact/src/index.d.ts +9 -3
- package/dist/modules/artifact/src/index.d.ts.map +1 -1
- package/dist/modules/artifact/src/index.js +50 -65
- package/dist/modules/artifact/src/index.js.map +1 -1
- package/dist/modules/artifact/src/policy-closure.d.ts +12 -0
- package/dist/modules/artifact/src/policy-closure.d.ts.map +1 -0
- package/dist/modules/artifact/src/policy-closure.js +52 -0
- package/dist/modules/artifact/src/policy-closure.js.map +1 -0
- package/dist/modules/{release → artifact}/src/release-directory-files.d.ts +2 -0
- package/dist/modules/artifact/src/release-directory-files.d.ts.map +1 -0
- package/dist/modules/artifact/src/release-directory-files.js +38 -0
- package/dist/modules/artifact/src/release-directory-files.js.map +1 -0
- package/dist/modules/assets/src/authority-bundle.d.ts +13 -0
- package/dist/modules/assets/src/authority-bundle.d.ts.map +1 -1
- package/dist/modules/assets/src/authority-bundle.js +38 -9
- package/dist/modules/assets/src/authority-bundle.js.map +1 -1
- package/dist/modules/assets/src/index.d.ts.map +1 -1
- package/dist/modules/assets/src/index.js +13 -4
- package/dist/modules/assets/src/index.js.map +1 -1
- package/dist/modules/assurance/src/index.d.ts +22 -0
- package/dist/modules/assurance/src/index.d.ts.map +1 -0
- package/dist/modules/assurance/src/index.js +73 -0
- package/dist/modules/assurance/src/index.js.map +1 -0
- package/dist/modules/authority/src/index.d.ts +9 -2
- package/dist/modules/authority/src/index.d.ts.map +1 -1
- package/dist/modules/authority/src/index.js +32 -2
- package/dist/modules/authority/src/index.js.map +1 -1
- package/dist/modules/authority/src/retained-capture-receipt.d.ts +95 -0
- package/dist/modules/authority/src/retained-capture-receipt.d.ts.map +1 -0
- package/dist/modules/authority/src/retained-capture-receipt.js +76 -0
- package/dist/modules/authority/src/retained-capture-receipt.js.map +1 -0
- package/dist/modules/authority-state/src/index.d.ts +1 -1
- package/dist/modules/authority-state/src/index.d.ts.map +1 -1
- package/dist/modules/authority-state/src/index.js +5 -9
- package/dist/modules/authority-state/src/index.js.map +1 -1
- package/dist/modules/catalog-admission/src/admission-conflicts.d.ts +60 -16
- package/dist/modules/catalog-admission/src/admission-conflicts.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/admission-conflicts.js +95 -40
- package/dist/modules/catalog-admission/src/admission-conflicts.js.map +1 -1
- package/dist/modules/catalog-admission/src/change-analysis.d.ts +50 -0
- package/dist/modules/catalog-admission/src/change-analysis.d.ts.map +1 -0
- package/dist/modules/catalog-admission/src/change-analysis.js +113 -0
- package/dist/modules/catalog-admission/src/change-analysis.js.map +1 -0
- package/dist/modules/catalog-admission/src/index.d.ts +11 -37
- package/dist/modules/catalog-admission/src/index.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/index.js +20 -56
- package/dist/modules/catalog-admission/src/index.js.map +1 -1
- package/dist/modules/catalog-admission/src/machine-admission.d.ts +1215 -0
- package/dist/modules/catalog-admission/src/machine-admission.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/machine-admission.js +156 -12
- package/dist/modules/catalog-admission/src/machine-admission.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication-authorities.d.ts +6 -0
- package/dist/modules/catalog-admission/src/publication-authorities.d.ts.map +1 -0
- package/dist/modules/catalog-admission/src/publication-authorities.js +28 -0
- package/dist/modules/catalog-admission/src/publication-authorities.js.map +1 -0
- package/dist/modules/catalog-admission/src/publication-composition.d.ts +421 -0
- package/dist/modules/catalog-admission/src/publication-composition.d.ts.map +1 -0
- package/dist/modules/catalog-admission/src/publication-composition.js +290 -0
- package/dist/modules/catalog-admission/src/publication-composition.js.map +1 -0
- package/dist/modules/catalog-admission/src/publication-dependencies.d.ts +25 -1
- package/dist/modules/catalog-admission/src/publication-dependencies.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication-dependencies.js +31 -1
- package/dist/modules/catalog-admission/src/publication-dependencies.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication-recomposition.d.ts +2 -2
- package/dist/modules/catalog-admission/src/publication-state.d.ts +19 -0
- package/dist/modules/catalog-admission/src/publication-state.d.ts.map +1 -0
- package/dist/modules/catalog-admission/src/publication-state.js +97 -0
- package/dist/modules/catalog-admission/src/publication-state.js.map +1 -0
- package/dist/modules/catalog-admission/src/publication.d.ts +26 -24
- package/dist/modules/catalog-admission/src/publication.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication.js +47 -106
- package/dist/modules/catalog-admission/src/publication.js.map +1 -1
- package/dist/modules/catalog-admission/src/submission-input.d.ts +44 -0
- package/dist/modules/catalog-admission/src/submission-input.d.ts.map +1 -0
- package/dist/modules/catalog-admission/src/submission-input.js +174 -0
- package/dist/modules/catalog-admission/src/submission-input.js.map +1 -0
- package/dist/modules/catalog-admission/src/submission-state.d.ts +9 -0
- package/dist/modules/catalog-admission/src/submission-state.d.ts.map +1 -0
- package/dist/modules/catalog-admission/src/submission-state.js +24 -0
- package/dist/modules/catalog-admission/src/submission-state.js.map +1 -0
- package/dist/modules/catalog-admission/src/submission.d.ts +99 -19
- package/dist/modules/catalog-admission/src/submission.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/submission.js +160 -111
- package/dist/modules/catalog-admission/src/submission.js.map +1 -1
- package/dist/modules/catalog-model/src/index.d.ts +10 -0
- package/dist/modules/catalog-model/src/index.d.ts.map +1 -1
- package/dist/modules/catalog-model/src/index.js +11 -3
- package/dist/modules/catalog-model/src/index.js.map +1 -1
- package/dist/modules/catalog-query/src/contracts.d.ts +13 -0
- package/dist/modules/catalog-query/src/contracts.d.ts.map +1 -0
- package/dist/modules/catalog-query/src/contracts.js +13 -0
- package/dist/modules/catalog-query/src/contracts.js.map +1 -0
- package/dist/modules/catalog-read-port/src/index.d.ts +34 -0
- package/dist/modules/catalog-read-port/src/index.d.ts.map +1 -0
- package/dist/modules/catalog-read-port/src/index.js +2 -0
- package/dist/modules/catalog-read-port/src/index.js.map +1 -0
- package/dist/modules/deterministic-release-archive/src/files.d.ts +8 -0
- package/dist/modules/deterministic-release-archive/src/files.d.ts.map +1 -0
- package/dist/modules/deterministic-release-archive/src/files.js +23 -0
- package/dist/modules/deterministic-release-archive/src/files.js.map +1 -0
- package/dist/modules/evidence-operations/src/configuration.d.ts +283 -0
- package/dist/modules/evidence-operations/src/configuration.d.ts.map +1 -0
- package/dist/modules/evidence-operations/src/configuration.js +213 -0
- package/dist/modules/evidence-operations/src/configuration.js.map +1 -0
- package/dist/modules/evidence-operations/src/evidence-authority.d.ts +2552 -0
- package/dist/modules/evidence-operations/src/evidence-authority.d.ts.map +1 -0
- package/dist/modules/evidence-operations/src/evidence-authority.js +545 -0
- package/dist/modules/evidence-operations/src/evidence-authority.js.map +1 -0
- package/dist/modules/evidence-operations/src/evidence-normalization.d.ts +5 -0
- package/dist/modules/evidence-operations/src/evidence-normalization.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/evidence-normalization.js +11 -2
- package/dist/modules/evidence-operations/src/evidence-normalization.js.map +1 -1
- package/dist/modules/evidence-operations/src/proof-graph.d.ts +4 -7
- package/dist/modules/evidence-operations/src/proof-graph.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/proof-graph.js +6 -7
- package/dist/modules/evidence-operations/src/proof-graph.js.map +1 -1
- package/dist/modules/evidence-operations/src/retained-revision.d.ts +6 -0
- package/dist/modules/evidence-operations/src/retained-revision.d.ts.map +1 -0
- package/dist/modules/evidence-operations/src/retained-revision.js +29 -0
- package/dist/modules/evidence-operations/src/retained-revision.js.map +1 -0
- package/dist/modules/evidence-operations/src/submission-verifier.d.ts +5 -2
- package/dist/modules/evidence-operations/src/submission-verifier.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/submission-verifier.js.map +1 -1
- package/dist/modules/git-input/src/index.d.ts +31 -0
- package/dist/modules/git-input/src/index.d.ts.map +1 -0
- package/dist/modules/git-input/src/index.js +158 -0
- package/dist/modules/git-input/src/index.js.map +1 -0
- package/dist/modules/policy-identity/src/index.d.ts +7 -0
- package/dist/modules/policy-identity/src/index.d.ts.map +1 -0
- package/dist/modules/policy-identity/src/index.js +23 -0
- package/dist/modules/policy-identity/src/index.js.map +1 -0
- package/dist/modules/primitives/src/index.d.ts +2 -0
- package/dist/modules/primitives/src/index.d.ts.map +1 -1
- package/dist/modules/primitives/src/index.js +20 -2
- package/dist/modules/primitives/src/index.js.map +1 -1
- package/dist/modules/projection-identity/src/index.d.ts +14 -0
- package/dist/modules/projection-identity/src/index.d.ts.map +1 -0
- package/dist/modules/projection-identity/src/index.js +23 -0
- package/dist/modules/projection-identity/src/index.js.map +1 -0
- package/dist/modules/provenance/src/index.d.ts +7 -3
- package/dist/modules/provenance/src/index.d.ts.map +1 -1
- package/dist/modules/provenance/src/index.js +52 -68
- package/dist/modules/provenance/src/index.js.map +1 -1
- package/dist/modules/release/src/agent-readiness-publication-inputs.d.ts +12 -0
- package/dist/modules/release/src/agent-readiness-publication-inputs.d.ts.map +1 -0
- package/dist/modules/release/src/agent-readiness-publication-inputs.js +48 -0
- package/dist/modules/release/src/agent-readiness-publication-inputs.js.map +1 -0
- package/dist/modules/release/src/agent-readiness-regrade-evidence.d.ts +223 -0
- package/dist/modules/release/src/agent-readiness-regrade-evidence.d.ts.map +1 -0
- package/dist/modules/release/src/agent-readiness-regrade-evidence.js +192 -0
- package/dist/modules/release/src/agent-readiness-regrade-evidence.js.map +1 -0
- package/dist/modules/release/src/changes.d.ts.map +1 -1
- package/dist/modules/release/src/changes.js +21 -25
- package/dist/modules/release/src/changes.js.map +1 -1
- package/dist/modules/release/src/evidence-admission.d.ts +59 -0
- package/dist/modules/release/src/evidence-admission.d.ts.map +1 -0
- package/dist/modules/release/src/evidence-admission.js +539 -0
- package/dist/modules/release/src/evidence-admission.js.map +1 -0
- package/dist/modules/release/src/evidence-bundle-tree.d.ts +14 -0
- package/dist/modules/release/src/evidence-bundle-tree.d.ts.map +1 -0
- package/dist/modules/release/src/evidence-bundle-tree.js +58 -0
- package/dist/modules/release/src/evidence-bundle-tree.js.map +1 -0
- package/dist/modules/release/src/identity.d.ts +4 -4
- package/dist/modules/release/src/identity.d.ts.map +1 -1
- package/dist/modules/release/src/identity.js +43 -1
- package/dist/modules/release/src/identity.js.map +1 -1
- package/dist/modules/release/src/inputs.d.ts +15 -7
- package/dist/modules/release/src/inputs.d.ts.map +1 -1
- package/dist/modules/release/src/inputs.js +15 -21
- package/dist/modules/release/src/inputs.js.map +1 -1
- package/dist/modules/release/src/publication-authorities.d.ts +267 -0
- package/dist/modules/release/src/publication-authorities.d.ts.map +1 -0
- package/dist/modules/release/src/publication-authorities.js +56 -0
- package/dist/modules/release/src/publication-authorities.js.map +1 -0
- package/dist/modules/release/src/publication-inputs.d.ts +2 -6
- package/dist/modules/release/src/publication-inputs.d.ts.map +1 -1
- package/dist/modules/release/src/publication-inputs.js +29 -15
- package/dist/modules/release/src/publication-inputs.js.map +1 -1
- package/dist/modules/release/src/publication-parent-guard.d.ts +17 -0
- package/dist/modules/release/src/publication-parent-guard.d.ts.map +1 -0
- package/dist/modules/release/src/publication-parent-guard.js +18 -0
- package/dist/modules/release/src/publication-parent-guard.js.map +1 -0
- package/dist/modules/release/src/publication-parent-relations.d.ts +24 -0
- package/dist/modules/release/src/publication-parent-relations.d.ts.map +1 -0
- package/dist/modules/release/src/publication-parent-relations.js +104 -0
- package/dist/modules/release/src/publication-parent-relations.js.map +1 -0
- package/dist/modules/release/src/submission-verification.d.ts +20 -0
- package/dist/modules/release/src/submission-verification.d.ts.map +1 -0
- package/dist/modules/release/src/submission-verification.js +39 -0
- package/dist/modules/release/src/submission-verification.js.map +1 -0
- package/dist/modules/release/src/transition.d.ts.map +1 -1
- package/dist/modules/release/src/transition.js +17 -10
- package/dist/modules/release/src/transition.js.map +1 -1
- package/dist/modules/release/src/verification-changes.d.ts +6 -0
- package/dist/modules/release/src/verification-changes.d.ts.map +1 -0
- package/dist/modules/release/src/verification-changes.js +56 -0
- package/dist/modules/release/src/verification-changes.js.map +1 -0
- package/dist/modules/release/src/verification-policies.d.ts +22 -0
- package/dist/modules/release/src/verification-policies.d.ts.map +1 -1
- package/dist/modules/release/src/verification-policies.js +6 -0
- package/dist/modules/release/src/verification-policies.js.map +1 -1
- package/dist/modules/release/src/verification-transitions.d.ts +14 -1
- package/dist/modules/release/src/verification-transitions.d.ts.map +1 -1
- package/dist/modules/release/src/verification-transitions.js +55 -1
- package/dist/modules/release/src/verification-transitions.js.map +1 -1
- package/dist/modules/release/src/verifier.d.ts +5 -3
- package/dist/modules/release/src/verifier.d.ts.map +1 -1
- package/dist/modules/release/src/verifier.js +71 -80
- package/dist/modules/release/src/verifier.js.map +1 -1
- package/dist/packages/catalog-verifier/src/application.d.ts +2 -0
- package/dist/packages/catalog-verifier/src/application.d.ts.map +1 -1
- package/dist/packages/catalog-verifier/src/application.js +10 -9
- package/dist/packages/catalog-verifier/src/application.js.map +1 -1
- package/dist/packages/catalog-verifier/src/index.d.ts +3 -0
- package/dist/packages/catalog-verifier/src/index.d.ts.map +1 -1
- package/dist/packages/catalog-verifier/src/index.js +3 -0
- package/dist/packages/catalog-verifier/src/index.js.map +1 -1
- package/dist/packages/catalog-verifier/src/program.d.ts.map +1 -1
- package/dist/packages/catalog-verifier/src/program.js +13 -10
- package/dist/packages/catalog-verifier/src/program.js.map +1 -1
- package/package.json +1 -1
- package/dist/modules/release/src/release-directory-files.d.ts.map +0 -1
- package/dist/modules/release/src/release-directory-files.js +0 -49
- package/dist/modules/release/src/release-directory-files.js.map +0 -1
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { type AgentReadinessDeclarationRevision, type AgentReadinessDeltaObject, type AgentReadinessPolicy, type AgentReadinessProjection, type AgentReadinessRevision } from "../../../contracts/agent-readiness/src/index.js";
|
|
3
|
+
import type { SignerRegistry } from "../../../contracts/authority/src/index.js";
|
|
4
|
+
import { type CatalogEvent } from "../../../contracts/events/src/index.js";
|
|
5
|
+
import { type Observation } from "../../../contracts/observations/src/index.js";
|
|
6
|
+
import type { FreshnessPolicy } from "../../../contracts/policies/src/index.js";
|
|
7
|
+
import type { EntityRevision } from "../../../contracts/revisions/src/index.js";
|
|
8
|
+
import { type EventGraph } from "../../provenance/src/index.js";
|
|
9
|
+
export declare const AGENT_READINESS_REGRADE_EVIDENCE_PREFIX = "agent-readiness-regrade-evidence/";
|
|
10
|
+
/**
|
|
11
|
+
* Exact evidence context for reprojection of an existing revision. New events
|
|
12
|
+
* still require ordinary release admission; these bytes only close the graph
|
|
13
|
+
* beside the prior projection for independent offline recomputation.
|
|
14
|
+
*/
|
|
15
|
+
export declare const agentReadinessRegradeEvidenceSchema: z.ZodObject<{
|
|
16
|
+
evidence_contract: z.ZodLiteral<"sourcey.agent-readiness-regrade-evidence/v1alpha1">;
|
|
17
|
+
agent_readiness_profile_id: z.ZodString;
|
|
18
|
+
revision_digest: z.ZodString;
|
|
19
|
+
events: z.ZodArray<z.ZodObject<{
|
|
20
|
+
event_contract: z.ZodLiteral<"sourcey.catalog-event/v1alpha1">;
|
|
21
|
+
kind: z.ZodEnum<{
|
|
22
|
+
"program.retired": "program.retired";
|
|
23
|
+
"offer.retired": "offer.retired";
|
|
24
|
+
"asset.bound": "asset.bound";
|
|
25
|
+
"asset.withdrawn": "asset.withdrawn";
|
|
26
|
+
"evidence.bound": "evidence.bound";
|
|
27
|
+
"evidence.retracted": "evidence.retracted";
|
|
28
|
+
"discrepancy.resolved": "discrepancy.resolved";
|
|
29
|
+
"authority.claimed": "authority.claimed";
|
|
30
|
+
"authority.rechecked": "authority.rechecked";
|
|
31
|
+
"authority.revoked": "authority.revoked";
|
|
32
|
+
"authority.superseded": "authority.superseded";
|
|
33
|
+
"subject.attested": "subject.attested";
|
|
34
|
+
"attestation.revoked": "attestation.revoked";
|
|
35
|
+
"verification.completed": "verification.completed";
|
|
36
|
+
"entity.identity-checked": "entity.identity-checked";
|
|
37
|
+
"offer.terms-checked": "offer.terms-checked";
|
|
38
|
+
"assurance.revoked": "assurance.revoked";
|
|
39
|
+
"freshness.exception-granted": "freshness.exception-granted";
|
|
40
|
+
"freshness.exception-revoked": "freshness.exception-revoked";
|
|
41
|
+
"dispute.opened": "dispute.opened";
|
|
42
|
+
"dispute.resolved": "dispute.resolved";
|
|
43
|
+
"asset.takedown-ordered": "asset.takedown-ordered";
|
|
44
|
+
"entity.merged": "entity.merged";
|
|
45
|
+
"entity.split": "entity.split";
|
|
46
|
+
"entity.succeeded": "entity.succeeded";
|
|
47
|
+
"offer.merged": "offer.merged";
|
|
48
|
+
"program.merged": "program.merged";
|
|
49
|
+
"program.reparented": "program.reparented";
|
|
50
|
+
"offer.reparented": "offer.reparented";
|
|
51
|
+
"agent-readiness-profile.merged": "agent-readiness-profile.merged";
|
|
52
|
+
"agent-readiness-profile.reparented": "agent-readiness-profile.reparented";
|
|
53
|
+
"agent-readiness-profile.retired": "agent-readiness-profile.retired";
|
|
54
|
+
"identity.transition-superseded": "identity.transition-superseded";
|
|
55
|
+
}>;
|
|
56
|
+
issuer_id: z.ZodString;
|
|
57
|
+
operation_id: z.ZodString;
|
|
58
|
+
subject: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
59
|
+
subject_type: z.ZodLiteral<"entity">;
|
|
60
|
+
entity_id: z.ZodString;
|
|
61
|
+
revision_digest: z.ZodOptional<z.ZodString>;
|
|
62
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
63
|
+
subject_type: z.ZodLiteral<"agent_readiness_profile">;
|
|
64
|
+
entity_id: z.ZodString;
|
|
65
|
+
agent_readiness_profile_id: z.ZodString;
|
|
66
|
+
revision_digest: z.ZodOptional<z.ZodString>;
|
|
67
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
68
|
+
subject_type: z.ZodLiteral<"program">;
|
|
69
|
+
entity_id: z.ZodString;
|
|
70
|
+
program_id: z.ZodString;
|
|
71
|
+
revision_digest: z.ZodOptional<z.ZodString>;
|
|
72
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
73
|
+
subject_type: z.ZodLiteral<"offer">;
|
|
74
|
+
entity_id: z.ZodString;
|
|
75
|
+
program_id: z.ZodOptional<z.ZodString>;
|
|
76
|
+
offer_id: z.ZodString;
|
|
77
|
+
revision_digest: z.ZodOptional<z.ZodString>;
|
|
78
|
+
}, z.core.$strict>], "subject_type">;
|
|
79
|
+
occurred_at: z.ZodISODateTime;
|
|
80
|
+
payload: z.ZodUnknown;
|
|
81
|
+
event_id: z.ZodString;
|
|
82
|
+
protected: z.ZodObject<{
|
|
83
|
+
signature_purpose: z.ZodEnum<{
|
|
84
|
+
"catalog-capture": "catalog-capture";
|
|
85
|
+
"catalog-evidence": "catalog-evidence";
|
|
86
|
+
"catalog-identity": "catalog-identity";
|
|
87
|
+
"catalog-authority": "catalog-authority";
|
|
88
|
+
"catalog-attestation": "catalog-attestation";
|
|
89
|
+
"catalog-verification": "catalog-verification";
|
|
90
|
+
"catalog-dispute": "catalog-dispute";
|
|
91
|
+
"catalog-policy": "catalog-policy";
|
|
92
|
+
"catalog-release": "catalog-release";
|
|
93
|
+
"catalog-feed": "catalog-feed";
|
|
94
|
+
}>;
|
|
95
|
+
signer_registry_digest: z.ZodString;
|
|
96
|
+
key_id: z.ZodString;
|
|
97
|
+
algorithm: z.ZodLiteral<"ed25519">;
|
|
98
|
+
signature: z.ZodString;
|
|
99
|
+
}, z.core.$strict>;
|
|
100
|
+
}, z.core.$strict>>;
|
|
101
|
+
observations: z.ZodArray<z.ZodObject<{
|
|
102
|
+
observation_contract: z.ZodLiteral<"sourcey.observation/v1alpha1">;
|
|
103
|
+
source_id: z.ZodString;
|
|
104
|
+
source_uri: z.ZodURL;
|
|
105
|
+
retrieved_at: z.ZodISODateTime;
|
|
106
|
+
method: z.ZodObject<{
|
|
107
|
+
name: z.ZodString;
|
|
108
|
+
version: z.ZodString;
|
|
109
|
+
}, z.core.$strict>;
|
|
110
|
+
outcome: z.ZodEnum<{
|
|
111
|
+
error: "error";
|
|
112
|
+
"supports-candidate": "supports-candidate";
|
|
113
|
+
"contradicts-candidate": "contradicts-candidate";
|
|
114
|
+
unreachable: "unreachable";
|
|
115
|
+
}>;
|
|
116
|
+
capture: z.ZodOptional<z.ZodObject<{
|
|
117
|
+
digest: z.ZodString;
|
|
118
|
+
bytes: z.ZodNumber;
|
|
119
|
+
media_type: z.ZodString;
|
|
120
|
+
availability: z.ZodEnum<{
|
|
121
|
+
public: "public";
|
|
122
|
+
"private-receipt": "private-receipt";
|
|
123
|
+
}>;
|
|
124
|
+
requested_uri: z.ZodOptional<z.ZodURL>;
|
|
125
|
+
final_uri: z.ZodOptional<z.ZodURL>;
|
|
126
|
+
redirect_chain: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
127
|
+
status: z.ZodUnion<readonly [z.ZodLiteral<301>, z.ZodLiteral<302>, z.ZodLiteral<303>, z.ZodLiteral<307>, z.ZodLiteral<308>]>;
|
|
128
|
+
from: z.ZodURL;
|
|
129
|
+
to: z.ZodURL;
|
|
130
|
+
}, z.core.$strict>>>;
|
|
131
|
+
source_standing: z.ZodOptional<z.ZodEnum<{
|
|
132
|
+
"live-first-party": "live-first-party";
|
|
133
|
+
"archived-first-party": "archived-first-party";
|
|
134
|
+
"live-third-party": "live-third-party";
|
|
135
|
+
"archived-third-party": "archived-third-party";
|
|
136
|
+
"manual-first-party": "manual-first-party";
|
|
137
|
+
"manual-third-party": "manual-third-party";
|
|
138
|
+
}>>;
|
|
139
|
+
normalized_object: z.ZodOptional<z.ZodObject<{
|
|
140
|
+
digest: z.ZodString;
|
|
141
|
+
bytes: z.ZodNumber;
|
|
142
|
+
media_type: z.ZodLiteral<"text/plain; charset=utf-8">;
|
|
143
|
+
normalizer_contract: z.ZodLiteral<"sourcey.evidence-normalizer/v1alpha1">;
|
|
144
|
+
normalizer_id: z.ZodString;
|
|
145
|
+
version: z.ZodString;
|
|
146
|
+
toolchain_digest: z.ZodString;
|
|
147
|
+
}, z.core.$strict>>;
|
|
148
|
+
}, z.core.$strict>>;
|
|
149
|
+
no_capture_reason: z.ZodOptional<z.ZodEnum<{
|
|
150
|
+
"dns-failure": "dns-failure";
|
|
151
|
+
"connect-timeout": "connect-timeout";
|
|
152
|
+
"tls-failure": "tls-failure";
|
|
153
|
+
"access-denied": "access-denied";
|
|
154
|
+
"policy-blocked": "policy-blocked";
|
|
155
|
+
"empty-response": "empty-response";
|
|
156
|
+
"extractor-error": "extractor-error";
|
|
157
|
+
}>>;
|
|
158
|
+
observation_id: z.ZodString;
|
|
159
|
+
}, z.core.$strict>>;
|
|
160
|
+
}, z.core.$strict>;
|
|
161
|
+
export type AgentReadinessRegradeEvidence = z.infer<typeof agentReadinessRegradeEvidenceSchema>;
|
|
162
|
+
export interface AgentReadinessEvidenceChanges {
|
|
163
|
+
readonly events: readonly CatalogEvent[];
|
|
164
|
+
readonly observations: readonly Observation[];
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Select the changed evidence owned by one exact Agent Readiness revision.
|
|
168
|
+
* A Catalog delta is not a complete event graph: unrelated transitions may
|
|
169
|
+
* target immutable objects retained by the parent release.
|
|
170
|
+
*/
|
|
171
|
+
export declare function selectAgentReadinessEvidenceChanges(input: {
|
|
172
|
+
readonly profileId: string;
|
|
173
|
+
readonly revisionDigest: string;
|
|
174
|
+
readonly events: readonly CatalogEvent[];
|
|
175
|
+
readonly observations: readonly Observation[];
|
|
176
|
+
}): AgentReadinessEvidenceChanges;
|
|
177
|
+
/**
|
|
178
|
+
* Select, from the resolved closure, exactly the events and observations one
|
|
179
|
+
* regrade is projected from: the prior projection's basis events, every event
|
|
180
|
+
* on the same revision, and every event that invalidates one of those.
|
|
181
|
+
*/
|
|
182
|
+
export declare function selectAgentReadinessRegradeEvidence(input: {
|
|
183
|
+
readonly profileId: string;
|
|
184
|
+
readonly revision: AgentReadinessRevision;
|
|
185
|
+
readonly priorProjection: AgentReadinessProjection;
|
|
186
|
+
readonly events: readonly CatalogEvent[];
|
|
187
|
+
readonly observations: readonly Observation[];
|
|
188
|
+
}): AgentReadinessRegradeEvidence;
|
|
189
|
+
/** The evidence must close the prior projection exactly before it can rebuild its graph. */
|
|
190
|
+
export declare function verifyAgentReadinessRegradeEvidence(input: {
|
|
191
|
+
readonly evidence: AgentReadinessRegradeEvidence;
|
|
192
|
+
readonly revision: AgentReadinessRevision;
|
|
193
|
+
readonly priorProjection: AgentReadinessProjection;
|
|
194
|
+
}): EventGraph;
|
|
195
|
+
/**
|
|
196
|
+
* Read one shipped regrade evidence file. Retained evidence re-verifies every
|
|
197
|
+
* event signature against the release-pinned registry at this release's
|
|
198
|
+
* sequence; it admits nothing and carries no inclusion record.
|
|
199
|
+
*/
|
|
200
|
+
export declare function readAgentReadinessRegradeEvidenceFile(input: {
|
|
201
|
+
readonly path: string;
|
|
202
|
+
readonly bytes: Buffer;
|
|
203
|
+
readonly registry: SignerRegistry;
|
|
204
|
+
readonly releaseSequence: number;
|
|
205
|
+
}): readonly [string, AgentReadinessRegradeEvidence];
|
|
206
|
+
/** Every shipped evidence file must belong to exactly one policy regrade object. */
|
|
207
|
+
export declare function assertAgentReadinessRegradeEvidenceClosure(evidence: ReadonlyMap<string, AgentReadinessRegradeEvidence>, objects: ReadonlyMap<string, AgentReadinessDeltaObject>): void;
|
|
208
|
+
/** The canonical projection a policy-only regrade object must equal. */
|
|
209
|
+
export declare function expectedAgentReadinessRegradeProjection(input: {
|
|
210
|
+
readonly profileId: string;
|
|
211
|
+
readonly object: AgentReadinessDeltaObject;
|
|
212
|
+
readonly current: AgentReadinessProjection;
|
|
213
|
+
readonly revision: AgentReadinessRevision;
|
|
214
|
+
readonly declarationRevision: AgentReadinessDeclarationRevision;
|
|
215
|
+
readonly entityRevision: EntityRevision;
|
|
216
|
+
readonly entitySlug: string;
|
|
217
|
+
readonly evidence: AgentReadinessRegradeEvidence | undefined;
|
|
218
|
+
readonly deltaEvidence: AgentReadinessEvidenceChanges;
|
|
219
|
+
readonly policy: AgentReadinessPolicy;
|
|
220
|
+
readonly policyAsOf: string;
|
|
221
|
+
readonly freshnessPolicy: FreshnessPolicy;
|
|
222
|
+
}): AgentReadinessProjection;
|
|
223
|
+
//# sourceMappingURL=agent-readiness-regrade-evidence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-readiness-regrade-evidence.d.ts","sourceRoot":"","sources":["../../../../modules/release/src/agent-readiness-regrade-evidence.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import { basename } from "node:path";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { agentReadinessDigestSchema, agentReadinessProfileIdSchema, agentReadinessProjectionSchema, } from "../../../contracts/agent-readiness/src/index.js";
|
|
4
|
+
import { catalogEventSchema } from "../../../contracts/events/src/index.js";
|
|
5
|
+
import { observationSchema } from "../../../contracts/observations/src/index.js";
|
|
6
|
+
import { deriveAgentReadinessReprojection, regradeAgentReadinessProjection, } from "../../agent-readiness-policy/src/index.js";
|
|
7
|
+
import { validateProtectedEvent } from "../../authority/src/index.js";
|
|
8
|
+
import { compareCanonicalStrings, digest } from "../../primitives/src/index.js";
|
|
9
|
+
import { buildEventGraph } from "../../provenance/src/index.js";
|
|
10
|
+
import { mergeCanonicalById } from "./evidence-admission.js";
|
|
11
|
+
export const AGENT_READINESS_REGRADE_EVIDENCE_PREFIX = "agent-readiness-regrade-evidence/";
|
|
12
|
+
/**
|
|
13
|
+
* Exact evidence context for reprojection of an existing revision. New events
|
|
14
|
+
* still require ordinary release admission; these bytes only close the graph
|
|
15
|
+
* beside the prior projection for independent offline recomputation.
|
|
16
|
+
*/
|
|
17
|
+
export const agentReadinessRegradeEvidenceSchema = z
|
|
18
|
+
.object({
|
|
19
|
+
evidence_contract: z.literal("sourcey.agent-readiness-regrade-evidence/v1alpha1"),
|
|
20
|
+
agent_readiness_profile_id: agentReadinessProfileIdSchema,
|
|
21
|
+
revision_digest: agentReadinessDigestSchema,
|
|
22
|
+
events: z.array(catalogEventSchema).min(1),
|
|
23
|
+
observations: z.array(observationSchema),
|
|
24
|
+
})
|
|
25
|
+
.strict();
|
|
26
|
+
/**
|
|
27
|
+
* Select the changed evidence owned by one exact Agent Readiness revision.
|
|
28
|
+
* A Catalog delta is not a complete event graph: unrelated transitions may
|
|
29
|
+
* target immutable objects retained by the parent release.
|
|
30
|
+
*/
|
|
31
|
+
export function selectAgentReadinessEvidenceChanges(input) {
|
|
32
|
+
const events = input.events.filter((event) => event.subject.subject_type === "agent_readiness_profile" &&
|
|
33
|
+
event.subject.agent_readiness_profile_id === input.profileId &&
|
|
34
|
+
event.subject.revision_digest === input.revisionDigest);
|
|
35
|
+
const observationIds = new Set(events.flatMap((event) => {
|
|
36
|
+
if (event.kind !== "evidence.bound")
|
|
37
|
+
return [];
|
|
38
|
+
const observationId = event.payload.observation_id;
|
|
39
|
+
return typeof observationId === "string" ? [observationId] : [];
|
|
40
|
+
}));
|
|
41
|
+
return {
|
|
42
|
+
events,
|
|
43
|
+
observations: input.observations.filter((observation) => observationIds.has(observation.observation_id)),
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Select, from the resolved closure, exactly the events and observations one
|
|
48
|
+
* regrade is projected from: the prior projection's basis events, every event
|
|
49
|
+
* on the same revision, and every event that invalidates one of those.
|
|
50
|
+
*/
|
|
51
|
+
export function selectAgentReadinessRegradeEvidence(input) {
|
|
52
|
+
const included = new Set(input.priorProjection.provenance.basis_event_ids);
|
|
53
|
+
for (const event of input.events) {
|
|
54
|
+
if (event.subject.revision_digest === input.revision.revision_digest) {
|
|
55
|
+
included.add(event.event_id);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
for (const event of input.events) {
|
|
59
|
+
const target = event.payload.target_event_id;
|
|
60
|
+
if (typeof target === "string" && included.has(target))
|
|
61
|
+
included.add(event.event_id);
|
|
62
|
+
}
|
|
63
|
+
const events = input.events
|
|
64
|
+
.filter((event) => included.has(event.event_id))
|
|
65
|
+
.sort((left, right) => compareCanonicalStrings(left.event_id, right.event_id));
|
|
66
|
+
const missing = [...included].filter((eventId) => !events.some((event) => event.event_id === eventId));
|
|
67
|
+
if (missing.length > 0) {
|
|
68
|
+
throw new Error(`Agent Readiness regrade ${input.profileId} cannot resolve basis events ${missing.join(", ")}.`);
|
|
69
|
+
}
|
|
70
|
+
const observationIds = new Set(events.flatMap((event) => {
|
|
71
|
+
if (event.kind !== "evidence.bound")
|
|
72
|
+
return [];
|
|
73
|
+
const observationId = event.payload.observation_id;
|
|
74
|
+
return typeof observationId === "string" ? [observationId] : [];
|
|
75
|
+
}));
|
|
76
|
+
const observations = input.observations
|
|
77
|
+
.filter((observation) => observationIds.has(observation.observation_id))
|
|
78
|
+
.sort((left, right) => compareCanonicalStrings(left.observation_id, right.observation_id));
|
|
79
|
+
const missingObservations = [...observationIds].filter((observationId) => !observations.some((observation) => observation.observation_id === observationId));
|
|
80
|
+
if (missingObservations.length > 0) {
|
|
81
|
+
throw new Error(`Agent Readiness regrade ${input.profileId} cannot resolve observations ${missingObservations.join(", ")}.`);
|
|
82
|
+
}
|
|
83
|
+
return agentReadinessRegradeEvidenceSchema.parse({
|
|
84
|
+
evidence_contract: "sourcey.agent-readiness-regrade-evidence/v1alpha1",
|
|
85
|
+
agent_readiness_profile_id: input.profileId,
|
|
86
|
+
revision_digest: input.revision.revision_digest,
|
|
87
|
+
events,
|
|
88
|
+
observations,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
/** The evidence must close the prior projection exactly before it can rebuild its graph. */
|
|
92
|
+
export function verifyAgentReadinessRegradeEvidence(input) {
|
|
93
|
+
const profileId = input.priorProjection.agent_readiness_profile_id;
|
|
94
|
+
if (input.evidence.agent_readiness_profile_id !== profileId ||
|
|
95
|
+
input.evidence.revision_digest !== input.revision.revision_digest) {
|
|
96
|
+
throw new Error(`Agent Readiness regrade evidence does not address ${profileId}.`);
|
|
97
|
+
}
|
|
98
|
+
const eventIds = new Set(input.evidence.events.map((event) => event.event_id));
|
|
99
|
+
const missing = input.priorProjection.provenance.basis_event_ids.filter((eventId) => !eventIds.has(eventId));
|
|
100
|
+
if (missing.length > 0) {
|
|
101
|
+
throw new Error(`Agent Readiness regrade ${profileId} evidence omits basis events ${missing.join(", ")}.`);
|
|
102
|
+
}
|
|
103
|
+
for (const event of input.evidence.events) {
|
|
104
|
+
if (event.subject.revision_digest !== undefined &&
|
|
105
|
+
event.subject.revision_digest !== input.revision.revision_digest &&
|
|
106
|
+
!input.priorProjection.provenance.basis_event_ids.includes(event.event_id)) {
|
|
107
|
+
throw new Error(`Agent Readiness regrade ${profileId} evidence carries foreign event ${event.event_id}.`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return buildEventGraph(input.evidence.events, input.evidence.observations);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Read one shipped regrade evidence file. Retained evidence re-verifies every
|
|
114
|
+
* event signature against the release-pinned registry at this release's
|
|
115
|
+
* sequence; it admits nothing and carries no inclusion record.
|
|
116
|
+
*/
|
|
117
|
+
export function readAgentReadinessRegradeEvidenceFile(input) {
|
|
118
|
+
const evidence = agentReadinessRegradeEvidenceSchema.parse(JSON.parse(input.bytes.toString("utf8")));
|
|
119
|
+
const address = basename(input.path, ".json");
|
|
120
|
+
if (evidence.agent_readiness_profile_id !== address) {
|
|
121
|
+
throw new Error(`Catalog delta regrade evidence ${input.path} is not addressed correctly.`);
|
|
122
|
+
}
|
|
123
|
+
for (const event of evidence.events) {
|
|
124
|
+
validateProtectedEvent(event, input.registry, input.releaseSequence);
|
|
125
|
+
}
|
|
126
|
+
for (const observation of evidence.observations) {
|
|
127
|
+
const { observation_id: observationId, ...core } = observation;
|
|
128
|
+
if (digest(core) !== observationId) {
|
|
129
|
+
throw new Error(`Catalog delta regrade evidence ${input.path} observation is not content-addressed.`);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return [address, evidence];
|
|
133
|
+
}
|
|
134
|
+
/** Every shipped evidence file must belong to exactly one policy regrade object. */
|
|
135
|
+
export function assertAgentReadinessRegradeEvidenceClosure(evidence, objects) {
|
|
136
|
+
for (const profileId of evidence.keys()) {
|
|
137
|
+
const object = objects.get(profileId);
|
|
138
|
+
if (!object ||
|
|
139
|
+
object.profile_input !== null ||
|
|
140
|
+
!object.projection ||
|
|
141
|
+
!object.prior_projection) {
|
|
142
|
+
throw new Error(`Catalog delta carries regrade evidence for non-regrade ${profileId}.`);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/** The canonical projection a policy-only regrade object must equal. */
|
|
147
|
+
export function expectedAgentReadinessRegradeProjection(input) {
|
|
148
|
+
if (!input.object.prior_projection) {
|
|
149
|
+
throw new Error(`Agent Readiness regrade ${input.profileId} lacks its exact prior projection.`);
|
|
150
|
+
}
|
|
151
|
+
const priorProjection = agentReadinessProjectionSchema.parse(input.object.prior_projection);
|
|
152
|
+
if (input.evidence) {
|
|
153
|
+
// Validate the supplied context before selecting from it. Selection must not
|
|
154
|
+
// silently discard a foreign profile, revision or event from the archive.
|
|
155
|
+
verifyAgentReadinessRegradeEvidence({
|
|
156
|
+
evidence: input.evidence,
|
|
157
|
+
revision: input.revision,
|
|
158
|
+
priorProjection,
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
const graph = input.evidence
|
|
162
|
+
? verifyAgentReadinessRegradeEvidence({
|
|
163
|
+
// A retained context may not hide a newly admitted retraction. Merge
|
|
164
|
+
// the verified successor graph before selecting this profile's closure.
|
|
165
|
+
evidence: selectAgentReadinessRegradeEvidence({
|
|
166
|
+
profileId: input.profileId,
|
|
167
|
+
revision: input.revision,
|
|
168
|
+
priorProjection,
|
|
169
|
+
events: mergeCanonicalById(input.evidence.events, input.deltaEvidence.events, "event", (event) => event.event_id),
|
|
170
|
+
observations: mergeCanonicalById(input.evidence.observations, input.deltaEvidence.observations, "observation", (observation) => observation.observation_id),
|
|
171
|
+
}),
|
|
172
|
+
revision: input.revision,
|
|
173
|
+
priorProjection,
|
|
174
|
+
})
|
|
175
|
+
: buildEventGraph(input.deltaEvidence.events, input.deltaEvidence.observations);
|
|
176
|
+
const reproject = input.evidence
|
|
177
|
+
? regradeAgentReadinessProjection
|
|
178
|
+
: deriveAgentReadinessReprojection;
|
|
179
|
+
return reproject({
|
|
180
|
+
currentProjection: input.current,
|
|
181
|
+
revision: input.revision,
|
|
182
|
+
declarationRevision: input.declarationRevision,
|
|
183
|
+
authorityEntityRevision: input.entityRevision,
|
|
184
|
+
priorProjection,
|
|
185
|
+
graph,
|
|
186
|
+
entitySlug: input.entitySlug,
|
|
187
|
+
policy: input.policy,
|
|
188
|
+
policyAsOf: input.policyAsOf,
|
|
189
|
+
freshnessPolicy: input.freshnessPolicy,
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
//# sourceMappingURL=agent-readiness-regrade-evidence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-readiness-regrade-evidence.js","sourceRoot":"","sources":["../../../../modules/release/src/agent-readiness-regrade-evidence.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changes.d.ts","sourceRoot":"","sources":["../../../../modules/release/src/changes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,+BAA+B,EAChC,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,0CAA0C,CAAC;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"changes.d.ts","sourceRoot":"","sources":["../../../../modules/release/src/changes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,+BAA+B,EAChC,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,MAAM,0CAA0C,CAAC;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,wCAAwC,CAAC;AAShD,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAClC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IACxE,QAAQ,CAAC,sBAAsB,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACrE,QAAQ,CAAC,4BAA4B,EAAE,SAAS,+BAA+B,EAAE,CAAC;IAClF,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;CAC1C,GAAG,aAAa,EAAE,CAwUlB;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE;IAChD,QAAQ,CAAC,OAAO,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACtD,QAAQ,CAAC,KAAK,EAAE,SAAS,+BAA+B,EAAE,CAAC;IAC3D,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACnD,GAAG,aAAa,EAAE,CAQlB"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { releaseChangeSchema } from "../../../contracts/artifact/src/index.js";
|
|
2
2
|
import { offerCanonicalPath, programCanonicalPath, } from "../../../contracts/routes/src/index.js";
|
|
3
|
+
import { isAgentReadinessRouteOnlySuccession } from "../../agent-readiness-policy/src/index.js";
|
|
3
4
|
import { compareCanonicalStrings, digest } from "../../primitives/src/index.js";
|
|
5
|
+
import { catalogEntityProjectionDigest, catalogOfferProjectionDigest, catalogProgramProjectionDigest, } from "../../projection-identity/src/index.js";
|
|
4
6
|
export function buildChanges(input) {
|
|
5
7
|
const { parent, current, identities, parentRoutes } = input;
|
|
6
8
|
const candidates = [];
|
|
7
9
|
const priorEntities = new Map(parent?.entities.map((entity) => [entity.entity_id, entity]) ?? []);
|
|
8
10
|
for (const entity of current.entities) {
|
|
9
11
|
const prior = priorEntities.get(entity.entity_id);
|
|
10
|
-
const projectionDigest =
|
|
12
|
+
const projectionDigest = catalogEntityProjectionDigest(entity);
|
|
11
13
|
if (!prior) {
|
|
12
14
|
candidates.push({
|
|
13
15
|
kind: "entity.added",
|
|
@@ -18,14 +20,14 @@ export function buildChanges(input) {
|
|
|
18
20
|
basis_event_ids: [...entity.provenance.basis_event_ids],
|
|
19
21
|
});
|
|
20
22
|
}
|
|
21
|
-
else if (
|
|
23
|
+
else if (catalogEntityProjectionDigest(prior) !== projectionDigest) {
|
|
22
24
|
candidates.push({
|
|
23
25
|
kind: "entity.updated",
|
|
24
26
|
subject_type: "entity",
|
|
25
27
|
subject_id: entity.entity_id,
|
|
26
28
|
previous_revision_digest: prior.revision_digest,
|
|
27
29
|
revision_digest: entity.revision_digest,
|
|
28
|
-
previous_projection_digest:
|
|
30
|
+
previous_projection_digest: catalogEntityProjectionDigest(prior),
|
|
29
31
|
projection_digest: projectionDigest,
|
|
30
32
|
basis_event_ids: [...entity.provenance.basis_event_ids],
|
|
31
33
|
});
|
|
@@ -41,7 +43,7 @@ export function buildChanges(input) {
|
|
|
41
43
|
subject_type: "entity",
|
|
42
44
|
subject_id: entity.entity_id,
|
|
43
45
|
previous_revision_digest: entity.revision_digest,
|
|
44
|
-
previous_projection_digest:
|
|
46
|
+
previous_projection_digest: catalogEntityProjectionDigest(entity),
|
|
45
47
|
basis_event_ids: [],
|
|
46
48
|
tombstone: {
|
|
47
49
|
reason: "retired",
|
|
@@ -55,7 +57,7 @@ export function buildChanges(input) {
|
|
|
55
57
|
for (const entity of current.entities) {
|
|
56
58
|
for (const program of entity.programs) {
|
|
57
59
|
const prior = priorPrograms.get(program.program_id);
|
|
58
|
-
const projectionDigest =
|
|
60
|
+
const projectionDigest = catalogProgramProjectionDigest(program);
|
|
59
61
|
const reparent = prior && prior.entity.entity_id !== entity.entity_id
|
|
60
62
|
? identities.program_reparents?.[program.program_id]
|
|
61
63
|
: undefined;
|
|
@@ -69,7 +71,7 @@ export function buildChanges(input) {
|
|
|
69
71
|
basis_event_ids: [...program.provenance.basis_event_ids],
|
|
70
72
|
});
|
|
71
73
|
}
|
|
72
|
-
else if (
|
|
74
|
+
else if (catalogProgramProjectionDigest(prior.program) !== projectionDigest ||
|
|
73
75
|
prior.entity.entity_id !== entity.entity_id) {
|
|
74
76
|
if (prior.entity.entity_id !== entity.entity_id &&
|
|
75
77
|
(!reparent ||
|
|
@@ -84,7 +86,7 @@ export function buildChanges(input) {
|
|
|
84
86
|
subject_id: program.program_id,
|
|
85
87
|
previous_revision_digest: prior.program.revision_digest,
|
|
86
88
|
revision_digest: program.revision_digest,
|
|
87
|
-
previous_projection_digest:
|
|
89
|
+
previous_projection_digest: catalogProgramProjectionDigest(prior.program),
|
|
88
90
|
projection_digest: projectionDigest,
|
|
89
91
|
basis_event_ids: [
|
|
90
92
|
...new Set([
|
|
@@ -106,7 +108,7 @@ export function buildChanges(input) {
|
|
|
106
108
|
subject_type: "program",
|
|
107
109
|
subject_id: program.program_id,
|
|
108
110
|
previous_revision_digest: program.revision_digest,
|
|
109
|
-
previous_projection_digest:
|
|
111
|
+
previous_projection_digest: catalogProgramProjectionDigest(program),
|
|
110
112
|
basis_event_ids: [],
|
|
111
113
|
tombstone: {
|
|
112
114
|
reason: "retired",
|
|
@@ -119,7 +121,7 @@ export function buildChanges(input) {
|
|
|
119
121
|
for (const entity of current.entities) {
|
|
120
122
|
for (const offer of entity.offers) {
|
|
121
123
|
const prior = priorOffers.get(offer.offer_id);
|
|
122
|
-
const projectionDigest =
|
|
124
|
+
const projectionDigest = catalogOfferProjectionDigest(offer);
|
|
123
125
|
const reparent = prior && prior.entity.entity_id !== entity.entity_id
|
|
124
126
|
? identities.offer_reparents?.[offer.offer_id]
|
|
125
127
|
: undefined;
|
|
@@ -133,7 +135,7 @@ export function buildChanges(input) {
|
|
|
133
135
|
basis_event_ids: [...offer.provenance.basis_event_ids],
|
|
134
136
|
});
|
|
135
137
|
}
|
|
136
|
-
else if (
|
|
138
|
+
else if (catalogOfferProjectionDigest(prior.offer) !== projectionDigest ||
|
|
137
139
|
prior.entity.entity_id !== entity.entity_id) {
|
|
138
140
|
if (prior.entity.entity_id !== entity.entity_id &&
|
|
139
141
|
(!reparent ||
|
|
@@ -153,7 +155,7 @@ export function buildChanges(input) {
|
|
|
153
155
|
subject_id: offer.offer_id,
|
|
154
156
|
previous_revision_digest: prior.offer.revision_digest,
|
|
155
157
|
revision_digest: offer.revision_digest,
|
|
156
|
-
previous_projection_digest:
|
|
158
|
+
previous_projection_digest: catalogOfferProjectionDigest(prior.offer),
|
|
157
159
|
projection_digest: projectionDigest,
|
|
158
160
|
basis_event_ids: [
|
|
159
161
|
...new Set([
|
|
@@ -186,7 +188,7 @@ export function buildChanges(input) {
|
|
|
186
188
|
subject_type: "offer",
|
|
187
189
|
subject_id: offer.offer_id,
|
|
188
190
|
previous_revision_digest: offer.revision_digest,
|
|
189
|
-
previous_projection_digest:
|
|
191
|
+
previous_projection_digest: catalogOfferProjectionDigest(offer),
|
|
190
192
|
basis_event_ids: [],
|
|
191
193
|
tombstone: {
|
|
192
194
|
reason: "retired",
|
|
@@ -327,16 +329,17 @@ function agentReadinessChangeCandidates(input) {
|
|
|
327
329
|
const policyProjectionRefresh = prior.revision_digest === profile.revision_digest &&
|
|
328
330
|
(prior.policy_digest !== profile.policy_digest ||
|
|
329
331
|
prior.policy_as_of !== profile.policy_as_of ||
|
|
330
|
-
prior.provenance.freshness_policy_digest !== profile.provenance.freshness_policy_digest
|
|
331
|
-
prior.canonical_url !== profile.canonical_url);
|
|
332
|
+
prior.provenance.freshness_policy_digest !== profile.provenance.freshness_policy_digest);
|
|
332
333
|
const kind = lifecycleChanged && profile.lifecycle === "ended"
|
|
333
334
|
? "agent-readiness.ended"
|
|
334
335
|
: lifecycleChanged && profile.lifecycle === "withdrawn"
|
|
335
336
|
? "agent-readiness.withdrawn"
|
|
336
|
-
:
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
337
|
+
: isAgentReadinessRouteOnlySuccession(prior, profile)
|
|
338
|
+
? "agent-readiness.relocated"
|
|
339
|
+
: input.regradedProfileIds?.has(profile.agent_readiness_profile_id) === true ||
|
|
340
|
+
policyProjectionRefresh
|
|
341
|
+
? "agent-readiness.regraded"
|
|
342
|
+
: "agent-readiness.updated";
|
|
340
343
|
candidates.push({
|
|
341
344
|
kind,
|
|
342
345
|
subject_type: "agent_readiness_profile",
|
|
@@ -371,13 +374,6 @@ function agentReadinessChangeCandidates(input) {
|
|
|
371
374
|
}
|
|
372
375
|
return candidates;
|
|
373
376
|
}
|
|
374
|
-
function entityProjectionDigest(entity) {
|
|
375
|
-
const { programs: _, offers: __, ...projection } = entity;
|
|
376
|
-
return digest(projection);
|
|
377
|
-
}
|
|
378
|
-
function programProjectionDigest(program) {
|
|
379
|
-
return digest(program);
|
|
380
|
-
}
|
|
381
377
|
function canonicalRoute(routes, entityId, programId, offerId) {
|
|
382
378
|
if (!routes)
|
|
383
379
|
return undefined;
|