@appport/sdk 1.1.18 → 1.1.19
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 +9 -86
- package/dist/index.d.ts +13 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -18
- package/dist/index.js.map +1 -1
- package/dist/node.d.ts +1 -1
- package/dist/node.js +1 -1
- package/package.json +22 -32
- package/LICENSE +0 -126
- package/dist/application-onboarding.d.ts +0 -52
- package/dist/application-onboarding.d.ts.map +0 -1
- package/dist/application-onboarding.js +0 -50
- package/dist/application-onboarding.js.map +0 -1
- package/dist/external-compatibility.d.ts +0 -142
- package/dist/external-compatibility.d.ts.map +0 -1
- package/dist/external-compatibility.js +0 -132
- package/dist/external-compatibility.js.map +0 -1
- package/dist/provider-lifecycle.d.ts +0 -247
- package/dist/provider-lifecycle.d.ts.map +0 -1
- package/dist/provider-lifecycle.js +0 -314
- package/dist/provider-lifecycle.js.map +0 -1
- package/dist/resolution-policy.d.ts +0 -81
- package/dist/resolution-policy.d.ts.map +0 -1
- package/dist/resolution-policy.js +0 -131
- package/dist/resolution-policy.js.map +0 -1
- package/vendor/@appport/authorization/README.md +0 -28
- package/vendor/@appport/authorization/dist/index.d.ts +0 -94
- package/vendor/@appport/authorization/dist/index.d.ts.map +0 -1
- package/vendor/@appport/authorization/dist/index.js +0 -131
- package/vendor/@appport/authorization/dist/index.js.map +0 -1
- package/vendor/@appport/authorization/package.json +0 -28
- package/vendor/@appport/client/README.md +0 -35
- package/vendor/@appport/client/dist/channel.d.ts +0 -14
- package/vendor/@appport/client/dist/channel.d.ts.map +0 -1
- package/vendor/@appport/client/dist/channel.js +0 -58
- package/vendor/@appport/client/dist/channel.js.map +0 -1
- package/vendor/@appport/client/dist/client.d.ts +0 -61
- package/vendor/@appport/client/dist/client.d.ts.map +0 -1
- package/vendor/@appport/client/dist/client.js +0 -214
- package/vendor/@appport/client/dist/client.js.map +0 -1
- package/vendor/@appport/client/dist/contract.d.ts +0 -55
- package/vendor/@appport/client/dist/contract.d.ts.map +0 -1
- package/vendor/@appport/client/dist/contract.js +0 -12
- package/vendor/@appport/client/dist/contract.js.map +0 -1
- package/vendor/@appport/client/dist/discovery.d.ts +0 -17
- package/vendor/@appport/client/dist/discovery.d.ts.map +0 -1
- package/vendor/@appport/client/dist/discovery.js +0 -56
- package/vendor/@appport/client/dist/discovery.js.map +0 -1
- package/vendor/@appport/client/dist/duplex.d.ts +0 -25
- package/vendor/@appport/client/dist/duplex.d.ts.map +0 -1
- package/vendor/@appport/client/dist/duplex.js +0 -194
- package/vendor/@appport/client/dist/duplex.js.map +0 -1
- package/vendor/@appport/client/dist/host.d.ts +0 -62
- package/vendor/@appport/client/dist/host.d.ts.map +0 -1
- package/vendor/@appport/client/dist/host.js +0 -139
- package/vendor/@appport/client/dist/host.js.map +0 -1
- package/vendor/@appport/client/dist/index.d.ts +0 -14
- package/vendor/@appport/client/dist/index.d.ts.map +0 -1
- package/vendor/@appport/client/dist/index.js +0 -14
- package/vendor/@appport/client/dist/index.js.map +0 -1
- package/vendor/@appport/client/dist/transport.d.ts +0 -42
- package/vendor/@appport/client/dist/transport.d.ts.map +0 -1
- package/vendor/@appport/client/dist/transport.js +0 -2
- package/vendor/@appport/client/dist/transport.js.map +0 -1
- package/vendor/@appport/client/package.json +0 -32
- package/vendor/@appport/core/README.md +0 -91
- package/vendor/@appport/core/dist/appboundry-capability-catalog.d.ts +0 -930
- package/vendor/@appport/core/dist/appboundry-capability-catalog.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-capability-catalog.js +0 -352
- package/vendor/@appport/core/dist/appboundry-capability-catalog.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-composition.d.ts +0 -93
- package/vendor/@appport/core/dist/appboundry-composition.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-composition.js +0 -184
- package/vendor/@appport/core/dist/appboundry-composition.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-contract.d.ts +0 -80
- package/vendor/@appport/core/dist/appboundry-contract.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-contract.js +0 -160
- package/vendor/@appport/core/dist/appboundry-contract.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-diagnostics.d.ts +0 -107
- package/vendor/@appport/core/dist/appboundry-diagnostics.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-diagnostics.js +0 -358
- package/vendor/@appport/core/dist/appboundry-diagnostics.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-discovery.d.ts +0 -110
- package/vendor/@appport/core/dist/appboundry-discovery.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-discovery.js +0 -141
- package/vendor/@appport/core/dist/appboundry-discovery.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-entitlements.d.ts +0 -128
- package/vendor/@appport/core/dist/appboundry-entitlements.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-entitlements.js +0 -312
- package/vendor/@appport/core/dist/appboundry-entitlements.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-execution.d.ts +0 -84
- package/vendor/@appport/core/dist/appboundry-execution.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-execution.js +0 -150
- package/vendor/@appport/core/dist/appboundry-execution.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-exercise.d.ts +0 -152
- package/vendor/@appport/core/dist/appboundry-exercise.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-exercise.js +0 -416
- package/vendor/@appport/core/dist/appboundry-exercise.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-materialization.d.ts +0 -222
- package/vendor/@appport/core/dist/appboundry-materialization.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-materialization.js +0 -494
- package/vendor/@appport/core/dist/appboundry-materialization.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-migration.d.ts +0 -195
- package/vendor/@appport/core/dist/appboundry-migration.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-migration.js +0 -227
- package/vendor/@appport/core/dist/appboundry-migration.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-onboarding.d.ts +0 -70
- package/vendor/@appport/core/dist/appboundry-onboarding.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-onboarding.js +0 -232
- package/vendor/@appport/core/dist/appboundry-onboarding.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-operation-discovery.d.ts +0 -93
- package/vendor/@appport/core/dist/appboundry-operation-discovery.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-operation-discovery.js +0 -89
- package/vendor/@appport/core/dist/appboundry-operation-discovery.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-resolution.d.ts +0 -160
- package/vendor/@appport/core/dist/appboundry-resolution.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-resolution.js +0 -218
- package/vendor/@appport/core/dist/appboundry-resolution.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-surface.d.ts +0 -96
- package/vendor/@appport/core/dist/appboundry-surface.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-surface.js +0 -223
- package/vendor/@appport/core/dist/appboundry-surface.js.map +0 -1
- package/vendor/@appport/core/dist/appboundry-usage.d.ts +0 -94
- package/vendor/@appport/core/dist/appboundry-usage.d.ts.map +0 -1
- package/vendor/@appport/core/dist/appboundry-usage.js +0 -80
- package/vendor/@appport/core/dist/appboundry-usage.js.map +0 -1
- package/vendor/@appport/core/dist/application-implementation.d.ts +0 -125
- package/vendor/@appport/core/dist/application-implementation.d.ts.map +0 -1
- package/vendor/@appport/core/dist/application-implementation.js +0 -220
- package/vendor/@appport/core/dist/application-implementation.js.map +0 -1
- package/vendor/@appport/core/dist/application-lifecycle.d.ts +0 -150
- package/vendor/@appport/core/dist/application-lifecycle.d.ts.map +0 -1
- package/vendor/@appport/core/dist/application-lifecycle.js +0 -70
- package/vendor/@appport/core/dist/application-lifecycle.js.map +0 -1
- package/vendor/@appport/core/dist/application-package.d.ts +0 -105
- package/vendor/@appport/core/dist/application-package.d.ts.map +0 -1
- package/vendor/@appport/core/dist/application-package.js +0 -349
- package/vendor/@appport/core/dist/application-package.js.map +0 -1
- package/vendor/@appport/core/dist/application-source.d.ts +0 -109
- package/vendor/@appport/core/dist/application-source.d.ts.map +0 -1
- package/vendor/@appport/core/dist/application-source.js +0 -186
- package/vendor/@appport/core/dist/application-source.js.map +0 -1
- package/vendor/@appport/core/dist/application.d.ts +0 -124
- package/vendor/@appport/core/dist/application.d.ts.map +0 -1
- package/vendor/@appport/core/dist/application.js +0 -518
- package/vendor/@appport/core/dist/application.js.map +0 -1
- package/vendor/@appport/core/dist/artifact.d.ts +0 -395
- package/vendor/@appport/core/dist/artifact.d.ts.map +0 -1
- package/vendor/@appport/core/dist/artifact.js +0 -392
- package/vendor/@appport/core/dist/artifact.js.map +0 -1
- package/vendor/@appport/core/dist/assembly.d.ts +0 -237
- package/vendor/@appport/core/dist/assembly.d.ts.map +0 -1
- package/vendor/@appport/core/dist/assembly.js +0 -458
- package/vendor/@appport/core/dist/assembly.js.map +0 -1
- package/vendor/@appport/core/dist/authority-attestation.d.ts +0 -34
- package/vendor/@appport/core/dist/authority-attestation.d.ts.map +0 -1
- package/vendor/@appport/core/dist/authority-attestation.js +0 -72
- package/vendor/@appport/core/dist/authority-attestation.js.map +0 -1
- package/vendor/@appport/core/dist/authorization-grant.d.ts +0 -107
- package/vendor/@appport/core/dist/authorization-grant.d.ts.map +0 -1
- package/vendor/@appport/core/dist/authorization-grant.js +0 -131
- package/vendor/@appport/core/dist/authorization-grant.js.map +0 -1
- package/vendor/@appport/core/dist/binding.d.ts +0 -294
- package/vendor/@appport/core/dist/binding.d.ts.map +0 -1
- package/vendor/@appport/core/dist/binding.js +0 -263
- package/vendor/@appport/core/dist/binding.js.map +0 -1
- package/vendor/@appport/core/dist/builtins.d.ts +0 -18
- package/vendor/@appport/core/dist/builtins.d.ts.map +0 -1
- package/vendor/@appport/core/dist/builtins.js +0 -38
- package/vendor/@appport/core/dist/builtins.js.map +0 -1
- package/vendor/@appport/core/dist/capability.d.ts +0 -94
- package/vendor/@appport/core/dist/capability.d.ts.map +0 -1
- package/vendor/@appport/core/dist/capability.js +0 -85
- package/vendor/@appport/core/dist/capability.js.map +0 -1
- package/vendor/@appport/core/dist/concurrency.d.ts +0 -16
- package/vendor/@appport/core/dist/concurrency.d.ts.map +0 -1
- package/vendor/@appport/core/dist/concurrency.js +0 -46
- package/vendor/@appport/core/dist/concurrency.js.map +0 -1
- package/vendor/@appport/core/dist/context.d.ts +0 -59
- package/vendor/@appport/core/dist/context.d.ts.map +0 -1
- package/vendor/@appport/core/dist/context.js +0 -14
- package/vendor/@appport/core/dist/context.js.map +0 -1
- package/vendor/@appport/core/dist/contract-artifact.d.ts +0 -15
- package/vendor/@appport/core/dist/contract-artifact.d.ts.map +0 -1
- package/vendor/@appport/core/dist/contract-artifact.js +0 -161
- package/vendor/@appport/core/dist/contract-artifact.js.map +0 -1
- package/vendor/@appport/core/dist/contract-attestation.d.ts +0 -68
- package/vendor/@appport/core/dist/contract-attestation.d.ts.map +0 -1
- package/vendor/@appport/core/dist/contract-attestation.js +0 -76
- package/vendor/@appport/core/dist/contract-attestation.js.map +0 -1
- package/vendor/@appport/core/dist/crash-injection.d.ts +0 -3
- package/vendor/@appport/core/dist/crash-injection.d.ts.map +0 -1
- package/vendor/@appport/core/dist/crash-injection.js +0 -8
- package/vendor/@appport/core/dist/crash-injection.js.map +0 -1
- package/vendor/@appport/core/dist/events.d.ts +0 -33
- package/vendor/@appport/core/dist/events.d.ts.map +0 -1
- package/vendor/@appport/core/dist/events.js +0 -79
- package/vendor/@appport/core/dist/events.js.map +0 -1
- package/vendor/@appport/core/dist/execution-barrier.d.ts +0 -13
- package/vendor/@appport/core/dist/execution-barrier.d.ts.map +0 -1
- package/vendor/@appport/core/dist/execution-barrier.js +0 -33
- package/vendor/@appport/core/dist/execution-barrier.js.map +0 -1
- package/vendor/@appport/core/dist/execution-ledger.d.ts +0 -81
- package/vendor/@appport/core/dist/execution-ledger.d.ts.map +0 -1
- package/vendor/@appport/core/dist/execution-ledger.js +0 -173
- package/vendor/@appport/core/dist/execution-ledger.js.map +0 -1
- package/vendor/@appport/core/dist/execution.d.ts +0 -387
- package/vendor/@appport/core/dist/execution.d.ts.map +0 -1
- package/vendor/@appport/core/dist/execution.js +0 -165
- package/vendor/@appport/core/dist/execution.js.map +0 -1
- package/vendor/@appport/core/dist/idempotency.d.ts +0 -36
- package/vendor/@appport/core/dist/idempotency.d.ts.map +0 -1
- package/vendor/@appport/core/dist/idempotency.js +0 -36
- package/vendor/@appport/core/dist/idempotency.js.map +0 -1
- package/vendor/@appport/core/dist/implementation.d.ts +0 -110
- package/vendor/@appport/core/dist/implementation.d.ts.map +0 -1
- package/vendor/@appport/core/dist/implementation.js +0 -65
- package/vendor/@appport/core/dist/implementation.js.map +0 -1
- package/vendor/@appport/core/dist/index.d.ts +0 -61
- package/vendor/@appport/core/dist/index.d.ts.map +0 -1
- package/vendor/@appport/core/dist/index.js +0 -60
- package/vendor/@appport/core/dist/index.js.map +0 -1
- package/vendor/@appport/core/dist/invocation.d.ts +0 -253
- package/vendor/@appport/core/dist/invocation.d.ts.map +0 -1
- package/vendor/@appport/core/dist/invocation.js +0 -258
- package/vendor/@appport/core/dist/invocation.js.map +0 -1
- package/vendor/@appport/core/dist/manifest.d.ts +0 -157
- package/vendor/@appport/core/dist/manifest.d.ts.map +0 -1
- package/vendor/@appport/core/dist/manifest.js +0 -255
- package/vendor/@appport/core/dist/manifest.js.map +0 -1
- package/vendor/@appport/core/dist/memory-application-data-store.d.ts +0 -19
- package/vendor/@appport/core/dist/memory-application-data-store.d.ts.map +0 -1
- package/vendor/@appport/core/dist/memory-application-data-store.js +0 -161
- package/vendor/@appport/core/dist/memory-application-data-store.js.map +0 -1
- package/vendor/@appport/core/dist/operations.d.ts +0 -61
- package/vendor/@appport/core/dist/operations.d.ts.map +0 -1
- package/vendor/@appport/core/dist/operations.js +0 -210
- package/vendor/@appport/core/dist/operations.js.map +0 -1
- package/vendor/@appport/core/dist/provider-contract.d.ts +0 -89
- package/vendor/@appport/core/dist/provider-contract.d.ts.map +0 -1
- package/vendor/@appport/core/dist/provider-contract.js +0 -40
- package/vendor/@appport/core/dist/provider-contract.js.map +0 -1
- package/vendor/@appport/core/dist/public.d.ts +0 -20
- package/vendor/@appport/core/dist/public.d.ts.map +0 -1
- package/vendor/@appport/core/dist/public.js +0 -19
- package/vendor/@appport/core/dist/public.js.map +0 -1
- package/vendor/@appport/core/dist/registration.d.ts +0 -165
- package/vendor/@appport/core/dist/registration.d.ts.map +0 -1
- package/vendor/@appport/core/dist/registration.js +0 -253
- package/vendor/@appport/core/dist/registration.js.map +0 -1
- package/vendor/@appport/core/dist/registry.d.ts +0 -30
- package/vendor/@appport/core/dist/registry.d.ts.map +0 -1
- package/vendor/@appport/core/dist/registry.js +0 -149
- package/vendor/@appport/core/dist/registry.js.map +0 -1
- package/vendor/@appport/core/dist/repository-connection.d.ts +0 -100
- package/vendor/@appport/core/dist/repository-connection.d.ts.map +0 -1
- package/vendor/@appport/core/dist/repository-connection.js +0 -57
- package/vendor/@appport/core/dist/repository-connection.js.map +0 -1
- package/vendor/@appport/core/dist/resolver.d.ts +0 -130
- package/vendor/@appport/core/dist/resolver.d.ts.map +0 -1
- package/vendor/@appport/core/dist/resolver.js +0 -252
- package/vendor/@appport/core/dist/resolver.js.map +0 -1
- package/vendor/@appport/core/dist/runtime-manifest.d.ts +0 -68
- package/vendor/@appport/core/dist/runtime-manifest.d.ts.map +0 -1
- package/vendor/@appport/core/dist/runtime-manifest.js +0 -84
- package/vendor/@appport/core/dist/runtime-manifest.js.map +0 -1
- package/vendor/@appport/core/dist/sanitize.d.ts +0 -14
- package/vendor/@appport/core/dist/sanitize.d.ts.map +0 -1
- package/vendor/@appport/core/dist/sanitize.js +0 -49
- package/vendor/@appport/core/dist/sanitize.js.map +0 -1
- package/vendor/@appport/core/dist/server-internal.d.ts +0 -5
- package/vendor/@appport/core/dist/server-internal.d.ts.map +0 -1
- package/vendor/@appport/core/dist/server-internal.js +0 -4
- package/vendor/@appport/core/dist/server-internal.js.map +0 -1
- package/vendor/@appport/core/dist/sessions.d.ts +0 -29
- package/vendor/@appport/core/dist/sessions.d.ts.map +0 -1
- package/vendor/@appport/core/dist/sessions.js +0 -39
- package/vendor/@appport/core/dist/sessions.js.map +0 -1
- package/vendor/@appport/core/dist/sha256.d.ts +0 -3
- package/vendor/@appport/core/dist/sha256.d.ts.map +0 -1
- package/vendor/@appport/core/dist/sha256.js +0 -46
- package/vendor/@appport/core/dist/sha256.js.map +0 -1
- package/vendor/@appport/core/dist/source-verification.d.ts +0 -53
- package/vendor/@appport/core/dist/source-verification.d.ts.map +0 -1
- package/vendor/@appport/core/dist/source-verification.js +0 -92
- package/vendor/@appport/core/dist/source-verification.js.map +0 -1
- package/vendor/@appport/core/dist/state-context.d.ts +0 -312
- package/vendor/@appport/core/dist/state-context.d.ts.map +0 -1
- package/vendor/@appport/core/dist/state-context.js +0 -100
- package/vendor/@appport/core/dist/state-context.js.map +0 -1
- package/vendor/@appport/core/dist/state.d.ts +0 -96
- package/vendor/@appport/core/dist/state.d.ts.map +0 -1
- package/vendor/@appport/core/dist/state.js +0 -89
- package/vendor/@appport/core/dist/state.js.map +0 -1
- package/vendor/@appport/core/dist/streams.d.ts +0 -38
- package/vendor/@appport/core/dist/streams.d.ts.map +0 -1
- package/vendor/@appport/core/dist/streams.js +0 -123
- package/vendor/@appport/core/dist/streams.js.map +0 -1
- package/vendor/@appport/core/dist/telemetry.d.ts +0 -42
- package/vendor/@appport/core/dist/telemetry.d.ts.map +0 -1
- package/vendor/@appport/core/dist/telemetry.js +0 -32
- package/vendor/@appport/core/dist/telemetry.js.map +0 -1
- package/vendor/@appport/core/dist/wasm-engine.d.ts +0 -24
- package/vendor/@appport/core/dist/wasm-engine.d.ts.map +0 -1
- package/vendor/@appport/core/dist/wasm-engine.js +0 -376
- package/vendor/@appport/core/dist/wasm-engine.js.map +0 -1
- package/vendor/@appport/core/package.json +0 -58
- package/vendor/@appport/mcp/README.md +0 -29
- package/vendor/@appport/mcp/dist/index.d.ts +0 -58
- package/vendor/@appport/mcp/dist/index.d.ts.map +0 -1
- package/vendor/@appport/mcp/dist/index.js +0 -69
- package/vendor/@appport/mcp/dist/index.js.map +0 -1
- package/vendor/@appport/mcp/package.json +0 -29
- package/vendor/@appport/mobile/README.md +0 -10
- package/vendor/@appport/mobile/dist/index.d.ts +0 -66
- package/vendor/@appport/mobile/dist/index.d.ts.map +0 -1
- package/vendor/@appport/mobile/dist/index.js +0 -182
- package/vendor/@appport/mobile/dist/index.js.map +0 -1
- package/vendor/@appport/mobile/package.json +0 -33
- package/vendor/@appport/protocol/README.md +0 -41
- package/vendor/@appport/protocol/dist/blob.d.ts +0 -46
- package/vendor/@appport/protocol/dist/blob.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/blob.js +0 -23
- package/vendor/@appport/protocol/dist/blob.js.map +0 -1
- package/vendor/@appport/protocol/dist/compatibility.d.ts +0 -25
- package/vendor/@appport/protocol/dist/compatibility.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/compatibility.js +0 -189
- package/vendor/@appport/protocol/dist/compatibility.js.map +0 -1
- package/vendor/@appport/protocol/dist/envelopes.d.ts +0 -175
- package/vendor/@appport/protocol/dist/envelopes.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/envelopes.js +0 -97
- package/vendor/@appport/protocol/dist/envelopes.js.map +0 -1
- package/vendor/@appport/protocol/dist/errors.d.ts +0 -74
- package/vendor/@appport/protocol/dist/errors.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/errors.js +0 -92
- package/vendor/@appport/protocol/dist/errors.js.map +0 -1
- package/vendor/@appport/protocol/dist/ids.d.ts +0 -12
- package/vendor/@appport/protocol/dist/ids.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/ids.js +0 -50
- package/vendor/@appport/protocol/dist/ids.js.map +0 -1
- package/vendor/@appport/protocol/dist/index.d.ts +0 -21
- package/vendor/@appport/protocol/dist/index.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/index.js +0 -21
- package/vendor/@appport/protocol/dist/index.js.map +0 -1
- package/vendor/@appport/protocol/dist/jsonschema.d.ts +0 -50
- package/vendor/@appport/protocol/dist/jsonschema.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/jsonschema.js +0 -6
- package/vendor/@appport/protocol/dist/jsonschema.js.map +0 -1
- package/vendor/@appport/protocol/dist/manifest.d.ts +0 -134
- package/vendor/@appport/protocol/dist/manifest.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/manifest.js +0 -20
- package/vendor/@appport/protocol/dist/manifest.js.map +0 -1
- package/vendor/@appport/protocol/dist/materialization.d.ts +0 -59
- package/vendor/@appport/protocol/dist/materialization.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/materialization.js +0 -2
- package/vendor/@appport/protocol/dist/materialization.js.map +0 -1
- package/vendor/@appport/protocol/dist/names.d.ts +0 -26
- package/vendor/@appport/protocol/dist/names.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/names.js +0 -85
- package/vendor/@appport/protocol/dist/names.js.map +0 -1
- package/vendor/@appport/protocol/dist/operations.d.ts +0 -34
- package/vendor/@appport/protocol/dist/operations.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/operations.js +0 -9
- package/vendor/@appport/protocol/dist/operations.js.map +0 -1
- package/vendor/@appport/protocol/dist/session.d.ts +0 -27
- package/vendor/@appport/protocol/dist/session.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/session.js +0 -7
- package/vendor/@appport/protocol/dist/session.js.map +0 -1
- package/vendor/@appport/protocol/dist/validate.d.ts +0 -37
- package/vendor/@appport/protocol/dist/validate.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/validate.js +0 -321
- package/vendor/@appport/protocol/dist/validate.js.map +0 -1
- package/vendor/@appport/protocol/dist/version.d.ts +0 -27
- package/vendor/@appport/protocol/dist/version.d.ts.map +0 -1
- package/vendor/@appport/protocol/dist/version.js +0 -26
- package/vendor/@appport/protocol/dist/version.js.map +0 -1
- package/vendor/@appport/protocol/package.json +0 -25
- package/vendor/@appport/schema/README.md +0 -32
- package/vendor/@appport/schema/dist/builder.d.ts +0 -85
- package/vendor/@appport/schema/dist/builder.d.ts.map +0 -1
- package/vendor/@appport/schema/dist/builder.js +0 -278
- package/vendor/@appport/schema/dist/builder.js.map +0 -1
- package/vendor/@appport/schema/dist/from-json-schema.d.ts +0 -12
- package/vendor/@appport/schema/dist/from-json-schema.d.ts.map +0 -1
- package/vendor/@appport/schema/dist/from-json-schema.js +0 -186
- package/vendor/@appport/schema/dist/from-json-schema.js.map +0 -1
- package/vendor/@appport/schema/dist/index.d.ts +0 -23
- package/vendor/@appport/schema/dist/index.d.ts.map +0 -1
- package/vendor/@appport/schema/dist/index.js +0 -22
- package/vendor/@appport/schema/dist/index.js.map +0 -1
- package/vendor/@appport/schema/dist/standard.d.ts +0 -46
- package/vendor/@appport/schema/dist/standard.d.ts.map +0 -1
- package/vendor/@appport/schema/dist/standard.js +0 -42
- package/vendor/@appport/schema/dist/standard.js.map +0 -1
- package/vendor/@appport/schema/dist/types.d.ts +0 -40
- package/vendor/@appport/schema/dist/types.d.ts.map +0 -1
- package/vendor/@appport/schema/dist/types.js +0 -19
- package/vendor/@appport/schema/dist/types.js.map +0 -1
- package/vendor/@appport/schema/package.json +0 -28
- package/vendor/@appport/server/README.md +0 -39
- package/vendor/@appport/server/dist/connection.d.ts +0 -45
- package/vendor/@appport/server/dist/connection.d.ts.map +0 -1
- package/vendor/@appport/server/dist/connection.js +0 -217
- package/vendor/@appport/server/dist/connection.js.map +0 -1
- package/vendor/@appport/server/dist/fetch.d.ts +0 -10
- package/vendor/@appport/server/dist/fetch.d.ts.map +0 -1
- package/vendor/@appport/server/dist/fetch.js +0 -50
- package/vendor/@appport/server/dist/fetch.js.map +0 -1
- package/vendor/@appport/server/dist/http.d.ts +0 -80
- package/vendor/@appport/server/dist/http.d.ts.map +0 -1
- package/vendor/@appport/server/dist/http.js +0 -307
- package/vendor/@appport/server/dist/http.js.map +0 -1
- package/vendor/@appport/server/dist/index.d.ts +0 -11
- package/vendor/@appport/server/dist/index.d.ts.map +0 -1
- package/vendor/@appport/server/dist/index.js +0 -11
- package/vendor/@appport/server/dist/index.js.map +0 -1
- package/vendor/@appport/server/dist/node-entry.d.ts +0 -4
- package/vendor/@appport/server/dist/node-entry.d.ts.map +0 -1
- package/vendor/@appport/server/dist/node-entry.js +0 -4
- package/vendor/@appport/server/dist/node-entry.js.map +0 -1
- package/vendor/@appport/server/dist/node.d.ts +0 -45
- package/vendor/@appport/server/dist/node.d.ts.map +0 -1
- package/vendor/@appport/server/dist/node.js +0 -190
- package/vendor/@appport/server/dist/node.js.map +0 -1
- package/vendor/@appport/server/dist/server.d.ts +0 -83
- package/vendor/@appport/server/dist/server.d.ts.map +0 -1
- package/vendor/@appport/server/dist/server.js +0 -114
- package/vendor/@appport/server/dist/server.js.map +0 -1
- package/vendor/@appport/server/dist/websocket.d.ts +0 -25
- package/vendor/@appport/server/dist/websocket.d.ts.map +0 -1
- package/vendor/@appport/server/dist/websocket.js +0 -221
- package/vendor/@appport/server/dist/websocket.js.map +0 -1
- package/vendor/@appport/server/package.json +0 -34
- package/vendor/@appport/transport-electron/README.md +0 -56
- package/vendor/@appport/transport-electron/dist/index.d.ts +0 -11
- package/vendor/@appport/transport-electron/dist/index.d.ts.map +0 -1
- package/vendor/@appport/transport-electron/dist/index.js +0 -11
- package/vendor/@appport/transport-electron/dist/index.js.map +0 -1
- package/vendor/@appport/transport-electron/dist/main.d.ts +0 -31
- package/vendor/@appport/transport-electron/dist/main.d.ts.map +0 -1
- package/vendor/@appport/transport-electron/dist/main.js +0 -61
- package/vendor/@appport/transport-electron/dist/main.js.map +0 -1
- package/vendor/@appport/transport-electron/dist/preload.d.ts +0 -22
- package/vendor/@appport/transport-electron/dist/preload.d.ts.map +0 -1
- package/vendor/@appport/transport-electron/dist/preload.js +0 -29
- package/vendor/@appport/transport-electron/dist/preload.js.map +0 -1
- package/vendor/@appport/transport-electron/dist/renderer.d.ts +0 -16
- package/vendor/@appport/transport-electron/dist/renderer.d.ts.map +0 -1
- package/vendor/@appport/transport-electron/dist/renderer.js +0 -36
- package/vendor/@appport/transport-electron/dist/renderer.js.map +0 -1
- package/vendor/@appport/transport-electron/dist/types.d.ts +0 -49
- package/vendor/@appport/transport-electron/dist/types.d.ts.map +0 -1
- package/vendor/@appport/transport-electron/dist/types.js +0 -5
- package/vendor/@appport/transport-electron/dist/types.js.map +0 -1
- package/vendor/@appport/transport-electron/package.json +0 -46
- package/vendor/@appport/transport-http/README.md +0 -24
- package/vendor/@appport/transport-http/dist/index.d.ts +0 -18
- package/vendor/@appport/transport-http/dist/index.d.ts.map +0 -1
- package/vendor/@appport/transport-http/dist/index.js +0 -223
- package/vendor/@appport/transport-http/dist/index.js.map +0 -1
- package/vendor/@appport/transport-http/package.json +0 -29
- package/vendor/@appport/transport-inprocess/README.md +0 -24
- package/vendor/@appport/transport-inprocess/dist/index.d.ts +0 -16
- package/vendor/@appport/transport-inprocess/dist/index.d.ts.map +0 -1
- package/vendor/@appport/transport-inprocess/dist/index.js +0 -30
- package/vendor/@appport/transport-inprocess/dist/index.js.map +0 -1
- package/vendor/@appport/transport-inprocess/package.json +0 -30
- package/vendor/@appport/transport-tauri/README.md +0 -45
- package/vendor/@appport/transport-tauri/dist/index.d.ts +0 -23
- package/vendor/@appport/transport-tauri/dist/index.d.ts.map +0 -1
- package/vendor/@appport/transport-tauri/dist/index.js +0 -44
- package/vendor/@appport/transport-tauri/dist/index.js.map +0 -1
- package/vendor/@appport/transport-tauri/package.json +0 -29
- package/vendor/@appport/transport-websocket/README.md +0 -22
- package/vendor/@appport/transport-websocket/dist/index.d.ts +0 -26
- package/vendor/@appport/transport-websocket/dist/index.d.ts.map +0 -1
- package/vendor/@appport/transport-websocket/dist/index.js +0 -72
- package/vendor/@appport/transport-websocket/dist/index.js.map +0 -1
- package/vendor/@appport/transport-websocket/package.json +0 -29
|
@@ -1,349 +0,0 @@
|
|
|
1
|
-
import { createHash } from "crypto";
|
|
2
|
-
import { appBoundryContractFromManifest, contractProvidedCoverage, parseAppBoundryContract } from "./appboundry-contract.js";
|
|
3
|
-
import { RUNTIME_IMPLEMENTATION_MANIFEST_PROTOCOL, deriveImplementationCoverage, parseRuntimeImplementationManifest } from "./runtime-manifest.js";
|
|
4
|
-
export const APPPORT_APPLICATION_PACKAGE_PROTOCOL = "AppPort/application-bundle/1";
|
|
5
|
-
export const APPPORT_APPLICATION_PACKAGE_MANIFEST_FILE = "manifest";
|
|
6
|
-
export const APPPORT_APPLICATION_PACKAGE_ARTIFACT_FILE = "application.wasm";
|
|
7
|
-
export const APPPORT_APPLICATION_PACKAGE_IDENTITY_ALGORITHM = "sha256";
|
|
8
|
-
const SHA256 = /^[a-f0-9]{64}$/;
|
|
9
|
-
/**
|
|
10
|
-
* Produce the canonical AppPort application package consumed by AppBoundry.
|
|
11
|
-
*
|
|
12
|
-
* The package is derived from the SDK application definition: verification must
|
|
13
|
-
* pass before any bundle manifest is emitted, the contract fingerprint is
|
|
14
|
-
* calculated from the canonical manifest, and runtime bindings are limited to
|
|
15
|
-
* AppBoundry's implementation coverage plus the WASM artifact hash.
|
|
16
|
-
*/
|
|
17
|
-
export function createApplicationPackage(application, options) {
|
|
18
|
-
const checked = application.verify();
|
|
19
|
-
if (!checked.ready) {
|
|
20
|
-
throw new Error(`Cannot package application: verification failed (${checked.errors.map(error => error.message).join("; ")})`);
|
|
21
|
-
}
|
|
22
|
-
if (application.provides.length === 0)
|
|
23
|
-
throw new Error("Cannot package application: at least one provided capability is required");
|
|
24
|
-
const manifest = application.manifest();
|
|
25
|
-
const contract = appBoundryContractFromManifest(manifest, options.contractRevision ?? 1);
|
|
26
|
-
const artifactHash = createHash("sha256").update(options.artifact).digest("hex");
|
|
27
|
-
const runtimeManifest = parseRuntimeImplementationManifest({
|
|
28
|
-
protocol: RUNTIME_IMPLEMENTATION_MANIFEST_PROTOCOL,
|
|
29
|
-
applicationId: contract.application.id,
|
|
30
|
-
...(options.implementationId ? { implementationId: options.implementationId } : {}),
|
|
31
|
-
...(options.sourceId ? { sourceId: options.sourceId } : {}),
|
|
32
|
-
implements: manifest.provides.map(capability => ({ name: capability.name, version: capability.version })),
|
|
33
|
-
runtime: { engine: "wasm", artifactHash }
|
|
34
|
-
});
|
|
35
|
-
const packageManifest = createApplicationPackageManifest(contract, runtimeManifest, artifactHash, verificationEvidence(checked));
|
|
36
|
-
return {
|
|
37
|
-
verification: checked,
|
|
38
|
-
packageReference: packageManifest.packageReference,
|
|
39
|
-
packageIdentity: packageManifest.packageIdentity,
|
|
40
|
-
manifest: packageManifest,
|
|
41
|
-
contract,
|
|
42
|
-
runtimeManifest: packageManifest.implementation,
|
|
43
|
-
contractFingerprint: contract.contractFingerprint,
|
|
44
|
-
artifactHash,
|
|
45
|
-
files: [
|
|
46
|
-
{ path: APPPORT_APPLICATION_PACKAGE_MANIFEST_FILE, contents: `${JSON.stringify(packageManifest, null, 2)}\n` },
|
|
47
|
-
{ path: APPPORT_APPLICATION_PACKAGE_ARTIFACT_FILE, contents: options.artifact }
|
|
48
|
-
]
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
/** Build a canonical immutable `.app` manifest from verified contract, runtime, and artifact metadata. */
|
|
52
|
-
export function createApplicationPackageManifest(contract, runtimeManifest, artifactHash, verification = contractRuntimeVerificationEvidence(contract, runtimeManifest)) {
|
|
53
|
-
if (!SHA256.test(artifactHash))
|
|
54
|
-
throw new Error("Application package artifact hash must be a lowercase SHA-256 digest");
|
|
55
|
-
if (runtimeManifest.applicationId !== contract.application.id) {
|
|
56
|
-
throw new Error("Application package runtime applicationId must match the contract application");
|
|
57
|
-
}
|
|
58
|
-
const packagedRuntimeManifest = parseRuntimeImplementationManifest({
|
|
59
|
-
protocol: runtimeManifest.protocol,
|
|
60
|
-
applicationId: runtimeManifest.applicationId,
|
|
61
|
-
...(runtimeManifest.implementationId ? { implementationId: runtimeManifest.implementationId } : {}),
|
|
62
|
-
...(runtimeManifest.sourceId ? { sourceId: runtimeManifest.sourceId } : {}),
|
|
63
|
-
implements: runtimeManifest.implements,
|
|
64
|
-
runtime: { engine: "wasm", artifactHash }
|
|
65
|
-
});
|
|
66
|
-
const packageReference = createApplicationPackageReference(contract.application);
|
|
67
|
-
const packageManifestBase = {
|
|
68
|
-
protocol: APPPORT_APPLICATION_PACKAGE_PROTOCOL,
|
|
69
|
-
packageReference,
|
|
70
|
-
application: contract.application,
|
|
71
|
-
appBoundryApplicationId: contract.application.id,
|
|
72
|
-
contractFingerprint: contract.contractFingerprint,
|
|
73
|
-
verification,
|
|
74
|
-
artifact: { path: APPPORT_APPLICATION_PACKAGE_ARTIFACT_FILE, format: "wasm/1", hash: artifactHash },
|
|
75
|
-
contract,
|
|
76
|
-
implementation: packagedRuntimeManifest,
|
|
77
|
-
immutable: true
|
|
78
|
-
};
|
|
79
|
-
const packageIdentity = createApplicationPackageIdentity(packageManifestBase);
|
|
80
|
-
return { ...packageManifestBase, packageIdentity };
|
|
81
|
-
}
|
|
82
|
-
/** Canonical portable reference for an already-packaged AppPort application. */
|
|
83
|
-
export function createApplicationPackageReference(application) {
|
|
84
|
-
if (!application.id || /\s/.test(application.id))
|
|
85
|
-
throw new Error("Package reference application id must be non-empty and contain no whitespace");
|
|
86
|
-
if (!application.version || /\s/.test(application.version))
|
|
87
|
-
throw new Error("Package reference version must be non-empty and contain no whitespace");
|
|
88
|
-
return `${application.id}@${application.version}`;
|
|
89
|
-
}
|
|
90
|
-
/** Inspect and verify the content-addressed identity declared by a package manifest. */
|
|
91
|
-
export function inspectApplicationPackageIdentity(manifest) {
|
|
92
|
-
const parsed = parseApplicationPackageManifest(manifest);
|
|
93
|
-
return parsed.packageIdentity;
|
|
94
|
-
}
|
|
95
|
-
/** Resolve package metadata only after verifying manifest, identity, contract, runtime, and artifact bytes. */
|
|
96
|
-
export function resolveApplicationPackageMetadata(options) {
|
|
97
|
-
const manifest = parseApplicationPackageManifest(options.manifest);
|
|
98
|
-
const artifactHash = createHash("sha256").update(options.artifact).digest("hex");
|
|
99
|
-
if (artifactHash !== manifest.artifact.hash) {
|
|
100
|
-
throw new Error(`Application package artifact hash mismatch: manifest declares ${manifest.artifact.hash}, found ${artifactHash}`);
|
|
101
|
-
}
|
|
102
|
-
return {
|
|
103
|
-
packageReference: manifest.packageReference,
|
|
104
|
-
packageIdentity: manifest.packageIdentity,
|
|
105
|
-
manifest,
|
|
106
|
-
contract: manifest.contract,
|
|
107
|
-
runtimeManifest: manifest.implementation,
|
|
108
|
-
contractFingerprint: manifest.contractFingerprint,
|
|
109
|
-
artifactHash,
|
|
110
|
-
verified: true
|
|
111
|
-
};
|
|
112
|
-
}
|
|
113
|
-
/** Parse the `.app` manifest and reject mutable or self-inconsistent package metadata. */
|
|
114
|
-
export function parseApplicationPackageManifest(input) {
|
|
115
|
-
const value = typeof input === "string" ? JSON.parse(input) : input;
|
|
116
|
-
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
117
|
-
throw new Error("Application package manifest must be a JSON object");
|
|
118
|
-
}
|
|
119
|
-
const candidate = value;
|
|
120
|
-
exactKeys(candidate, [
|
|
121
|
-
"protocol",
|
|
122
|
-
"packageReference",
|
|
123
|
-
"packageIdentity",
|
|
124
|
-
"application",
|
|
125
|
-
"appBoundryApplicationId",
|
|
126
|
-
"contractFingerprint",
|
|
127
|
-
"verification",
|
|
128
|
-
"artifact",
|
|
129
|
-
"contract",
|
|
130
|
-
"implementation",
|
|
131
|
-
"immutable"
|
|
132
|
-
], "Application package manifest");
|
|
133
|
-
if (candidate.protocol !== APPPORT_APPLICATION_PACKAGE_PROTOCOL) {
|
|
134
|
-
throw new Error(`Expected application package protocol ${APPPORT_APPLICATION_PACKAGE_PROTOCOL}`);
|
|
135
|
-
}
|
|
136
|
-
if (candidate.immutable !== true)
|
|
137
|
-
throw new Error("Application package manifest must declare immutable: true");
|
|
138
|
-
const contract = parseAppBoundryContract(candidate.contract);
|
|
139
|
-
const runtimeManifest = parseRuntimeImplementationManifest(candidate.implementation);
|
|
140
|
-
const application = candidate.application;
|
|
141
|
-
if (application?.id !== contract.application.id || application.name !== contract.application.name || application.version !== contract.application.version) {
|
|
142
|
-
throw new Error("Application package application identity must match the contract application");
|
|
143
|
-
}
|
|
144
|
-
if (candidate.appBoundryApplicationId !== contract.application.id) {
|
|
145
|
-
throw new Error("Application package AppBoundry ApplicationId must match the AppPort application id");
|
|
146
|
-
}
|
|
147
|
-
if (candidate.contractFingerprint !== contract.contractFingerprint) {
|
|
148
|
-
throw new Error("Application package contract fingerprint must match the contract document");
|
|
149
|
-
}
|
|
150
|
-
const artifact = candidate.artifact;
|
|
151
|
-
if (artifact?.path !== APPPORT_APPLICATION_PACKAGE_ARTIFACT_FILE || artifact.format !== "wasm/1" || typeof artifact.hash !== "string" || !SHA256.test(artifact.hash)) {
|
|
152
|
-
throw new Error("Application package artifact must be application.wasm with a lowercase SHA-256 hash");
|
|
153
|
-
}
|
|
154
|
-
if (runtimeManifest.applicationId !== contract.application.id) {
|
|
155
|
-
throw new Error("Application package runtime applicationId must match the contract application");
|
|
156
|
-
}
|
|
157
|
-
if (runtimeManifest.runtime?.engine !== "wasm" || runtimeManifest.runtime.artifactHash !== artifact.hash) {
|
|
158
|
-
throw new Error("Application package runtime must declare the packaged WASM artifact hash");
|
|
159
|
-
}
|
|
160
|
-
const expectedReference = createApplicationPackageReference(contract.application);
|
|
161
|
-
if (candidate.packageReference !== expectedReference) {
|
|
162
|
-
throw new Error(`Application package reference mismatch: expected ${expectedReference}`);
|
|
163
|
-
}
|
|
164
|
-
const missingCoverage = contractProvidedCoverage(contract).filter(capability => !deriveImplementationCoverage(runtimeManifest).includes(capability));
|
|
165
|
-
if (missingCoverage.length) {
|
|
166
|
-
throw new Error(`Application package runtime is missing contract capability implementation(s): ${missingCoverage.join(", ")}`);
|
|
167
|
-
}
|
|
168
|
-
const verification = parsePackageVerificationEvidence(candidate.verification, contract, runtimeManifest);
|
|
169
|
-
const packageIdentity = parsePackageIdentity(candidate.packageIdentity);
|
|
170
|
-
const expectedIdentity = createApplicationPackageIdentity({ ...candidate, packageIdentity: undefined });
|
|
171
|
-
if (packageIdentity.reference !== expectedReference || packageIdentity.digest !== expectedIdentity.digest || packageIdentity.contentAddress !== expectedIdentity.contentAddress) {
|
|
172
|
-
throw new Error("Application package identity does not match the immutable package contents");
|
|
173
|
-
}
|
|
174
|
-
return {
|
|
175
|
-
protocol: APPPORT_APPLICATION_PACKAGE_PROTOCOL,
|
|
176
|
-
packageReference: expectedReference,
|
|
177
|
-
packageIdentity,
|
|
178
|
-
application: contract.application,
|
|
179
|
-
appBoundryApplicationId: contract.application.id,
|
|
180
|
-
contractFingerprint: contract.contractFingerprint,
|
|
181
|
-
verification,
|
|
182
|
-
artifact: { path: APPPORT_APPLICATION_PACKAGE_ARTIFACT_FILE, format: "wasm/1", hash: artifact.hash },
|
|
183
|
-
contract,
|
|
184
|
-
implementation: runtimeManifest,
|
|
185
|
-
immutable: true
|
|
186
|
-
};
|
|
187
|
-
}
|
|
188
|
-
function verificationEvidence(verification) {
|
|
189
|
-
if (!verification.ready)
|
|
190
|
-
throw new Error("Application package verification evidence must be ready");
|
|
191
|
-
const implementations = [...verification.implementations.entries()].map(([capability, status]) => ({ capability, status }));
|
|
192
|
-
if (implementations.some(entry => entry.status !== "bound")) {
|
|
193
|
-
throw new Error("Application package verification evidence must bind every implementation");
|
|
194
|
-
}
|
|
195
|
-
return {
|
|
196
|
-
protocol: "AppPort/application-package-verification/1",
|
|
197
|
-
ready: true,
|
|
198
|
-
errors: [],
|
|
199
|
-
warnings: [...verification.warnings],
|
|
200
|
-
provides: [...verification.provides],
|
|
201
|
-
requires: [...verification.requires],
|
|
202
|
-
implementations: implementations
|
|
203
|
-
};
|
|
204
|
-
}
|
|
205
|
-
function contractRuntimeVerificationEvidence(contract, runtimeManifest) {
|
|
206
|
-
const implemented = new Set(deriveImplementationCoverage(runtimeManifest));
|
|
207
|
-
return {
|
|
208
|
-
protocol: "AppPort/application-package-verification/1",
|
|
209
|
-
ready: true,
|
|
210
|
-
errors: [],
|
|
211
|
-
warnings: [],
|
|
212
|
-
provides: contract.provides.map(capability => ({ name: capability.name, version: capability.version })),
|
|
213
|
-
requires: contract.requires.map(capability => ({ name: capability.name, version: capability.version })),
|
|
214
|
-
implementations: contractProvidedCoverage(contract)
|
|
215
|
-
.filter(capability => implemented.has(capability))
|
|
216
|
-
.map(capability => ({ capability, status: "bound" }))
|
|
217
|
-
};
|
|
218
|
-
}
|
|
219
|
-
function parsePackageVerificationEvidence(value, contract, runtimeManifest) {
|
|
220
|
-
if (typeof value !== "object" || value === null || Array.isArray(value))
|
|
221
|
-
throw new Error("Application package verification evidence must be a JSON object");
|
|
222
|
-
const candidate = value;
|
|
223
|
-
exactKeys(candidate, ["protocol", "ready", "errors", "warnings", "provides", "requires", "implementations"], "Application package verification evidence");
|
|
224
|
-
if (candidate.protocol !== "AppPort/application-package-verification/1")
|
|
225
|
-
throw new Error("Application package verification evidence protocol mismatch");
|
|
226
|
-
if (candidate.ready !== true)
|
|
227
|
-
throw new Error("Application package verification evidence must be ready");
|
|
228
|
-
if (!Array.isArray(candidate.errors) || candidate.errors.length !== 0)
|
|
229
|
-
throw new Error("Application package verification evidence must not contain errors");
|
|
230
|
-
const warnings = parseCapabilityIssues(candidate.warnings);
|
|
231
|
-
const provides = parseCapabilityReferences(candidate.provides, "provides");
|
|
232
|
-
const requires = parseCapabilityReferences(candidate.requires, "requires");
|
|
233
|
-
const implementations = parseVerificationImplementations(candidate.implementations);
|
|
234
|
-
const expectedProvides = contract.provides.map(capability => `${capability.name}@${capability.version}`);
|
|
235
|
-
const expectedRequires = contract.requires.map(capability => `${capability.name}@${capability.version}`);
|
|
236
|
-
if (!sameStrings(provides.map(capabilityRef), expectedProvides))
|
|
237
|
-
throw new Error("Application package verification evidence provides do not match the contract");
|
|
238
|
-
if (!sameStrings(requires.map(capabilityRef), expectedRequires))
|
|
239
|
-
throw new Error("Application package verification evidence requires do not match the contract");
|
|
240
|
-
const expectedImplementations = contractProvidedCoverage(contract).filter(capability => deriveImplementationCoverage(runtimeManifest).includes(capability));
|
|
241
|
-
if (!sameStrings(implementations.map(entry => entry.capability), expectedImplementations)) {
|
|
242
|
-
throw new Error("Application package verification evidence implementations do not match the runtime");
|
|
243
|
-
}
|
|
244
|
-
return { protocol: "AppPort/application-package-verification/1", ready: true, errors: [], warnings, provides, requires, implementations };
|
|
245
|
-
}
|
|
246
|
-
function parseCapabilityIssues(value) {
|
|
247
|
-
if (!Array.isArray(value))
|
|
248
|
-
throw new Error("Application package verification evidence warnings must be an array");
|
|
249
|
-
return value.map(item => {
|
|
250
|
-
if (typeof item !== "object" || item === null || Array.isArray(item))
|
|
251
|
-
throw new Error("Application package verification warning must be an object");
|
|
252
|
-
const issue = item;
|
|
253
|
-
exactKeys(issue, ["severity", "message", "capability"], "Application package verification warning");
|
|
254
|
-
if (issue.severity !== "warning")
|
|
255
|
-
throw new Error("Application package verification warning severity must be warning");
|
|
256
|
-
if (typeof issue.message !== "string")
|
|
257
|
-
throw new Error("Application package verification warning message must be a string");
|
|
258
|
-
const capability = issue.capability === undefined ? undefined : parseCapabilityReference(issue.capability, "warning capability");
|
|
259
|
-
return { severity: "warning", message: issue.message, ...(capability ? { capability } : {}) };
|
|
260
|
-
});
|
|
261
|
-
}
|
|
262
|
-
function parseCapabilityReferences(value, label) {
|
|
263
|
-
if (!Array.isArray(value))
|
|
264
|
-
throw new Error(`Application package verification evidence ${label} must be an array`);
|
|
265
|
-
return value.map(item => parseCapabilityReference(item, label));
|
|
266
|
-
}
|
|
267
|
-
function parseCapabilityReference(value, label) {
|
|
268
|
-
if (typeof value !== "object" || value === null || Array.isArray(value))
|
|
269
|
-
throw new Error(`Application package verification evidence ${label} entry must be an object`);
|
|
270
|
-
const capability = value;
|
|
271
|
-
exactKeys(capability, ["name", "version"], `Application package verification evidence ${label} entry`);
|
|
272
|
-
if (typeof capability.name !== "string" || typeof capability.version !== "number") {
|
|
273
|
-
throw new Error(`Application package verification evidence ${label} entry must include name and version`);
|
|
274
|
-
}
|
|
275
|
-
return { name: capability.name, version: capability.version };
|
|
276
|
-
}
|
|
277
|
-
function parseVerificationImplementations(value) {
|
|
278
|
-
if (!Array.isArray(value))
|
|
279
|
-
throw new Error("Application package verification evidence implementations must be an array");
|
|
280
|
-
return value.map(item => {
|
|
281
|
-
if (typeof item !== "object" || item === null || Array.isArray(item))
|
|
282
|
-
throw new Error("Application package verification implementation must be an object");
|
|
283
|
-
const implementation = item;
|
|
284
|
-
exactKeys(implementation, ["capability", "status"], "Application package verification implementation");
|
|
285
|
-
if (typeof implementation.capability !== "string" || implementation.status !== "bound") {
|
|
286
|
-
throw new Error("Application package verification implementation must bind a capability");
|
|
287
|
-
}
|
|
288
|
-
return { capability: implementation.capability, status: "bound" };
|
|
289
|
-
});
|
|
290
|
-
}
|
|
291
|
-
function capabilityRef(capability) {
|
|
292
|
-
return `${capability.name}@${capability.version}`;
|
|
293
|
-
}
|
|
294
|
-
function sameStrings(left, right) {
|
|
295
|
-
const sortedLeft = [...left].sort();
|
|
296
|
-
const sortedRight = [...right].sort();
|
|
297
|
-
return sortedLeft.length === sortedRight.length && sortedLeft.every((value, index) => value === sortedRight[index]);
|
|
298
|
-
}
|
|
299
|
-
function createApplicationPackageIdentity(manifest) {
|
|
300
|
-
const reference = manifest.packageReference;
|
|
301
|
-
if (typeof reference !== "string")
|
|
302
|
-
throw new Error("Application package reference must be a string");
|
|
303
|
-
const digest = createHash("sha256").update(canonicalJson(withoutPackageIdentity(manifest))).digest("hex");
|
|
304
|
-
return {
|
|
305
|
-
reference,
|
|
306
|
-
algorithm: APPPORT_APPLICATION_PACKAGE_IDENTITY_ALGORITHM,
|
|
307
|
-
digest,
|
|
308
|
-
contentAddress: `sha256:${digest}`,
|
|
309
|
-
immutable: true
|
|
310
|
-
};
|
|
311
|
-
}
|
|
312
|
-
function parsePackageIdentity(value) {
|
|
313
|
-
if (typeof value !== "object" || value === null || Array.isArray(value))
|
|
314
|
-
throw new Error("Application package identity must be a JSON object");
|
|
315
|
-
const identity = value;
|
|
316
|
-
exactKeys(identity, ["reference", "algorithm", "digest", "contentAddress", "immutable"], "Application package identity");
|
|
317
|
-
if (typeof identity.reference !== "string")
|
|
318
|
-
throw new Error("Application package identity reference must be a string");
|
|
319
|
-
if (identity.algorithm !== APPPORT_APPLICATION_PACKAGE_IDENTITY_ALGORITHM)
|
|
320
|
-
throw new Error("Application package identity algorithm must be sha256");
|
|
321
|
-
if (typeof identity.digest !== "string" || !SHA256.test(identity.digest))
|
|
322
|
-
throw new Error("Application package identity digest must be a lowercase SHA-256 hash");
|
|
323
|
-
if (identity.contentAddress !== `sha256:${identity.digest}`)
|
|
324
|
-
throw new Error("Application package identity content address must match the digest");
|
|
325
|
-
if (identity.immutable !== true)
|
|
326
|
-
throw new Error("Application package identity must be immutable");
|
|
327
|
-
return identity;
|
|
328
|
-
}
|
|
329
|
-
function withoutPackageIdentity(value) {
|
|
330
|
-
return Object.fromEntries(Object.entries(value).filter(([key, entry]) => key !== "packageIdentity" && entry !== undefined));
|
|
331
|
-
}
|
|
332
|
-
function canonicalJson(value) {
|
|
333
|
-
if (Array.isArray(value))
|
|
334
|
-
return `[${value.map(canonicalJson).join(",")}]`;
|
|
335
|
-
if (value !== null && typeof value === "object") {
|
|
336
|
-
return `{${Object.keys(value)
|
|
337
|
-
.filter(key => value[key] !== undefined)
|
|
338
|
-
.sort()
|
|
339
|
-
.map(key => `${JSON.stringify(key)}:${canonicalJson(value[key])}`)
|
|
340
|
-
.join(",")}}`;
|
|
341
|
-
}
|
|
342
|
-
return JSON.stringify(value);
|
|
343
|
-
}
|
|
344
|
-
function exactKeys(value, allowed, path) {
|
|
345
|
-
const extra = Object.keys(value).filter(key => !allowed.includes(key));
|
|
346
|
-
if (extra.length)
|
|
347
|
-
throw new Error(`${path} contains unsupported field(s): ${extra.join(", ")}`);
|
|
348
|
-
}
|
|
349
|
-
//# sourceMappingURL=application-package.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"application-package.js","sourceRoot":"","sources":["../src/application-package.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Application Source Connections (F6)
|
|
3
|
-
*
|
|
4
|
-
* A source is an external repository that *implements* part of an application
|
|
5
|
-
* AppBoundry already owns. A source connection therefore:
|
|
6
|
-
*
|
|
7
|
-
* - references an applicationId but never creates or redefines it,
|
|
8
|
-
* - attests `appboundry.contract.json` against the authoritative fingerprint,
|
|
9
|
-
* - declares implementation coverage that must be a subset of the contract,
|
|
10
|
-
* - carries its own small lifecycle, distinct from the application lifecycle.
|
|
11
|
-
*
|
|
12
|
-
* Multiple sources per application, and multiple sources per capability, are
|
|
13
|
-
* first-class. None of them is a provider identity.
|
|
14
|
-
*/
|
|
15
|
-
import type { AuthoritativeApplicationContract, ContractAttestation } from "./contract-attestation.js";
|
|
16
|
-
import { type RepositorySourceObservation, type SourceVerificationFailure } from "./source-verification.js";
|
|
17
|
-
export type ApplicationSourceStatus = "pending" | "connected" | "stale" | "disconnected" | "failed";
|
|
18
|
-
/** Durable authority record for one repository/source connection. */
|
|
19
|
-
export interface ApplicationSourceConnection {
|
|
20
|
-
readonly id: string;
|
|
21
|
-
readonly applicationId: string;
|
|
22
|
-
readonly sourceType: "repository";
|
|
23
|
-
readonly repositoryIdentity: string;
|
|
24
|
-
readonly ref?: string;
|
|
25
|
-
readonly verifiedCommitSha?: string;
|
|
26
|
-
/** Fingerprint the source attested. Equals the authoritative one when connected. */
|
|
27
|
-
readonly contractFingerprint: string;
|
|
28
|
-
readonly contractRevision?: number;
|
|
29
|
-
/** Contract capabilities this source implements (always a contract subset). */
|
|
30
|
-
readonly coveredCapabilities: readonly string[];
|
|
31
|
-
/** Claims rejected because the contract never declared them. */
|
|
32
|
-
readonly rejectedCapabilities: readonly string[];
|
|
33
|
-
readonly status: ApplicationSourceStatus;
|
|
34
|
-
/** Optimistic-concurrency sequence for durable updates. */
|
|
35
|
-
readonly sequence: number;
|
|
36
|
-
readonly createdAt: string;
|
|
37
|
-
readonly verifiedAt?: string;
|
|
38
|
-
readonly disconnectedAt?: string;
|
|
39
|
-
readonly attestation?: ContractAttestation;
|
|
40
|
-
readonly failures: readonly SourceVerificationFailure[];
|
|
41
|
-
readonly reasons: readonly string[];
|
|
42
|
-
}
|
|
43
|
-
export interface ApplicationSourceStore {
|
|
44
|
-
get(applicationId: string, sourceId: string): Promise<ApplicationSourceConnection | undefined>;
|
|
45
|
-
put(record: ApplicationSourceConnection, expectedSequence?: number): Promise<void>;
|
|
46
|
-
list(applicationId?: string): Promise<ApplicationSourceConnection[]>;
|
|
47
|
-
}
|
|
48
|
-
export declare class ApplicationSourceConflictError extends Error {
|
|
49
|
-
constructor(id: string);
|
|
50
|
-
}
|
|
51
|
-
/** Reference in-memory authority, used where FeltDB is not available. */
|
|
52
|
-
export declare class MemoryApplicationSourceStore implements ApplicationSourceStore {
|
|
53
|
-
#private;
|
|
54
|
-
get(applicationId: string, sourceId: string): Promise<ApplicationSourceConnection | undefined>;
|
|
55
|
-
put(record: ApplicationSourceConnection, expectedSequence?: number): Promise<void>;
|
|
56
|
-
list(applicationId?: string): Promise<ApplicationSourceConnection[]>;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* The authoritative contract of a registered application.
|
|
60
|
-
*
|
|
61
|
-
* AppBoundry owns the application identity and its contract; a source may only
|
|
62
|
-
* reference them. A retired application has no authoritative contract, so no
|
|
63
|
-
* source can attest one.
|
|
64
|
-
*/
|
|
65
|
-
export declare function registeredApplicationContract(registry: {
|
|
66
|
-
get(applicationId: string): Promise<{
|
|
67
|
-
fingerprint: string;
|
|
68
|
-
manifest: import("./manifest.js").ApplicationManifest;
|
|
69
|
-
status?: string;
|
|
70
|
-
} | undefined>;
|
|
71
|
-
}): AuthoritativeApplicationContract;
|
|
72
|
-
/** A source is executable evidence only while it attests the current contract. */
|
|
73
|
-
export declare function sourceIsEligible(source: ApplicationSourceConnection, authoritativeFingerprint: string): boolean;
|
|
74
|
-
/**
|
|
75
|
-
* Establishes and maintains source connections against durable authority.
|
|
76
|
-
*
|
|
77
|
-
* Every transition is derived from verification evidence; no caller may assert
|
|
78
|
-
* a connected source directly.
|
|
79
|
-
*/
|
|
80
|
-
export declare class ApplicationSourceOperations {
|
|
81
|
-
#private;
|
|
82
|
-
private readonly store;
|
|
83
|
-
private readonly authority;
|
|
84
|
-
private readonly now;
|
|
85
|
-
constructor(store: ApplicationSourceStore, authority: AuthoritativeApplicationContract, now?: () => string);
|
|
86
|
-
/** Connect a new source: attest the contract, then derive coverage. */
|
|
87
|
-
connect(applicationId: string, observation: RepositorySourceObservation): Promise<ApplicationSourceConnection>;
|
|
88
|
-
/**
|
|
89
|
-
* Re-attest an existing source, for example after a contract revision.
|
|
90
|
-
*
|
|
91
|
-
* The source identity is immutable: re-attestation may change the ref, the
|
|
92
|
-
* commit, the attested contract and the coverage, never the repository.
|
|
93
|
-
*/
|
|
94
|
-
reattest(applicationId: string, sourceId: string, observation: RepositorySourceObservation): Promise<ApplicationSourceConnection>;
|
|
95
|
-
/** Remove a source from implementation eligibility; history stays intact. */
|
|
96
|
-
disconnect(applicationId: string, sourceId: string): Promise<ApplicationSourceConnection>;
|
|
97
|
-
/**
|
|
98
|
-
* Mark attestations of superseded contract revisions stale.
|
|
99
|
-
*
|
|
100
|
-
* A contract revision never silently promotes an old attestation: the source
|
|
101
|
-
* must reconnect/re-attest before it is eligible again.
|
|
102
|
-
*/
|
|
103
|
-
refresh(applicationId: string): Promise<ApplicationSourceConnection[]>;
|
|
104
|
-
/** Sources that may currently supply an implementation. */
|
|
105
|
-
eligible(applicationId: string): Promise<ApplicationSourceConnection[]>;
|
|
106
|
-
get: (applicationId: string, sourceId: string) => Promise<ApplicationSourceConnection | undefined>;
|
|
107
|
-
list: (applicationId?: string) => Promise<ApplicationSourceConnection[]>;
|
|
108
|
-
}
|
|
109
|
-
//# sourceMappingURL=application-source.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"application-source.d.ts","sourceRoot":"","sources":["../src/application-source.ts"],"names":[],"mappings":"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"}
|