@superbee/core 0.2.0-pre.4 → 0.2.0-pre.40
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 +1209 -0
- package/dist/artifact-contract.d.ts +90 -0
- package/dist/artifact-contract.d.ts.map +1 -0
- package/dist/artifact-contract.js +205 -0
- package/dist/artifact-contract.js.map +1 -0
- package/dist/backend.d.ts +22 -2
- package/dist/backend.d.ts.map +1 -1
- package/dist/backend.js +153 -38
- package/dist/backend.js.map +1 -1
- package/dist/blob-contract.d.ts +82 -0
- package/dist/blob-contract.d.ts.map +1 -0
- package/dist/blob-contract.js +134 -0
- package/dist/blob-contract.js.map +1 -0
- package/dist/blob-journal.d.ts +303 -0
- package/dist/blob-journal.d.ts.map +1 -0
- package/dist/blob-journal.js +541 -0
- package/dist/blob-journal.js.map +1 -0
- package/dist/body-replace-guards.d.ts +52 -0
- package/dist/body-replace-guards.d.ts.map +1 -0
- package/dist/body-replace-guards.js +176 -0
- package/dist/body-replace-guards.js.map +1 -0
- package/dist/builtin-recipes/content.d.ts +93 -0
- package/dist/builtin-recipes/content.d.ts.map +1 -0
- package/dist/builtin-recipes/content.js +288 -0
- package/dist/builtin-recipes/content.js.map +1 -0
- package/dist/builtin-recipes.d.ts +10 -0
- package/dist/builtin-recipes.d.ts.map +1 -0
- package/dist/builtin-recipes.js +97 -0
- package/dist/builtin-recipes.js.map +1 -0
- package/dist/bundle-health/index.d.ts +14 -0
- package/dist/bundle-health/index.d.ts.map +1 -0
- package/dist/bundle-health/index.js +12 -0
- package/dist/bundle-health/index.js.map +1 -0
- package/dist/bundle-health/kind-findings.d.ts +44 -0
- package/dist/bundle-health/kind-findings.d.ts.map +1 -0
- package/dist/bundle-health/kind-findings.js +68 -0
- package/dist/bundle-health/kind-findings.js.map +1 -0
- package/dist/bundle-health/legacy-page.d.ts +39 -0
- package/dist/bundle-health/legacy-page.d.ts.map +1 -0
- package/dist/bundle-health/legacy-page.js +50 -0
- package/dist/bundle-health/legacy-page.js.map +1 -0
- package/dist/bundle-health/report.d.ts +207 -0
- package/dist/bundle-health/report.d.ts.map +1 -0
- package/dist/bundle-health/report.js +454 -0
- package/dist/bundle-health/report.js.map +1 -0
- package/dist/bundle-ops.d.ts +3 -2
- package/dist/bundle-ops.d.ts.map +1 -1
- package/dist/bundle-ops.js +4 -4
- package/dist/bundle-ops.js.map +1 -1
- package/dist/bundle.d.ts +3 -4
- package/dist/bundle.d.ts.map +1 -1
- package/dist/bundle.js +5 -14
- package/dist/bundle.js.map +1 -1
- package/dist/code-point-order.d.ts +8 -0
- package/dist/code-point-order.d.ts.map +1 -0
- package/dist/code-point-order.js +20 -0
- package/dist/code-point-order.js.map +1 -0
- package/dist/code-unit-order.d.ts +15 -0
- package/dist/code-unit-order.d.ts.map +1 -0
- package/dist/code-unit-order.js +17 -0
- package/dist/code-unit-order.js.map +1 -0
- package/dist/connector-request.d.ts +112 -0
- package/dist/connector-request.d.ts.map +1 -0
- package/dist/connector-request.js +495 -0
- package/dist/connector-request.js.map +1 -0
- package/dist/connectors.d.ts +297 -0
- package/dist/connectors.d.ts.map +1 -0
- package/dist/connectors.js +1233 -0
- package/dist/connectors.js.map +1 -0
- package/dist/cross-bundle.d.ts +135 -0
- package/dist/cross-bundle.d.ts.map +1 -0
- package/dist/cross-bundle.js +191 -0
- package/dist/cross-bundle.js.map +1 -0
- package/dist/dependencies.d.ts +94 -0
- package/dist/dependencies.d.ts.map +1 -0
- package/dist/dependencies.js +180 -0
- package/dist/dependencies.js.map +1 -0
- package/dist/document-codec.d.ts +7 -2
- package/dist/document-codec.d.ts.map +1 -1
- package/dist/document-codec.js +8 -5
- package/dist/document-codec.js.map +1 -1
- package/dist/document-field-actions.d.ts +31 -1
- package/dist/document-field-actions.d.ts.map +1 -1
- package/dist/document-field-actions.js +137 -34
- package/dist/document-field-actions.js.map +1 -1
- package/dist/document-mutation.d.ts +35 -13
- package/dist/document-mutation.d.ts.map +1 -1
- package/dist/document-mutation.js +124 -60
- package/dist/document-mutation.js.map +1 -1
- package/dist/document-transfer.d.ts +208 -0
- package/dist/document-transfer.d.ts.map +1 -0
- package/dist/document-transfer.js +928 -0
- package/dist/document-transfer.js.map +1 -0
- package/dist/document-write-policy.d.ts.map +1 -1
- package/dist/document-write-policy.js +4 -2
- package/dist/document-write-policy.js.map +1 -1
- package/dist/domain-model.d.ts +73 -0
- package/dist/domain-model.d.ts.map +1 -0
- package/dist/domain-model.js +169 -0
- package/dist/domain-model.js.map +1 -0
- package/dist/engine.d.ts +21 -9
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +72 -14
- package/dist/engine.js.map +1 -1
- package/dist/file-journaled-backend-internal.d.ts +21 -0
- package/dist/file-journaled-backend-internal.d.ts.map +1 -0
- package/dist/file-journaled-backend-internal.js +12 -0
- package/dist/file-journaled-backend-internal.js.map +1 -0
- package/dist/file-journaled-backend.d.ts +160 -0
- package/dist/file-journaled-backend.d.ts.map +1 -0
- package/dist/file-journaled-backend.js +1345 -0
- package/dist/file-journaled-backend.js.map +1 -0
- package/dist/filesystem-host.d.ts +15 -0
- package/dist/filesystem-host.d.ts.map +1 -0
- package/dist/filesystem-host.js +20 -0
- package/dist/filesystem-host.js.map +1 -0
- package/dist/filesystem-identity.d.ts +97 -21
- package/dist/filesystem-identity.d.ts.map +1 -1
- package/dist/filesystem-identity.js +398 -119
- package/dist/filesystem-identity.js.map +1 -1
- package/dist/filesystem-lock.d.ts +16 -3
- package/dist/filesystem-lock.d.ts.map +1 -1
- package/dist/filesystem-lock.js +323 -77
- package/dist/filesystem-lock.js.map +1 -1
- package/dist/filesystem-push-role.d.ts +77 -0
- package/dist/filesystem-push-role.d.ts.map +1 -0
- package/dist/filesystem-push-role.js +165 -0
- package/dist/filesystem-push-role.js.map +1 -0
- package/dist/filesystem.d.ts +17 -0
- package/dist/filesystem.d.ts.map +1 -0
- package/dist/filesystem.js +18 -0
- package/dist/filesystem.js.map +1 -0
- package/dist/frontmatter.d.ts +8 -6
- package/dist/frontmatter.d.ts.map +1 -1
- package/dist/frontmatter.js +5 -4
- package/dist/frontmatter.js.map +1 -1
- package/dist/governed-body-write.d.ts +8 -1
- package/dist/governed-body-write.d.ts.map +1 -1
- package/dist/governed-body-write.js +9 -2
- package/dist/governed-body-write.js.map +1 -1
- package/dist/heads-digest.d.ts.map +1 -1
- package/dist/heads-digest.js +2 -1
- package/dist/heads-digest.js.map +1 -1
- package/dist/host-policy-snapshot.d.ts +9 -0
- package/dist/host-policy-snapshot.d.ts.map +1 -0
- package/dist/host-policy-snapshot.js +33 -0
- package/dist/host-policy-snapshot.js.map +1 -0
- package/dist/host-text.d.ts +31 -0
- package/dist/host-text.d.ts.map +1 -0
- package/dist/host-text.js +77 -0
- package/dist/host-text.js.map +1 -0
- package/dist/hosted-client/binding.d.ts +7 -0
- package/dist/hosted-client/binding.d.ts.map +1 -0
- package/dist/hosted-client/binding.js +10 -0
- package/dist/hosted-client/binding.js.map +1 -0
- package/dist/hosted-client/blob-delivery.d.ts +68 -0
- package/dist/hosted-client/blob-delivery.d.ts.map +1 -0
- package/dist/hosted-client/blob-delivery.js +170 -0
- package/dist/hosted-client/blob-delivery.js.map +1 -0
- package/dist/hosted-client/blob-write.d.ts +387 -0
- package/dist/hosted-client/blob-write.d.ts.map +1 -0
- package/dist/hosted-client/blob-write.js +770 -0
- package/dist/hosted-client/blob-write.js.map +1 -0
- package/dist/hosted-client/bundle-listing.d.ts +46 -0
- package/dist/hosted-client/bundle-listing.d.ts.map +1 -0
- package/dist/hosted-client/bundle-listing.js +36 -0
- package/dist/hosted-client/bundle-listing.js.map +1 -0
- package/dist/hosted-client/client.d.ts +219 -0
- package/dist/hosted-client/client.d.ts.map +1 -0
- package/dist/hosted-client/client.js +309 -0
- package/dist/hosted-client/client.js.map +1 -0
- package/dist/hosted-client/directory.d.ts +46 -0
- package/dist/hosted-client/directory.d.ts.map +1 -0
- package/dist/hosted-client/directory.js +74 -0
- package/dist/hosted-client/directory.js.map +1 -0
- package/dist/hosted-client/errors.d.ts +26 -0
- package/dist/hosted-client/errors.d.ts.map +1 -0
- package/dist/hosted-client/errors.js +35 -0
- package/dist/hosted-client/errors.js.map +1 -0
- package/dist/hosted-client/inbox.d.ts +320 -0
- package/dist/hosted-client/inbox.d.ts.map +1 -0
- package/dist/hosted-client/inbox.js +379 -0
- package/dist/hosted-client/inbox.js.map +1 -0
- package/dist/hosted-client/index.d.ts +30 -0
- package/dist/hosted-client/index.d.ts.map +1 -0
- package/dist/hosted-client/index.js +32 -0
- package/dist/hosted-client/index.js.map +1 -0
- package/dist/hosted-client/journal.d.ts +103 -0
- package/dist/hosted-client/journal.d.ts.map +1 -0
- package/dist/hosted-client/journal.js +464 -0
- package/dist/hosted-client/journal.js.map +1 -0
- package/dist/hosted-client/node.d.ts +74 -0
- package/dist/hosted-client/node.d.ts.map +1 -0
- package/dist/hosted-client/node.js +219 -0
- package/dist/hosted-client/node.js.map +1 -0
- package/dist/hosted-client/reference.d.ts +12 -0
- package/dist/hosted-client/reference.d.ts.map +1 -0
- package/dist/hosted-client/reference.js +29 -0
- package/dist/hosted-client/reference.js.map +1 -0
- package/dist/hosted-client/write.d.ts +217 -0
- package/dist/hosted-client/write.d.ts.map +1 -0
- package/dist/hosted-client/write.js +418 -0
- package/dist/hosted-client/write.js.map +1 -0
- package/dist/hosted-transport/answer-rows.d.ts +243 -0
- package/dist/hosted-transport/answer-rows.d.ts.map +1 -0
- package/dist/hosted-transport/answer-rows.js +457 -0
- package/dist/hosted-transport/answer-rows.js.map +1 -0
- package/dist/hosted-transport/blob-reads.d.ts +35 -0
- package/dist/hosted-transport/blob-reads.d.ts.map +1 -0
- package/dist/hosted-transport/blob-reads.js +179 -0
- package/dist/hosted-transport/blob-reads.js.map +1 -0
- package/dist/hosted-transport/blob-write.d.ts +34 -0
- package/dist/hosted-transport/blob-write.d.ts.map +1 -0
- package/dist/hosted-transport/blob-write.js +115 -0
- package/dist/hosted-transport/blob-write.js.map +1 -0
- package/dist/hosted-transport/carrier.d.ts +151 -0
- package/dist/hosted-transport/carrier.d.ts.map +1 -0
- package/dist/hosted-transport/carrier.js +260 -0
- package/dist/hosted-transport/carrier.js.map +1 -0
- package/dist/hosted-transport/history-pages.d.ts +55 -0
- package/dist/hosted-transport/history-pages.d.ts.map +1 -0
- package/dist/hosted-transport/history-pages.js +69 -0
- package/dist/hosted-transport/history-pages.js.map +1 -0
- package/dist/hosted-transport/index.d.ts +18 -0
- package/dist/hosted-transport/index.d.ts.map +1 -0
- package/dist/hosted-transport/index.js +18 -0
- package/dist/hosted-transport/index.js.map +1 -0
- package/dist/hosted-transport/operations.d.ts +85 -0
- package/dist/hosted-transport/operations.d.ts.map +1 -0
- package/dist/hosted-transport/operations.js +128 -0
- package/dist/hosted-transport/operations.js.map +1 -0
- package/dist/hosted-transport/paged-reads.d.ts +87 -0
- package/dist/hosted-transport/paged-reads.d.ts.map +1 -0
- package/dist/hosted-transport/paged-reads.js +238 -0
- package/dist/hosted-transport/paged-reads.js.map +1 -0
- package/dist/hosted-transport/read-adapter.d.ts +256 -0
- package/dist/hosted-transport/read-adapter.d.ts.map +1 -0
- package/dist/hosted-transport/read-adapter.js +568 -0
- package/dist/hosted-transport/read-adapter.js.map +1 -0
- package/dist/hosted-transport/root-write.d.ts +114 -0
- package/dist/hosted-transport/root-write.d.ts.map +1 -0
- package/dist/hosted-transport/root-write.js +171 -0
- package/dist/hosted-transport/root-write.js.map +1 -0
- package/dist/hosted-transport/whole-document-transport.d.ts +204 -0
- package/dist/hosted-transport/whole-document-transport.d.ts.map +1 -0
- package/dist/hosted-transport/whole-document-transport.js +447 -0
- package/dist/hosted-transport/whole-document-transport.js.map +1 -0
- package/dist/identity-fold.d.ts +18 -0
- package/dist/identity-fold.d.ts.map +1 -0
- package/dist/identity-fold.js +22 -0
- package/dist/identity-fold.js.map +1 -0
- package/dist/index.d.ts +41 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -9
- package/dist/index.js.map +1 -1
- package/dist/indexeddb-backend.d.ts +25 -33
- package/dist/indexeddb-backend.d.ts.map +1 -1
- package/dist/indexeddb-backend.js +264 -8
- package/dist/indexeddb-backend.js.map +1 -1
- package/dist/inventory-guard.d.ts +58 -0
- package/dist/inventory-guard.d.ts.map +1 -0
- package/dist/inventory-guard.js +169 -0
- package/dist/inventory-guard.js.map +1 -0
- package/dist/journaled-backend.d.ts +149 -9
- package/dist/journaled-backend.d.ts.map +1 -1
- package/dist/journaled-backend.js +64 -58
- package/dist/journaled-backend.js.map +1 -1
- package/dist/kind-authoring.d.ts +170 -0
- package/dist/kind-authoring.d.ts.map +1 -0
- package/dist/kind-authoring.js +452 -0
- package/dist/kind-authoring.js.map +1 -0
- package/dist/kind-changes.d.ts +45 -0
- package/dist/kind-changes.d.ts.map +1 -0
- package/dist/kind-changes.js +96 -0
- package/dist/kind-changes.js.map +1 -0
- package/dist/kind-conformance-error.d.ts +15 -0
- package/dist/kind-conformance-error.d.ts.map +1 -0
- package/dist/kind-conformance-error.js +20 -0
- package/dist/kind-conformance-error.js.map +1 -0
- package/dist/kind-coverage.d.ts +99 -0
- package/dist/kind-coverage.d.ts.map +1 -0
- package/dist/kind-coverage.js +186 -0
- package/dist/kind-coverage.js.map +1 -0
- package/dist/kind-deprecation.d.ts +32 -0
- package/dist/kind-deprecation.d.ts.map +1 -0
- package/dist/kind-deprecation.js +141 -0
- package/dist/kind-deprecation.js.map +1 -0
- package/dist/kind-field-mutation.d.ts +4 -0
- package/dist/kind-field-mutation.d.ts.map +1 -1
- package/dist/kind-field-mutation.js +28 -3
- package/dist/kind-field-mutation.js.map +1 -1
- package/dist/kinds-load.js +4 -4
- package/dist/kinds-load.js.map +1 -1
- package/dist/kinds.d.ts +111 -2
- package/dist/kinds.d.ts.map +1 -1
- package/dist/kinds.js +386 -20
- package/dist/kinds.js.map +1 -1
- package/dist/link-emit.d.ts +29 -0
- package/dist/link-emit.d.ts.map +1 -0
- package/dist/link-emit.js +39 -0
- package/dist/link-emit.js.map +1 -0
- package/dist/link-types.d.ts +27 -0
- package/dist/link-types.d.ts.map +1 -0
- package/dist/link-types.js +60 -0
- package/dist/link-types.js.map +1 -0
- package/dist/links.d.ts +52 -3
- package/dist/links.d.ts.map +1 -1
- package/dist/links.js +259 -18
- package/dist/links.js.map +1 -1
- package/dist/managed-document-metadata.d.ts +2 -0
- package/dist/managed-document-metadata.d.ts.map +1 -0
- package/dist/managed-document-metadata.js +9 -0
- package/dist/managed-document-metadata.js.map +1 -0
- package/dist/memory-backend.d.ts +3 -0
- package/dist/memory-backend.d.ts.map +1 -1
- package/dist/memory-backend.js +44 -2
- package/dist/memory-backend.js.map +1 -1
- package/dist/okf-actor.d.ts +1 -0
- package/dist/okf-actor.d.ts.map +1 -1
- package/dist/okf-actor.js +1 -0
- package/dist/okf-actor.js.map +1 -1
- package/dist/okf-authoring.d.ts +4 -0
- package/dist/okf-authoring.d.ts.map +1 -0
- package/dist/okf-authoring.js +12 -0
- package/dist/okf-authoring.js.map +1 -0
- package/dist/okf-standard-fields.d.ts +3 -0
- package/dist/okf-standard-fields.d.ts.map +1 -1
- package/dist/okf-standard-fields.js +3 -0
- package/dist/okf-standard-fields.js.map +1 -1
- package/dist/path-fold.d.ts +39 -0
- package/dist/path-fold.d.ts.map +1 -0
- package/dist/path-fold.js +41 -0
- package/dist/path-fold.js.map +1 -0
- package/dist/paths.d.ts +18 -0
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +32 -0
- package/dist/paths.js.map +1 -1
- package/dist/platform.d.ts +13 -2
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +16 -0
- package/dist/platform.js.map +1 -1
- package/dist/portable-export.d.ts +119 -0
- package/dist/portable-export.d.ts.map +1 -0
- package/dist/portable-export.js +501 -0
- package/dist/portable-export.js.map +1 -0
- package/dist/publication-filesystem.d.ts +1 -1
- package/dist/publication-filesystem.d.ts.map +1 -1
- package/dist/publication-filesystem.js +1 -1
- package/dist/publication-filesystem.js.map +1 -1
- package/dist/qualified-links.d.ts +67 -0
- package/dist/qualified-links.d.ts.map +1 -0
- package/dist/qualified-links.js +117 -0
- package/dist/qualified-links.js.map +1 -0
- package/dist/query-filter.d.ts +16 -2
- package/dist/query-filter.d.ts.map +1 -1
- package/dist/query-filter.js +40 -1
- package/dist/query-filter.js.map +1 -1
- package/dist/query-order.d.ts +22 -0
- package/dist/query-order.d.ts.map +1 -0
- package/dist/query-order.js +43 -0
- package/dist/query-order.js.map +1 -0
- package/dist/recipe-lifecycle/errors.d.ts +96 -0
- package/dist/recipe-lifecycle/errors.d.ts.map +1 -0
- package/dist/recipe-lifecycle/errors.js +122 -0
- package/dist/recipe-lifecycle/errors.js.map +1 -0
- package/dist/recipe-lifecycle/evolution.d.ts +124 -0
- package/dist/recipe-lifecycle/evolution.d.ts.map +1 -0
- package/dist/recipe-lifecycle/evolution.js +993 -0
- package/dist/recipe-lifecycle/evolution.js.map +1 -0
- package/dist/recipe-lifecycle/index.d.ts +34 -0
- package/dist/recipe-lifecycle/index.d.ts.map +1 -0
- package/dist/recipe-lifecycle/index.js +28 -0
- package/dist/recipe-lifecycle/index.js.map +1 -0
- package/dist/recipe-lifecycle/install.d.ts +155 -0
- package/dist/recipe-lifecycle/install.d.ts.map +1 -0
- package/dist/recipe-lifecycle/install.js +604 -0
- package/dist/recipe-lifecycle/install.js.map +1 -0
- package/dist/recipe-lifecycle/legacy-aliases.d.ts +16 -0
- package/dist/recipe-lifecycle/legacy-aliases.d.ts.map +1 -0
- package/dist/recipe-lifecycle/legacy-aliases.js +51 -0
- package/dist/recipe-lifecycle/legacy-aliases.js.map +1 -0
- package/dist/recipe-lifecycle/retirement-apply.d.ts +59 -0
- package/dist/recipe-lifecycle/retirement-apply.d.ts.map +1 -0
- package/dist/recipe-lifecycle/retirement-apply.js +165 -0
- package/dist/recipe-lifecycle/retirement-apply.js.map +1 -0
- package/dist/recipe-lifecycle/retirement.d.ts +89 -0
- package/dist/recipe-lifecycle/retirement.d.ts.map +1 -0
- package/dist/recipe-lifecycle/retirement.js +347 -0
- package/dist/recipe-lifecycle/retirement.js.map +1 -0
- package/dist/recipe-lifecycle/stamp.d.ts +151 -0
- package/dist/recipe-lifecycle/stamp.d.ts.map +1 -0
- package/dist/recipe-lifecycle/stamp.js +364 -0
- package/dist/recipe-lifecycle/stamp.js.map +1 -0
- package/dist/recipe-set-preflight.d.ts +139 -0
- package/dist/recipe-set-preflight.d.ts.map +1 -0
- package/dist/recipe-set-preflight.js +536 -0
- package/dist/recipe-set-preflight.js.map +1 -0
- package/dist/recipes.d.ts +29 -1
- package/dist/recipes.d.ts.map +1 -1
- package/dist/recipes.js +137 -1
- package/dist/recipes.js.map +1 -1
- package/dist/record-overlay/apply.d.ts +43 -0
- package/dist/record-overlay/apply.d.ts.map +1 -0
- package/dist/record-overlay/apply.js +527 -0
- package/dist/record-overlay/apply.js.map +1 -0
- package/dist/record-overlay/canonical.d.ts +22 -0
- package/dist/record-overlay/canonical.d.ts.map +1 -0
- package/dist/record-overlay/canonical.js +47 -0
- package/dist/record-overlay/canonical.js.map +1 -0
- package/dist/record-overlay/digest.d.ts +4 -0
- package/dist/record-overlay/digest.d.ts.map +1 -0
- package/dist/record-overlay/digest.js +11 -0
- package/dist/record-overlay/digest.js.map +1 -0
- package/dist/record-overlay/errors.d.ts +44 -0
- package/dist/record-overlay/errors.d.ts.map +1 -0
- package/dist/record-overlay/errors.js +55 -0
- package/dist/record-overlay/errors.js.map +1 -0
- package/dist/record-overlay/findings.d.ts +5 -0
- package/dist/record-overlay/findings.d.ts.map +1 -0
- package/dist/record-overlay/findings.js +83 -0
- package/dist/record-overlay/findings.js.map +1 -0
- package/dist/record-overlay/index.d.ts +23 -0
- package/dist/record-overlay/index.d.ts.map +1 -0
- package/dist/record-overlay/index.js +21 -0
- package/dist/record-overlay/index.js.map +1 -0
- package/dist/record-overlay/plan.d.ts +12 -0
- package/dist/record-overlay/plan.d.ts.map +1 -0
- package/dist/record-overlay/plan.js +285 -0
- package/dist/record-overlay/plan.js.map +1 -0
- package/dist/record-overlay/policy.d.ts +74 -0
- package/dist/record-overlay/policy.d.ts.map +1 -0
- package/dist/record-overlay/policy.js +235 -0
- package/dist/record-overlay/policy.js.map +1 -0
- package/dist/record-overlay/redact.d.ts +3 -0
- package/dist/record-overlay/redact.d.ts.map +1 -0
- package/dist/record-overlay/redact.js +27 -0
- package/dist/record-overlay/redact.js.map +1 -0
- package/dist/record-overlay/signal-kind.d.ts +30 -0
- package/dist/record-overlay/signal-kind.d.ts.map +1 -0
- package/dist/record-overlay/signal-kind.js +38 -0
- package/dist/record-overlay/signal-kind.js.map +1 -0
- package/dist/record-overlay/signal-text.d.ts +45 -0
- package/dist/record-overlay/signal-text.d.ts.map +1 -0
- package/dist/record-overlay/signal-text.js +116 -0
- package/dist/record-overlay/signal-text.js.map +1 -0
- package/dist/record-overlay/source-index.d.ts +19 -0
- package/dist/record-overlay/source-index.d.ts.map +1 -0
- package/dist/record-overlay/source-index.js +102 -0
- package/dist/record-overlay/source-index.js.map +1 -0
- package/dist/record-overlay/types.d.ts +291 -0
- package/dist/record-overlay/types.d.ts.map +1 -0
- package/dist/record-overlay/types.js +2 -0
- package/dist/record-overlay/types.js.map +1 -0
- package/dist/remote-backend.d.ts +58 -13
- package/dist/remote-backend.d.ts.map +1 -1
- package/dist/remote-backend.js +156 -36
- package/dist/remote-backend.js.map +1 -1
- package/dist/remote-document-codec.d.ts +2 -1
- package/dist/remote-document-codec.d.ts.map +1 -1
- package/dist/remote-document-codec.js +3 -2
- package/dist/remote-document-codec.js.map +1 -1
- package/dist/remote-error.d.ts +17 -1
- package/dist/remote-error.d.ts.map +1 -1
- package/dist/remote-error.js +32 -2
- package/dist/remote-error.js.map +1 -1
- package/dist/remote-operations.d.ts +0 -40
- package/dist/remote-operations.d.ts.map +1 -1
- package/dist/remote-operations.js +26 -6
- package/dist/remote-operations.js.map +1 -1
- package/dist/remote-parsers.d.ts +1 -1
- package/dist/remote-parsers.js +1 -1
- package/dist/search/backend-source.d.ts +6 -0
- package/dist/search/backend-source.d.ts.map +1 -0
- package/dist/search/backend-source.js +33 -0
- package/dist/search/backend-source.js.map +1 -0
- package/dist/search/contract.d.ts +151 -0
- package/dist/search/contract.d.ts.map +1 -0
- package/dist/search/contract.js +78 -0
- package/dist/search/contract.js.map +1 -0
- package/dist/search/errors.d.ts +30 -0
- package/dist/search/errors.d.ts.map +1 -0
- package/dist/search/errors.js +50 -0
- package/dist/search/errors.js.map +1 -0
- package/dist/search/identity.d.ts +12 -0
- package/dist/search/identity.d.ts.map +1 -0
- package/dist/search/identity.js +90 -0
- package/dist/search/identity.js.map +1 -0
- package/dist/search/index.d.ts +16 -0
- package/dist/search/index.d.ts.map +1 -0
- package/dist/search/index.js +15 -0
- package/dist/search/index.js.map +1 -0
- package/dist/search/memory-source.d.ts +36 -0
- package/dist/search/memory-source.d.ts.map +1 -0
- package/dist/search/memory-source.js +235 -0
- package/dist/search/memory-source.js.map +1 -0
- package/dist/search/rank.d.ts +34 -0
- package/dist/search/rank.d.ts.map +1 -0
- package/dist/search/rank.js +129 -0
- package/dist/search/rank.js.map +1 -0
- package/dist/search/row-text.d.ts +38 -0
- package/dist/search/row-text.d.ts.map +1 -0
- package/dist/search/row-text.js +88 -0
- package/dist/search/row-text.js.map +1 -0
- package/dist/search/search.d.ts +28 -0
- package/dist/search/search.d.ts.map +1 -0
- package/dist/search/search.js +257 -0
- package/dist/search/search.js.map +1 -0
- package/dist/search/source.d.ts +67 -0
- package/dist/search/source.d.ts.map +1 -0
- package/dist/search/source.js +2 -0
- package/dist/search/source.js.map +1 -0
- package/dist/search/text.d.ts +47 -0
- package/dist/search/text.d.ts.map +1 -0
- package/dist/search/text.js +150 -0
- package/dist/search/text.js.map +1 -0
- package/dist/site-capabilities.d.ts +345 -0
- package/dist/site-capabilities.d.ts.map +1 -0
- package/dist/site-capabilities.js +724 -0
- package/dist/site-capabilities.js.map +1 -0
- package/dist/source-engine/driver.d.ts +40 -0
- package/dist/source-engine/driver.d.ts.map +1 -0
- package/dist/source-engine/driver.js +392 -0
- package/dist/source-engine/driver.js.map +1 -0
- package/dist/source-engine/evidence.d.ts +39 -0
- package/dist/source-engine/evidence.d.ts.map +1 -0
- package/dist/source-engine/evidence.js +54 -0
- package/dist/source-engine/evidence.js.map +1 -0
- package/dist/source-engine/guard.d.ts +87 -0
- package/dist/source-engine/guard.d.ts.map +1 -0
- package/dist/source-engine/guard.js +427 -0
- package/dist/source-engine/guard.js.map +1 -0
- package/dist/source-engine/index.d.ts +33 -0
- package/dist/source-engine/index.d.ts.map +1 -0
- package/dist/source-engine/index.js +26 -0
- package/dist/source-engine/index.js.map +1 -0
- package/dist/source-engine/machine-state.d.ts +74 -0
- package/dist/source-engine/machine-state.d.ts.map +1 -0
- package/dist/source-engine/machine-state.js +48 -0
- package/dist/source-engine/machine-state.js.map +1 -0
- package/dist/source-engine/observe.d.ts +10 -0
- package/dist/source-engine/observe.d.ts.map +1 -0
- package/dist/source-engine/observe.js +270 -0
- package/dist/source-engine/observe.js.map +1 -0
- package/dist/source-engine/overlay.d.ts +50 -0
- package/dist/source-engine/overlay.d.ts.map +1 -0
- package/dist/source-engine/overlay.js +114 -0
- package/dist/source-engine/overlay.js.map +1 -0
- package/dist/source-engine/robots.d.ts +53 -0
- package/dist/source-engine/robots.d.ts.map +1 -0
- package/dist/source-engine/robots.js +158 -0
- package/dist/source-engine/robots.js.map +1 -0
- package/dist/source-engine/snapshot.d.ts +104 -0
- package/dist/source-engine/snapshot.d.ts.map +1 -0
- package/dist/source-engine/snapshot.js +240 -0
- package/dist/source-engine/snapshot.js.map +1 -0
- package/dist/source-engine/types.d.ts +292 -0
- package/dist/source-engine/types.d.ts.map +1 -0
- package/dist/source-engine/types.js +2 -0
- package/dist/source-engine/types.js.map +1 -0
- package/dist/source-harness/conformance.d.ts +16 -0
- package/dist/source-harness/conformance.d.ts.map +1 -0
- package/dist/source-harness/conformance.js +266 -0
- package/dist/source-harness/conformance.js.map +1 -0
- package/dist/source-harness/fixture.d.ts +97 -0
- package/dist/source-harness/fixture.d.ts.map +1 -0
- package/dist/source-harness/fixture.js +276 -0
- package/dist/source-harness/fixture.js.map +1 -0
- package/dist/source-harness/index.d.ts +22 -0
- package/dist/source-harness/index.d.ts.map +1 -0
- package/dist/source-harness/index.js +19 -0
- package/dist/source-harness/index.js.map +1 -0
- package/dist/source-harness/peer.d.ts +74 -0
- package/dist/source-harness/peer.d.ts.map +1 -0
- package/dist/source-harness/peer.js +106 -0
- package/dist/source-harness/peer.js.map +1 -0
- package/dist/source-profiles/index.d.ts +31 -0
- package/dist/source-profiles/index.d.ts.map +1 -0
- package/dist/source-profiles/index.js +206 -0
- package/dist/source-profiles/index.js.map +1 -0
- package/dist/source-profiles/link-header.d.ts +6 -0
- package/dist/source-profiles/link-header.d.ts.map +1 -0
- package/dist/source-profiles/link-header.js +131 -0
- package/dist/source-profiles/link-header.js.map +1 -0
- package/dist/storage.d.ts +9 -2
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +6 -1
- package/dist/storage.js.map +1 -1
- package/dist/string-identity-agreement.d.ts +35 -0
- package/dist/string-identity-agreement.d.ts.map +1 -0
- package/dist/string-identity-agreement.js +72 -0
- package/dist/string-identity-agreement.js.map +1 -0
- package/dist/types.d.ts +41 -6
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +0 -10
- package/dist/types.js.map +1 -1
- package/dist/uncertain-write.d.ts +157 -17
- package/dist/uncertain-write.d.ts.map +1 -1
- package/dist/uncertain-write.js +86 -30
- package/dist/uncertain-write.js.map +1 -1
- package/dist/versioning.d.ts +9 -4
- package/dist/versioning.d.ts.map +1 -1
- package/dist/versioning.js +9 -4
- package/dist/versioning.js.map +1 -1
- package/dist/view-launch-contract.d.ts +14 -0
- package/dist/view-launch-contract.d.ts.map +1 -0
- package/dist/view-launch-contract.js +23 -0
- package/dist/view-launch-contract.js.map +1 -0
- package/dist/write-identity.d.ts +5 -0
- package/dist/write-identity.d.ts.map +1 -0
- package/dist/write-identity.js +9 -0
- package/dist/write-identity.js.map +1 -0
- package/package.json +140 -3
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agreement rows for the two string identity primitives core owns: {@link foldPath}
|
|
3
|
+
* (`path-fold.ts`) and {@link compareCodeUnits} (`code-unit-order.ts`). Every expected value was
|
|
4
|
+
* written from the definitions, not captured from running the code, so a host that imports or
|
|
5
|
+
* copies these rows checks its own implementation against the definition, not against core.
|
|
6
|
+
*
|
|
7
|
+
* Shipped as a data-only module (no imports) under `@superbee/core/string-identity-agreement`, so a
|
|
8
|
+
* host test can import the rows directly, and a host that cannot depend on core can copy the file
|
|
9
|
+
* and compare its bytes. Strings use `\u` escapes so no editor or checkout can renormalize them.
|
|
10
|
+
*/
|
|
11
|
+
export const PATH_FOLD_ROWS = Object.freeze([
|
|
12
|
+
{ note: "hyphen is not a letter", input: "a-b", fold: "a-b" },
|
|
13
|
+
{ note: "dot is not a letter", input: "a.b", fold: "a.b" },
|
|
14
|
+
{ note: "underscore is not a letter", input: "a_b", fold: "a_b" },
|
|
15
|
+
{ note: "digit is not a letter", input: "a2", fold: "a2" },
|
|
16
|
+
{ note: "plain lowercase is fixed", input: "ab", fold: "ab" },
|
|
17
|
+
{ note: "ASCII uppercase", input: "REFERENCES", fold: "references" },
|
|
18
|
+
{ note: "ASCII lowercase", input: "references", fold: "references" },
|
|
19
|
+
{ note: "mixed case", input: "References", fold: "references" },
|
|
20
|
+
{ note: "long s uppercases to S", input: "reference\u017F", fold: "references" },
|
|
21
|
+
{ note: "long s inside a word", input: "re\u017Fource", fold: "resource" },
|
|
22
|
+
{ note: "Kelvin sign meets K", input: "\u212A", fold: "k" },
|
|
23
|
+
{ note: "ASCII K", input: "K", fold: "k" },
|
|
24
|
+
{ note: "dotless i uppercases to I", input: "\u0131", fold: "i" },
|
|
25
|
+
{ note: "ASCII I", input: "I", fold: "i" },
|
|
26
|
+
{ note: "dotted capital I keeps its dot", input: "\u0130", fold: "i\u0307" },
|
|
27
|
+
{ note: "NFD e acute composes", input: "e\u0301", fold: "\u00E9" },
|
|
28
|
+
{ note: "NFC e acute", input: "\u00E9", fold: "\u00E9" },
|
|
29
|
+
{ note: "NFC capital E acute", input: "\u00C9", fold: "\u00E9" },
|
|
30
|
+
{ note: "NFD capital E acute", input: "E\u0301", fold: "\u00E9" },
|
|
31
|
+
{ note: "capital sharp s", input: "\u1E9E", fold: "ss" },
|
|
32
|
+
{ note: "sharp s", input: "\u00DF", fold: "ss" },
|
|
33
|
+
{ note: "fullwidth r is not compatibility folded", input: "\uFF52", fold: "\uFF52" },
|
|
34
|
+
{ note: "emoji has no case", input: "\u{1F41D}", fold: "\u{1F41D}" },
|
|
35
|
+
{ note: "astral capital Deseret long I", input: "\u{10400}", fold: "\u{10428}" },
|
|
36
|
+
{ note: "slash is untouched across segments", input: "Notes/Reference\u017F/A-B", fold: "notes/references/a-b" },
|
|
37
|
+
]);
|
|
38
|
+
export const PATH_COLLISION_ROWS = Object.freeze([
|
|
39
|
+
{ a: "REFERENCES", b: "references", collide: true },
|
|
40
|
+
{ a: "reference\u017F", b: "references", collide: true },
|
|
41
|
+
{ a: "\u212A", b: "k", collide: true },
|
|
42
|
+
{ a: "\u0131", b: "i", collide: true },
|
|
43
|
+
{ a: "e\u0301", b: "\u00E9", collide: true },
|
|
44
|
+
{ a: "\u1E9E", b: "ss", collide: true },
|
|
45
|
+
{ a: "\u0130", b: "i", collide: false },
|
|
46
|
+
{ a: "a-b", b: "a_b", collide: false },
|
|
47
|
+
{ a: "a.b", b: "ab", collide: false },
|
|
48
|
+
{ a: "\uFF52", b: "r", collide: false },
|
|
49
|
+
]);
|
|
50
|
+
/**
|
|
51
|
+
* Strings in UTF-16 code unit order. The emoji (lead surrogate U+D83D) sorts before U+E000, which
|
|
52
|
+
* code point order and `localeCompare` would both place differently.
|
|
53
|
+
*/
|
|
54
|
+
export const CODE_UNIT_ORDER = Object.freeze([
|
|
55
|
+
"K",
|
|
56
|
+
"REFERENCES",
|
|
57
|
+
"a-b",
|
|
58
|
+
"a.b",
|
|
59
|
+
"a2",
|
|
60
|
+
"a_b",
|
|
61
|
+
"ab",
|
|
62
|
+
"e\u0301",
|
|
63
|
+
"i",
|
|
64
|
+
"references",
|
|
65
|
+
"referen\u017Fes",
|
|
66
|
+
"\u00E9",
|
|
67
|
+
"\u0131",
|
|
68
|
+
"\u212A",
|
|
69
|
+
"\u{1F41D}",
|
|
70
|
+
"\uE000",
|
|
71
|
+
]);
|
|
72
|
+
//# sourceMappingURL=string-identity-agreement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string-identity-agreement.js","sourceRoot":"","sources":["../src/string-identity-agreement.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAUH,MAAM,CAAC,MAAM,cAAc,GAA2B,MAAM,CAAC,MAAM,CAAC;IAClE,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE;IAC7D,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE;IAC1D,EAAE,IAAI,EAAE,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE;IACjE,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;IAC1D,EAAE,IAAI,EAAE,0BAA0B,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;IAC7D,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE;IACpE,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE;IACpE,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE;IAC/D,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE;IAChF,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,UAAU,EAAE;IAC1E,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE;IAC3D,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;IAC1C,EAAE,IAAI,EAAE,2BAA2B,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE;IACjE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;IAC1C,EAAE,IAAI,EAAE,gCAAgC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;IAC5E,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;IAClE,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;IACxD,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;IAChE,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;IACjE,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE;IACxD,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE;IAChD,EAAE,IAAI,EAAE,yCAAyC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;IACpF,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE;IACpE,EAAE,IAAI,EAAE,+BAA+B,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE;IAChF,EAAE,IAAI,EAAE,oCAAoC,EAAE,KAAK,EAAE,2BAA2B,EAAE,IAAI,EAAE,sBAAsB,EAAE;CACjH,CAAC,CAAC;AAaH,MAAM,CAAC,MAAM,mBAAmB,GAAgC,MAAM,CAAC,MAAM,CAAC;IAC5E,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE;IACnD,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE;IACxD,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE;IACtC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE;IACtC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE;IAC5C,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;IACvC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE;IACvC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;IACtC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE;IACrC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE;CACxC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAsB,MAAM,CAAC,MAAM,CAAC;IAC9D,GAAG;IACH,YAAY;IACZ,KAAK;IACL,KAAK;IACL,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,SAAS;IACT,GAAG;IACH,YAAY;IACZ,iBAAiB;IACjB,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,QAAQ;CACT,CAAC,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { BodyReplacePosture } from "./body-replace-guards.js";
|
|
1
2
|
/**
|
|
2
3
|
* Shared type shapes for the OKF store engine.
|
|
3
4
|
*
|
|
@@ -5,7 +6,7 @@
|
|
|
5
6
|
* here so the implementation modules can import them without a cycle, and are
|
|
6
7
|
* re-exported verbatim from `index.ts` to keep the public contract stable.
|
|
7
8
|
*
|
|
8
|
-
* @see OKF spec — GoogleCloudPlatform/knowledge-
|
|
9
|
+
* @see OKF spec — GoogleCloudPlatform/open-knowledge-format, `SPEC.md`
|
|
9
10
|
* @packageDocumentation
|
|
10
11
|
*/
|
|
11
12
|
/**
|
|
@@ -140,7 +141,8 @@ export interface ReadBlobResult {
|
|
|
140
141
|
export interface VersionInfo {
|
|
141
142
|
/** Opaque content-addressed version token for this revision. */
|
|
142
143
|
version: Version;
|
|
143
|
-
/** Who wrote this revision.
|
|
144
|
+
/** Who wrote this revision. History-keeping backends default at write time to a local identity.
|
|
145
|
+
* FilesystemBackend reports `unattributed` when document bytes carry no mutation attribution. */
|
|
144
146
|
actor: string;
|
|
145
147
|
/** ISO-8601 instant this revision was recorded. */
|
|
146
148
|
timestamp: string;
|
|
@@ -155,6 +157,10 @@ export interface VersionInfo {
|
|
|
155
157
|
}
|
|
156
158
|
/** Options controlling a conditional / attributed {@link StorageBackend.write}. */
|
|
157
159
|
export interface WriteOptions {
|
|
160
|
+
/** Explicit per-document replacement intent carried by RemoteBackend to the wire authority.
|
|
161
|
+
* Raw storage adapters ignore it; it grants no metadata/Kind policy bypass.
|
|
162
|
+
*/
|
|
163
|
+
bodyReplace?: BodyReplacePosture;
|
|
158
164
|
/**
|
|
159
165
|
* Compare-and-swap guard. When set to a {@link Version} token, the write succeeds
|
|
160
166
|
* ONLY if the backend's current version for `id` equals that token; otherwise it
|
|
@@ -247,6 +253,8 @@ export interface StorageCapabilities {
|
|
|
247
253
|
* identity of the returned document even when the input document carries a different `id`.
|
|
248
254
|
*/
|
|
249
255
|
export interface StorageBackend {
|
|
256
|
+
/** Optional exact-store cooperating-writer inventory comparison plus one concept write. */
|
|
257
|
+
readonly inventoryGuard?: import("./inventory-guard.js").InventoryGuard;
|
|
250
258
|
/** Read + parse the concept document at `id`, with its version token. Rejects (ENOENT-shaped) if absent. */
|
|
251
259
|
read(id: ConceptId): Promise<ReadResult>;
|
|
252
260
|
/**
|
|
@@ -349,11 +357,16 @@ export interface StorageBackend {
|
|
|
349
357
|
* a facet it chooses to honor. A backend that does not implement this method
|
|
350
358
|
* (FilesystemBackend / MemoryBackend — both local to their data, where a head projection
|
|
351
359
|
* saves nothing) is served by the engine's fallback (`list` +
|
|
352
|
-
* `readMany`, bodies read then dropped)
|
|
353
|
-
*
|
|
354
|
-
*
|
|
360
|
+
* `readMany`, bodies read then dropped). Both paths honor the scan's malformed-doc
|
|
361
|
+
* resilience: given `onSkip`, a backend reports each document it could not parse there and
|
|
362
|
+
* leaves it out; without it, a malformed document fails the scan.
|
|
355
363
|
*/
|
|
356
|
-
queryHeads?(filter?: QueryFilter
|
|
364
|
+
queryHeads?(filter?: QueryFilter, options?: {
|
|
365
|
+
onSkip?: (skip: {
|
|
366
|
+
id: ConceptId;
|
|
367
|
+
reason: string;
|
|
368
|
+
}) => void;
|
|
369
|
+
}): Promise<HeadResult[]>;
|
|
357
370
|
/**
|
|
358
371
|
* OPTIONAL capabilities self-declaration. `StorageBackend` carries
|
|
359
372
|
* no capabilities descriptor by default, so a wire router that wants to report an adapter's
|
|
@@ -395,6 +408,23 @@ export interface QueryFilter {
|
|
|
395
408
|
* (e.g. `tags: [a,b]`) matches on membership. A field the doc lacks never matches (empty set).
|
|
396
409
|
*/
|
|
397
410
|
fields?: Record<string, string>;
|
|
411
|
+
/**
|
|
412
|
+
* Restrict to concepts whose `sources` list holds at least one entry carrying this identity
|
|
413
|
+
* (see {@link SourceIdentity}). A selector naming neither key imposes no constraint, like an
|
|
414
|
+
* empty `tags` list.
|
|
415
|
+
*/
|
|
416
|
+
sources?: SourceIdentity;
|
|
417
|
+
}
|
|
418
|
+
/**
|
|
419
|
+
* An OKF `sources[]` identity: `resource` names the provider namespace and `id` the record within
|
|
420
|
+
* it. Each supplied key must equal the entry's own property of the same name by exact,
|
|
421
|
+
* case-sensitive string comparison: no trimming, URL normalization, or `String()` coercion. An
|
|
422
|
+
* entry that is not a mapping, or whose property is absent or not a string, never matches, and
|
|
423
|
+
* neither does a `sources` value that is not a list.
|
|
424
|
+
*/
|
|
425
|
+
export interface SourceIdentity {
|
|
426
|
+
resource?: string;
|
|
427
|
+
id?: string;
|
|
398
428
|
}
|
|
399
429
|
/** A single resolved outbound cross-link (a standard markdown link, never a wikilink). */
|
|
400
430
|
export interface Link {
|
|
@@ -406,6 +436,11 @@ export interface Link {
|
|
|
406
436
|
text: string;
|
|
407
437
|
/** The raw target as written in the markdown, before resolution (e.g. `/a/b.md`, `./x.md`). */
|
|
408
438
|
href: string;
|
|
439
|
+
/**
|
|
440
|
+
* Set only on a cross-bundle edge (`okf://<alias>/<path>.md`): the declared alias of the bundle
|
|
441
|
+
* `to` lives in. Absent on every local link, so local edge output is unchanged.
|
|
442
|
+
*/
|
|
443
|
+
bundle?: string;
|
|
409
444
|
}
|
|
410
445
|
/**
|
|
411
446
|
* Filter for {@link queryEdges} — the whole-bundle derived edge list, filtered. `from`/`to` each
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;;GAOG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;;;;;;GAOG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW;IAC1B,uJAAuJ;IACvJ,IAAI,EAAE,MAAM,CAAC;IACb,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,kGAAkG;IAClG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iHAAiH;IACjH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,qFAAqF;AACrF,MAAM,WAAW,WAAW;IAC1B,qDAAqD;IACrD,EAAE,EAAE,SAAS,CAAC;IACd,+BAA+B;IAC/B,WAAW,EAAE,WAAW,CAAC;IACzB,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;CACd;AAED,+EAA+E;AAC/E,MAAM,WAAW,MAAM;IACrB,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,gGAAgG;AAChG,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,QAAQ,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B,uGAAuG;AACvG,MAAM,WAAW,UAAU;IACzB,mCAAmC;IACnC,GAAG,EAAE,WAAW,CAAC;IACjB,iIAAiI;IACjI,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,qDAAqD;IACrD,EAAE,EAAE,SAAS,CAAC;IACd,8CAA8C;IAC9C,WAAW,EAAE,WAAW,CAAC;IACzB,mKAAmK;IACnK,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,0CAA0C;IAC1C,KAAK,EAAE,UAAU,CAAC;IAClB,oFAAoF;IACpF,WAAW,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,+GAA+G;AAC/G,MAAM,WAAW,WAAW;IAC1B,gEAAgE;IAChE,OAAO,EAAE,OAAO,CAAC;IACjB
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -1,12 +1,2 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared type shapes for the OKF store engine.
|
|
3
|
-
*
|
|
4
|
-
* These are the contract types originally sketched in `index.ts`; they are kept
|
|
5
|
-
* here so the implementation modules can import them without a cycle, and are
|
|
6
|
-
* re-exported verbatim from `index.ts` to keep the public contract stable.
|
|
7
|
-
*
|
|
8
|
-
* @see OKF spec — GoogleCloudPlatform/knowledge-catalog, `okf/SPEC.md`
|
|
9
|
-
* @packageDocumentation
|
|
10
|
-
*/
|
|
11
1
|
export {};
|
|
12
2
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
@@ -15,9 +15,13 @@
|
|
|
15
15
|
* `sleep` used for the submission deadline and the delay between lookups; there is no
|
|
16
16
|
* injectable clock, and a transport's own latency is real.
|
|
17
17
|
*/
|
|
18
|
+
import type { BodyReplacePosture } from "./body-replace-guards.js";
|
|
18
19
|
import type { Version } from "./types.js";
|
|
19
|
-
/**
|
|
20
|
-
|
|
20
|
+
/**
|
|
21
|
+
* The operation an intent performs: a whole-document write, or `document.delete` (the document
|
|
22
|
+
* leaves at exactly the intent's base). The union is open.
|
|
23
|
+
*/
|
|
24
|
+
export type OperationKind = "document.write" | "document.delete" | (string & {});
|
|
21
25
|
/**
|
|
22
26
|
* The journal states of an intent. `unknown` is the primitive's own classification of an
|
|
23
27
|
* exhausted attempt: the authority may or may not hold the write, and a later attempt begins
|
|
@@ -29,8 +33,21 @@ export interface OperationIntent {
|
|
|
29
33
|
/** Durable request identity: minted once at record time, reused verbatim on every retry. */
|
|
30
34
|
requestId: string;
|
|
31
35
|
kind: OperationKind;
|
|
36
|
+
/** Explicit whole-document edit intent, captured durably with this request identity.
|
|
37
|
+
* Absent on legacy/automatic writes, which retain body-replacement protection.
|
|
38
|
+
*/
|
|
39
|
+
readonly bodyReplace?: Readonly<BodyReplacePosture>;
|
|
32
40
|
/** The target the operation applies to; a concept id for `document.write`. */
|
|
33
41
|
target: string;
|
|
42
|
+
/**
|
|
43
|
+
* The tombstone a create acknowledges it re-creates: the id's latest deletion, as the
|
|
44
|
+
* authority named it. Set only by an explicit decision to re-create a deleted document (the
|
|
45
|
+
* caller's own observed delete, or `keep` on a "deleted remotely" conflict), and only on a
|
|
46
|
+
* create recorded after that decision; never inferred by a transport. An authority whose latest
|
|
47
|
+
* deletion of the id is another one refuses the create, and the refusal comes back as a
|
|
48
|
+
* conflict.
|
|
49
|
+
*/
|
|
50
|
+
recreates?: Version;
|
|
34
51
|
/** The shared version the local edit was made against, or `null` for a create. */
|
|
35
52
|
base: Version | null;
|
|
36
53
|
/** The content-addressed version of `content`. */
|
|
@@ -50,24 +67,109 @@ export interface OperationIntent {
|
|
|
50
67
|
export type Outcome = {
|
|
51
68
|
kind: "committed";
|
|
52
69
|
version: Version;
|
|
53
|
-
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* The shared head moved. `actual` is the version the authority serves now, or `null` when it
|
|
73
|
+
* serves none ("deleted remotely"). With `actual: null`, `tombstone` names the deletion the
|
|
74
|
+
* authority reported, when it reported one: the acknowledgement a deliberate re-create sends.
|
|
75
|
+
* It is never a version any read serves, so it is never a base or a remote version.
|
|
76
|
+
*/
|
|
77
|
+
| {
|
|
54
78
|
kind: "conflict";
|
|
55
79
|
actual: Version | null;
|
|
56
|
-
|
|
80
|
+
tombstone?: Version;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* `executed` is present only on a refusal that is not the identity's recorded answer: `false`
|
|
84
|
+
* when this attempt was refused before it could execute (nothing was sent, or the authority
|
|
85
|
+
* refused it before dispatch), `"unknown"` when the authority's answer does not say. Such a
|
|
86
|
+
* refusal is evidence about this attempt only, never about an earlier delivery of the identity.
|
|
87
|
+
*/
|
|
88
|
+
| {
|
|
57
89
|
kind: "refused";
|
|
58
90
|
code: string;
|
|
59
91
|
message: string;
|
|
60
|
-
|
|
92
|
+
executed?: false | "unknown";
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* `refusal` names the attempt-only refusal that ended the call, when one did: a resend refused
|
|
96
|
+
* before execution while an earlier delivery may still be held. The identity stays unknown;
|
|
97
|
+
* the refusal says why it could not be settled now (for example, access withdrawn).
|
|
98
|
+
*/
|
|
99
|
+
| {
|
|
61
100
|
kind: "unknown";
|
|
101
|
+
refusal?: {
|
|
102
|
+
code: string;
|
|
103
|
+
message: string;
|
|
104
|
+
};
|
|
62
105
|
};
|
|
106
|
+
/**
|
|
107
|
+
* A lookup's answer that the authority holds the identity without a result yet: a delivery of
|
|
108
|
+
* it was admitted and may still commit. Distinct from `null`, which says it was never admitted.
|
|
109
|
+
*/
|
|
110
|
+
export interface LookupPending {
|
|
111
|
+
kind: "pending";
|
|
112
|
+
}
|
|
113
|
+
/** The one {@link LookupPending} answer. */
|
|
114
|
+
export declare const LOOKUP_PENDING: LookupPending;
|
|
63
115
|
/** A transport to a shared authority that records outcomes by request identity. */
|
|
64
116
|
export interface OperationTransport {
|
|
65
117
|
/** Deliver the intent once; a repeated `requestId` must return the recorded outcome unchanged. */
|
|
66
118
|
submit(intent: OperationIntent, options?: {
|
|
67
119
|
signal?: AbortSignal;
|
|
68
120
|
}): Promise<Outcome>;
|
|
69
|
-
/**
|
|
70
|
-
|
|
121
|
+
/**
|
|
122
|
+
* The recorded outcome for `requestId`; {@link LookupPending} when the authority holds it
|
|
123
|
+
* unanswered; or `null` when the authority never recorded it. A transport that cannot tell
|
|
124
|
+
* pending from absent answers `null` for both.
|
|
125
|
+
*/
|
|
126
|
+
lookup(requestId: string): Promise<Outcome | LookupPending | null>;
|
|
127
|
+
}
|
|
128
|
+
/** Minimal classification for recorded-only delivery. A commit need not invent a new-head
|
|
129
|
+
* version (for example, an identified blob delete can carry its complete absence receipt). */
|
|
130
|
+
export interface NonExecutedAttempt {
|
|
131
|
+
kind: "not-executed";
|
|
132
|
+
attempts: number;
|
|
133
|
+
details: unknown;
|
|
134
|
+
}
|
|
135
|
+
export type RecordedWriteOutcome = NonExecutedAttempt | {
|
|
136
|
+
kind: "committed";
|
|
137
|
+
} | {
|
|
138
|
+
kind: "conflict";
|
|
139
|
+
} | {
|
|
140
|
+
kind: "refused";
|
|
141
|
+
code: string;
|
|
142
|
+
message: string;
|
|
143
|
+
} | {
|
|
144
|
+
kind: "unknown";
|
|
145
|
+
};
|
|
146
|
+
export type RecordedWriteIntent = Pick<OperationIntent, "requestId" | "kind" | "target" | "createdAt" | "attempts" | "state"> & {
|
|
147
|
+
/** Opt-in qualification; old no-prefix explicit callers retain their contract. */
|
|
148
|
+
notAppliedThrough?: number;
|
|
149
|
+
};
|
|
150
|
+
export interface RecordedWriteTransport<I extends RecordedWriteIntent, O extends RecordedWriteOutcome> {
|
|
151
|
+
submit(intent: I, options?: {
|
|
152
|
+
signal?: AbortSignal;
|
|
153
|
+
}): Promise<O>;
|
|
154
|
+
/** Null/absence is inconclusive and NEVER grants this path permission to submit. */
|
|
155
|
+
lookup(requestId: string): Promise<O | null>;
|
|
156
|
+
}
|
|
157
|
+
/** Explicit starts are for callers that own persistence, not proof minted by this primitive.
|
|
158
|
+
* submit-claimed requires a freshly successful durable in_flight CAS, held under the checkout
|
|
159
|
+
* lock, immediately before this call; its counted attempt is sent at most once. After reopening,
|
|
160
|
+
* or when that freshness cannot be established, use lookup. Replaying a stored claim is NOT a
|
|
161
|
+
* fresh CAS. Nor does a new CAS prove an earlier unclear delivery cannot still commit: those
|
|
162
|
+
* identities must use lookup. This function creates no ticket or journal persistence itself. */
|
|
163
|
+
export type RecordedWriteOptions = Omit<UncertainWriteOptions, "settlement" | "maxSubmissions" | "earlierDeliveryUnclear"> & {
|
|
164
|
+
settlement: "recorded-only";
|
|
165
|
+
start: "submit-claimed" | "lookup";
|
|
166
|
+
};
|
|
167
|
+
export interface RecordedWriteResult<I extends RecordedWriteIntent, O extends RecordedWriteOutcome> {
|
|
168
|
+
intent: Omit<I, "attempts" | "state"> & Pick<RecordedWriteIntent, "attempts" | "state">;
|
|
169
|
+
outcome: O | {
|
|
170
|
+
kind: "unknown";
|
|
171
|
+
};
|
|
172
|
+
lookups: number;
|
|
71
173
|
}
|
|
72
174
|
/** Wait `ms`, resolving early and harmlessly when `signal` aborts. Injected by tests. */
|
|
73
175
|
export type Sleep = (ms: number, signal?: AbortSignal) => Promise<void>;
|
|
@@ -84,6 +186,20 @@ export interface UncertainWriteOptions {
|
|
|
84
186
|
maxSubmissions?: number;
|
|
85
187
|
/** Timer; defaults to a `setTimeout` sleep. */
|
|
86
188
|
sleep?: Sleep;
|
|
189
|
+
/**
|
|
190
|
+
* Ends the call early once aborted: no further lookup or resubmission starts, the wait between
|
|
191
|
+
* lookups is cut short, and the outcome is `unknown` unless one was already known. Absent, the
|
|
192
|
+
* call runs every lookup and submission it is permitted.
|
|
193
|
+
*/
|
|
194
|
+
signal?: AbortSignal;
|
|
195
|
+
/**
|
|
196
|
+
* The intent's earlier submission, made by an earlier call, ended without a definitive answer
|
|
197
|
+
* (its outcome was unknown, or the call stopped while it was in flight). A resubmission refused
|
|
198
|
+
* before execution is then `unknown`, as one after an unclear submission in this call is.
|
|
199
|
+
* Default false: an earlier submission answered with such a refusal (a paused intent requeued)
|
|
200
|
+
* may be resent and refused again definitively.
|
|
201
|
+
*/
|
|
202
|
+
earlierDeliveryUnclear?: boolean;
|
|
87
203
|
}
|
|
88
204
|
export interface UncertainWriteResult {
|
|
89
205
|
/** The intent with `attempts` and `state` advanced to reflect this call. */
|
|
@@ -92,12 +208,16 @@ export interface UncertainWriteResult {
|
|
|
92
208
|
/** How many times `lookup` was called in this call. */
|
|
93
209
|
lookups: number;
|
|
94
210
|
}
|
|
95
|
-
/**
|
|
211
|
+
/**
|
|
212
|
+
* Refusal codes that pause shared operations rather than say the content is wrong: the caller's
|
|
213
|
+
* authorization is gone, or a hosted sync quota (`REQUEST_CAPACITY_*`, one per scope the host
|
|
214
|
+
* names) is spent. Nothing is lost; the refused intents are requeued when the store resumes.
|
|
215
|
+
*/
|
|
96
216
|
export declare const AUTHORIZATION_REFUSAL_CODES: ReadonlySet<string>;
|
|
97
217
|
/** True when a refusal reports lost permission, which pauses further shared operations. */
|
|
98
|
-
export declare function isAuthorizationRefusal(outcome: Outcome): boolean;
|
|
218
|
+
export declare function isAuthorizationRefusal(outcome: Outcome | RecordedWriteOutcome): boolean;
|
|
99
219
|
/** The journal state an outcome settles an intent into. */
|
|
100
|
-
export declare function stateForOutcome(outcome: Outcome): OperationState;
|
|
220
|
+
export declare function stateForOutcome(outcome: Outcome | RecordedWriteOutcome): OperationState;
|
|
101
221
|
/** The longest request identity the wire accepts as `Idempotency-Key`. */
|
|
102
222
|
export declare const REQUEST_ID_MAX_LENGTH = 128;
|
|
103
223
|
/**
|
|
@@ -116,10 +236,12 @@ export declare function mintRequestId(): string;
|
|
|
116
236
|
* at that version. This is the wire's post-expiry compare-and-swap property: a committed write
|
|
117
237
|
* whose acknowledgement was lost and whose recorded outcome expired from the authority's
|
|
118
238
|
* retention window is resubmitted with its original `base`, which no longer matches, and the
|
|
119
|
-
* authority answers a conflict against the version the client itself committed.
|
|
120
|
-
*
|
|
121
|
-
*
|
|
122
|
-
*
|
|
239
|
+
* authority answers a conflict against the version the client itself committed. If the head
|
|
240
|
+
* has meanwhile returned to `base` exactly, the premise matches and the resubmission is applied
|
|
241
|
+
* again instead (see {@link performUncertainWrite}). The mapping depends only on the outcome and
|
|
242
|
+
* the intent, so the primitive owns it and every consumer settles such a write as acknowledged
|
|
243
|
+
* rather than presenting it as a concurrent edit. Every other conflict, including one against
|
|
244
|
+
* an absent head (`actual: null`), is returned unchanged.
|
|
123
245
|
*/
|
|
124
246
|
export declare function settleAgainstIntent(outcome: Outcome, intent: OperationIntent): Outcome;
|
|
125
247
|
/**
|
|
@@ -127,9 +249,9 @@ export declare function settleAgainstIntent(outcome: Outcome, intent: OperationI
|
|
|
127
249
|
*
|
|
128
250
|
* Flow: when the intent has never been submitted, submit it; when it has (`attempts > 0`), or
|
|
129
251
|
* when a submission's outcome is unknown, look the request identity up. A positive lookup
|
|
130
|
-
* settles the intent. A `null` lookup
|
|
131
|
-
* resubmission with the same `requestId` is the first delivery and is allowed, up
|
|
132
|
-
* `maxSubmissions`. A lookup that fails leaves the outcome unknown and the intent for a later
|
|
252
|
+
* settles the intent. A `null` lookup is taken as proof that the authority never recorded the
|
|
253
|
+
* request, so a resubmission with the same `requestId` is the first delivery and is allowed, up
|
|
254
|
+
* to `maxSubmissions`. A lookup that fails leaves the outcome unknown and the intent for a later
|
|
133
255
|
* call.
|
|
134
256
|
*
|
|
135
257
|
* No resubmission happens without a `null` lookup because a blind retry after an unknown
|
|
@@ -137,8 +259,26 @@ export declare function settleAgainstIntent(outcome: Outcome, intent: OperationI
|
|
|
137
259
|
* twice, and even on one with it the retry can only ever learn what the lookup already knew.
|
|
138
260
|
* The lookup is what turns "unknown" into a fact before any second delivery.
|
|
139
261
|
*
|
|
262
|
+
* That fact is only as good as the transport's `null`. An authority that has expired or lost a
|
|
263
|
+
* record answers as if it never recorded it, and the reference wire transport returns `null`
|
|
264
|
+
* then. The resubmission is guarded only by its `base`, and versions are content hashes: if the
|
|
265
|
+
* write had landed and a third party has since restored `base` exactly, the premise matches, the
|
|
266
|
+
* write is applied a second time over that revert, and the outcome is `committed`. The hosted
|
|
267
|
+
* transport never answers `null` for an absent record once the intent is older than the host's
|
|
268
|
+
* stated retention window, less a skew margin, so it does not resubmit there.
|
|
269
|
+
*
|
|
270
|
+
* A refusal before execution ({@link isAuthorizationRefusal}) of a resubmission that follows an
|
|
271
|
+
* unclear submission (in this call, or an earlier one per `earlierDeliveryUnclear`) is `unknown`,
|
|
272
|
+
* carrying that refusal, not settled: a `null` lookup cannot prove an earlier delivery will not
|
|
273
|
+
* still arrive, and the delivery can still commit. After a {@link LookupPending} answer, which
|
|
274
|
+
* says a delivery is held, the same holds for every refusal the transport marks `executed`
|
|
275
|
+
* (a gateway's `400` included). A pending lookup still permits the resubmission.
|
|
276
|
+
*
|
|
140
277
|
* By default every outcome passes through {@link settleAgainstIntent}, so a conflict naming the
|
|
141
278
|
* intent's own version is committed. `recorded-only` preserves the recorded outcome instead.
|
|
142
279
|
*/
|
|
280
|
+
export declare function performUncertainWrite<I extends RecordedWriteIntent, O extends RecordedWriteOutcome>(transport: RecordedWriteTransport<I, O>, intent: I, options: RecordedWriteOptions): Promise<RecordedWriteResult<I, O>>;
|
|
281
|
+
/** Compatibility path: a complete document intent, with the existing counters/resubmission
|
|
282
|
+
* defaults. Body delivery's recorded-only call without start remains on this path. */
|
|
143
283
|
export declare function performUncertainWrite(transport: OperationTransport, intent: OperationIntent, options?: UncertainWriteOptions): Promise<UncertainWriteResult>;
|
|
144
284
|
//# sourceMappingURL=uncertain-write.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uncertain-write.d.ts","sourceRoot":"","sources":["../src/uncertain-write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C
|
|
1
|
+
{"version":3,"file":"uncertain-write.d.ts","sourceRoot":"","sources":["../src/uncertain-write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEjF;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,WAAW,GAAG,cAAc,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAE3G,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,4FAA4F;IAC5F,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,aAAa,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACpD,8EAA8E;IAC9E,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kFAAkF;IAClF,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,kDAAkD;IAClD,KAAK,EAAE,OAAO,CAAC;IACf,kFAAkF;IAClF,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,cAAc,CAAC;CACvB;AAED,uDAAuD;AACvD,MAAM,MAAM,OAAO,GACf;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE;AACzC;;;;;GAKG;GACD;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE;AACnE;;;;;GAKG;GACD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAAE;AAClF;;;;GAIG;GACD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC;AAErE;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,4CAA4C;AAC5C,eAAO,MAAM,cAAc,EAAE,aAAkD,CAAC;AAEhF,mFAAmF;AACnF,MAAM,WAAW,kBAAkB;IACjC,kGAAkG;IAClG,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtF;;;;OAIG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,aAAa,GAAG,IAAI,CAAC,CAAC;CACpE;AAED;8FAC8F;AAC9F,MAAM,WAAW,kBAAkB;IAAG,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE;AAChG,MAAM,MAAM,oBAAoB,GAC5B,kBAAkB,GAClB;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AACxB,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,GAAG;IAC9H,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AACF,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,mBAAmB,EAAE,CAAC,SAAS,oBAAoB;IACnG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAClE,oFAAoF;IACpF,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;CAC9C;AACD;;;;;gGAKgG;AAChG,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,qBAAqB,EAAE,YAAY,GAAG,gBAAgB,GAAG,wBAAwB,CAAC,GAAG;IAC3H,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,EAAE,gBAAgB,GAAG,QAAQ,CAAC;CACpC,CAAC;AACF,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,mBAAmB,EAAE,CAAC,SAAS,oBAAoB;IAChG,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,mBAAmB,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC;IACxF,OAAO,EAAE,CAAC,GAAG;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,yFAAyF;AACzF,MAAM,MAAM,KAAK,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAExE,MAAM,WAAW,qBAAqB;IACpC,qGAAqG;IACrG,UAAU,CAAC,EAAE,eAAe,GAAG,eAAe,CAAC;IAC/C,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4FAA4F;IAC5F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,4EAA4E;IAC5E,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,WAAW,CAAC,MAAM,CAO1D,CAAC;AAEH,2FAA2F;AAC3F,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,oBAAoB,GAAG,OAAO,CAEvF;AAcD,2DAA2D;AAC3D,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,oBAAoB,GAAG,cAAc,CAavF;AAED,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED,mGAAmG;AACnG,wBAAgB,aAAa,IAAI,MAAM,CAItC;AAqBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAKtF;AAwBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,mBAAmB,EAAE,CAAC,SAAS,oBAAoB,EACjG,SAAS,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,oBAAoB,GAChF,OAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACtC;sFACsF;AACtF,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,qBAAqB,GACtF,OAAO,CAAC,oBAAoB,CAAC,CAAC"}
|