@sourcey/catalog-verifier 1.1.0 → 1.1.2
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/SBOM.cdx.json +110 -20
- package/SOURCEY-CLOSURE.json +698 -522
- package/SOURCEY-DISTRIBUTION.json +2 -1
- package/SOURCEY-LICENSE-POLICY.json +1 -1
- package/SOURCEY-TOOLCHAIN.json +3 -3
- package/THIRD_PARTY_NOTICES.json +52 -7
- package/dist/contracts/agent-readiness/src/declaration-acquisition.d.ts +111 -110
- package/dist/contracts/agent-readiness/src/declaration-acquisition.d.ts.map +1 -1
- package/dist/contracts/agent-readiness/src/declaration-acquisition.js +4 -2
- package/dist/contracts/agent-readiness/src/declaration-acquisition.js.map +1 -1
- package/dist/contracts/agent-readiness/src/declaration-reference.d.ts +43 -5
- package/dist/contracts/agent-readiness/src/declaration-reference.d.ts.map +1 -1
- package/dist/contracts/agent-readiness/src/declaration-reference.js +28 -1
- package/dist/contracts/agent-readiness/src/declaration-reference.js.map +1 -1
- package/dist/contracts/agent-readiness/src/declaration.d.ts +472 -472
- package/dist/contracts/agent-readiness/src/evidence.d.ts +87 -43
- package/dist/contracts/agent-readiness/src/evidence.d.ts.map +1 -1
- package/dist/contracts/agent-readiness/src/evidence.js +30 -7
- package/dist/contracts/agent-readiness/src/evidence.js.map +1 -1
- package/dist/contracts/agent-readiness/src/index.d.ts +1543 -1498
- package/dist/contracts/agent-readiness/src/index.d.ts.map +1 -1
- package/dist/contracts/agent-readiness/src/index.js +10 -5
- package/dist/contracts/agent-readiness/src/index.js.map +1 -1
- package/dist/contracts/agent-readiness/src/interaction.d.ts +9 -9
- package/dist/contracts/agent-readiness/src/method-pack.d.ts +122 -128
- package/dist/contracts/agent-readiness/src/method-pack.d.ts.map +1 -1
- package/dist/contracts/agent-readiness/src/shared.d.ts +30 -28
- package/dist/contracts/agent-readiness/src/shared.d.ts.map +1 -1
- package/dist/contracts/agent-readiness/src/shared.js +4 -1
- package/dist/contracts/agent-readiness/src/shared.js.map +1 -1
- package/dist/contracts/api/src/index.d.ts +16080 -7777
- package/dist/contracts/api/src/index.d.ts.map +1 -1
- package/dist/contracts/api/src/index.js +258 -28
- package/dist/contracts/api/src/index.js.map +1 -1
- package/dist/contracts/artifact/src/distribution.d.ts +17 -0
- package/dist/contracts/artifact/src/distribution.d.ts.map +1 -0
- package/dist/contracts/artifact/src/distribution.js +57 -0
- package/dist/contracts/artifact/src/distribution.js.map +1 -0
- package/dist/contracts/artifact/src/index.d.ts +911 -177
- package/dist/contracts/artifact/src/index.d.ts.map +1 -1
- package/dist/contracts/artifact/src/index.js +71 -57
- package/dist/contracts/artifact/src/index.js.map +1 -1
- package/dist/contracts/assets/src/index.d.ts +105 -105
- package/dist/contracts/assets/src/index.d.ts.map +1 -1
- package/dist/contracts/assets/src/index.js +2 -1
- package/dist/contracts/assets/src/index.js.map +1 -1
- package/dist/contracts/assurance/src/index.d.ts +19 -19
- package/dist/contracts/assurance/src/index.d.ts.map +1 -1
- package/dist/contracts/assurance/src/index.js +2 -1
- package/dist/contracts/assurance/src/index.js.map +1 -1
- package/dist/contracts/authoring/src/index.d.ts +79 -61
- package/dist/contracts/authoring/src/index.d.ts.map +1 -1
- package/dist/contracts/authoring/src/index.js +27 -1
- package/dist/contracts/authoring/src/index.js.map +1 -1
- package/dist/contracts/authority/src/index.d.ts +10 -10
- package/dist/contracts/authority/src/index.d.ts.map +1 -1
- package/dist/contracts/authority/src/index.js +3 -2
- package/dist/contracts/authority/src/index.js.map +1 -1
- package/dist/contracts/billing/src/index.d.ts +80 -135
- package/dist/contracts/billing/src/index.d.ts.map +1 -1
- package/dist/contracts/billing/src/index.js +1 -91
- package/dist/contracts/billing/src/index.js.map +1 -1
- package/dist/contracts/capture/src/index.d.ts +17 -0
- package/dist/contracts/capture/src/index.d.ts.map +1 -0
- package/dist/contracts/capture/src/index.js +15 -0
- package/dist/contracts/capture/src/index.js.map +1 -0
- package/dist/contracts/capture/src/method-names.d.ts +4 -0
- package/dist/contracts/capture/src/method-names.d.ts.map +1 -0
- package/dist/contracts/capture/src/method-names.js +4 -0
- package/dist/contracts/capture/src/method-names.js.map +1 -0
- package/dist/contracts/capture/src/methods.d.ts +7 -0
- package/dist/contracts/capture/src/methods.d.ts.map +1 -0
- package/dist/contracts/capture/src/methods.js +18 -0
- package/dist/contracts/capture/src/methods.js.map +1 -0
- package/dist/contracts/catalog-verifier/src/index.d.ts +42 -41
- package/dist/contracts/catalog-verifier/src/index.d.ts.map +1 -1
- package/dist/contracts/catalog-verifier/src/index.js.map +1 -1
- package/dist/contracts/datasets/src/index.d.ts +285 -132
- package/dist/contracts/datasets/src/index.d.ts.map +1 -1
- package/dist/contracts/datasets/src/index.js +1 -1
- package/dist/contracts/datasets/src/index.js.map +1 -1
- package/dist/contracts/events/src/index.d.ts +106 -104
- package/dist/contracts/events/src/index.d.ts.map +1 -1
- package/dist/contracts/events/src/index.js +2 -1
- package/dist/contracts/events/src/index.js.map +1 -1
- package/dist/contracts/evidence/src/index.d.ts +97 -29
- package/dist/contracts/evidence/src/index.d.ts.map +1 -1
- package/dist/contracts/evidence/src/index.js +77 -10
- package/dist/contracts/evidence/src/index.js.map +1 -1
- package/dist/contracts/feed/src/index.d.ts +24 -24
- package/dist/contracts/feed/src/index.d.ts.map +1 -1
- package/dist/contracts/feed/src/index.js +3 -3
- package/dist/contracts/feed/src/index.js.map +1 -1
- package/dist/contracts/funded-work/src/index.d.ts +2 -2
- package/dist/contracts/funded-work/src/index.d.ts.map +1 -1
- package/dist/contracts/funded-work/src/index.js +2 -1
- package/dist/contracts/funded-work/src/index.js.map +1 -1
- package/dist/contracts/observations/src/index.d.ts +38 -16
- package/dist/contracts/observations/src/index.d.ts.map +1 -1
- package/dist/contracts/observations/src/index.js +8 -7
- package/dist/contracts/observations/src/index.js.map +1 -1
- package/dist/contracts/policies/src/index.d.ts +35 -21
- package/dist/contracts/policies/src/index.d.ts.map +1 -1
- package/dist/contracts/policies/src/index.js +1 -1
- package/dist/contracts/policies/src/index.js.map +1 -1
- package/dist/contracts/publication/src/index.d.ts +517 -517
- package/dist/contracts/publication/src/index.d.ts.map +1 -1
- package/dist/contracts/publication/src/index.js +6 -2
- package/dist/contracts/publication/src/index.js.map +1 -1
- package/dist/contracts/release/src/index.d.ts +708 -347
- package/dist/contracts/release/src/index.d.ts.map +1 -1
- package/dist/contracts/release/src/index.js +60 -129
- package/dist/contracts/release/src/index.js.map +1 -1
- package/dist/contracts/revisions/src/index.d.ts +199 -86
- package/dist/contracts/revisions/src/index.d.ts.map +1 -1
- package/dist/contracts/revisions/src/index.js +55 -50
- package/dist/contracts/revisions/src/index.js.map +1 -1
- package/dist/contracts/routes/src/index.d.ts +4 -12
- package/dist/contracts/routes/src/index.d.ts.map +1 -1
- package/dist/contracts/routes/src/index.js +2 -9
- package/dist/contracts/routes/src/index.js.map +1 -1
- package/dist/contracts/sourcey-publication/src/index.d.ts +27 -0
- package/dist/contracts/sourcey-publication/src/index.d.ts.map +1 -0
- package/dist/contracts/sourcey-publication/src/index.js +43 -0
- package/dist/contracts/sourcey-publication/src/index.js.map +1 -0
- package/dist/contracts/sourcey-publication/src/instance-id.d.ts +3 -0
- package/dist/contracts/sourcey-publication/src/instance-id.d.ts.map +1 -0
- package/dist/contracts/sourcey-publication/src/instance-id.js +3 -0
- package/dist/contracts/sourcey-publication/src/instance-id.js.map +1 -0
- package/dist/contracts/sourcey-publication/src/ownership.d.ts +13 -0
- package/dist/contracts/sourcey-publication/src/ownership.d.ts.map +1 -0
- package/dist/contracts/sourcey-publication/src/ownership.js +80 -0
- package/dist/contracts/sourcey-publication/src/ownership.js.map +1 -0
- package/dist/contracts/standards/src/index.d.ts +251 -169
- package/dist/contracts/standards/src/index.d.ts.map +1 -1
- package/dist/contracts/standards/src/index.js +112 -1
- package/dist/contracts/standards/src/index.js.map +1 -1
- package/dist/contracts/{commercial-work → startup-credits-commercial}/src/index.d.ts +135 -135
- package/dist/contracts/startup-credits-commercial/src/index.d.ts.map +1 -0
- package/dist/contracts/{commercial-work → startup-credits-commercial}/src/index.js +2 -1
- package/dist/contracts/startup-credits-commercial/src/index.js.map +1 -0
- package/dist/contracts/taxonomy/src/index.d.ts +1 -0
- package/dist/contracts/taxonomy/src/index.d.ts.map +1 -1
- package/dist/contracts/taxonomy/src/index.js +16 -1
- package/dist/contracts/taxonomy/src/index.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/current-policy-metrics.d.ts +4 -2
- package/dist/modules/agent-readiness-policy/src/current-policy-metrics.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/current-policy-metrics.js +46 -85
- package/dist/modules/agent-readiness-policy/src/current-policy-metrics.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/current-policy-standards.d.ts +99 -0
- package/dist/modules/agent-readiness-policy/src/current-policy-standards.d.ts.map +1 -0
- package/dist/modules/agent-readiness-policy/src/current-policy-standards.js +99 -0
- package/dist/modules/agent-readiness-policy/src/current-policy-standards.js.map +1 -0
- package/dist/modules/agent-readiness-policy/src/current-policy.d.ts +58 -58
- package/dist/modules/agent-readiness-policy/src/current-policy.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/current-policy.js +56 -54
- package/dist/modules/agent-readiness-policy/src/current-policy.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/impact.d.ts +1 -2
- package/dist/modules/agent-readiness-policy/src/impact.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/impact.js +3 -5
- package/dist/modules/agent-readiness-policy/src/impact.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/index.d.ts +301 -301
- package/dist/modules/agent-readiness-policy/src/index.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/index.js +13 -7
- package/dist/modules/agent-readiness-policy/src/index.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/offer-relations.d.ts +3 -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 +31 -4
- package/dist/modules/agent-readiness-policy/src/offer-relations.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/revision.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/revision.js +3 -3
- package/dist/modules/agent-readiness-policy/src/revision.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 +1 -1
- package/dist/modules/agent-readiness-policy/src/standard-mapping.js.map +1 -1
- package/dist/modules/agent-readiness-policy/src/surface-selection.d.ts +17 -0
- package/dist/modules/agent-readiness-policy/src/surface-selection.d.ts.map +1 -1
- package/dist/modules/agent-readiness-policy/src/surface-selection.js +61 -13
- package/dist/modules/agent-readiness-policy/src/surface-selection.js.map +1 -1
- package/dist/modules/agent-readiness-repository/src/admission.d.ts +1 -1
- package/dist/modules/agent-readiness-repository/src/admission.d.ts.map +1 -1
- package/dist/modules/agent-readiness-repository/src/admission.js +3 -3
- package/dist/modules/agent-readiness-repository/src/admission.js.map +1 -1
- package/dist/modules/agent-readiness-repository/src/change.d.ts +17 -4
- package/dist/modules/agent-readiness-repository/src/change.d.ts.map +1 -1
- package/dist/modules/agent-readiness-repository/src/change.js +14 -7
- package/dist/modules/agent-readiness-repository/src/change.js.map +1 -1
- package/dist/modules/agent-readiness-repository/src/declaration-blob.d.ts +11 -7
- package/dist/modules/agent-readiness-repository/src/declaration-blob.d.ts.map +1 -1
- package/dist/modules/agent-readiness-repository/src/declaration-blob.js +21 -6
- package/dist/modules/agent-readiness-repository/src/declaration-blob.js.map +1 -1
- package/dist/modules/agent-readiness-repository/src/index.d.ts.map +1 -1
- package/dist/modules/agent-readiness-repository/src/index.js +1 -1
- package/dist/modules/agent-readiness-repository/src/index.js.map +1 -1
- package/dist/modules/artifact/src/agent-readiness-closure.d.ts +2 -3
- package/dist/modules/artifact/src/agent-readiness-closure.d.ts.map +1 -1
- package/dist/modules/artifact/src/agent-readiness-closure.js +6 -12
- package/dist/modules/artifact/src/agent-readiness-closure.js.map +1 -1
- package/dist/modules/artifact/src/asset-closure.d.ts +6 -1
- package/dist/modules/artifact/src/asset-closure.d.ts.map +1 -1
- package/dist/modules/artifact/src/asset-closure.js +9 -5
- package/dist/modules/artifact/src/asset-closure.js.map +1 -1
- package/dist/modules/artifact/src/authoring-closure.d.ts.map +1 -1
- package/dist/modules/artifact/src/authoring-closure.js +1 -1
- package/dist/modules/artifact/src/authoring-closure.js.map +1 -1
- package/dist/modules/artifact/src/index.d.ts +10 -10
- package/dist/modules/artifact/src/index.d.ts.map +1 -1
- package/dist/modules/artifact/src/index.js +58 -229
- package/dist/modules/artifact/src/index.js.map +1 -1
- package/dist/modules/artifact/src/policy-closure.d.ts.map +1 -1
- package/dist/modules/artifact/src/policy-closure.js +6 -10
- package/dist/modules/artifact/src/policy-closure.js.map +1 -1
- package/dist/modules/artifact/src/release-directory-files.d.ts +14 -7
- package/dist/modules/artifact/src/release-directory-files.d.ts.map +1 -1
- package/dist/modules/artifact/src/release-directory-files.js +28 -32
- package/dist/modules/artifact/src/release-directory-files.js.map +1 -1
- package/dist/modules/artifact/src/trust-history.d.ts.map +1 -1
- package/dist/modules/artifact/src/trust-history.js +1 -1
- package/dist/modules/artifact/src/trust-history.js.map +1 -1
- package/dist/modules/assets/src/authority-bundle.d.ts +1 -1
- package/dist/modules/assets/src/authority-bundle.d.ts.map +1 -1
- package/dist/modules/assets/src/authority-bundle.js +1 -1
- package/dist/modules/assets/src/authority-bundle.js.map +1 -1
- package/dist/modules/assets/src/delta.d.ts +34 -2
- package/dist/modules/assets/src/delta.d.ts.map +1 -1
- package/dist/modules/assets/src/delta.js +15 -20
- package/dist/modules/assets/src/delta.js.map +1 -1
- package/dist/modules/assets/src/index.d.ts.map +1 -1
- package/dist/modules/assets/src/index.js +1 -1
- package/dist/modules/assets/src/index.js.map +1 -1
- package/dist/modules/assets/src/ingestion.d.ts +1 -1
- package/dist/modules/assets/src/ingestion.d.ts.map +1 -1
- package/dist/modules/assets/src/ingestion.js +1 -1
- package/dist/modules/assets/src/ingestion.js.map +1 -1
- package/dist/modules/assurance/src/index.d.ts.map +1 -1
- package/dist/modules/assurance/src/index.js +1 -1
- package/dist/modules/assurance/src/index.js.map +1 -1
- package/dist/modules/authority/src/index.d.ts +2 -1
- package/dist/modules/authority/src/index.d.ts.map +1 -1
- package/dist/modules/authority/src/index.js +8 -1
- package/dist/modules/authority/src/index.js.map +1 -1
- package/dist/modules/authority/src/retained-capture-receipt.d.ts +7 -7
- package/dist/modules/authority/src/retained-capture-receipt.d.ts.map +1 -1
- package/dist/modules/authority/src/retained-capture-receipt.js +1 -1
- package/dist/modules/authority/src/retained-capture-receipt.js.map +1 -1
- 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 +1 -1
- package/dist/modules/authority-state/src/index.js.map +1 -1
- package/dist/modules/catalog-admission/src/admission-conflicts.d.ts +23 -18
- package/dist/modules/catalog-admission/src/admission-conflicts.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/admission-conflicts.js +20 -9
- package/dist/modules/catalog-admission/src/admission-conflicts.js.map +1 -1
- package/dist/modules/catalog-admission/src/change-analysis.d.ts +6 -1
- package/dist/modules/catalog-admission/src/change-analysis.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/change-analysis.js +25 -18
- package/dist/modules/catalog-admission/src/change-analysis.js.map +1 -1
- package/dist/modules/catalog-admission/src/index.d.ts +39 -49
- package/dist/modules/catalog-admission/src/index.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/index.js +140 -155
- package/dist/modules/catalog-admission/src/index.js.map +1 -1
- package/dist/modules/catalog-admission/src/machine-admission.d.ts +441 -409
- package/dist/modules/catalog-admission/src/machine-admission.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/machine-admission.js +7 -6
- package/dist/modules/catalog-admission/src/machine-admission.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication-assets.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication-assets.js +1 -1
- package/dist/modules/catalog-admission/src/publication-assets.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication-authorities.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication-authorities.js +1 -1
- package/dist/modules/catalog-admission/src/publication-authorities.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication-composition.d.ts +30 -30
- package/dist/modules/catalog-admission/src/publication-composition.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication-composition.js +1 -1
- package/dist/modules/catalog-admission/src/publication-composition.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication-dependencies.d.ts +1 -9
- package/dist/modules/catalog-admission/src/publication-dependencies.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication-dependencies.js +4 -8
- package/dist/modules/catalog-admission/src/publication-dependencies.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication-entities.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication-entities.js +1 -1
- package/dist/modules/catalog-admission/src/publication-entities.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication-recomposition.d.ts +1 -1
- package/dist/modules/catalog-admission/src/publication-recomposition.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication-recomposition.js +1 -1
- package/dist/modules/catalog-admission/src/publication-recomposition.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication-state.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication-state.js +1 -1
- package/dist/modules/catalog-admission/src/publication-state.js.map +1 -1
- package/dist/modules/catalog-admission/src/publication.d.ts +1 -1
- package/dist/modules/catalog-admission/src/publication.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/publication.js +1 -2
- package/dist/modules/catalog-admission/src/publication.js.map +1 -1
- package/dist/modules/catalog-admission/src/submission-input.d.ts +1 -1
- package/dist/modules/catalog-admission/src/submission-input.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/submission-input.js +1 -1
- package/dist/modules/catalog-admission/src/submission-input.js.map +1 -1
- package/dist/modules/catalog-admission/src/submission-state.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/submission-state.js +1 -1
- package/dist/modules/catalog-admission/src/submission-state.js.map +1 -1
- package/dist/modules/catalog-admission/src/submission.d.ts +17 -17
- package/dist/modules/catalog-admission/src/submission.d.ts.map +1 -1
- package/dist/modules/catalog-admission/src/submission.js +1 -1
- package/dist/modules/catalog-admission/src/submission.js.map +1 -1
- package/dist/modules/catalog-authoring-validation/src/index.d.ts +2 -0
- package/dist/modules/catalog-authoring-validation/src/index.d.ts.map +1 -1
- package/dist/modules/catalog-authoring-validation/src/index.js +8 -2
- package/dist/modules/catalog-authoring-validation/src/index.js.map +1 -1
- package/dist/modules/catalog-model/src/index.d.ts +2 -11
- package/dist/modules/catalog-model/src/index.d.ts.map +1 -1
- package/dist/modules/catalog-model/src/index.js +7 -15
- package/dist/modules/catalog-model/src/index.js.map +1 -1
- package/dist/modules/catalog-primitives/src/index.d.ts +19 -0
- package/dist/modules/catalog-primitives/src/index.d.ts.map +1 -0
- package/dist/modules/catalog-primitives/src/index.js +36 -0
- package/dist/modules/catalog-primitives/src/index.js.map +1 -0
- package/dist/modules/catalog-read-port/src/index.d.ts +1 -1
- package/dist/modules/catalog-read-port/src/index.d.ts.map +1 -1
- package/dist/modules/compiler/src/index.d.ts.map +1 -1
- package/dist/modules/compiler/src/index.js +1 -1
- package/dist/modules/compiler/src/index.js.map +1 -1
- package/dist/modules/evidence-comparison/src/values.d.ts +75 -0
- package/dist/modules/evidence-comparison/src/values.d.ts.map +1 -0
- package/dist/modules/evidence-comparison/src/values.js +283 -0
- package/dist/modules/evidence-comparison/src/values.js.map +1 -0
- package/dist/modules/evidence-grounding/src/figures.d.ts +56 -0
- package/dist/modules/evidence-grounding/src/figures.d.ts.map +1 -0
- package/dist/modules/evidence-grounding/src/figures.js +727 -0
- package/dist/modules/evidence-grounding/src/figures.js.map +1 -0
- package/dist/modules/evidence-grounding/src/index.d.ts +4 -0
- package/dist/modules/evidence-grounding/src/index.d.ts.map +1 -0
- package/dist/modules/evidence-grounding/src/index.js +4 -0
- package/dist/modules/evidence-grounding/src/index.js.map +1 -0
- package/dist/modules/evidence-grounding/src/locator.d.ts +50 -0
- package/dist/modules/evidence-grounding/src/locator.d.ts.map +1 -0
- package/dist/modules/evidence-grounding/src/locator.js +162 -0
- package/dist/modules/evidence-grounding/src/locator.js.map +1 -0
- package/dist/modules/evidence-grounding/src/written.d.ts +29 -0
- package/dist/modules/evidence-grounding/src/written.d.ts.map +1 -0
- package/dist/modules/evidence-grounding/src/written.js +111 -0
- package/dist/modules/evidence-grounding/src/written.js.map +1 -0
- package/dist/modules/evidence-operations/src/configuration.d.ts +15 -37
- package/dist/modules/evidence-operations/src/configuration.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/configuration.js +4 -18
- package/dist/modules/evidence-operations/src/configuration.js.map +1 -1
- package/dist/modules/evidence-operations/src/dependency-versions.js.map +1 -1
- package/dist/modules/evidence-operations/src/evidence-authority.d.ts +541 -451
- package/dist/modules/evidence-operations/src/evidence-authority.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/evidence-authority.js +23 -17
- package/dist/modules/evidence-operations/src/evidence-authority.js.map +1 -1
- package/dist/modules/evidence-operations/src/evidence-normalization.d.ts +28 -12
- package/dist/modules/evidence-operations/src/evidence-normalization.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/evidence-normalization.js +48 -8
- package/dist/modules/evidence-operations/src/evidence-normalization.js.map +1 -1
- package/dist/modules/evidence-operations/src/html-document.d.ts +4 -0
- package/dist/modules/evidence-operations/src/html-document.d.ts.map +1 -0
- package/dist/modules/evidence-operations/src/html-document.js +99 -0
- package/dist/modules/evidence-operations/src/html-document.js.map +1 -0
- package/dist/modules/evidence-operations/src/proof-graph.d.ts +7 -1
- package/dist/modules/evidence-operations/src/proof-graph.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/proof-graph.js +10 -12
- package/dist/modules/evidence-operations/src/proof-graph.js.map +1 -1
- package/dist/modules/evidence-operations/src/retained-revision.d.ts +1 -0
- package/dist/modules/evidence-operations/src/retained-revision.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/retained-revision.js +22 -19
- package/dist/modules/evidence-operations/src/retained-revision.js.map +1 -1
- package/dist/modules/evidence-operations/src/source-authority.d.ts +13 -1
- package/dist/modules/evidence-operations/src/source-authority.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/source-authority.js +18 -1
- package/dist/modules/evidence-operations/src/source-authority.js.map +1 -1
- package/dist/modules/evidence-operations/src/submission-verifier.d.ts +63 -24
- package/dist/modules/evidence-operations/src/submission-verifier.d.ts.map +1 -1
- package/dist/modules/evidence-operations/src/submission-verifier.js +21 -10
- package/dist/modules/evidence-operations/src/submission-verifier.js.map +1 -1
- package/dist/modules/evidence-operations/src/url-canonicalization.js +1 -1
- package/dist/modules/evidence-operations/src/url-canonicalization.js.map +1 -1
- package/dist/modules/policy-identity/src/index.d.ts.map +1 -1
- package/dist/modules/policy-identity/src/index.js +1 -1
- package/dist/modules/policy-identity/src/index.js.map +1 -1
- package/dist/modules/projection-identity/src/index.d.ts +1 -1
- package/dist/modules/projection-identity/src/index.d.ts.map +1 -1
- package/dist/modules/projection-identity/src/index.js +1 -1
- package/dist/modules/projection-identity/src/index.js.map +1 -1
- package/dist/modules/provenance/src/evidence-coverage.d.ts.map +1 -1
- package/dist/modules/provenance/src/evidence-coverage.js +3 -3
- package/dist/modules/provenance/src/evidence-coverage.js.map +1 -1
- package/dist/modules/provenance/src/index.d.ts +5 -3
- package/dist/modules/provenance/src/index.d.ts.map +1 -1
- package/dist/modules/provenance/src/index.js +19 -4
- package/dist/modules/provenance/src/index.js.map +1 -1
- package/dist/modules/provenance/src/material-claims.d.ts +87 -79
- package/dist/modules/provenance/src/material-claims.d.ts.map +1 -1
- package/dist/modules/provenance/src/material-claims.js +5 -3
- package/dist/modules/provenance/src/material-claims.js.map +1 -1
- package/dist/modules/provenance/src/prospective-evidence.js +1 -1
- package/dist/modules/provenance/src/prospective-evidence.js.map +1 -1
- package/dist/modules/publication-instance/src/index.d.ts +479 -0
- package/dist/modules/publication-instance/src/index.d.ts.map +1 -0
- package/dist/modules/publication-instance/src/index.js +34 -0
- package/dist/modules/publication-instance/src/index.js.map +1 -0
- package/dist/modules/release/src/agent-readiness-publication-inputs.d.ts.map +1 -1
- package/dist/modules/release/src/agent-readiness-publication-inputs.js +3 -3
- package/dist/modules/release/src/agent-readiness-publication-inputs.js.map +1 -1
- package/dist/modules/release/src/agent-readiness-regrade-evidence.d.ts +44 -33
- package/dist/modules/release/src/agent-readiness-regrade-evidence.d.ts.map +1 -1
- package/dist/modules/release/src/agent-readiness-regrade-evidence.js +6 -2
- package/dist/modules/release/src/agent-readiness-regrade-evidence.js.map +1 -1
- package/dist/modules/release/src/asset-delta-verifier.d.ts +2 -1
- package/dist/modules/release/src/asset-delta-verifier.d.ts.map +1 -1
- package/dist/modules/release/src/asset-delta-verifier.js +1 -3
- package/dist/modules/release/src/asset-delta-verifier.js.map +1 -1
- package/dist/modules/release/src/changes.d.ts +1 -1
- package/dist/modules/release/src/changes.d.ts.map +1 -1
- package/dist/modules/release/src/changes.js +8 -16
- package/dist/modules/release/src/changes.js.map +1 -1
- package/dist/modules/release/src/evidence-admission.d.ts +1 -1
- package/dist/modules/release/src/evidence-admission.d.ts.map +1 -1
- package/dist/modules/release/src/evidence-admission.js +11 -11
- package/dist/modules/release/src/evidence-admission.js.map +1 -1
- package/dist/modules/release/src/evidence-bundle-tree.js +1 -1
- package/dist/modules/release/src/evidence-bundle-tree.js.map +1 -1
- package/dist/modules/release/src/identity.d.ts +2 -2
- package/dist/modules/release/src/identity.d.ts.map +1 -1
- package/dist/modules/release/src/identity.js +77 -72
- package/dist/modules/release/src/identity.js.map +1 -1
- package/dist/modules/release/src/inputs.d.ts +6 -6
- package/dist/modules/release/src/inputs.d.ts.map +1 -1
- package/dist/modules/release/src/inputs.js +8 -6
- package/dist/modules/release/src/inputs.js.map +1 -1
- package/dist/modules/release/src/publication-authorities.d.ts +70 -66
- package/dist/modules/release/src/publication-authorities.d.ts.map +1 -1
- package/dist/modules/release/src/publication-authorities.js +1 -1
- package/dist/modules/release/src/publication-authorities.js.map +1 -1
- package/dist/modules/release/src/publication-inputs.d.ts.map +1 -1
- package/dist/modules/release/src/publication-inputs.js +3 -3
- package/dist/modules/release/src/publication-inputs.js.map +1 -1
- package/dist/modules/release/src/transition.d.ts +14 -9
- package/dist/modules/release/src/transition.d.ts.map +1 -1
- package/dist/modules/release/src/transition.js +81 -111
- package/dist/modules/release/src/transition.js.map +1 -1
- package/dist/modules/release/src/verification-changes.d.ts +8 -3
- package/dist/modules/release/src/verification-changes.d.ts.map +1 -1
- package/dist/modules/release/src/verification-changes.js +7 -34
- package/dist/modules/release/src/verification-changes.js.map +1 -1
- package/dist/modules/release/src/verification-policies.d.ts +67 -67
- package/dist/modules/release/src/verification-policies.d.ts.map +1 -1
- package/dist/modules/release/src/verification-policies.js +6 -11
- package/dist/modules/release/src/verification-policies.js.map +1 -1
- package/dist/modules/release/src/verification-transitions.d.ts +4 -4
- package/dist/modules/release/src/verification-transitions.d.ts.map +1 -1
- package/dist/modules/release/src/verification-transitions.js +3 -2
- package/dist/modules/release/src/verification-transitions.js.map +1 -1
- package/dist/modules/sourcey-publication/src/publication-parent-guard.d.ts.map +1 -0
- package/dist/modules/sourcey-publication/src/publication-parent-guard.js.map +1 -0
- package/dist/modules/sourcey-publication/src/publication-parent-relations.d.ts.map +1 -0
- package/dist/modules/{release → sourcey-publication}/src/publication-parent-relations.js +2 -2
- package/dist/modules/sourcey-publication/src/publication-parent-relations.js.map +1 -0
- package/dist/modules/{release → sourcey-publication}/src/submission-verification.d.ts +5 -0
- package/dist/modules/sourcey-publication/src/submission-verification.d.ts.map +1 -0
- package/dist/modules/{release → sourcey-publication}/src/submission-verification.js +7 -1
- package/dist/modules/{release → sourcey-publication}/src/submission-verification.js.map +1 -1
- package/dist/modules/{release → sourcey-publication}/src/verifier.d.ts +8 -3
- package/dist/modules/sourcey-publication/src/verifier.d.ts.map +1 -0
- package/dist/modules/{release → sourcey-publication}/src/verifier.js +103 -132
- package/dist/modules/sourcey-publication/src/verifier.js.map +1 -0
- package/dist/modules/standard-adapter-runtime/src/index.d.ts +1 -1
- package/dist/modules/standard-adapter-runtime/src/index.d.ts.map +1 -1
- package/dist/modules/standard-adapter-runtime/src/index.js +1 -1
- package/dist/modules/standard-adapter-runtime/src/index.js.map +1 -1
- package/dist/modules/standard-evidence/src/index.d.ts +1 -1
- package/dist/modules/standard-evidence/src/index.d.ts.map +1 -1
- package/dist/modules/standard-evidence/src/index.js +1 -1
- package/dist/modules/standard-evidence/src/index.js.map +1 -1
- package/dist/packages/catalog-verifier/src/application.d.ts +4 -4
- package/dist/packages/catalog-verifier/src/application.d.ts.map +1 -1
- package/dist/packages/catalog-verifier/src/application.js +17 -18
- package/dist/packages/catalog-verifier/src/application.js.map +1 -1
- package/dist/packages/catalog-verifier/src/index.d.ts +4 -4
- package/dist/packages/catalog-verifier/src/index.d.ts.map +1 -1
- package/dist/packages/catalog-verifier/src/index.js +4 -4
- package/dist/packages/catalog-verifier/src/index.js.map +1 -1
- package/dist/packages/catalog-verifier/src/program.js +1 -1
- package/dist/packages/catalog-verifier/src/program.js.map +1 -1
- package/package.json +5 -3
- package/taxonomy.json +27 -1
- package/dist/contracts/commercial-work/src/index.d.ts.map +0 -1
- package/dist/contracts/commercial-work/src/index.js.map +0 -1
- package/dist/contracts/routes/src/public-route-allocations.generated.d.ts +0 -2
- package/dist/contracts/routes/src/public-route-allocations.generated.d.ts.map +0 -1
- package/dist/contracts/routes/src/public-route-allocations.generated.js +0 -59
- package/dist/contracts/routes/src/public-route-allocations.generated.js.map +0 -1
- package/dist/modules/deterministic-release-archive/src/files.d.ts +0 -8
- package/dist/modules/deterministic-release-archive/src/files.d.ts.map +0 -1
- package/dist/modules/deterministic-release-archive/src/files.js +0 -23
- package/dist/modules/deterministic-release-archive/src/files.js.map +0 -1
- package/dist/modules/git-input/src/index.d.ts +0 -31
- package/dist/modules/git-input/src/index.d.ts.map +0 -1
- package/dist/modules/git-input/src/index.js +0 -158
- package/dist/modules/git-input/src/index.js.map +0 -1
- package/dist/modules/primitives/src/index.d.ts +0 -42
- package/dist/modules/primitives/src/index.d.ts.map +0 -1
- package/dist/modules/primitives/src/index.js +0 -172
- package/dist/modules/primitives/src/index.js.map +0 -1
- package/dist/modules/release/src/publication-parent-guard.d.ts.map +0 -1
- package/dist/modules/release/src/publication-parent-guard.js.map +0 -1
- package/dist/modules/release/src/publication-parent-relations.d.ts.map +0 -1
- package/dist/modules/release/src/publication-parent-relations.js.map +0 -1
- package/dist/modules/release/src/release-revision-parser.d.ts +0 -5
- package/dist/modules/release/src/release-revision-parser.d.ts.map +0 -1
- package/dist/modules/release/src/release-revision-parser.js +0 -19
- package/dist/modules/release/src/release-revision-parser.js.map +0 -1
- package/dist/modules/release/src/submission-verification.d.ts.map +0 -1
- package/dist/modules/release/src/verifier.d.ts.map +0 -1
- package/dist/modules/release/src/verifier.js.map +0 -1
- /package/dist/modules/{release → sourcey-publication}/src/publication-parent-guard.d.ts +0 -0
- /package/dist/modules/{release → sourcey-publication}/src/publication-parent-guard.js +0 -0
- /package/dist/modules/{release → sourcey-publication}/src/publication-parent-relations.d.ts +0 -0
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
import { compareCanonicalStrings } from "provenry/primitives";
|
|
2
|
+
import { getPublicSuffix } from "tldts";
|
|
3
|
+
import { minorUnitsOf, numericTokens, periodsEqual, } from "../../evidence-grounding/src/index.js";
|
|
4
|
+
export function moneyEqual(left, right) {
|
|
5
|
+
return left.currency === right.currency && left.minor_units === right.minor_units;
|
|
6
|
+
}
|
|
7
|
+
/** Same bound and same amounts: "up to 5,000" never equals "exactly 5,000" or "up to 25,000". */
|
|
8
|
+
export function moneyValueEqual(left, right) {
|
|
9
|
+
if (left.kind === "range" || right.kind === "range") {
|
|
10
|
+
return (left.kind === "range" &&
|
|
11
|
+
right.kind === "range" &&
|
|
12
|
+
moneyEqual(left.minimum, right.minimum) &&
|
|
13
|
+
moneyEqual(left.maximum, right.maximum));
|
|
14
|
+
}
|
|
15
|
+
return left.kind === right.kind && moneyEqual(left.amount, right.amount);
|
|
16
|
+
}
|
|
17
|
+
export function percentageValueEqual(left, right) {
|
|
18
|
+
if (left.kind === "range" || right.kind === "range") {
|
|
19
|
+
return (left.kind === "range" &&
|
|
20
|
+
right.kind === "range" &&
|
|
21
|
+
left.minimum_basis_points === right.minimum_basis_points &&
|
|
22
|
+
left.maximum_basis_points === right.maximum_basis_points);
|
|
23
|
+
}
|
|
24
|
+
return left.kind === right.kind && left.basis_points === right.basis_points;
|
|
25
|
+
}
|
|
26
|
+
export function durationValueEqual(left, right) {
|
|
27
|
+
return left.kind === right.kind && periodsEqual(left.value, right.value);
|
|
28
|
+
}
|
|
29
|
+
export function cashbackValueEqual(left, right) {
|
|
30
|
+
if (left.kind === "money" && right.kind === "money")
|
|
31
|
+
return moneyValueEqual(left.value, right.value);
|
|
32
|
+
if (left.kind === "percentage" && right.kind === "percentage") {
|
|
33
|
+
return percentageValueEqual(left.value, right.value);
|
|
34
|
+
}
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
/** The written tokens a typed value needs to be stated by its passages. */
|
|
38
|
+
export function moneyValueTokens(value) {
|
|
39
|
+
const amounts = value.kind === "range" ? [value.minimum, value.maximum] : [value.amount];
|
|
40
|
+
return amounts.map(({ currency, minor_units: minorUnits }) => ({
|
|
41
|
+
kind: "money",
|
|
42
|
+
currency,
|
|
43
|
+
minorUnits,
|
|
44
|
+
}));
|
|
45
|
+
}
|
|
46
|
+
export function percentageValueTokens(value) {
|
|
47
|
+
const points = value.kind === "range"
|
|
48
|
+
? [value.minimum_basis_points, value.maximum_basis_points]
|
|
49
|
+
: [value.basis_points];
|
|
50
|
+
return points.map((basisPoints) => ({ kind: "percentage", basisPoints }));
|
|
51
|
+
}
|
|
52
|
+
export function durationValueTokens(value) {
|
|
53
|
+
return [{ kind: "period", iso: value.value }];
|
|
54
|
+
}
|
|
55
|
+
export function cashbackValueTokens(value) {
|
|
56
|
+
return value.kind === "money"
|
|
57
|
+
? moneyValueTokens(value.value)
|
|
58
|
+
: percentageValueTokens(value.value);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* The figures a numeric or date eligibility condition needs its passage to
|
|
62
|
+
* write, one for each value of a set. A numeric fact's unit comes from its
|
|
63
|
+
* declared suffix in the Catalog vocabulary.
|
|
64
|
+
*/
|
|
65
|
+
export function conditionValueTokens(condition) {
|
|
66
|
+
if (!("value" in condition))
|
|
67
|
+
return [];
|
|
68
|
+
const { fact, value } = condition;
|
|
69
|
+
if (value.type === "date")
|
|
70
|
+
return [{ kind: "date", iso: value.value }];
|
|
71
|
+
if (value.type === "number")
|
|
72
|
+
return [factFigure(fact, value.value)];
|
|
73
|
+
if (value.type === "number-set")
|
|
74
|
+
return value.values.map((figure) => factFigure(fact, figure));
|
|
75
|
+
return [];
|
|
76
|
+
}
|
|
77
|
+
/** The category values a condition names, each of which its passage must write. */
|
|
78
|
+
export function conditionValueLiterals(condition) {
|
|
79
|
+
if (!("value" in condition))
|
|
80
|
+
return [];
|
|
81
|
+
const { value } = condition;
|
|
82
|
+
if (value.type === "string")
|
|
83
|
+
return [value.value];
|
|
84
|
+
if (value.type === "string-set")
|
|
85
|
+
return value.values;
|
|
86
|
+
return [];
|
|
87
|
+
}
|
|
88
|
+
function factFigure(fact, value) {
|
|
89
|
+
if (fact.endsWith("_usd"))
|
|
90
|
+
return { kind: "money", currency: "USD", minorUnits: minorUnitsOf("USD", value) };
|
|
91
|
+
if (fact.endsWith("_months"))
|
|
92
|
+
return { kind: "period", iso: `P${value}M` };
|
|
93
|
+
if (fact.endsWith("_years"))
|
|
94
|
+
return { kind: "period", iso: `P${value}Y` };
|
|
95
|
+
if (fact.endsWith("_days"))
|
|
96
|
+
return { kind: "period", iso: `P${value}D` };
|
|
97
|
+
return { kind: "number", value };
|
|
98
|
+
}
|
|
99
|
+
/** True when every required token is written somewhere in the passages. */
|
|
100
|
+
export function tokensWrittenIn(required, passages) {
|
|
101
|
+
const written = passages.flatMap((passage) => numericTokens(passage));
|
|
102
|
+
return required.every((token) => written.some((candidate) => tokensEqual(token, candidate)));
|
|
103
|
+
}
|
|
104
|
+
export function tokensEqual(left, right) {
|
|
105
|
+
switch (left.kind) {
|
|
106
|
+
case "money":
|
|
107
|
+
return (right.kind === "money" &&
|
|
108
|
+
right.currency === left.currency &&
|
|
109
|
+
right.minorUnits === left.minorUnits);
|
|
110
|
+
case "percentage":
|
|
111
|
+
return right.kind === "percentage" && right.basisPoints === left.basisPoints;
|
|
112
|
+
case "period":
|
|
113
|
+
return right.kind === "period" && periodsEqual(left.iso, right.iso);
|
|
114
|
+
case "date":
|
|
115
|
+
return right.kind === "date" && right.iso === left.iso;
|
|
116
|
+
default:
|
|
117
|
+
return right.kind === "number" && right.value === left.value;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
const NEGATED_OPERATOR = {
|
|
121
|
+
lt: "gte",
|
|
122
|
+
lte: "gt",
|
|
123
|
+
gt: "lte",
|
|
124
|
+
gte: "lt",
|
|
125
|
+
eq: "neq",
|
|
126
|
+
neq: "eq",
|
|
127
|
+
present: "absent",
|
|
128
|
+
absent: "present",
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* One canonical reading of a condition, optionally negated: `not(lt 5M)` reads
|
|
132
|
+
* as `gte 5M`, a boolean `neq true` reads as `eq false`, and category values
|
|
133
|
+
* compare without case or Unicode form. A predicate's criterion ID and
|
|
134
|
+
* statement are identity and prose, never compared.
|
|
135
|
+
*/
|
|
136
|
+
export function canonicalCondition(condition, negated = false) {
|
|
137
|
+
let operator = condition.operator;
|
|
138
|
+
if (negated) {
|
|
139
|
+
const flipped = NEGATED_OPERATOR[operator];
|
|
140
|
+
if (!flipped)
|
|
141
|
+
return null;
|
|
142
|
+
operator = flipped;
|
|
143
|
+
}
|
|
144
|
+
let value = "value" in condition ? condition.value : null;
|
|
145
|
+
if ((operator === "eq" || operator === "neq") &&
|
|
146
|
+
typeof value === "object" &&
|
|
147
|
+
value !== null &&
|
|
148
|
+
"type" in value &&
|
|
149
|
+
value.type === "boolean" &&
|
|
150
|
+
"value" in value) {
|
|
151
|
+
value = { type: "boolean", value: operator === "eq" ? value.value : !value.value };
|
|
152
|
+
operator = "eq";
|
|
153
|
+
}
|
|
154
|
+
if (typeof value === "object" && value !== null && "type" in value) {
|
|
155
|
+
if (value.type === "string" && "value" in value && typeof value.value === "string") {
|
|
156
|
+
value = { type: "string", value: categoryValue(value.value) };
|
|
157
|
+
}
|
|
158
|
+
else if (value.type === "string-set" && "values" in value) {
|
|
159
|
+
const values = value.values.map(categoryValue);
|
|
160
|
+
value = { type: "string-set", values: [...new Set(values)].sort(compareCanonicalStrings) };
|
|
161
|
+
}
|
|
162
|
+
else if (value.type === "number-set" && "values" in value) {
|
|
163
|
+
const values = [...new Set(value.values)].sort((a, b) => a - b);
|
|
164
|
+
value = { type: "number-set", values };
|
|
165
|
+
}
|
|
166
|
+
else if ((value.type === "number" || value.type === "date") && "value" in value) {
|
|
167
|
+
// Rebuilt in one key order, so equality never depends on how the value was written.
|
|
168
|
+
value = { type: value.type, value: value.value };
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
return { fact: condition.fact, operator, value };
|
|
172
|
+
}
|
|
173
|
+
function categoryValue(value) {
|
|
174
|
+
return value.normalize("NFKC").toLowerCase().replace(/\s+/gu, " ").trim();
|
|
175
|
+
}
|
|
176
|
+
export function conditionsEqual(left, right) {
|
|
177
|
+
return (left !== null &&
|
|
178
|
+
right !== null &&
|
|
179
|
+
left.fact === right.fact &&
|
|
180
|
+
left.operator === right.operator &&
|
|
181
|
+
JSON.stringify(left.value) === JSON.stringify(right.value));
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* A stated conflict: the same fact bounded the same way at a different
|
|
185
|
+
* figure, a condition and its exact negation, or a yes/no fact required both
|
|
186
|
+
* ways. Any other difference (an
|
|
187
|
+
* inclusive bound, another category, another set) is a different reading,
|
|
188
|
+
* never evidence against the other.
|
|
189
|
+
*/
|
|
190
|
+
export function conditionsConflict(left, right) {
|
|
191
|
+
if (left === null || right === null || left.fact !== right.fact)
|
|
192
|
+
return false;
|
|
193
|
+
if (conditionsEqual(left, right))
|
|
194
|
+
return false;
|
|
195
|
+
// One condition that is exactly the other's negation (`gte 5M` against `lt 5M`) is a conflict.
|
|
196
|
+
if (NEGATED_OPERATOR[left.operator] === right.operator &&
|
|
197
|
+
JSON.stringify(left.value) === JSON.stringify(right.value)) {
|
|
198
|
+
return true;
|
|
199
|
+
}
|
|
200
|
+
if (left.operator !== right.operator)
|
|
201
|
+
return false;
|
|
202
|
+
const a = left.value;
|
|
203
|
+
const b = right.value;
|
|
204
|
+
if (a?.type !== b?.type || a?.value === b?.value)
|
|
205
|
+
return false;
|
|
206
|
+
if (["lt", "lte", "gt", "gte"].includes(left.operator)) {
|
|
207
|
+
return a?.type === "number" || a?.type === "date";
|
|
208
|
+
}
|
|
209
|
+
return left.operator === "eq" && a?.type === "boolean";
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* One resource per URL: for a web URL, scheme, host without `www.`, port,
|
|
213
|
+
* path without a trailing slash, and sorted query; the fragment never names
|
|
214
|
+
* a different resource. Any other URL is its exact form. Relative targets
|
|
215
|
+
* resolve against `base`. Null when the value is not a URL.
|
|
216
|
+
*/
|
|
217
|
+
export function canonicalResourceUrl(value, base) {
|
|
218
|
+
let url;
|
|
219
|
+
try {
|
|
220
|
+
url = new URL(value, base);
|
|
221
|
+
}
|
|
222
|
+
catch {
|
|
223
|
+
return null;
|
|
224
|
+
}
|
|
225
|
+
if (!WEB_PROTOCOLS.has(url.protocol))
|
|
226
|
+
return url.href;
|
|
227
|
+
const host = url.hostname
|
|
228
|
+
.toLowerCase()
|
|
229
|
+
.replace(/\.$/u, "")
|
|
230
|
+
.replace(/^www\./u, "");
|
|
231
|
+
const path = url.pathname.replace(/\/+$/u, "") || "/";
|
|
232
|
+
const query = [...url.searchParams.entries()].sort(([left], [right]) => compareCanonicalStrings(left, right));
|
|
233
|
+
const port = url.port ? `:${url.port}` : "";
|
|
234
|
+
return `${url.protocol}//${host}${port}${path}?${new URLSearchParams(query).toString()}`;
|
|
235
|
+
}
|
|
236
|
+
export function sameResource(left, right) {
|
|
237
|
+
const canonical = canonicalResourceUrl(left);
|
|
238
|
+
return canonical !== null && canonical === canonicalResourceUrl(right);
|
|
239
|
+
}
|
|
240
|
+
const WEB_PROTOCOLS = new Set(["http:", "https:"]);
|
|
241
|
+
/** Scheme and host without `www.`: the origin a web URL belongs to, or null for anything else. */
|
|
242
|
+
function canonicalOrigin(value) {
|
|
243
|
+
let url;
|
|
244
|
+
try {
|
|
245
|
+
url = new URL(value);
|
|
246
|
+
}
|
|
247
|
+
catch {
|
|
248
|
+
return null;
|
|
249
|
+
}
|
|
250
|
+
if (!WEB_PROTOCOLS.has(url.protocol))
|
|
251
|
+
return null;
|
|
252
|
+
return `${url.protocol}//${url.hostname
|
|
253
|
+
.toLowerCase()
|
|
254
|
+
.replace(/\.$/u, "")
|
|
255
|
+
.replace(/^www\./u, "")}${url.port ? `:${url.port}` : ""}`;
|
|
256
|
+
}
|
|
257
|
+
export function sameOrigin(left, right) {
|
|
258
|
+
const origin = canonicalOrigin(left);
|
|
259
|
+
return origin !== null && origin === canonicalOrigin(right);
|
|
260
|
+
}
|
|
261
|
+
/** True for a URL that names an origin itself: the root path, with no query. */
|
|
262
|
+
export function originRoot(value) {
|
|
263
|
+
return canonicalResourceUrl(value)?.endsWith("/?") === true;
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Whether a domain is a public suffix, such as `io`, `co.uk` or `github.io`:
|
|
267
|
+
* a namespace many parties register under, which no one vendor can claim.
|
|
268
|
+
*/
|
|
269
|
+
export function domainIsPublicSuffix(domain) {
|
|
270
|
+
const normalized = domain.toLowerCase().replace(/\.$/u, "");
|
|
271
|
+
return getPublicSuffix(normalized, { allowPrivateDomains: true }) === normalized;
|
|
272
|
+
}
|
|
273
|
+
/** A host is the domain itself or one of its subdomains. */
|
|
274
|
+
export function hostWithinDomain(host, domain) {
|
|
275
|
+
const normalizedHost = host.toLowerCase().replace(/\.$/u, "");
|
|
276
|
+
const normalizedDomain = domain.toLowerCase().replace(/\.$/u, "");
|
|
277
|
+
return normalizedHost === normalizedDomain || normalizedHost.endsWith(`.${normalizedDomain}`);
|
|
278
|
+
}
|
|
279
|
+
/** Names compare after Unicode, case and spacing normalization only. */
|
|
280
|
+
export function normalizedName(name) {
|
|
281
|
+
return name.normalize("NFKC").toLowerCase().replace(/\s+/gu, " ").trim();
|
|
282
|
+
}
|
|
283
|
+
//# sourceMappingURL=values.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../../modules/evidence-comparison/src/values.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The figures a passage writes, read by one strict grammar so that a value a
|
|
3
|
+
* reader reported can be checked against the passage it cited. The grammar
|
|
4
|
+
* reads amounts in US dollars, euros and pounds (`$`, `US$`, `€`, `£`) or an
|
|
5
|
+
* ISO code, percentages, periods, dates with their year and counts, written
|
|
6
|
+
* with comma thousands and point decimals, each on its own line. Everything
|
|
7
|
+
* else that looks like a figure (another number format, currency, scale word,
|
|
8
|
+
* fraction, range or rate, or a marker on the next line) is unread: it keeps
|
|
9
|
+
* its extent, so no quote can cut a figure out of it, but gives no token, and
|
|
10
|
+
* the text is incomplete. The detector of what is unread is deliberately
|
|
11
|
+
* broad: reading too little only leaves a value unchecked, never admits one.
|
|
12
|
+
* This parses written form; it never judges what a passage means.
|
|
13
|
+
*/
|
|
14
|
+
export type NumericToken = {
|
|
15
|
+
readonly kind: "money";
|
|
16
|
+
readonly currency: string;
|
|
17
|
+
readonly minorUnits: number;
|
|
18
|
+
} | {
|
|
19
|
+
readonly kind: "percentage";
|
|
20
|
+
readonly basisPoints: number;
|
|
21
|
+
} | {
|
|
22
|
+
readonly kind: "period";
|
|
23
|
+
readonly iso: string;
|
|
24
|
+
} | {
|
|
25
|
+
readonly kind: "date";
|
|
26
|
+
readonly iso: string;
|
|
27
|
+
} | {
|
|
28
|
+
readonly kind: "number";
|
|
29
|
+
readonly value: number;
|
|
30
|
+
};
|
|
31
|
+
/** A figure's exact extent in the text it was read from. */
|
|
32
|
+
export interface FigureSpan {
|
|
33
|
+
readonly start: number;
|
|
34
|
+
readonly end: number;
|
|
35
|
+
}
|
|
36
|
+
/** Everything a text writes as figures. */
|
|
37
|
+
export interface WrittenFigures {
|
|
38
|
+
/** Every numeric token, in order of appearance. */
|
|
39
|
+
readonly tokens: readonly NumericToken[];
|
|
40
|
+
/** Names written with digits, such as "H100", "Q3" or "5G": literals a passage must write exactly. */
|
|
41
|
+
readonly identifiers: readonly string[];
|
|
42
|
+
/** False when some figure or quantity word is unread, so not every figure can be checked. */
|
|
43
|
+
readonly complete: boolean;
|
|
44
|
+
/** Where each figure and name is written, markers and units included, in the text's own indexes. */
|
|
45
|
+
readonly spans: readonly FigureSpan[];
|
|
46
|
+
}
|
|
47
|
+
/** Every numeric token written in `text`, in order of appearance. */
|
|
48
|
+
export declare function numericTokens(text: string): readonly NumericToken[];
|
|
49
|
+
/** Where every figure in `text` is written, in its own indexes, in order. */
|
|
50
|
+
export declare function figureSpans(text: string): readonly FigureSpan[];
|
|
51
|
+
/** The minor units of `major` whole units of `currency`. */
|
|
52
|
+
export declare function minorUnitsOf(currency: string, major: number): number;
|
|
53
|
+
/** Periods compare by the months or days they denote, so P12M equals P1Y. */
|
|
54
|
+
export declare function periodsEqual(left: string, right: string): boolean;
|
|
55
|
+
export declare function writtenFigures(text: string): WrittenFigures;
|
|
56
|
+
//# sourceMappingURL=figures.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"figures.d.ts","sourceRoot":"","sources":["../../../../modules/evidence-grounding/src/figures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,MAAM,YAAY,GACpB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAClF;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD,4DAA4D;AAC5D,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,2CAA2C;AAC3C,MAAM,WAAW,cAAc;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IACzC,sGAAsG;IACtG,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,6FAA6F;IAC7F,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,oGAAoG;IACpG,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;CACvC;AAwND,qEAAqE;AACrE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,YAAY,EAAE,CAEnE;AAED,6EAA6E;AAC7E,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,UAAU,EAAE,CAE/D;AAED,4DAA4D;AAC5D,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,6EAA6E;AAC7E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAIjE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CA0F3D"}
|