@agent-teams/document-authoring 0.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +5 -0
- package/LICENSE +201 -0
- package/README.md +11 -0
- package/dist/adapters/canonical-markdown.d.ts +14 -0
- package/dist/adapters/canonical-markdown.d.ts.map +1 -0
- package/dist/adapters/canonical-markdown.js +354 -0
- package/dist/adapters/canonical-markdown.js.map +1 -0
- package/dist/adapters/inbound/cli/document-command-renderer.d.ts +6 -0
- package/dist/adapters/inbound/cli/document-command-renderer.d.ts.map +1 -0
- package/dist/adapters/inbound/cli/document-command-renderer.js +123 -0
- package/dist/adapters/inbound/cli/document-command-renderer.js.map +1 -0
- package/dist/adapters/node/load-validated-document-authoring-profile-v2.d.ts +52 -0
- package/dist/adapters/node/load-validated-document-authoring-profile-v2.d.ts.map +1 -0
- package/dist/adapters/node/load-validated-document-authoring-profile-v2.js +103 -0
- package/dist/adapters/node/load-validated-document-authoring-profile-v2.js.map +1 -0
- package/dist/adapters/node/load-validated-document-authoring-profile.d.ts +33 -0
- package/dist/adapters/node/load-validated-document-authoring-profile.d.ts.map +1 -0
- package/dist/adapters/node/load-validated-document-authoring-profile.js +47 -0
- package/dist/adapters/node/load-validated-document-authoring-profile.js.map +1 -0
- package/dist/adapters/node/node-authoring-profile-reader-v2.d.ts +9 -0
- package/dist/adapters/node/node-authoring-profile-reader-v2.d.ts.map +1 -0
- package/dist/adapters/node/node-authoring-profile-reader-v2.js +42 -0
- package/dist/adapters/node/node-authoring-profile-reader-v2.js.map +1 -0
- package/dist/adapters/node/node-authoring-profile-reader.d.ts +9 -0
- package/dist/adapters/node/node-authoring-profile-reader.d.ts.map +1 -0
- package/dist/adapters/node/node-authoring-profile-reader.js +31 -0
- package/dist/adapters/node/node-authoring-profile-reader.js.map +1 -0
- package/dist/adapters/node/node-document-contract-validator.d.ts +7 -0
- package/dist/adapters/node/node-document-contract-validator.d.ts.map +1 -0
- package/dist/adapters/node/node-document-contract-validator.js +306 -0
- package/dist/adapters/node/node-document-contract-validator.js.map +1 -0
- package/dist/adapters/node/node-document-environment-inspector.d.ts +17 -0
- package/dist/adapters/node/node-document-environment-inspector.d.ts.map +1 -0
- package/dist/adapters/node/node-document-environment-inspector.js +49 -0
- package/dist/adapters/node/node-document-environment-inspector.js.map +1 -0
- package/dist/adapters/node/node-document-file-state.d.ts +21 -0
- package/dist/adapters/node/node-document-file-state.d.ts.map +1 -0
- package/dist/adapters/node/node-document-file-state.js +199 -0
- package/dist/adapters/node/node-document-file-state.js.map +1 -0
- package/dist/adapters/node/node-document-journal-store-faults.d.ts +36 -0
- package/dist/adapters/node/node-document-journal-store-faults.d.ts.map +1 -0
- package/dist/adapters/node/node-document-journal-store-faults.js +2 -0
- package/dist/adapters/node/node-document-journal-store-faults.js.map +1 -0
- package/dist/adapters/node/node-document-journal-store-private.d.ts +2 -0
- package/dist/adapters/node/node-document-journal-store-private.d.ts.map +1 -0
- package/dist/adapters/node/node-document-journal-store-private.js +2 -0
- package/dist/adapters/node/node-document-journal-store-private.js.map +1 -0
- package/dist/adapters/node/node-document-journal-store.d.ts +22 -0
- package/dist/adapters/node/node-document-journal-store.d.ts.map +1 -0
- package/dist/adapters/node/node-document-journal-store.js +235 -0
- package/dist/adapters/node/node-document-journal-store.js.map +1 -0
- package/dist/adapters/node/node-document-metadata-sidecar-reader.d.ts +9 -0
- package/dist/adapters/node/node-document-metadata-sidecar-reader.d.ts.map +1 -0
- package/dist/adapters/node/node-document-metadata-sidecar-reader.js +87 -0
- package/dist/adapters/node/node-document-metadata-sidecar-reader.js.map +1 -0
- package/dist/adapters/node/node-document-parent-materializer.d.ts +39 -0
- package/dist/adapters/node/node-document-parent-materializer.d.ts.map +1 -0
- package/dist/adapters/node/node-document-parent-materializer.js +269 -0
- package/dist/adapters/node/node-document-parent-materializer.js.map +1 -0
- package/dist/adapters/node/node-document-planning-profile-reader.d.ts +10 -0
- package/dist/adapters/node/node-document-planning-profile-reader.d.ts.map +1 -0
- package/dist/adapters/node/node-document-planning-profile-reader.js +85 -0
- package/dist/adapters/node/node-document-planning-profile-reader.js.map +1 -0
- package/dist/adapters/node/node-document-planning-state-reader.d.ts +11 -0
- package/dist/adapters/node/node-document-planning-state-reader.d.ts.map +1 -0
- package/dist/adapters/node/node-document-planning-state-reader.js +181 -0
- package/dist/adapters/node/node-document-planning-state-reader.js.map +1 -0
- package/dist/adapters/node/node-document-publisher-private.d.ts +2 -0
- package/dist/adapters/node/node-document-publisher-private.d.ts.map +1 -0
- package/dist/adapters/node/node-document-publisher-private.js +2 -0
- package/dist/adapters/node/node-document-publisher-private.js.map +1 -0
- package/dist/adapters/node/node-document-publisher.d.ts +54 -0
- package/dist/adapters/node/node-document-publisher.d.ts.map +1 -0
- package/dist/adapters/node/node-document-publisher.js +336 -0
- package/dist/adapters/node/node-document-publisher.js.map +1 -0
- package/dist/adapters/node/node-document-reachability-projector.d.ts +17 -0
- package/dist/adapters/node/node-document-reachability-projector.d.ts.map +1 -0
- package/dist/adapters/node/node-document-reachability-projector.js +43 -0
- package/dist/adapters/node/node-document-reachability-projector.js.map +1 -0
- package/dist/adapters/node/node-document-structure-verifier.d.ts +21 -0
- package/dist/adapters/node/node-document-structure-verifier.d.ts.map +1 -0
- package/dist/adapters/node/node-document-structure-verifier.js +80 -0
- package/dist/adapters/node/node-document-structure-verifier.js.map +1 -0
- package/dist/adapters/node/node-document-template-reader.d.ts +10 -0
- package/dist/adapters/node/node-document-template-reader.d.ts.map +1 -0
- package/dist/adapters/node/node-document-template-reader.js +32 -0
- package/dist/adapters/node/node-document-template-reader.js.map +1 -0
- package/dist/adapters/node/node-document-transaction-coordinator.d.ts +11 -0
- package/dist/adapters/node/node-document-transaction-coordinator.d.ts.map +1 -0
- package/dist/adapters/node/node-document-transaction-coordinator.js +60 -0
- package/dist/adapters/node/node-document-transaction-coordinator.js.map +1 -0
- package/dist/adapters/node/node-metadata-instance-validator.d.ts +9 -0
- package/dist/adapters/node/node-metadata-instance-validator.d.ts.map +1 -0
- package/dist/adapters/node/node-metadata-instance-validator.js +90 -0
- package/dist/adapters/node/node-metadata-instance-validator.js.map +1 -0
- package/dist/adapters/node/node-owner-membership-reader.d.ts +10 -0
- package/dist/adapters/node/node-owner-membership-reader.d.ts.map +1 -0
- package/dist/adapters/node/node-owner-membership-reader.js +62 -0
- package/dist/adapters/node/node-owner-membership-reader.js.map +1 -0
- package/dist/adapters/node/node-path-authority.d.ts +53 -0
- package/dist/adapters/node/node-path-authority.d.ts.map +1 -0
- package/dist/adapters/node/node-path-authority.js +186 -0
- package/dist/adapters/node/node-path-authority.js.map +1 -0
- package/dist/adapters/node/read-document-authority-file.d.ts +12 -0
- package/dist/adapters/node/read-document-authority-file.d.ts.map +1 -0
- package/dist/adapters/node/read-document-authority-file.js +78 -0
- package/dist/adapters/node/read-document-authority-file.js.map +1 -0
- package/dist/adapters/node/recapture-document-publication-paths.d.ts +17 -0
- package/dist/adapters/node/recapture-document-publication-paths.d.ts.map +1 -0
- package/dist/adapters/node/recapture-document-publication-paths.js +33 -0
- package/dist/adapters/node/recapture-document-publication-paths.js.map +1 -0
- package/dist/application/model/document-authoring-profile-description.d.ts +57 -0
- package/dist/application/model/document-authoring-profile-description.d.ts.map +1 -0
- package/dist/application/model/document-authoring-profile-description.js +2 -0
- package/dist/application/model/document-authoring-profile-description.js.map +1 -0
- package/dist/application/model/document-catalog.d.ts +88 -0
- package/dist/application/model/document-catalog.d.ts.map +1 -0
- package/dist/application/model/document-catalog.js +2 -0
- package/dist/application/model/document-catalog.js.map +1 -0
- package/dist/application/model/document-command.d.ts +69 -0
- package/dist/application/model/document-command.d.ts.map +1 -0
- package/dist/application/model/document-command.js +2 -0
- package/dist/application/model/document-command.js.map +1 -0
- package/dist/application/model/document-find.d.ts +22 -0
- package/dist/application/model/document-find.d.ts.map +1 -0
- package/dist/application/model/document-find.js +2 -0
- package/dist/application/model/document-find.js.map +1 -0
- package/dist/application/model/document-parent-materialization.d.ts +26 -0
- package/dist/application/model/document-parent-materialization.d.ts.map +1 -0
- package/dist/application/model/document-parent-materialization.js +2 -0
- package/dist/application/model/document-parent-materialization.js.map +1 -0
- package/dist/application/model/document-physical-identity.d.ts +10 -0
- package/dist/application/model/document-physical-identity.d.ts.map +1 -0
- package/dist/application/model/document-physical-identity.js +29 -0
- package/dist/application/model/document-physical-identity.js.map +1 -0
- package/dist/application/model/document-planning.d.ts +209 -0
- package/dist/application/model/document-planning.d.ts.map +1 -0
- package/dist/application/model/document-planning.js +2 -0
- package/dist/application/model/document-planning.js.map +1 -0
- package/dist/application/model/document-receipt.d.ts +101 -0
- package/dist/application/model/document-receipt.d.ts.map +1 -0
- package/dist/application/model/document-receipt.js +2 -0
- package/dist/application/model/document-receipt.js.map +1 -0
- package/dist/application/model/document-transaction-inspection.d.ts +66 -0
- package/dist/application/model/document-transaction-inspection.d.ts.map +1 -0
- package/dist/application/model/document-transaction-inspection.js +2 -0
- package/dist/application/model/document-transaction-inspection.js.map +1 -0
- package/dist/application/model/document-transaction.d.ts +169 -0
- package/dist/application/model/document-transaction.d.ts.map +1 -0
- package/dist/application/model/document-transaction.js +2 -0
- package/dist/application/model/document-transaction.js.map +1 -0
- package/dist/application/policies/assert-artifact-owner-allowed.d.ts +3 -0
- package/dist/application/policies/assert-artifact-owner-allowed.d.ts.map +1 -0
- package/dist/application/policies/assert-artifact-owner-allowed.js +8 -0
- package/dist/application/policies/assert-artifact-owner-allowed.js.map +1 -0
- package/dist/application/policies/assert-v2-planning-profile.d.ts +3 -0
- package/dist/application/policies/assert-v2-planning-profile.d.ts.map +1 -0
- package/dist/application/policies/assert-v2-planning-profile.js +7 -0
- package/dist/application/policies/assert-v2-planning-profile.js.map +1 -0
- package/dist/application/policies/authoring-profile-semantics.d.ts +42 -0
- package/dist/application/policies/authoring-profile-semantics.d.ts.map +1 -0
- package/dist/application/policies/authoring-profile-semantics.js +129 -0
- package/dist/application/policies/authoring-profile-semantics.js.map +1 -0
- package/dist/application/policies/classify-document-recovery.d.ts +81 -0
- package/dist/application/policies/classify-document-recovery.d.ts.map +1 -0
- package/dist/application/policies/classify-document-recovery.js +138 -0
- package/dist/application/policies/classify-document-recovery.js.map +1 -0
- package/dist/application/policies/document-authoring-semantic-digests.d.ts +31 -0
- package/dist/application/policies/document-authoring-semantic-digests.d.ts.map +1 -0
- package/dist/application/policies/document-authoring-semantic-digests.js +163 -0
- package/dist/application/policies/document-authoring-semantic-digests.js.map +1 -0
- package/dist/application/policies/document-catalog-authority-stability.d.ts +12 -0
- package/dist/application/policies/document-catalog-authority-stability.d.ts.map +1 -0
- package/dist/application/policies/document-catalog-authority-stability.js +16 -0
- package/dist/application/policies/document-catalog-authority-stability.js.map +1 -0
- package/dist/application/policies/document-catalog-diagnostics.d.ts +8 -0
- package/dist/application/policies/document-catalog-diagnostics.d.ts.map +1 -0
- package/dist/application/policies/document-catalog-diagnostics.js +44 -0
- package/dist/application/policies/document-catalog-diagnostics.js.map +1 -0
- package/dist/application/policies/document-catalog-fields.d.ts +18 -0
- package/dist/application/policies/document-catalog-fields.d.ts.map +1 -0
- package/dist/application/policies/document-catalog-fields.js +62 -0
- package/dist/application/policies/document-catalog-fields.js.map +1 -0
- package/dist/application/policies/document-catalog-sidecar.d.ts +10 -0
- package/dist/application/policies/document-catalog-sidecar.d.ts.map +1 -0
- package/dist/application/policies/document-catalog-sidecar.js +66 -0
- package/dist/application/policies/document-catalog-sidecar.js.map +1 -0
- package/dist/application/policies/document-command-consumer-root.d.ts +2 -0
- package/dist/application/policies/document-command-consumer-root.d.ts.map +1 -0
- package/dist/application/policies/document-command-consumer-root.js +15 -0
- package/dist/application/policies/document-command-consumer-root.js.map +1 -0
- package/dist/application/policies/document-command-projection.d.ts +20 -0
- package/dist/application/policies/document-command-projection.d.ts.map +1 -0
- package/dist/application/policies/document-command-projection.js +90 -0
- package/dist/application/policies/document-command-projection.js.map +1 -0
- package/dist/application/policies/document-contract-digests.d.ts +20 -0
- package/dist/application/policies/document-contract-digests.d.ts.map +1 -0
- package/dist/application/policies/document-contract-digests.js +329 -0
- package/dist/application/policies/document-contract-digests.js.map +1 -0
- package/dist/application/policies/document-logical-preimage.d.ts +14 -0
- package/dist/application/policies/document-logical-preimage.d.ts.map +1 -0
- package/dist/application/policies/document-logical-preimage.js +61 -0
- package/dist/application/policies/document-logical-preimage.js.map +1 -0
- package/dist/application/policies/document-planning-policy-error.d.ts +6 -0
- package/dist/application/policies/document-planning-policy-error.d.ts.map +1 -0
- package/dist/application/policies/document-planning-policy-error.js +9 -0
- package/dist/application/policies/document-planning-policy-error.js.map +1 -0
- package/dist/application/policies/document-receipt-policy.d.ts +5 -0
- package/dist/application/policies/document-receipt-policy.d.ts.map +1 -0
- package/dist/application/policies/document-receipt-policy.js +92 -0
- package/dist/application/policies/document-receipt-policy.js.map +1 -0
- package/dist/application/policies/document-repository-path.d.ts +3 -0
- package/dist/application/policies/document-repository-path.d.ts.map +1 -0
- package/dist/application/policies/document-repository-path.js +24 -0
- package/dist/application/policies/document-repository-path.js.map +1 -0
- package/dist/application/policies/document-temporary-path.d.ts +7 -0
- package/dist/application/policies/document-temporary-path.d.ts.map +1 -0
- package/dist/application/policies/document-temporary-path.js +34 -0
- package/dist/application/policies/document-temporary-path.js.map +1 -0
- package/dist/application/policies/document-transaction-digests.d.ts +5 -0
- package/dist/application/policies/document-transaction-digests.d.ts.map +1 -0
- package/dist/application/policies/document-transaction-digests.js +12 -0
- package/dist/application/policies/document-transaction-digests.js.map +1 -0
- package/dist/application/policies/document-transaction-envelope-body.d.ts +28 -0
- package/dist/application/policies/document-transaction-envelope-body.d.ts.map +1 -0
- package/dist/application/policies/document-transaction-envelope-body.js +140 -0
- package/dist/application/policies/document-transaction-envelope-body.js.map +1 -0
- package/dist/application/policies/document-transaction-envelope-policy.d.ts +4 -0
- package/dist/application/policies/document-transaction-envelope-policy.d.ts.map +1 -0
- package/dist/application/policies/document-transaction-envelope-policy.js +159 -0
- package/dist/application/policies/document-transaction-envelope-policy.js.map +1 -0
- package/dist/application/policies/inspect-catalog-document.d.ts +18 -0
- package/dist/application/policies/inspect-catalog-document.d.ts.map +1 -0
- package/dist/application/policies/inspect-catalog-document.js +126 -0
- package/dist/application/policies/inspect-catalog-document.js.map +1 -0
- package/dist/application/policies/normalize-document-intent.d.ts +3 -0
- package/dist/application/policies/normalize-document-intent.d.ts.map +1 -0
- package/dist/application/policies/normalize-document-intent.js +104 -0
- package/dist/application/policies/normalize-document-intent.js.map +1 -0
- package/dist/application/policies/project-catalog-metadata.d.ts +7 -0
- package/dist/application/policies/project-catalog-metadata.d.ts.map +1 -0
- package/dist/application/policies/project-catalog-metadata.js +165 -0
- package/dist/application/policies/project-catalog-metadata.js.map +1 -0
- package/dist/application/policies/project-document-reachability.d.ts +14 -0
- package/dist/application/policies/project-document-reachability.d.ts.map +1 -0
- package/dist/application/policies/project-document-reachability.js +57 -0
- package/dist/application/policies/project-document-reachability.js.map +1 -0
- package/dist/application/policies/project-similar-document-advice.d.ts +4 -0
- package/dist/application/policies/project-similar-document-advice.d.ts.map +1 -0
- package/dist/application/policies/project-similar-document-advice.js +17 -0
- package/dist/application/policies/project-similar-document-advice.js.map +1 -0
- package/dist/application/policies/resolve-document-authoring.d.ts +13 -0
- package/dist/application/policies/resolve-document-authoring.d.ts.map +1 -0
- package/dist/application/policies/resolve-document-authoring.js +154 -0
- package/dist/application/policies/resolve-document-authoring.js.map +1 -0
- package/dist/application/policies/same-document-catalog-snapshot.d.ts +3 -0
- package/dist/application/policies/same-document-catalog-snapshot.d.ts.map +1 -0
- package/dist/application/policies/same-document-catalog-snapshot.js +24 -0
- package/dist/application/policies/same-document-catalog-snapshot.js.map +1 -0
- package/dist/application/ports/authoring-profile-reader.d.ts +37 -0
- package/dist/application/ports/authoring-profile-reader.d.ts.map +1 -0
- package/dist/application/ports/authoring-profile-reader.js +2 -0
- package/dist/application/ports/authoring-profile-reader.js.map +1 -0
- package/dist/application/ports/canonical-document-renderer.d.ts +29 -0
- package/dist/application/ports/canonical-document-renderer.d.ts.map +1 -0
- package/dist/application/ports/canonical-document-renderer.js +2 -0
- package/dist/application/ports/canonical-document-renderer.js.map +1 -0
- package/dist/application/ports/document-authority-recompiler.d.ts +19 -0
- package/dist/application/ports/document-authority-recompiler.d.ts.map +1 -0
- package/dist/application/ports/document-authority-recompiler.js +2 -0
- package/dist/application/ports/document-authority-recompiler.js.map +1 -0
- package/dist/application/ports/document-contract-validator.d.ts +6 -0
- package/dist/application/ports/document-contract-validator.d.ts.map +1 -0
- package/dist/application/ports/document-contract-validator.js +2 -0
- package/dist/application/ports/document-contract-validator.js.map +1 -0
- package/dist/application/ports/document-environment-inspector.d.ts +12 -0
- package/dist/application/ports/document-environment-inspector.d.ts.map +1 -0
- package/dist/application/ports/document-environment-inspector.js +2 -0
- package/dist/application/ports/document-environment-inspector.js.map +1 -0
- package/dist/application/ports/document-file-state.d.ts +55 -0
- package/dist/application/ports/document-file-state.d.ts.map +1 -0
- package/dist/application/ports/document-file-state.js +2 -0
- package/dist/application/ports/document-file-state.js.map +1 -0
- package/dist/application/ports/document-journal-store.d.ts +31 -0
- package/dist/application/ports/document-journal-store.d.ts.map +1 -0
- package/dist/application/ports/document-journal-store.js +2 -0
- package/dist/application/ports/document-journal-store.js.map +1 -0
- package/dist/application/ports/document-metadata-sidecar-reader.d.ts +13 -0
- package/dist/application/ports/document-metadata-sidecar-reader.d.ts.map +1 -0
- package/dist/application/ports/document-metadata-sidecar-reader.js +2 -0
- package/dist/application/ports/document-metadata-sidecar-reader.js.map +1 -0
- package/dist/application/ports/document-parent-materializer.d.ts +24 -0
- package/dist/application/ports/document-parent-materializer.d.ts.map +1 -0
- package/dist/application/ports/document-parent-materializer.js +2 -0
- package/dist/application/ports/document-parent-materializer.js.map +1 -0
- package/dist/application/ports/document-planning-profile-reader.d.ts +9 -0
- package/dist/application/ports/document-planning-profile-reader.d.ts.map +1 -0
- package/dist/application/ports/document-planning-profile-reader.js +2 -0
- package/dist/application/ports/document-planning-profile-reader.js.map +1 -0
- package/dist/application/ports/document-planning-state-reader.d.ts +10 -0
- package/dist/application/ports/document-planning-state-reader.d.ts.map +1 -0
- package/dist/application/ports/document-planning-state-reader.js +2 -0
- package/dist/application/ports/document-planning-state-reader.js.map +1 -0
- package/dist/application/ports/document-publisher.d.ts +38 -0
- package/dist/application/ports/document-publisher.d.ts.map +1 -0
- package/dist/application/ports/document-publisher.js +2 -0
- package/dist/application/ports/document-publisher.js.map +1 -0
- package/dist/application/ports/document-reachability-projector.d.ts +13 -0
- package/dist/application/ports/document-reachability-projector.d.ts.map +1 -0
- package/dist/application/ports/document-reachability-projector.js +2 -0
- package/dist/application/ports/document-reachability-projector.js.map +1 -0
- package/dist/application/ports/document-structure-verifier.d.ts +17 -0
- package/dist/application/ports/document-structure-verifier.d.ts.map +1 -0
- package/dist/application/ports/document-structure-verifier.js +2 -0
- package/dist/application/ports/document-structure-verifier.js.map +1 -0
- package/dist/application/ports/document-template-reader.d.ts +9 -0
- package/dist/application/ports/document-template-reader.d.ts.map +1 -0
- package/dist/application/ports/document-template-reader.js +2 -0
- package/dist/application/ports/document-template-reader.js.map +1 -0
- package/dist/application/ports/document-transaction-coordinator.d.ts +21 -0
- package/dist/application/ports/document-transaction-coordinator.d.ts.map +1 -0
- package/dist/application/ports/document-transaction-coordinator.js +2 -0
- package/dist/application/ports/document-transaction-coordinator.js.map +1 -0
- package/dist/application/ports/documentation-catalog-reader-v2.d.ts +11 -0
- package/dist/application/ports/documentation-catalog-reader-v2.d.ts.map +1 -0
- package/dist/application/ports/documentation-catalog-reader-v2.js +2 -0
- package/dist/application/ports/documentation-catalog-reader-v2.js.map +1 -0
- package/dist/application/ports/documentation-catalog-reader.d.ts +11 -0
- package/dist/application/ports/documentation-catalog-reader.d.ts.map +1 -0
- package/dist/application/ports/documentation-catalog-reader.js +2 -0
- package/dist/application/ports/documentation-catalog-reader.js.map +1 -0
- package/dist/application/ports/documentation-search-catalog-reader-v2.d.ts +9 -0
- package/dist/application/ports/documentation-search-catalog-reader-v2.d.ts.map +1 -0
- package/dist/application/ports/documentation-search-catalog-reader-v2.js +2 -0
- package/dist/application/ports/documentation-search-catalog-reader-v2.js.map +1 -0
- package/dist/application/ports/documentation-search-catalog-reader.d.ts +10 -0
- package/dist/application/ports/documentation-search-catalog-reader.d.ts.map +1 -0
- package/dist/application/ports/documentation-search-catalog-reader.js +2 -0
- package/dist/application/ports/documentation-search-catalog-reader.js.map +1 -0
- package/dist/application/ports/metadata-instance-validator.d.ts +18 -0
- package/dist/application/ports/metadata-instance-validator.d.ts.map +1 -0
- package/dist/application/ports/metadata-instance-validator.js +2 -0
- package/dist/application/ports/metadata-instance-validator.js.map +1 -0
- package/dist/application/ports/owner-membership-reader.d.ts +14 -0
- package/dist/application/ports/owner-membership-reader.d.ts.map +1 -0
- package/dist/application/ports/owner-membership-reader.js +2 -0
- package/dist/application/ports/owner-membership-reader.js.map +1 -0
- package/dist/application/ports/similar-document-advisor.d.ts +17 -0
- package/dist/application/ports/similar-document-advisor.d.ts.map +1 -0
- package/dist/application/ports/similar-document-advisor.js +2 -0
- package/dist/application/ports/similar-document-advisor.js.map +1 -0
- package/dist/application/projections/document-catalog-projections.d.ts +3 -0
- package/dist/application/projections/document-catalog-projections.d.ts.map +1 -0
- package/dist/application/projections/document-catalog-projections.js +24 -0
- package/dist/application/projections/document-catalog-projections.js.map +1 -0
- package/dist/application/use-cases/apply-document-plan.d.ts +16 -0
- package/dist/application/use-cases/apply-document-plan.d.ts.map +1 -0
- package/dist/application/use-cases/apply-document-plan.js +311 -0
- package/dist/application/use-cases/apply-document-plan.js.map +1 -0
- package/dist/application/use-cases/apply-document-recovery-receipt.d.ts +14 -0
- package/dist/application/use-cases/apply-document-recovery-receipt.d.ts.map +1 -0
- package/dist/application/use-cases/apply-document-recovery-receipt.js +17 -0
- package/dist/application/use-cases/apply-document-recovery-receipt.js.map +1 -0
- package/dist/application/use-cases/build-documentation-catalog.d.ts +41 -0
- package/dist/application/use-cases/build-documentation-catalog.d.ts.map +1 -0
- package/dist/application/use-cases/build-documentation-catalog.js +259 -0
- package/dist/application/use-cases/build-documentation-catalog.js.map +1 -0
- package/dist/application/use-cases/compile-document-plan.d.ts +6 -0
- package/dist/application/use-cases/compile-document-plan.d.ts.map +1 -0
- package/dist/application/use-cases/compile-document-plan.js +200 -0
- package/dist/application/use-cases/compile-document-plan.js.map +1 -0
- package/dist/application/use-cases/document-journal-reconciliation.d.ts +18 -0
- package/dist/application/use-cases/document-journal-reconciliation.d.ts.map +1 -0
- package/dist/application/use-cases/document-journal-reconciliation.js +90 -0
- package/dist/application/use-cases/document-journal-reconciliation.js.map +1 -0
- package/dist/application/use-cases/document-parent-materialization-continuation.d.ts +3 -0
- package/dist/application/use-cases/document-parent-materialization-continuation.d.ts.map +1 -0
- package/dist/application/use-cases/document-parent-materialization-continuation.js +79 -0
- package/dist/application/use-cases/document-parent-materialization-continuation.js.map +1 -0
- package/dist/application/use-cases/document-transaction-continuation.d.ts +64 -0
- package/dist/application/use-cases/document-transaction-continuation.d.ts.map +1 -0
- package/dist/application/use-cases/document-transaction-continuation.js +283 -0
- package/dist/application/use-cases/document-transaction-continuation.js.map +1 -0
- package/dist/application/use-cases/document-transaction-error.d.ts +5 -0
- package/dist/application/use-cases/document-transaction-error.d.ts.map +1 -0
- package/dist/application/use-cases/document-transaction-error.js +9 -0
- package/dist/application/use-cases/document-transaction-error.js.map +1 -0
- package/dist/application/use-cases/document-transaction-execution.d.ts +9 -0
- package/dist/application/use-cases/document-transaction-execution.d.ts.map +1 -0
- package/dist/application/use-cases/document-transaction-execution.js +40 -0
- package/dist/application/use-cases/document-transaction-execution.js.map +1 -0
- package/dist/application/use-cases/document-transaction-receipts.d.ts +21 -0
- package/dist/application/use-cases/document-transaction-receipts.d.ts.map +1 -0
- package/dist/application/use-cases/document-transaction-receipts.js +180 -0
- package/dist/application/use-cases/document-transaction-receipts.js.map +1 -0
- package/dist/application/use-cases/find-documents.d.ts +20 -0
- package/dist/application/use-cases/find-documents.d.ts.map +1 -0
- package/dist/application/use-cases/find-documents.js +114 -0
- package/dist/application/use-cases/find-documents.js.map +1 -0
- package/dist/application/use-cases/load-v2-profile-description.d.ts +20 -0
- package/dist/application/use-cases/load-v2-profile-description.d.ts.map +1 -0
- package/dist/application/use-cases/load-v2-profile-description.js +14 -0
- package/dist/application/use-cases/load-v2-profile-description.js.map +1 -0
- package/dist/application/use-cases/plan-documentation-document.d.ts +74 -0
- package/dist/application/use-cases/plan-documentation-document.d.ts.map +1 -0
- package/dist/application/use-cases/plan-documentation-document.js +273 -0
- package/dist/application/use-cases/plan-documentation-document.js.map +1 -0
- package/dist/application/use-cases/recapture-directory-receipt-evidence.d.ts +8 -0
- package/dist/application/use-cases/recapture-directory-receipt-evidence.d.ts.map +1 -0
- package/dist/application/use-cases/recapture-directory-receipt-evidence.js +32 -0
- package/dist/application/use-cases/recapture-directory-receipt-evidence.js.map +1 -0
- package/dist/application/use-cases/recover-document-transaction.d.ts +10 -0
- package/dist/application/use-cases/recover-document-transaction.d.ts.map +1 -0
- package/dist/application/use-cases/recover-document-transaction.js +361 -0
- package/dist/application/use-cases/recover-document-transaction.js.map +1 -0
- package/dist/application/use-cases/run-document-doctor.d.ts +18 -0
- package/dist/application/use-cases/run-document-doctor.d.ts.map +1 -0
- package/dist/application/use-cases/run-document-doctor.js +171 -0
- package/dist/application/use-cases/run-document-doctor.js.map +1 -0
- package/dist/application/use-cases/run-document-new.d.ts +30 -0
- package/dist/application/use-cases/run-document-new.d.ts.map +1 -0
- package/dist/application/use-cases/run-document-new.js +221 -0
- package/dist/application/use-cases/run-document-new.js.map +1 -0
- package/dist/application/use-cases/run-document-recover.d.ts +21 -0
- package/dist/application/use-cases/run-document-recover.d.ts.map +1 -0
- package/dist/application/use-cases/run-document-recover.js +126 -0
- package/dist/application/use-cases/run-document-recover.js.map +1 -0
- package/dist/binary-string-comparator.d.ts +3 -0
- package/dist/binary-string-comparator.d.ts.map +1 -0
- package/dist/binary-string-comparator.js +12 -0
- package/dist/binary-string-comparator.js.map +1 -0
- package/dist/cancellation.d.ts +2 -0
- package/dist/cancellation.d.ts.map +1 -0
- package/dist/cancellation.js +12 -0
- package/dist/cancellation.js.map +1 -0
- package/dist/canonical-json.d.ts +3 -0
- package/dist/canonical-json.d.ts.map +1 -0
- package/dist/canonical-json.js +2 -0
- package/dist/canonical-json.js.map +1 -0
- package/dist/capability-runtime.d.ts +12 -0
- package/dist/capability-runtime.d.ts.map +1 -0
- package/dist/capability-runtime.js +10 -0
- package/dist/capability-runtime.js.map +1 -0
- package/dist/composition/describe-document-authoring-profile-v2.d.ts +14 -0
- package/dist/composition/describe-document-authoring-profile-v2.d.ts.map +1 -0
- package/dist/composition/describe-document-authoring-profile-v2.js +220 -0
- package/dist/composition/describe-document-authoring-profile-v2.js.map +1 -0
- package/dist/composition/inspect-document-authoring-environment-v1.d.ts +7 -0
- package/dist/composition/inspect-document-authoring-environment-v1.d.ts.map +1 -0
- package/dist/composition/inspect-document-authoring-environment-v1.js +10 -0
- package/dist/composition/inspect-document-authoring-environment-v1.js.map +1 -0
- package/dist/composition/inspect-document-transaction.d.ts +4 -0
- package/dist/composition/inspect-document-transaction.d.ts.map +1 -0
- package/dist/composition/inspect-document-transaction.js +179 -0
- package/dist/composition/inspect-document-transaction.js.map +1 -0
- package/dist/composition/node-document-authority-recompiler.d.ts +11 -0
- package/dist/composition/node-document-authority-recompiler.d.ts.map +1 -0
- package/dist/composition/node-document-authority-recompiler.js +81 -0
- package/dist/composition/node-document-authority-recompiler.js.map +1 -0
- package/dist/composition/node-document-planning.d.ts +7 -0
- package/dist/composition/node-document-planning.d.ts.map +1 -0
- package/dist/composition/node-document-planning.js +99 -0
- package/dist/composition/node-document-planning.js.map +1 -0
- package/dist/composition/node-document-writing-private.d.ts +15 -0
- package/dist/composition/node-document-writing-private.d.ts.map +1 -0
- package/dist/composition/node-document-writing-private.js +54 -0
- package/dist/composition/node-document-writing-private.js.map +1 -0
- package/dist/composition/node-document-writing.d.ts +8 -0
- package/dist/composition/node-document-writing.d.ts.map +1 -0
- package/dist/composition/node-document-writing.js +10 -0
- package/dist/composition/node-document-writing.js.map +1 -0
- package/dist/document-catalog-error.d.ts +6 -0
- package/dist/document-catalog-error.d.ts.map +1 -0
- package/dist/document-catalog-error.js +9 -0
- package/dist/document-catalog-error.js.map +1 -0
- package/dist/document-planning-error.d.ts +6 -0
- package/dist/document-planning-error.d.ts.map +1 -0
- package/dist/document-planning-error.js +9 -0
- package/dist/document-planning-error.js.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-document-reader.d.ts +14 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-document-reader.d.ts.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-document-reader.js +108 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-document-reader.js.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-filesystem.d.ts +14 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-filesystem.d.ts.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-filesystem.js +61 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-filesystem.js.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-paths.d.ts +8 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-paths.d.ts.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-paths.js +44 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-paths.js.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-reference-resolver.d.ts +6 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-reference-resolver.d.ts.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-reference-resolver.js +160 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-reference-resolver.js.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-repository.d.ts +8 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-repository.d.ts.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-repository.js +13 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-repository.js.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-tree-observer.d.ts +6 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-tree-observer.d.ts.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-tree-observer.js +260 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-tree-observer.js.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/markdown-document-parser.d.ts +3 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/markdown-document-parser.d.ts.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/markdown-document-parser.js +260 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/markdown-document-parser.js.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/markdown-reference-target.d.ts +15 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/markdown-reference-target.d.ts.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/markdown-reference-target.js +59 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/markdown-reference-target.js.map +1 -0
- package/dist/documentation-observation/application/model/markdown-document.d.ts +69 -0
- package/dist/documentation-observation/application/model/markdown-document.d.ts.map +1 -0
- package/dist/documentation-observation/application/model/markdown-document.js +10 -0
- package/dist/documentation-observation/application/model/markdown-document.js.map +1 -0
- package/dist/documentation-observation/application/ports/markdown-repository.d.ts +18 -0
- package/dist/documentation-observation/application/ports/markdown-repository.d.ts.map +1 -0
- package/dist/documentation-observation/application/ports/markdown-repository.js +2 -0
- package/dist/documentation-observation/application/ports/markdown-repository.js.map +1 -0
- package/dist/errors.d.ts +6 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +9 -0
- package/dist/errors.js.map +1 -0
- package/dist/filesystem-path-safety.d.ts +11 -0
- package/dist/filesystem-path-safety.d.ts.map +1 -0
- package/dist/filesystem-path-safety.js +122 -0
- package/dist/filesystem-path-safety.js.map +1 -0
- package/dist/find-command.d.ts +28 -0
- package/dist/find-command.d.ts.map +1 -0
- package/dist/find-command.js +146 -0
- package/dist/find-command.js.map +1 -0
- package/dist/index.d.ts +64 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +95 -0
- package/dist/index.js.map +1 -0
- package/dist/installed-artifact-identity.d.ts +2 -0
- package/dist/installed-artifact-identity.d.ts.map +1 -0
- package/dist/installed-artifact-identity.js +13 -0
- package/dist/installed-artifact-identity.js.map +1 -0
- package/dist/observation.d.ts +4 -0
- package/dist/observation.d.ts.map +1 -0
- package/dist/observation.js +3 -0
- package/dist/observation.js.map +1 -0
- package/dist/package-version.d.ts +2 -0
- package/dist/package-version.d.ts.map +1 -0
- package/dist/package-version.js +10 -0
- package/dist/package-version.js.map +1 -0
- package/dist/qualification/index.d.ts +27 -0
- package/dist/qualification/index.d.ts.map +1 -0
- package/dist/qualification/index.js +144 -0
- package/dist/qualification/index.js.map +1 -0
- package/dist/schema-catalog.d.ts +4 -0
- package/dist/schema-catalog.d.ts.map +1 -0
- package/dist/schema-catalog.js +70 -0
- package/dist/schema-catalog.js.map +1 -0
- package/dist/state-contract.d.ts +3 -0
- package/dist/state-contract.d.ts.map +1 -0
- package/dist/state-contract.js +4 -0
- package/dist/state-contract.js.map +1 -0
- package/dist/strict-json.d.ts +2 -0
- package/dist/strict-json.d.ts.map +1 -0
- package/dist/strict-json.js +2 -0
- package/dist/strict-json.js.map +1 -0
- package/dist/strict-yaml.d.ts +3 -0
- package/dist/strict-yaml.d.ts.map +1 -0
- package/dist/strict-yaml.js +37 -0
- package/dist/strict-yaml.js.map +1 -0
- package/package.json +66 -0
- package/schemas/document-authoring-profile/v1.schema.json +265 -0
- package/schemas/document-authoring-profile/v2.schema.json +168 -0
- package/schemas/document-authoring-profile/v3.schema.json +200 -0
- package/schemas/document-command-envelope/v1.schema.json +161 -0
- package/schemas/document-command-envelope/v2.schema.json +205 -0
- package/schemas/document-intent/v1.schema.json +102 -0
- package/schemas/document-parent-materialization/v2.schema.json +65 -0
- package/schemas/document-plan/v1.schema.json +162 -0
- package/schemas/document-plan/v2.schema.json +85 -0
- package/schemas/document-receipt/v1.schema.json +141 -0
- package/schemas/document-receipt/v2.schema.json +108 -0
- package/schemas/foundation-transaction-envelope/v3.schema.json +169 -0
- package/schemas/foundation-transaction-envelope/v4.schema.json +164 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
async function settle(operation) {
|
|
2
|
+
try {
|
|
3
|
+
return { execution: await operation(), state: "fulfilled" };
|
|
4
|
+
}
|
|
5
|
+
catch (error) {
|
|
6
|
+
return { error, state: "rejected" };
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
function primaryFailure(settled) {
|
|
10
|
+
return settled.state === "rejected"
|
|
11
|
+
? settled.error
|
|
12
|
+
: settled.execution.primaryFailure;
|
|
13
|
+
}
|
|
14
|
+
/** Releases a lease without allowing release control flow to replace the primary outcome. */
|
|
15
|
+
export async function executeWithDocumentTransactionLease(lease, operation, jointFailureMessage) {
|
|
16
|
+
const settled = await settle(operation);
|
|
17
|
+
const retainTransactionBarrier = settled.state === "rejected" ||
|
|
18
|
+
settled.execution.retainTransactionBarrier;
|
|
19
|
+
let releaseFailure;
|
|
20
|
+
try {
|
|
21
|
+
await lease.release({ retainTransactionBarrier });
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
releaseFailure = error;
|
|
25
|
+
}
|
|
26
|
+
const primary = primaryFailure(settled);
|
|
27
|
+
if (releaseFailure !== undefined && primary !== undefined) {
|
|
28
|
+
throw new AggregateError([primary, releaseFailure], jointFailureMessage, {
|
|
29
|
+
cause: primary
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
if (releaseFailure !== undefined) {
|
|
33
|
+
return Promise.reject(releaseFailure);
|
|
34
|
+
}
|
|
35
|
+
if (settled.state === "rejected") {
|
|
36
|
+
return Promise.reject(settled.error);
|
|
37
|
+
}
|
|
38
|
+
return settled.execution.value;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=document-transaction-execution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document-transaction-execution.js","sourceRoot":"","sources":["../../../src/application/use-cases/document-transaction-execution.ts"],"names":[],"mappings":"AAYA,KAAK,UAAU,MAAM,CAAI,SAAyD;IAEhF,IAAI,CAAC;QACH,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAC9D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IACtC,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAI,OAA4B;IACrD,OAAO,OAAO,CAAC,KAAK,KAAK,UAAU;QACjC,CAAC,CAAC,OAAO,CAAC,KAAK;QACf,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC;AACvC,CAAC;AAED,6FAA6F;AAC7F,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,KAA+B,EAC/B,SAAyD,EACzD,mBAA2B;IAE3B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,wBAAwB,GAAG,OAAO,CAAC,KAAK,KAAK,UAAU;QAC3D,OAAO,CAAC,SAAS,CAAC,wBAAwB,CAAC;IAC7C,IAAI,cAAuB,CAAC;IAC5B,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,wBAAwB,EAAE,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,GAAG,KAAK,CAAC;IACzB,CAAC;IACD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACxC,IAAI,cAAc,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1D,MAAM,IAAI,cAAc,CAAC,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,mBAAmB,EAAE;YACvE,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;IACL,CAAC;IACD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC;AACjC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { DocumentPlanContract as DocumentPlan } from "../model/document-planning.js";
|
|
2
|
+
import type { DocumentReceiptContract as DocumentReceipt } from "../model/document-receipt.js";
|
|
3
|
+
import type { DocumentTransactionEnvelope } from "../model/document-transaction.js";
|
|
4
|
+
export interface DocumentDirectoryReceiptEvidence {
|
|
5
|
+
readonly observedCreatedDirectories: readonly string[];
|
|
6
|
+
readonly state: "none-created" | "created-and-retained" | "preserved-unknown";
|
|
7
|
+
}
|
|
8
|
+
export declare function directoryReceiptEvidence(envelope: DocumentTransactionEnvelope): DocumentDirectoryReceiptEvidence | undefined;
|
|
9
|
+
export declare function successReceipt(plan: DocumentPlan, outcome: "already-applied" | "applied"): Promise<DocumentReceipt>;
|
|
10
|
+
export declare function noPublicationReceipt(plan: DocumentPlan, outcome: "authority-stale" | "cancelled" | "failed-before-publication" | "rejected", ruleId: string, message: string, options?: {
|
|
11
|
+
readonly directoryEvidence?: DocumentDirectoryReceiptEvidence;
|
|
12
|
+
readonly phase?: "apply" | "authority";
|
|
13
|
+
}): Promise<DocumentReceipt>;
|
|
14
|
+
export declare function recoveryReceipt(plan: DocumentPlan, options: {
|
|
15
|
+
readonly directoryEvidence?: DocumentDirectoryReceiptEvidence;
|
|
16
|
+
readonly manual?: boolean;
|
|
17
|
+
readonly message: string;
|
|
18
|
+
readonly publication: "none" | "published" | "unknown";
|
|
19
|
+
readonly ruleId: string;
|
|
20
|
+
}): Promise<DocumentReceipt>;
|
|
21
|
+
//# sourceMappingURL=document-transaction-receipts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document-transaction-receipts.d.ts","sourceRoot":"","sources":["../../../src/application/use-cases/document-transaction-receipts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,IAAI,YAAY,EAAkB,MAAM,+BAA+B,CAAC;AAC1G,OAAO,KAAK,EAAE,uBAAuB,IAAI,eAAe,EAAuB,MAAM,8BAA8B,CAAC;AACpH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAGpF,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,0BAA0B,EAAE,SAAS,MAAM,EAAE,CAAC;IACvD,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,sBAAsB,GAAG,mBAAmB,CAAC;CAC/E;AAED,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,2BAA2B,GACpC,gCAAgC,GAAG,SAAS,CAkB9C;AA0DD,wBAAsB,cAAc,CAClC,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,iBAAiB,GAAG,SAAS,GACrC,OAAO,CAAC,eAAe,CAAC,CA8C1B;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,iBAAiB,GAAG,WAAW,GAAG,2BAA2B,GAAG,UAAU,EACnF,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACP,QAAQ,CAAC,iBAAiB,CAAC,EAAE,gCAAgC,CAAC;IAC9D,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;CACnC,GACL,OAAO,CAAC,eAAe,CAAC,CA6B1B;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE;IACP,QAAQ,CAAC,iBAAiB,CAAC,EAAE,gCAAgC,CAAC;IAC9D,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,GACA,OAAO,CAAC,eAAe,CAAC,CAoD1B"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import { createDocumentReceipt } from "../policies/document-receipt-policy.js";
|
|
2
|
+
export function directoryReceiptEvidence(envelope) {
|
|
3
|
+
if (envelope.schemaVersion !== 4) {
|
|
4
|
+
return undefined;
|
|
5
|
+
}
|
|
6
|
+
const materialization = envelope.journal.parentMaterialization;
|
|
7
|
+
const observedCreatedDirectories = Object.freeze(materialization.createdDirectories.map(({ path }) => path));
|
|
8
|
+
const pendingUnbound = materialization.pendingDirectory !== undefined &&
|
|
9
|
+
!observedCreatedDirectories.includes(materialization.pendingDirectory);
|
|
10
|
+
return Object.freeze({
|
|
11
|
+
observedCreatedDirectories,
|
|
12
|
+
state: pendingUnbound
|
|
13
|
+
? "preserved-unknown"
|
|
14
|
+
: observedCreatedDirectories.length === 0
|
|
15
|
+
? "none-created"
|
|
16
|
+
: "created-and-retained"
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
function diagnostic(phase, ruleId, message) {
|
|
20
|
+
return Object.freeze({
|
|
21
|
+
message: message.slice(0, 1000),
|
|
22
|
+
phase,
|
|
23
|
+
ruleId,
|
|
24
|
+
severity: "error",
|
|
25
|
+
subject: "document-transaction"
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
function receiptBase(plan) {
|
|
29
|
+
return {
|
|
30
|
+
adapter: Object.freeze({
|
|
31
|
+
contractVersion: 1,
|
|
32
|
+
id: "foundation.filesystem/v1"
|
|
33
|
+
}),
|
|
34
|
+
destination: plan.destination,
|
|
35
|
+
diagnostics: Object.freeze([]),
|
|
36
|
+
planDigest: plan.planDigest,
|
|
37
|
+
protocolVersion: 1,
|
|
38
|
+
schemaVersion: 1
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
function receiptBaseV2(plan, state, observedCreatedDirectories) {
|
|
42
|
+
if (state === "created-and-retained" && observedCreatedDirectories.length === 0) {
|
|
43
|
+
throw new TypeError("Created-and-retained directory evidence requires at least one observation.");
|
|
44
|
+
}
|
|
45
|
+
return {
|
|
46
|
+
adapter: Object.freeze({
|
|
47
|
+
contractVersion: 1,
|
|
48
|
+
id: "foundation.filesystem/v1"
|
|
49
|
+
}),
|
|
50
|
+
destination: plan.destination,
|
|
51
|
+
diagnostics: Object.freeze([]),
|
|
52
|
+
directoryMaterialization: Object.freeze({
|
|
53
|
+
observedCreatedDirectories: Object.freeze([...observedCreatedDirectories]),
|
|
54
|
+
plannedDirectories: plan.parentMaterialization.missingDirectories,
|
|
55
|
+
state
|
|
56
|
+
}),
|
|
57
|
+
planDigest: plan.planDigest,
|
|
58
|
+
protocolVersion: 2,
|
|
59
|
+
schemaVersion: 2
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
export async function successReceipt(plan, outcome) {
|
|
63
|
+
if (plan.schemaVersion === 2) {
|
|
64
|
+
const applied = outcome === "applied";
|
|
65
|
+
const created = applied && plan.parentMaterialization.missingDirectories.length > 0;
|
|
66
|
+
return createDocumentReceipt({
|
|
67
|
+
...receiptBaseV2(plan, created ? "created-and-retained" : "none-created", created ? plan.parentMaterialization.missingDirectories : []),
|
|
68
|
+
commit: Object.freeze({
|
|
69
|
+
fileAtomicity: applied
|
|
70
|
+
? "single-file-atomic-create"
|
|
71
|
+
: "not-applicable",
|
|
72
|
+
publication: applied ? "published" : "preexisting-exact",
|
|
73
|
+
recoverability: "not-required",
|
|
74
|
+
state: "committed"
|
|
75
|
+
}),
|
|
76
|
+
outcome,
|
|
77
|
+
resultDigest: plan.output.digest
|
|
78
|
+
}, plan);
|
|
79
|
+
}
|
|
80
|
+
if (outcome === "applied") {
|
|
81
|
+
return createDocumentReceipt({
|
|
82
|
+
...receiptBase(plan),
|
|
83
|
+
commit: Object.freeze({
|
|
84
|
+
atomicity: "single-file-atomic-create",
|
|
85
|
+
publication: "published",
|
|
86
|
+
recoverability: "not-required",
|
|
87
|
+
state: "committed"
|
|
88
|
+
}),
|
|
89
|
+
outcome,
|
|
90
|
+
resultDigest: plan.output.digest
|
|
91
|
+
}, plan);
|
|
92
|
+
}
|
|
93
|
+
return createDocumentReceipt({
|
|
94
|
+
...receiptBase(plan),
|
|
95
|
+
commit: Object.freeze({
|
|
96
|
+
atomicity: "not-applicable",
|
|
97
|
+
publication: "preexisting-exact",
|
|
98
|
+
recoverability: "not-required",
|
|
99
|
+
state: "committed"
|
|
100
|
+
}),
|
|
101
|
+
outcome,
|
|
102
|
+
resultDigest: plan.output.digest
|
|
103
|
+
}, plan);
|
|
104
|
+
}
|
|
105
|
+
export async function noPublicationReceipt(plan, outcome, ruleId, message, options = {}) {
|
|
106
|
+
if (plan.schemaVersion === 2) {
|
|
107
|
+
return createDocumentReceipt({
|
|
108
|
+
...receiptBaseV2(plan, options.directoryEvidence?.state ?? "none-created", options.directoryEvidence?.observedCreatedDirectories ?? []),
|
|
109
|
+
commit: Object.freeze({
|
|
110
|
+
fileAtomicity: "not-applicable",
|
|
111
|
+
publication: "none",
|
|
112
|
+
recoverability: "not-required",
|
|
113
|
+
state: "not-published"
|
|
114
|
+
}),
|
|
115
|
+
diagnostics: Object.freeze([diagnostic(options.phase ?? "apply", ruleId, message)]),
|
|
116
|
+
outcome
|
|
117
|
+
}, plan);
|
|
118
|
+
}
|
|
119
|
+
return createDocumentReceipt({
|
|
120
|
+
...receiptBase(plan),
|
|
121
|
+
commit: Object.freeze({
|
|
122
|
+
atomicity: "not-applicable",
|
|
123
|
+
publication: "none",
|
|
124
|
+
recoverability: "not-required",
|
|
125
|
+
state: "not-published"
|
|
126
|
+
}),
|
|
127
|
+
diagnostics: Object.freeze([diagnostic(options.phase ?? "apply", ruleId, message)]),
|
|
128
|
+
outcome
|
|
129
|
+
}, plan);
|
|
130
|
+
}
|
|
131
|
+
export async function recoveryReceipt(plan, options) {
|
|
132
|
+
if (plan.schemaVersion === 2) {
|
|
133
|
+
const state = options.manual === true
|
|
134
|
+
? "manual-recovery-required"
|
|
135
|
+
: "recovery-required";
|
|
136
|
+
return createDocumentReceipt({
|
|
137
|
+
...receiptBaseV2(plan, options.directoryEvidence?.state ?? "preserved-unknown", options.directoryEvidence?.observedCreatedDirectories ?? []),
|
|
138
|
+
commit: Object.freeze({
|
|
139
|
+
fileAtomicity: options.publication === "published"
|
|
140
|
+
? "single-file-atomic-create"
|
|
141
|
+
: "not-applicable",
|
|
142
|
+
publication: options.publication,
|
|
143
|
+
recoverability: "preserved-for-recovery",
|
|
144
|
+
state
|
|
145
|
+
}),
|
|
146
|
+
diagnostics: Object.freeze([diagnostic("recovery", options.ruleId, options.message)]),
|
|
147
|
+
outcome: state
|
|
148
|
+
}, plan);
|
|
149
|
+
}
|
|
150
|
+
const common = {
|
|
151
|
+
...receiptBase(plan),
|
|
152
|
+
diagnostics: Object.freeze([diagnostic("recovery", options.ruleId, options.message)])
|
|
153
|
+
};
|
|
154
|
+
const atomicity = options.publication === "published"
|
|
155
|
+
? "single-file-atomic-create"
|
|
156
|
+
: "not-applicable";
|
|
157
|
+
if (options.manual === true) {
|
|
158
|
+
return createDocumentReceipt({
|
|
159
|
+
...common,
|
|
160
|
+
commit: Object.freeze({
|
|
161
|
+
atomicity,
|
|
162
|
+
publication: options.publication,
|
|
163
|
+
recoverability: "preserved-for-recovery",
|
|
164
|
+
state: "manual-recovery-required"
|
|
165
|
+
}),
|
|
166
|
+
outcome: "manual-recovery-required"
|
|
167
|
+
}, plan);
|
|
168
|
+
}
|
|
169
|
+
return createDocumentReceipt({
|
|
170
|
+
...common,
|
|
171
|
+
commit: Object.freeze({
|
|
172
|
+
atomicity,
|
|
173
|
+
publication: options.publication,
|
|
174
|
+
recoverability: "preserved-for-recovery",
|
|
175
|
+
state: "recovery-required"
|
|
176
|
+
}),
|
|
177
|
+
outcome: "recovery-required"
|
|
178
|
+
}, plan);
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=document-transaction-receipts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document-transaction-receipts.js","sourceRoot":"","sources":["../../../src/application/use-cases/document-transaction-receipts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { DocumentFindQuery, DocumentFindResult, DocumentFindResultV2 } from "../model/document-find.js";
|
|
2
|
+
import type { DocumentationSearchCatalogReader } from "../ports/documentation-search-catalog-reader.js";
|
|
3
|
+
import type { DocumentationSearchCatalogReaderV2 } from "../ports/documentation-search-catalog-reader-v2.js";
|
|
4
|
+
export interface FindDocumentsRequest {
|
|
5
|
+
readonly consumerRoot: string;
|
|
6
|
+
readonly profilePath: string;
|
|
7
|
+
readonly query?: DocumentFindQuery;
|
|
8
|
+
readonly signal?: AbortSignal;
|
|
9
|
+
}
|
|
10
|
+
export declare class FindDocuments {
|
|
11
|
+
#private;
|
|
12
|
+
constructor(catalog: DocumentationSearchCatalogReader);
|
|
13
|
+
execute(request: FindDocumentsRequest): Promise<DocumentFindResult>;
|
|
14
|
+
}
|
|
15
|
+
export declare class FindDocumentsV2 {
|
|
16
|
+
#private;
|
|
17
|
+
constructor(catalog: DocumentationSearchCatalogReaderV2);
|
|
18
|
+
execute(request: FindDocumentsRequest): Promise<DocumentFindResultV2>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=find-documents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find-documents.d.ts","sourceRoot":"","sources":["../../../src/application/use-cases/find-documents.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAEV,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACV,gCAAgC,EACjC,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,oDAAoD,CAAC;AAO7G,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAoID,qBAAa,aAAa;;IAGxB,YAAY,OAAO,EAAE,gCAAgC,EAEpD;IAEK,OAAO,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAQxE;CACF;AAED,qBAAa,eAAe;;IAG1B,YAAY,OAAO,EAAE,kCAAkC,EAEtD;IAEK,OAAO,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAY1E;CACF"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { compareBinaryStrings } from "../../binary-string-comparator.js";
|
|
2
|
+
import { DocumentCatalogError } from "../../document-catalog-error.js";
|
|
3
|
+
const OPAQUE_ID = /^[A-Za-z0-9@][A-Za-z0-9@._/-]*$/u;
|
|
4
|
+
const LOWER_ID = /^[a-z0-9][a-z0-9._/-]*$/u;
|
|
5
|
+
const MAXIMUM_TEXT_LENGTH = 1_000;
|
|
6
|
+
function invalidQuery(message) {
|
|
7
|
+
throw new DocumentCatalogError("DOCUMENT_CATALOG_INPUT_INVALID", `Document query is invalid: ${message}`);
|
|
8
|
+
}
|
|
9
|
+
function containsUnsafeCharacter(value) {
|
|
10
|
+
for (const character of value) {
|
|
11
|
+
const code = character.codePointAt(0) ?? 0;
|
|
12
|
+
if (code <= 0x1f ||
|
|
13
|
+
code === 0x7f ||
|
|
14
|
+
(code >= 0xd800 && code <= 0xdfff)) {
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
function validateFilter(value, name, maximumLength, pattern) {
|
|
21
|
+
if (value === undefined) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
if (value.length === 0 ||
|
|
25
|
+
value.length > maximumLength ||
|
|
26
|
+
containsUnsafeCharacter(value) ||
|
|
27
|
+
!pattern.test(value)) {
|
|
28
|
+
invalidQuery(`${name} does not use the bounded document identifier grammar.`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
function compileDocumentFindQuery(query) {
|
|
32
|
+
const filters = query?.filters ?? {};
|
|
33
|
+
validateFilter(filters.id, "id", 214, OPAQUE_ID);
|
|
34
|
+
validateFilter(filters.owner, "owner", 214, OPAQUE_ID);
|
|
35
|
+
validateFilter(filters.status, "status", 160, LOWER_ID);
|
|
36
|
+
validateFilter(filters.type, "type", 160, LOWER_ID);
|
|
37
|
+
const text = query?.text;
|
|
38
|
+
if (text !== undefined &&
|
|
39
|
+
(text.length > MAXIMUM_TEXT_LENGTH || containsUnsafeCharacter(text))) {
|
|
40
|
+
invalidQuery("text must be a bounded Unicode string without control characters.");
|
|
41
|
+
}
|
|
42
|
+
return Object.freeze({
|
|
43
|
+
filters: Object.freeze({ ...filters }),
|
|
44
|
+
...(text === undefined
|
|
45
|
+
? {}
|
|
46
|
+
: { normalizedText: text.normalize("NFC").toLowerCase() })
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
function matchesFilters(entry, filters) {
|
|
50
|
+
const { descriptor } = entry;
|
|
51
|
+
return ((filters.id === undefined || descriptor.id === filters.id) &&
|
|
52
|
+
(filters.owner === undefined || descriptor.owner === filters.owner) &&
|
|
53
|
+
(filters.status === undefined || descriptor.status === filters.status) &&
|
|
54
|
+
(filters.type === undefined || descriptor.type === filters.type));
|
|
55
|
+
}
|
|
56
|
+
function normalizedSearchFields(entry) {
|
|
57
|
+
return [
|
|
58
|
+
entry.descriptor.id,
|
|
59
|
+
entry.descriptor.title,
|
|
60
|
+
entry.descriptor.summary,
|
|
61
|
+
...entry.headings,
|
|
62
|
+
entry.body
|
|
63
|
+
].map((value) => value.normalize("NFC").toLowerCase());
|
|
64
|
+
}
|
|
65
|
+
function findInSnapshot(snapshot, query) {
|
|
66
|
+
const documents = snapshot.documents
|
|
67
|
+
.filter((entry) => matchesFilters(entry, query.filters) &&
|
|
68
|
+
(query.normalizedText === undefined ||
|
|
69
|
+
normalizedSearchFields(entry).some((field) => field.includes(query.normalizedText ?? ""))))
|
|
70
|
+
.map((entry) => entry.descriptor)
|
|
71
|
+
.toSorted((left, right) => compareBinaryStrings(left.id, right.id) ||
|
|
72
|
+
compareBinaryStrings(left.repositoryPath, right.repositoryPath));
|
|
73
|
+
return Object.freeze({
|
|
74
|
+
catalogStatus: snapshot.catalog.status,
|
|
75
|
+
diagnostics: snapshot.catalog.diagnostics,
|
|
76
|
+
documents: Object.freeze(documents),
|
|
77
|
+
matches: documents.length
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
export class FindDocuments {
|
|
81
|
+
#catalog;
|
|
82
|
+
constructor(catalog) {
|
|
83
|
+
this.#catalog = catalog;
|
|
84
|
+
}
|
|
85
|
+
async execute(request) {
|
|
86
|
+
const query = compileDocumentFindQuery(request.query);
|
|
87
|
+
const snapshot = await this.#catalog.read({
|
|
88
|
+
consumerRoot: request.consumerRoot,
|
|
89
|
+
profilePath: request.profilePath,
|
|
90
|
+
...(request.signal === undefined ? {} : { signal: request.signal })
|
|
91
|
+
});
|
|
92
|
+
return findInSnapshot(snapshot, query);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
export class FindDocumentsV2 {
|
|
96
|
+
#catalog;
|
|
97
|
+
constructor(catalog) {
|
|
98
|
+
this.#catalog = catalog;
|
|
99
|
+
}
|
|
100
|
+
async execute(request) {
|
|
101
|
+
const query = compileDocumentFindQuery(request.query);
|
|
102
|
+
const snapshot = await this.#catalog.read({
|
|
103
|
+
consumerRoot: request.consumerRoot,
|
|
104
|
+
profilePath: request.profilePath,
|
|
105
|
+
...(request.signal === undefined ? {} : { signal: request.signal })
|
|
106
|
+
});
|
|
107
|
+
const result = findInSnapshot(snapshot, query);
|
|
108
|
+
return Object.freeze({
|
|
109
|
+
...result,
|
|
110
|
+
catalogSemanticDigest: snapshot.catalog.semanticDigest
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=find-documents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find-documents.js","sourceRoot":"","sources":["../../../src/application/use-cases/find-documents.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { DocumentAuthoringProfileDescriptionV2, DocumentAuthoringProfileDescriptionV3 } from "../model/document-authoring-profile-description.js";
|
|
2
|
+
import type { DocumentPlanningProfileSnapshot } from "../model/document-planning.js";
|
|
3
|
+
export interface DocumentProfileDescriptionReader {
|
|
4
|
+
describeV2(request: {
|
|
5
|
+
readonly consumerRoot: string;
|
|
6
|
+
readonly profilePath: string;
|
|
7
|
+
readonly signal?: AbortSignal;
|
|
8
|
+
}): Promise<DocumentAuthoringProfileDescriptionV2>;
|
|
9
|
+
describeV3(request: {
|
|
10
|
+
readonly consumerRoot: string;
|
|
11
|
+
readonly profilePath: string;
|
|
12
|
+
readonly signal?: AbortSignal;
|
|
13
|
+
}): Promise<DocumentAuthoringProfileDescriptionV3>;
|
|
14
|
+
}
|
|
15
|
+
export declare function loadV2ProfileDescription(reader: DocumentProfileDescriptionReader | undefined, profile: DocumentPlanningProfileSnapshot, request: {
|
|
16
|
+
readonly consumerRoot: string;
|
|
17
|
+
readonly profilePath: string;
|
|
18
|
+
readonly signal?: AbortSignal;
|
|
19
|
+
}): Promise<DocumentAuthoringProfileDescriptionV2 | DocumentAuthoringProfileDescriptionV3 | undefined>;
|
|
20
|
+
//# sourceMappingURL=load-v2-profile-description.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-v2-profile-description.d.ts","sourceRoot":"","sources":["../../../src/application/use-cases/load-v2-profile-description.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qCAAqC,EACrC,qCAAqC,EACtC,MAAM,oDAAoD,CAAC;AAC5D,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAGrF,MAAM,WAAW,gCAAgC;IAC/C,UAAU,CAAC,OAAO,EAAE;QAClB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,qCAAqC,CAAC,CAAC;IACnD,UAAU,CAAC,OAAO,EAAE;QAClB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,qCAAqC,CAAC,CAAC;CACpD;AAED,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,gCAAgC,GAAG,SAAS,EACpD,OAAO,EAAE,+BAA+B,EACxC,OAAO,EAAE;IACP,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B,GACA,OAAO,CACN,qCAAqC,GACrC,qCAAqC,GACrC,SAAS,CACZ,CAcA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DocumentPlanningError } from "../../document-planning-error.js";
|
|
2
|
+
export async function loadV2ProfileDescription(reader, profile, request) {
|
|
3
|
+
if (profile.schemaVersion !== 2 && profile.schemaVersion !== 3) {
|
|
4
|
+
return undefined;
|
|
5
|
+
}
|
|
6
|
+
const description = profile.schemaVersion === 3
|
|
7
|
+
? await reader?.describeV3(request)
|
|
8
|
+
: await reader?.describeV2(request);
|
|
9
|
+
if (description === undefined) {
|
|
10
|
+
throw new DocumentPlanningError("DOCUMENT_PLANNING_AUTHORITY_UNAVAILABLE", "Document Plan v2 requires a stable profile semantic description.");
|
|
11
|
+
}
|
|
12
|
+
return description;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=load-v2-profile-description.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-v2-profile-description.js","sourceRoot":"","sources":["../../../src/application/use-cases/load-v2-profile-description.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAezE,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAoD,EACpD,OAAwC,EACxC,OAIC;IAMD,IAAI,OAAO,CAAC,aAAa,KAAK,CAAC,IAAI,OAAO,CAAC,aAAa,KAAK,CAAC,EAAE,CAAC;QAC/D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,KAAK,CAAC;QAC7C,CAAC,CAAC,MAAM,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC;QACnC,CAAC,CAAC,MAAM,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,IAAI,qBAAqB,CAC7B,yCAAyC,EACzC,kEAAkE,CACnE,CAAC;IACJ,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import type { DocumentIdentityProjectionEntry, DocumentationCatalogSnapshotContract } from "../model/document-catalog.js";
|
|
2
|
+
import type { DocumentArtifactType, DocumentIntent, DocumentPlanContract as DocumentPlan, DocumentPlanningProfileSnapshot } from "../model/document-planning.js";
|
|
3
|
+
import type { CanonicalDocumentRenderer } from "../ports/canonical-document-renderer.js";
|
|
4
|
+
import type { DocumentContractValidator } from "../ports/document-contract-validator.js";
|
|
5
|
+
import type { DocumentPlanningProfileReader } from "../ports/document-planning-profile-reader.js";
|
|
6
|
+
import type { DocumentPlanningStateReader } from "../ports/document-planning-state-reader.js";
|
|
7
|
+
import type { DocumentTemplateReader } from "../ports/document-template-reader.js";
|
|
8
|
+
import type { DocumentationCatalogReader } from "../ports/documentation-catalog-reader.js";
|
|
9
|
+
import type { MetadataInstanceValidator } from "../ports/metadata-instance-validator.js";
|
|
10
|
+
import type { OwnerMembershipReader } from "../ports/owner-membership-reader.js";
|
|
11
|
+
import { type DocumentProfileDescriptionReader } from "./load-v2-profile-description.js";
|
|
12
|
+
interface ResolvedDocumentAuthoring {
|
|
13
|
+
readonly artifact: DocumentArtifactType;
|
|
14
|
+
readonly slug?: string;
|
|
15
|
+
readonly destination: string;
|
|
16
|
+
readonly heading: string;
|
|
17
|
+
}
|
|
18
|
+
interface DocumentLogicalPreimage {
|
|
19
|
+
readonly identityProjection: readonly DocumentIdentityProjectionEntry[];
|
|
20
|
+
readonly isExactSelf: boolean;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Closed pure policy surface consumed by the read-only orchestration use case.
|
|
24
|
+
* Implementations live in the policy layer; consumer code cannot supply it from
|
|
25
|
+
* the public composition root.
|
|
26
|
+
*/
|
|
27
|
+
interface DocumentPlanningPolicies {
|
|
28
|
+
normalizeDocumentIntent(input: DocumentIntent): DocumentIntent;
|
|
29
|
+
selectDocumentArtifact(profile: DocumentPlanningProfileSnapshot, type: string): DocumentArtifactType;
|
|
30
|
+
resolveDocumentAuthoring(input: {
|
|
31
|
+
readonly artifact: DocumentArtifactType;
|
|
32
|
+
readonly intent: DocumentIntent;
|
|
33
|
+
}): ResolvedDocumentAuthoring;
|
|
34
|
+
isDestinationCoveredByCatalog(destination: string, collections: DocumentPlanningProfileSnapshot["collections"], excludedPrefixes: readonly string[]): boolean;
|
|
35
|
+
classifyDocumentLogicalPreimage(input: {
|
|
36
|
+
readonly catalog: DocumentationCatalogSnapshotContract;
|
|
37
|
+
readonly id: string;
|
|
38
|
+
readonly destination: string;
|
|
39
|
+
readonly observedBytes?: Uint8Array;
|
|
40
|
+
readonly expectedBytes: Uint8Array;
|
|
41
|
+
}): DocumentLogicalPreimage;
|
|
42
|
+
}
|
|
43
|
+
export interface PlanDocumentationDocumentRequest {
|
|
44
|
+
readonly consumerRoot: string;
|
|
45
|
+
readonly profilePath: string;
|
|
46
|
+
readonly intent: unknown;
|
|
47
|
+
readonly signal?: AbortSignal;
|
|
48
|
+
}
|
|
49
|
+
export interface PlanDocumentationDocumentRequestV2 extends PlanDocumentationDocumentRequest {
|
|
50
|
+
readonly parentPolicy: "create-missing-real-directories";
|
|
51
|
+
}
|
|
52
|
+
export type PlanDocumentationDocumentRequestContract = PlanDocumentationDocumentRequest & {
|
|
53
|
+
readonly parentPolicy?: "create-missing-real-directories";
|
|
54
|
+
};
|
|
55
|
+
interface Dependencies {
|
|
56
|
+
readonly catalog: DocumentationCatalogReader;
|
|
57
|
+
readonly compiler: DocumentPlan["compiler"];
|
|
58
|
+
readonly contracts: DocumentContractValidator;
|
|
59
|
+
readonly metadata: MetadataInstanceValidator;
|
|
60
|
+
readonly owners: OwnerMembershipReader;
|
|
61
|
+
readonly policies: DocumentPlanningPolicies;
|
|
62
|
+
readonly profile: DocumentPlanningProfileReader;
|
|
63
|
+
readonly profileDescription?: DocumentProfileDescriptionReader;
|
|
64
|
+
readonly renderer: CanonicalDocumentRenderer;
|
|
65
|
+
readonly state: DocumentPlanningStateReader;
|
|
66
|
+
readonly templates: DocumentTemplateReader;
|
|
67
|
+
}
|
|
68
|
+
export declare class PlanDocumentationDocument {
|
|
69
|
+
#private;
|
|
70
|
+
constructor(dependencies: Dependencies);
|
|
71
|
+
execute(request: PlanDocumentationDocumentRequestContract): Promise<DocumentPlan>;
|
|
72
|
+
}
|
|
73
|
+
export {};
|
|
74
|
+
//# sourceMappingURL=plan-documentation-document.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan-documentation-document.d.ts","sourceRoot":"","sources":["../../../src/application/use-cases/plan-documentation-document.ts"],"names":[],"mappings":"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"}
|