@qlever-llc/trellis 0.10.22 → 0.11.0-rc.1
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/esm/auth/mod.d.ts +1 -1
- package/esm/auth/mod.d.ts.map +1 -1
- package/esm/auth/mod.js +1 -1
- package/esm/auth/protocol.d.ts +55 -0
- package/esm/auth/protocol.d.ts.map +1 -1
- package/esm/browser.d.ts +3 -3
- package/esm/browser.d.ts.map +1 -1
- package/esm/browser.js +1 -1
- package/esm/client_connect.d.ts +12 -3
- package/esm/client_connect.d.ts.map +1 -1
- package/esm/client_connect.js +112 -7
- package/esm/codec.d.ts +7 -6
- package/esm/codec.d.ts.map +1 -1
- package/esm/codec.js +125 -6
- package/esm/contract_support/canonical.d.ts +3 -0
- package/esm/contract_support/canonical.d.ts.map +1 -1
- package/esm/contract_support/canonical.js +3 -0
- package/esm/contract_support/mod.d.ts +125 -10
- package/esm/contract_support/mod.d.ts.map +1 -1
- package/esm/contract_support/mod.js +159 -5
- package/esm/contract_support/protocol.d.ts +92 -7
- package/esm/contract_support/protocol.d.ts.map +1 -1
- package/esm/contract_support/protocol.js +41 -7
- package/esm/contract_support/runtime.d.ts +4 -1
- package/esm/contract_support/runtime.d.ts.map +1 -1
- package/esm/errors/SchemaValidationError.d.ts +49 -0
- package/esm/errors/SchemaValidationError.d.ts.map +1 -0
- package/esm/errors/SchemaValidationError.js +67 -0
- package/esm/errors/index.d.ts +38 -9
- package/esm/errors/index.d.ts.map +1 -1
- package/esm/errors/index.js +16 -0
- package/esm/generated-sdk/auth/api.d.ts +33 -605
- package/esm/generated-sdk/auth/api.d.ts.map +1 -1
- package/esm/generated-sdk/auth/api.js +6 -1
- package/esm/generated-sdk/auth/client.d.ts +129 -134
- package/esm/generated-sdk/auth/client.d.ts.map +1 -1
- package/esm/generated-sdk/auth/contract.d.ts +2 -601
- package/esm/generated-sdk/auth/contract.d.ts.map +1 -1
- package/esm/generated-sdk/auth/contract.js +310 -93
- package/esm/generated-sdk/auth/mod.d.ts +1 -1
- package/esm/generated-sdk/auth/mod.d.ts.map +1 -1
- package/esm/generated-sdk/auth/owned_api.d.ts +88 -86
- package/esm/generated-sdk/auth/owned_api.d.ts.map +1 -1
- package/esm/generated-sdk/auth/owned_api.js +6 -0
- package/esm/generated-sdk/auth/schemas.d.ts +284 -136
- package/esm/generated-sdk/auth/schemas.d.ts.map +1 -1
- package/esm/generated-sdk/auth/schemas.js +231 -92
- package/esm/generated-sdk/auth/types.d.ts +565 -89
- package/esm/generated-sdk/auth/types.d.ts.map +1 -1
- package/esm/generated-sdk/auth/types.js +1 -1
- package/esm/generated-sdk/health/api.d.ts +29 -18
- package/esm/generated-sdk/health/api.d.ts.map +1 -1
- package/esm/generated-sdk/health/client.d.ts +7 -21
- package/esm/generated-sdk/health/client.d.ts.map +1 -1
- package/esm/generated-sdk/health/contract.d.ts +2 -15
- package/esm/generated-sdk/health/contract.d.ts.map +1 -1
- package/esm/generated-sdk/health/contract.js +2 -10
- package/esm/generated-sdk/health/mod.d.ts +1 -1
- package/esm/generated-sdk/health/mod.d.ts.map +1 -1
- package/esm/generated-sdk/health/owned_api.d.ts +2 -2
- package/esm/generated-sdk/health/schemas.d.ts +1 -14
- package/esm/generated-sdk/health/schemas.d.ts.map +1 -1
- package/esm/generated-sdk/health/schemas.js +1 -9
- package/esm/generated-sdk/health/types.d.ts +10 -5
- package/esm/generated-sdk/health/types.d.ts.map +1 -1
- package/esm/generated-sdk/health/types.js +1 -2
- package/esm/generated-sdk/jobs/api.d.ts +29 -109
- package/esm/generated-sdk/jobs/api.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/client.d.ts +21 -33
- package/esm/generated-sdk/jobs/client.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/contract.d.ts +2 -106
- package/esm/generated-sdk/jobs/contract.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/contract.js +268 -1
- package/esm/generated-sdk/jobs/mod.d.ts +1 -1
- package/esm/generated-sdk/jobs/mod.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/owned_api.d.ts +22 -9
- package/esm/generated-sdk/jobs/owned_api.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/owned_api.js +20 -1
- package/esm/generated-sdk/jobs/schemas.d.ts +437 -0
- package/esm/generated-sdk/jobs/schemas.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/schemas.js +211 -0
- package/esm/generated-sdk/jobs/types.d.ts +195 -12
- package/esm/generated-sdk/jobs/types.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/types.js +1 -1
- package/esm/generated-sdk/state/api.d.ts +29 -68
- package/esm/generated-sdk/state/api.d.ts.map +1 -1
- package/esm/generated-sdk/state/client.d.ts +17 -31
- package/esm/generated-sdk/state/client.d.ts.map +1 -1
- package/esm/generated-sdk/state/contract.d.ts +1 -64
- package/esm/generated-sdk/state/contract.d.ts.map +1 -1
- package/esm/generated-sdk/state/mod.d.ts +1 -1
- package/esm/generated-sdk/state/mod.d.ts.map +1 -1
- package/esm/generated-sdk/state/owned_api.d.ts +7 -7
- package/esm/generated-sdk/state/types.d.ts +52 -9
- package/esm/generated-sdk/state/types.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/api.d.ts +33 -45
- package/esm/generated-sdk/trellis-core/api.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/api.js +6 -1
- package/esm/generated-sdk/trellis-core/client.d.ts +31 -20
- package/esm/generated-sdk/trellis-core/client.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/contract.d.ts +2 -41
- package/esm/generated-sdk/trellis-core/contract.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/contract.js +91 -1
- package/esm/generated-sdk/trellis-core/mod.d.ts +1 -1
- package/esm/generated-sdk/trellis-core/mod.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/owned_api.d.ts +4 -4
- package/esm/generated-sdk/trellis-core/schemas.d.ts +113 -0
- package/esm/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/schemas.js +81 -0
- package/esm/generated-sdk/trellis-core/types.d.ts +54 -7
- package/esm/generated-sdk/trellis-core/types.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/types.js +1 -1
- package/esm/health.d.ts +1 -1
- package/esm/health.d.ts.map +1 -1
- package/esm/health.js +1 -1
- package/esm/index.d.ts +4 -4
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -2
- package/esm/jobs.d.ts +69 -3
- package/esm/jobs.d.ts.map +1 -1
- package/esm/jobs.js +92 -3
- package/esm/server/health.d.ts +2 -6
- package/esm/server/health.d.ts.map +1 -1
- package/esm/server/health_schemas.d.ts +0 -8
- package/esm/server/health_schemas.d.ts.map +1 -1
- package/esm/server/health_schemas.js +0 -5
- package/esm/server/internal_jobs/bindings.d.ts +11 -0
- package/esm/server/internal_jobs/bindings.d.ts.map +1 -1
- package/esm/server/internal_jobs/job-manager.d.ts +58 -2
- package/esm/server/internal_jobs/job-manager.d.ts.map +1 -1
- package/esm/server/internal_jobs/job-manager.js +429 -55
- package/esm/server/internal_jobs/key-coordinator.d.ts +269 -0
- package/esm/server/internal_jobs/key-coordinator.d.ts.map +1 -0
- package/esm/server/internal_jobs/key-coordinator.js +677 -0
- package/esm/server/internal_jobs/projection.d.ts.map +1 -1
- package/esm/server/internal_jobs/projection.js +2 -0
- package/esm/server/internal_jobs/runtime-worker.d.ts +5 -1
- package/esm/server/internal_jobs/runtime-worker.d.ts.map +1 -1
- package/esm/server/internal_jobs/runtime-worker.js +14 -2
- package/esm/server/internal_jobs/types.d.ts +5 -5
- package/esm/server/internal_jobs/types.d.ts.map +1 -1
- package/esm/server/internal_jobs/types.js +6 -0
- package/esm/server/runtime.d.ts.map +1 -1
- package/esm/server/service.d.ts +81 -112
- package/esm/server/service.d.ts.map +1 -1
- package/esm/server/service.js +372 -130
- package/esm/server.d.ts +3 -3
- package/esm/server.d.ts.map +1 -1
- package/esm/service/deno.d.ts +1 -1
- package/esm/service/deno.d.ts.map +1 -1
- package/esm/service/drizzle.d.ts +52 -0
- package/esm/service/drizzle.d.ts.map +1 -0
- package/esm/service/drizzle.js +108 -0
- package/esm/service/mod.d.ts +3 -3
- package/esm/service/mod.d.ts.map +1 -1
- package/esm/service/mod.js +2 -2
- package/esm/service/node.d.ts +1 -1
- package/esm/service/node.d.ts.map +1 -1
- package/esm/service/outbox_inbox.d.ts +76 -22
- package/esm/service/outbox_inbox.d.ts.map +1 -1
- package/esm/service/outbox_inbox.js +231 -70
- package/esm/telemetry/metrics.d.ts +55 -0
- package/esm/telemetry/metrics.d.ts.map +1 -1
- package/esm/telemetry/metrics.js +86 -0
- package/esm/telemetry/mod.d.ts +2 -1
- package/esm/telemetry/mod.d.ts.map +1 -1
- package/esm/telemetry/mod.js +1 -1
- package/esm/trellis.d.ts +62 -30
- package/esm/trellis.d.ts.map +1 -1
- package/esm/trellis.js +125 -42
- package/package.json +14 -2
- package/script/auth/mod.d.ts +1 -1
- package/script/auth/mod.d.ts.map +1 -1
- package/script/auth/mod.js +11 -4
- package/script/auth/protocol.d.ts +55 -0
- package/script/auth/protocol.d.ts.map +1 -1
- package/script/browser.d.ts +3 -3
- package/script/browser.d.ts.map +1 -1
- package/script/browser.js +3 -2
- package/script/client_connect.d.ts +12 -3
- package/script/client_connect.d.ts.map +1 -1
- package/script/client_connect.js +111 -6
- package/script/codec.d.ts +7 -6
- package/script/codec.d.ts.map +1 -1
- package/script/codec.js +124 -5
- package/script/contract_support/canonical.d.ts +3 -0
- package/script/contract_support/canonical.d.ts.map +1 -1
- package/script/contract_support/canonical.js +3 -0
- package/script/contract_support/mod.d.ts +125 -10
- package/script/contract_support/mod.d.ts.map +1 -1
- package/script/contract_support/mod.js +165 -5
- package/script/contract_support/protocol.d.ts +92 -7
- package/script/contract_support/protocol.d.ts.map +1 -1
- package/script/contract_support/protocol.js +42 -8
- package/script/contract_support/runtime.d.ts +4 -1
- package/script/contract_support/runtime.d.ts.map +1 -1
- package/script/errors/SchemaValidationError.d.ts +49 -0
- package/script/errors/SchemaValidationError.d.ts.map +1 -0
- package/script/errors/SchemaValidationError.js +74 -0
- package/script/errors/index.d.ts +38 -9
- package/script/errors/index.d.ts.map +1 -1
- package/script/errors/index.js +20 -1
- package/script/generated-sdk/auth/api.d.ts +33 -605
- package/script/generated-sdk/auth/api.d.ts.map +1 -1
- package/script/generated-sdk/auth/api.js +6 -1
- package/script/generated-sdk/auth/client.d.ts +129 -134
- package/script/generated-sdk/auth/client.d.ts.map +1 -1
- package/script/generated-sdk/auth/contract.d.ts +2 -601
- package/script/generated-sdk/auth/contract.d.ts.map +1 -1
- package/script/generated-sdk/auth/contract.js +310 -93
- package/script/generated-sdk/auth/mod.d.ts +1 -1
- package/script/generated-sdk/auth/mod.d.ts.map +1 -1
- package/script/generated-sdk/auth/owned_api.d.ts +88 -86
- package/script/generated-sdk/auth/owned_api.d.ts.map +1 -1
- package/script/generated-sdk/auth/owned_api.js +6 -0
- package/script/generated-sdk/auth/schemas.d.ts +284 -136
- package/script/generated-sdk/auth/schemas.d.ts.map +1 -1
- package/script/generated-sdk/auth/schemas.js +231 -92
- package/script/generated-sdk/auth/types.d.ts +565 -89
- package/script/generated-sdk/auth/types.d.ts.map +1 -1
- package/script/generated-sdk/auth/types.js +1 -1
- package/script/generated-sdk/health/api.d.ts +29 -18
- package/script/generated-sdk/health/api.d.ts.map +1 -1
- package/script/generated-sdk/health/client.d.ts +7 -21
- package/script/generated-sdk/health/client.d.ts.map +1 -1
- package/script/generated-sdk/health/contract.d.ts +2 -15
- package/script/generated-sdk/health/contract.d.ts.map +1 -1
- package/script/generated-sdk/health/contract.js +2 -10
- package/script/generated-sdk/health/mod.d.ts +1 -1
- package/script/generated-sdk/health/mod.d.ts.map +1 -1
- package/script/generated-sdk/health/owned_api.d.ts +2 -2
- package/script/generated-sdk/health/schemas.d.ts +1 -14
- package/script/generated-sdk/health/schemas.d.ts.map +1 -1
- package/script/generated-sdk/health/schemas.js +1 -9
- package/script/generated-sdk/health/types.d.ts +10 -5
- package/script/generated-sdk/health/types.d.ts.map +1 -1
- package/script/generated-sdk/health/types.js +1 -2
- package/script/generated-sdk/jobs/api.d.ts +29 -109
- package/script/generated-sdk/jobs/api.d.ts.map +1 -1
- package/script/generated-sdk/jobs/client.d.ts +21 -33
- package/script/generated-sdk/jobs/client.d.ts.map +1 -1
- package/script/generated-sdk/jobs/contract.d.ts +2 -106
- package/script/generated-sdk/jobs/contract.d.ts.map +1 -1
- package/script/generated-sdk/jobs/contract.js +268 -1
- package/script/generated-sdk/jobs/mod.d.ts +1 -1
- package/script/generated-sdk/jobs/mod.d.ts.map +1 -1
- package/script/generated-sdk/jobs/owned_api.d.ts +22 -9
- package/script/generated-sdk/jobs/owned_api.d.ts.map +1 -1
- package/script/generated-sdk/jobs/owned_api.js +19 -0
- package/script/generated-sdk/jobs/schemas.d.ts +437 -0
- package/script/generated-sdk/jobs/schemas.d.ts.map +1 -1
- package/script/generated-sdk/jobs/schemas.js +212 -1
- package/script/generated-sdk/jobs/types.d.ts +195 -12
- package/script/generated-sdk/jobs/types.d.ts.map +1 -1
- package/script/generated-sdk/jobs/types.js +1 -1
- package/script/generated-sdk/state/api.d.ts +29 -68
- package/script/generated-sdk/state/api.d.ts.map +1 -1
- package/script/generated-sdk/state/client.d.ts +17 -31
- package/script/generated-sdk/state/client.d.ts.map +1 -1
- package/script/generated-sdk/state/contract.d.ts +1 -64
- package/script/generated-sdk/state/contract.d.ts.map +1 -1
- package/script/generated-sdk/state/mod.d.ts +1 -1
- package/script/generated-sdk/state/mod.d.ts.map +1 -1
- package/script/generated-sdk/state/owned_api.d.ts +7 -7
- package/script/generated-sdk/state/types.d.ts +52 -9
- package/script/generated-sdk/state/types.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/api.d.ts +33 -45
- package/script/generated-sdk/trellis-core/api.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/api.js +6 -1
- package/script/generated-sdk/trellis-core/client.d.ts +31 -20
- package/script/generated-sdk/trellis-core/client.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/contract.d.ts +2 -41
- package/script/generated-sdk/trellis-core/contract.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/contract.js +91 -1
- package/script/generated-sdk/trellis-core/mod.d.ts +1 -1
- package/script/generated-sdk/trellis-core/mod.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/owned_api.d.ts +4 -4
- package/script/generated-sdk/trellis-core/schemas.d.ts +113 -0
- package/script/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/schemas.js +81 -0
- package/script/generated-sdk/trellis-core/types.d.ts +54 -7
- package/script/generated-sdk/trellis-core/types.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/types.js +1 -1
- package/script/health.d.ts +1 -1
- package/script/health.d.ts.map +1 -1
- package/script/health.js +1 -2
- package/script/index.d.ts +4 -4
- package/script/index.d.ts.map +1 -1
- package/script/index.js +2 -2
- package/script/jobs.d.ts +69 -3
- package/script/jobs.d.ts.map +1 -1
- package/script/jobs.js +93 -3
- package/script/server/health.d.ts +2 -6
- package/script/server/health.d.ts.map +1 -1
- package/script/server/health_schemas.d.ts +0 -8
- package/script/server/health_schemas.d.ts.map +1 -1
- package/script/server/health_schemas.js +1 -6
- package/script/server/internal_jobs/bindings.d.ts +11 -0
- package/script/server/internal_jobs/bindings.d.ts.map +1 -1
- package/script/server/internal_jobs/job-manager.d.ts +58 -2
- package/script/server/internal_jobs/job-manager.d.ts.map +1 -1
- package/script/server/internal_jobs/job-manager.js +429 -54
- package/script/server/internal_jobs/key-coordinator.d.ts +269 -0
- package/script/server/internal_jobs/key-coordinator.d.ts.map +1 -0
- package/script/server/internal_jobs/key-coordinator.js +690 -0
- package/script/server/internal_jobs/projection.d.ts.map +1 -1
- package/script/server/internal_jobs/projection.js +2 -0
- package/script/server/internal_jobs/runtime-worker.d.ts +5 -1
- package/script/server/internal_jobs/runtime-worker.d.ts.map +1 -1
- package/script/server/internal_jobs/runtime-worker.js +14 -2
- package/script/server/internal_jobs/types.d.ts +5 -5
- package/script/server/internal_jobs/types.d.ts.map +1 -1
- package/script/server/internal_jobs/types.js +6 -0
- package/script/server/runtime.d.ts.map +1 -1
- package/script/server/service.d.ts +81 -112
- package/script/server/service.d.ts.map +1 -1
- package/script/server/service.js +369 -127
- package/script/server.d.ts +3 -3
- package/script/server.d.ts.map +1 -1
- package/script/service/deno.d.ts +1 -1
- package/script/service/deno.d.ts.map +1 -1
- package/script/service/drizzle.d.ts +52 -0
- package/script/service/drizzle.d.ts.map +1 -0
- package/script/service/drizzle.js +113 -0
- package/script/service/mod.d.ts +3 -3
- package/script/service/mod.d.ts.map +1 -1
- package/script/service/mod.js +4 -3
- package/script/service/node.d.ts +1 -1
- package/script/service/node.d.ts.map +1 -1
- package/script/service/outbox_inbox.d.ts +76 -22
- package/script/service/outbox_inbox.d.ts.map +1 -1
- package/script/service/outbox_inbox.js +233 -70
- package/script/telemetry/metrics.d.ts +55 -0
- package/script/telemetry/metrics.d.ts.map +1 -1
- package/script/telemetry/metrics.js +88 -0
- package/script/telemetry/mod.d.ts +2 -1
- package/script/telemetry/mod.d.ts.map +1 -1
- package/script/telemetry/mod.js +3 -1
- package/script/trellis.d.ts +62 -30
- package/script/trellis.d.ts.map +1 -1
- package/script/trellis.js +124 -41
- package/src/auth/mod.ts +7 -0
- package/src/browser.ts +5 -7
- package/src/client_connect.ts +200 -12
- package/src/codec.ts +186 -11
- package/src/contract_support/canonical.ts +3 -0
- package/src/contract_support/mod.ts +380 -9
- package/src/contract_support/protocol.ts +57 -10
- package/src/contract_support/runtime.ts +7 -0
- package/src/errors/SchemaValidationError.ts +67 -0
- package/src/errors/index.ts +28 -0
- package/src/health.ts +0 -1
- package/src/index.ts +7 -8
- package/src/jobs.ts +138 -1
- package/src/sdk/_generated/auth/api.ts +38 -7
- package/src/sdk/_generated/auth/client.ts +168 -530
- package/src/sdk/_generated/auth/contract.ts +310 -93
- package/src/sdk/_generated/auth/mod.ts +0 -1
- package/src/sdk/_generated/auth/owned_api.ts +92 -86
- package/src/sdk/_generated/auth/schemas.ts +231 -92
- package/src/sdk/_generated/auth/types.ts +1069 -273
- package/src/sdk/_generated/core/api.ts +38 -7
- package/src/sdk/_generated/core/client.ts +47 -73
- package/src/sdk/_generated/core/contract.ts +91 -1
- package/src/sdk/_generated/core/mod.ts +0 -1
- package/src/sdk/_generated/core/owned_api.ts +4 -4
- package/src/sdk/_generated/core/schemas.ts +81 -0
- package/src/sdk/_generated/core/types.ts +79 -15
- package/src/sdk/_generated/health/api.ts +29 -5
- package/src/sdk/_generated/health/client.ts +11 -58
- package/src/sdk/_generated/health/contract.ts +2 -10
- package/src/sdk/_generated/health/mod.ts +0 -1
- package/src/sdk/_generated/health/owned_api.ts +2 -2
- package/src/sdk/_generated/health/schemas.ts +1 -9
- package/src/sdk/_generated/health/types.ts +23 -2
- package/src/sdk/_generated/jobs/api.ts +29 -5
- package/src/sdk/_generated/jobs/client.ts +25 -109
- package/src/sdk/_generated/jobs/contract.ts +269 -1
- package/src/sdk/_generated/jobs/mod.ts +0 -1
- package/src/sdk/_generated/jobs/owned_api.ts +30 -9
- package/src/sdk/_generated/jobs/schemas.ts +213 -0
- package/src/sdk/_generated/jobs/types.ts +252 -18
- package/src/sdk/_generated/state/api.ts +29 -5
- package/src/sdk/_generated/state/client.ts +18 -95
- package/src/sdk/_generated/state/mod.ts +0 -1
- package/src/sdk/_generated/state/owned_api.ts +7 -7
- package/src/sdk/_generated/state/types.ts +91 -15
- package/src/server/health.ts +2 -6
- package/src/server/health_schemas.ts +0 -6
- package/src/server/internal_jobs/bindings.ts +11 -0
- package/src/server/internal_jobs/job-manager.ts +553 -24
- package/src/server/internal_jobs/key-coordinator.ts +1080 -0
- package/src/server/internal_jobs/projection.ts +2 -0
- package/src/server/internal_jobs/runtime-worker.ts +17 -1
- package/src/server/internal_jobs/types.ts +6 -0
- package/src/server/runtime.ts +4 -0
- package/src/server/service.ts +645 -625
- package/src/server.ts +14 -7
- package/src/service/deno.ts +0 -5
- package/src/service/drizzle.ts +184 -0
- package/src/service/mod.ts +17 -7
- package/src/service/node.ts +0 -5
- package/src/service/outbox_inbox.ts +354 -88
- package/src/telemetry/metrics.ts +198 -1
- package/src/telemetry/mod.ts +6 -0
- package/src/trellis.ts +286 -105
package/esm/server.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { NatsConnection } from "@nats-io/nats-core";
|
|
2
2
|
import type { TrellisAPI } from "./contracts.js";
|
|
3
|
-
import { AsyncResult } from "@qlever-llc/result";
|
|
3
|
+
import { AsyncResult, BaseError } from "@qlever-llc/result";
|
|
4
4
|
import { TransferError } from "./errors/index.js";
|
|
5
5
|
import { type AnyTrellisAPI, type HandlerFn, type MethodsOf, type OperationInputOf, type OperationOutputOf, type OperationProgressOf, type OperationRegistration, type OperationsOf, type OperationTransferContextOf, type OperationTransferHandle, type RuntimeOperationController, Trellis, type TrellisAuth, type TrellisMode, type TrellisOpts } from "./trellis.js";
|
|
6
6
|
import type { SendTransferGrant } from "./transfer.js";
|
|
@@ -11,7 +11,7 @@ type TrellisServiceRuntimeOpts<TA extends AnyTrellisAPI> = Omit<TrellisOpts<TA>,
|
|
|
11
11
|
};
|
|
12
12
|
export type TrellisServiceRuntimeFor<TA extends AnyTrellisAPI = TrellisAPI> = Omit<TrellisServiceRuntime, "mount" | "operationHandle"> & {
|
|
13
13
|
mount<M extends MethodsOf<TA>>(method: M, fn: HandlerFn<TA, M>): Promise<void>;
|
|
14
|
-
operationHandle<O extends OperationsOf<TA>>(operation: O): OperationRegistration<OperationInputOf<TA, O>, OperationProgressOf<TA, O>, OperationOutputOf<TA, O>, OperationTransferContextOf<TA, O
|
|
14
|
+
operationHandle<O extends OperationsOf<TA>>(operation: O): OperationRegistration<OperationInputOf<TA, O>, OperationProgressOf<TA, O>, OperationOutputOf<TA, O>, OperationTransferContextOf<TA, O>, BaseError>;
|
|
15
15
|
};
|
|
16
16
|
type RuntimeOperationTransferSession = {
|
|
17
17
|
grant: SendTransferGrant;
|
|
@@ -34,7 +34,7 @@ export declare class TrellisServiceRuntime extends Trellis<TrellisAPI, TrellisMo
|
|
|
34
34
|
private constructor();
|
|
35
35
|
mountRuntime(method: string, fn: Parameters<Trellis<TrellisAPI, TrellisMode>["mount"]>[1]): Promise<void>;
|
|
36
36
|
static create<TA extends AnyTrellisAPI>(name: string, nats: NatsConnection, auth: TrellisAuth, opts: TrellisServiceRuntimeOpts<TA>): TrellisServiceRuntimeFor<TA>;
|
|
37
|
-
operationHandle(operation: string): OperationRegistration<unknown, unknown, unknown>;
|
|
37
|
+
operationHandle(operation: string): OperationRegistration<unknown, unknown, unknown, undefined, BaseError>;
|
|
38
38
|
stop(): Promise<void>;
|
|
39
39
|
}
|
|
40
40
|
export {};
|
package/esm/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAO,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EACL,WAAW,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/esm/service/deno.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import "../_dnt.polyfills.js";
|
|
2
|
-
export { type
|
|
2
|
+
export { type HealthCheckHandler, type HealthInfoHandler, type JobQueue, type JobsFacadeOf, type OperationHandler, type OperationRegistration, type RpcHandler, type ServiceContract, type ServiceEventHandler, type Trellis, TrellisService, type TrellisServiceConnectOpts, type TrellisServiceConnectTelemetryOpts, } from "../server/service.js";
|
|
3
3
|
//# sourceMappingURL=deno.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deno.d.ts","sourceRoot":"","sources":["../../src/service/deno.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,
|
|
1
|
+
{"version":3,"file":"deno.d.ts","sourceRoot":"","sources":["../../src/service/deno.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,OAAO,EACZ,cAAc,EACd,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,GACxC,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import "../_dnt.polyfills.js";
|
|
2
|
+
import { type SQL } from "drizzle-orm";
|
|
3
|
+
import type { SqlExecutor, SqlRow } from "./outbox_inbox.js";
|
|
4
|
+
/**
|
|
5
|
+
* Structural Drizzle database or transaction shape accepted by Trellis SQL
|
|
6
|
+
* outbox helpers.
|
|
7
|
+
*/
|
|
8
|
+
export type DrizzleSqlDatabase = {
|
|
9
|
+
/** Runs a SQL statement that returns rows. */
|
|
10
|
+
all(query: SQL): Promise<readonly SqlRow[]>;
|
|
11
|
+
/** Runs a SQL statement that does not return rows. */
|
|
12
|
+
run(query: SQL): Promise<unknown>;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Structural transaction runner used by Drizzle-backed Trellis SQL outbox
|
|
16
|
+
* integrations.
|
|
17
|
+
*/
|
|
18
|
+
export type DrizzleSqlTransactionRunner<TDb extends DrizzleSqlDatabase, TTx extends DrizzleSqlDatabase> = (database: TDb, work: (transaction: TTx) => Promise<unknown>) => Promise<unknown>;
|
|
19
|
+
/** Options for Drizzle-backed Trellis SQL outbox integration. */
|
|
20
|
+
export type DrizzleSqlOutboxOptions<TDb extends DrizzleSqlDatabase, TTx extends DrizzleSqlDatabase> = {
|
|
21
|
+
/** Caller-owned base Drizzle database used for non-transactional outbox work. */
|
|
22
|
+
readonly db: TDb;
|
|
23
|
+
/** Caller-owned transaction runner used to scope service work and enqueues. */
|
|
24
|
+
readonly transaction: DrizzleSqlTransactionRunner<TDb, TTx>;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Adapts a caller-owned Drizzle database or transaction to Trellis'
|
|
28
|
+
* generic `SqlExecutor` interface.
|
|
29
|
+
*
|
|
30
|
+
* This helper is cheap: it creates a small closure object only. It does not open
|
|
31
|
+
* connections, prepare statements, or inspect schema. Service authors can use it
|
|
32
|
+
* when adapting Drizzle databases or transactions to the generic
|
|
33
|
+
* `withSqlOutbox(...)` SQL executor options.
|
|
34
|
+
*/
|
|
35
|
+
export declare function createDrizzleSqlExecutor(database: DrizzleSqlDatabase): SqlExecutor;
|
|
36
|
+
/**
|
|
37
|
+
* Runs work inside a caller-owned Drizzle transaction and provides the
|
|
38
|
+
* transaction plus a Trellis SQL executor bound to that transaction.
|
|
39
|
+
*/
|
|
40
|
+
export declare function runDrizzleSqlTransaction<TDb extends DrizzleSqlDatabase, TTx extends DrizzleSqlDatabase, TResult>(options: DrizzleSqlOutboxOptions<TDb, TTx>, work: (context: {
|
|
41
|
+
tx: TTx;
|
|
42
|
+
executor: SqlExecutor;
|
|
43
|
+
}) => Promise<TResult> | TResult): Promise<TResult>;
|
|
44
|
+
/**
|
|
45
|
+
* Converts a Trellis SQL statement with positional placeholders into a Drizzle
|
|
46
|
+
* `SQL` object with parameters bound in order.
|
|
47
|
+
*
|
|
48
|
+
* Supports SQLite-style `?` placeholders and PostgreSQL-style `$1`, `$2`, ...
|
|
49
|
+
* placeholders. A single statement must not mix both styles.
|
|
50
|
+
*/
|
|
51
|
+
export declare function bindDrizzleSqlStatement(statement: string, params: readonly unknown[]): SQL;
|
|
52
|
+
//# sourceMappingURL=drizzle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drizzle.d.ts","sourceRoot":"","sources":["../../src/service/drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,GAAG,EAAO,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE7D;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,8CAA8C;IAC9C,GAAG,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;IAC5C,sDAAsD;IACtD,GAAG,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,2BAA2B,CACrC,GAAG,SAAS,kBAAkB,EAC9B,GAAG,SAAS,kBAAkB,IAC5B,CACF,QAAQ,EAAE,GAAG,EACb,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,KACzC,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,iEAAiE;AACjE,MAAM,MAAM,uBAAuB,CACjC,GAAG,SAAS,kBAAkB,EAC9B,GAAG,SAAS,kBAAkB,IAC5B;IACF,iFAAiF;IACjF,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC;IACjB,+EAA+E;IAC/E,QAAQ,CAAC,WAAW,EAAE,2BAA2B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;CAC7D,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,kBAAkB,GAC3B,WAAW,CASb;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,GAAG,SAAS,kBAAkB,EAC9B,GAAG,SAAS,kBAAkB,EAC9B,OAAO,EAEP,OAAO,EAAE,uBAAuB,CAAC,GAAG,EAAE,GAAG,CAAC,EAC1C,IAAI,EAAE,CACJ,OAAO,EAAE;IAAE,EAAE,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,WAAW,CAAA;CAAE,KACxC,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,GAC9B,OAAO,CAAC,OAAO,CAAC,CAgBlB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,OAAO,EAAE,GACzB,GAAG,CAyCL"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import "../_dnt.polyfills.js";
|
|
2
|
+
import { sql } from "drizzle-orm";
|
|
3
|
+
/**
|
|
4
|
+
* Adapts a caller-owned Drizzle database or transaction to Trellis'
|
|
5
|
+
* generic `SqlExecutor` interface.
|
|
6
|
+
*
|
|
7
|
+
* This helper is cheap: it creates a small closure object only. It does not open
|
|
8
|
+
* connections, prepare statements, or inspect schema. Service authors can use it
|
|
9
|
+
* when adapting Drizzle databases or transactions to the generic
|
|
10
|
+
* `withSqlOutbox(...)` SQL executor options.
|
|
11
|
+
*/
|
|
12
|
+
export function createDrizzleSqlExecutor(database) {
|
|
13
|
+
return {
|
|
14
|
+
query(statement, params) {
|
|
15
|
+
return database.all(bindDrizzleSqlStatement(statement, params));
|
|
16
|
+
},
|
|
17
|
+
async execute(statement, params) {
|
|
18
|
+
await database.run(bindDrizzleSqlStatement(statement, params));
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Runs work inside a caller-owned Drizzle transaction and provides the
|
|
24
|
+
* transaction plus a Trellis SQL executor bound to that transaction.
|
|
25
|
+
*/
|
|
26
|
+
export async function runDrizzleSqlTransaction(options, work) {
|
|
27
|
+
let result;
|
|
28
|
+
await options.transaction(options.db, async (tx) => {
|
|
29
|
+
const value = await work({
|
|
30
|
+
tx,
|
|
31
|
+
executor: createDrizzleSqlExecutor(tx),
|
|
32
|
+
});
|
|
33
|
+
result = { value };
|
|
34
|
+
return value;
|
|
35
|
+
});
|
|
36
|
+
if (result === undefined) {
|
|
37
|
+
throw new Error("Drizzle SQL transaction runner did not invoke work");
|
|
38
|
+
}
|
|
39
|
+
return result.value;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Converts a Trellis SQL statement with positional placeholders into a Drizzle
|
|
43
|
+
* `SQL` object with parameters bound in order.
|
|
44
|
+
*
|
|
45
|
+
* Supports SQLite-style `?` placeholders and PostgreSQL-style `$1`, `$2`, ...
|
|
46
|
+
* placeholders. A single statement must not mix both styles.
|
|
47
|
+
*/
|
|
48
|
+
export function bindDrizzleSqlStatement(statement, params) {
|
|
49
|
+
const matches = [...statement.matchAll(/\?|\$(\d+)/g)];
|
|
50
|
+
const hasQuestionPlaceholders = matches.some((match) => match[0] === "?");
|
|
51
|
+
const hasNumberedPlaceholders = matches.some((match) => match[1] !== undefined);
|
|
52
|
+
if (hasQuestionPlaceholders && hasNumberedPlaceholders) {
|
|
53
|
+
throw new Error("SQL statement cannot mix ? and $n placeholders for Drizzle binding");
|
|
54
|
+
}
|
|
55
|
+
if (hasQuestionPlaceholders) {
|
|
56
|
+
validateQuestionPlaceholders(matches.length, params.length);
|
|
57
|
+
}
|
|
58
|
+
else if (hasNumberedPlaceholders) {
|
|
59
|
+
validateNumberedPlaceholders(matches, params.length);
|
|
60
|
+
}
|
|
61
|
+
else if (params.length !== 0) {
|
|
62
|
+
throw new Error(`SQL statement has no placeholders but received ${params.length} parameters`);
|
|
63
|
+
}
|
|
64
|
+
const chunks = [];
|
|
65
|
+
let cursor = 0;
|
|
66
|
+
let nextQuestionParam = 0;
|
|
67
|
+
for (const match of matches) {
|
|
68
|
+
const matchIndex = match.index;
|
|
69
|
+
chunks.push(sql.raw(statement.slice(cursor, matchIndex)));
|
|
70
|
+
if (match[0] === "?") {
|
|
71
|
+
chunks.push(sql `${params[nextQuestionParam]}`);
|
|
72
|
+
nextQuestionParam += 1;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
const index = Number(match[1]) - 1;
|
|
76
|
+
chunks.push(sql `${params[index]}`);
|
|
77
|
+
}
|
|
78
|
+
cursor = matchIndex + match[0].length;
|
|
79
|
+
}
|
|
80
|
+
chunks.push(sql.raw(statement.slice(cursor)));
|
|
81
|
+
return sql.join(chunks);
|
|
82
|
+
}
|
|
83
|
+
function validateQuestionPlaceholders(placeholders, paramCount) {
|
|
84
|
+
if (placeholders !== paramCount) {
|
|
85
|
+
throw new Error(`SQL statement expected ${placeholders} parameters for ? placeholders, received ${paramCount}`);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
function validateNumberedPlaceholders(matches, paramCount) {
|
|
89
|
+
const referenced = new Set();
|
|
90
|
+
for (const match of matches) {
|
|
91
|
+
if (match[1] === undefined)
|
|
92
|
+
continue;
|
|
93
|
+
const index = Number(match[1]);
|
|
94
|
+
if (index < 1) {
|
|
95
|
+
throw new Error("PostgreSQL SQL placeholder indexes must start at $1");
|
|
96
|
+
}
|
|
97
|
+
referenced.add(index);
|
|
98
|
+
}
|
|
99
|
+
const maxIndex = Math.max(...referenced);
|
|
100
|
+
if (maxIndex !== paramCount) {
|
|
101
|
+
throw new Error(`SQL statement expected ${maxIndex} parameters for $n placeholders, received ${paramCount}`);
|
|
102
|
+
}
|
|
103
|
+
for (let index = 1; index <= maxIndex; index += 1) {
|
|
104
|
+
if (!referenced.has(index)) {
|
|
105
|
+
throw new Error(`SQL statement is missing PostgreSQL placeholder $${index}`);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
package/esm/service/mod.d.ts
CHANGED
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
import "../_dnt.polyfills.js";
|
|
10
10
|
export { createHealthHeartbeat, type HealthCheckFn, type HealthCheckResult, type HealthHeartbeat, type HealthResponse, runAllHealthChecks, runAllServiceHealthChecks, runHealthCheck, runServiceHealthCheck, ServiceHealth, type ServiceHealthCheck, type ServiceHealthCheckFn, type ServiceHealthInfo, type ServiceHealthInfoFn, } from "../server/health.js";
|
|
11
11
|
export { mountStandardHealthRpc } from "../server/health_rpc.js";
|
|
12
|
-
export { HealthCheckResultSchema,
|
|
13
|
-
export { type
|
|
14
|
-
export { createPostgresOutboxSchema, createSqliteOutboxSchema, createSqlOutboxAdapter, defaultSqlOutboxTables, dispatchOutbox, type InboxRepository, type KvOutboxRecord, KvOutboxRecordSchema, MemoryInboxRepository, MemoryOutboxRepository, NatsKvInboxRepository, NatsKvOutboxRepository, OutboxDispatcher, type OutboxDispatcherOptions, type OutboxDispatchResult, type OutboxKvEntry, type OutboxKvStore, type OutboxMessage, type OutboxMessageState,
|
|
12
|
+
export { HealthCheckResultSchema, HealthHeartbeatSchema, HealthHeartbeatServiceSchema, HealthInfoSchema, HealthResponseSchema, HealthRpcSchema, } from "../server/health_schemas.js";
|
|
13
|
+
export { type HealthCheckHandler, type HealthInfoHandler, type JobQueue, type JobsFacadeOf, type OperationHandler, type OperationRegistration, type RpcHandler, type ServiceContract, type ServiceEventHandler, type SqlOutbox, type SqlOutboxEventEnqueueFacade, type SqlOutboxJobEnqueueFacade, type SqlOutboxJobSubmission, type SqlOutboxTransactionContext, type SqlOutboxTransactionRunner, StoreHandle, type Trellis, TrellisService, type TrellisServiceConnectOpts, type TrellisServiceConnectTelemetryOpts, type TrellisServiceSqlOutboxCommonOptions, type TrellisServiceSqlOutboxExecutorOptions, type TrellisServiceSqlOutboxOptions, } from "../server/service.js";
|
|
14
|
+
export { createPostgresOutboxSchema, createSqliteOutboxSchema, createSqlOutboxAdapter, defaultSqlOutboxTables, dispatchOutbox, getSqlOutboxMigrations, type InboxRepository, type KvOutboxRecord, KvOutboxRecordSchema, MemoryInboxRepository, MemoryOutboxRepository, NatsKvInboxRepository, NatsKvOutboxRepository, OutboxDispatcher, type OutboxDispatcherOptions, type OutboxDispatchResult, type OutboxDispatchRuntime, type OutboxKvEntry, type OutboxKvStore, type OutboxMessage, type OutboxMessageState, outboxMessageToPreparedEvent, type OutboxRecordKind, type OutboxRepository, type PreparedOutboxRecord, preparedTrellisEventToOutboxRecord, type SqlDialect, type SqlExecutor, SqlInboxRepository, type SqlOutboxAdapter, type SqlOutboxMigration, type SqlOutboxMigrationOptions, SqlOutboxRepository, type SqlOutboxTables, type SqlRow, } from "./outbox_inbox.js";
|
|
15
15
|
export { createEventContext, type EventContext, type EventHandler, type GroupedSubscription, isGroupedSubscription, type MultiEventSubscription, type MultiSubscribeOpts, type OrderingGroup, type SingleSubscription, type SubscribeOpts, } from "../server/subscription.js";
|
|
16
16
|
//# sourceMappingURL=mod.d.ts.map
|
package/esm/service/mod.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/service/mod.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,sBAAsB,CAAC;AAG9B,OAAO,EACL,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,uBAAuB,EACvB,
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/service/mod.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,sBAAsB,CAAC;AAG9B,OAAO,EACL,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,SAAS,EACd,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,WAAW,EACX,KAAK,OAAO,EACZ,cAAc,EACd,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,EACvC,KAAK,oCAAoC,EACzC,KAAK,sCAAsC,EAC3C,KAAK,8BAA8B,GACpC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,cAAc,EACd,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,4BAA4B,EAC5B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,kCAAkC,EAClC,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,MAAM,GACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,qBAAqB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,aAAa,GACnB,MAAM,2BAA2B,CAAC"}
|
package/esm/service/mod.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import "../_dnt.polyfills.js";
|
|
10
10
|
export { createHealthHeartbeat, runAllHealthChecks, runAllServiceHealthChecks, runHealthCheck, runServiceHealthCheck, ServiceHealth, } from "../server/health.js";
|
|
11
11
|
export { mountStandardHealthRpc } from "../server/health_rpc.js";
|
|
12
|
-
export { HealthCheckResultSchema,
|
|
12
|
+
export { HealthCheckResultSchema, HealthHeartbeatSchema, HealthHeartbeatServiceSchema, HealthInfoSchema, HealthResponseSchema, HealthRpcSchema, } from "../server/health_schemas.js";
|
|
13
13
|
export { StoreHandle, TrellisService, } from "../server/service.js";
|
|
14
|
-
export { createPostgresOutboxSchema, createSqliteOutboxSchema, createSqlOutboxAdapter, defaultSqlOutboxTables, dispatchOutbox, KvOutboxRecordSchema, MemoryInboxRepository, MemoryOutboxRepository, NatsKvInboxRepository, NatsKvOutboxRepository, OutboxDispatcher,
|
|
14
|
+
export { createPostgresOutboxSchema, createSqliteOutboxSchema, createSqlOutboxAdapter, defaultSqlOutboxTables, dispatchOutbox, getSqlOutboxMigrations, KvOutboxRecordSchema, MemoryInboxRepository, MemoryOutboxRepository, NatsKvInboxRepository, NatsKvOutboxRepository, OutboxDispatcher, outboxMessageToPreparedEvent, preparedTrellisEventToOutboxRecord, SqlInboxRepository, SqlOutboxRepository, } from "./outbox_inbox.js";
|
|
15
15
|
export { createEventContext, isGroupedSubscription, } from "../server/subscription.js";
|
package/esm/service/node.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import "../_dnt.polyfills.js";
|
|
2
|
-
export { type
|
|
2
|
+
export { type HealthCheckHandler, type HealthInfoHandler, type JobQueue, type JobsFacadeOf, type OperationHandler, type OperationRegistration, type RpcHandler, type ServiceContract, type ServiceEventHandler, type Trellis, TrellisService, type TrellisServiceConnectOpts, type TrellisServiceConnectTelemetryOpts, } from "../server/service.js";
|
|
3
3
|
//# sourceMappingURL=node.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/service/node.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/service/node.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,OAAO,EACZ,cAAc,EACd,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,GACxC,MAAM,sBAAsB,CAAC"}
|
|
@@ -1,11 +1,21 @@
|
|
|
1
|
-
import { type AsyncResult, type BaseError } from "@qlever-llc/result";
|
|
1
|
+
import { type AsyncResult, type BaseError, UnexpectedError } from "@qlever-llc/result";
|
|
2
2
|
import { type StaticDecode, Type } from "typebox";
|
|
3
|
-
import type { PreparedTrellisEvent
|
|
3
|
+
import type { PreparedTrellisEvent } from "../trellis.js";
|
|
4
4
|
import { TypedKV } from "../kv.js";
|
|
5
5
|
export type OutboxMessageState = "pending" | "dispatched" | "failed";
|
|
6
|
+
export type OutboxRecordKind = "event.publish" | "job.create" | "job.submit";
|
|
7
|
+
export type PreparedOutboxRecord = {
|
|
8
|
+
readonly id: string;
|
|
9
|
+
readonly kind: OutboxRecordKind;
|
|
10
|
+
readonly name: string;
|
|
11
|
+
readonly subject: string;
|
|
12
|
+
readonly payload: string;
|
|
13
|
+
readonly headers: Readonly<Record<string, string>>;
|
|
14
|
+
};
|
|
6
15
|
export type OutboxMessage = {
|
|
7
16
|
id: string;
|
|
8
|
-
|
|
17
|
+
kind: OutboxRecordKind;
|
|
18
|
+
name: string;
|
|
9
19
|
subject: string;
|
|
10
20
|
payload: string;
|
|
11
21
|
headers: Record<string, string>;
|
|
@@ -15,6 +25,7 @@ export type OutboxMessage = {
|
|
|
15
25
|
updatedAt: string;
|
|
16
26
|
nextAttemptAt?: string;
|
|
17
27
|
lastError?: string;
|
|
28
|
+
outcome?: unknown;
|
|
18
29
|
};
|
|
19
30
|
export type OutboxDispatchResult = {
|
|
20
31
|
dispatched: number;
|
|
@@ -33,10 +44,16 @@ export type OutboxDispatcherOptions = {
|
|
|
33
44
|
/** Receives repository or publish errors raised by background dispatch. */
|
|
34
45
|
onError?: (error: unknown) => void;
|
|
35
46
|
};
|
|
47
|
+
export type OutboxDispatchRuntime = {
|
|
48
|
+
/** Dispatches an event-publish outbox record. Returns Void on success, err on transient failure. */
|
|
49
|
+
publishPreparedEvent(event: PreparedTrellisEvent): AsyncResult<void, UnexpectedError>;
|
|
50
|
+
/** Dispatches a job create/submit outbox record. Stub until Phase 3. */
|
|
51
|
+
dispatchJobSubmission?(message: OutboxMessage): AsyncResult<void, BaseError>;
|
|
52
|
+
};
|
|
36
53
|
export type OutboxRepository = {
|
|
37
|
-
enqueue(
|
|
54
|
+
enqueue(record: PreparedOutboxRecord): Promise<OutboxMessage>;
|
|
38
55
|
claimDue(limit: number, now: Date): Promise<OutboxMessage[]>;
|
|
39
|
-
markDispatched(id: string, now: Date): Promise<void>;
|
|
56
|
+
markDispatched(id: string, now: Date, outcome?: unknown): Promise<void>;
|
|
40
57
|
markFailed(id: string, failure: {
|
|
41
58
|
error: string;
|
|
42
59
|
nextAttemptAt: Date;
|
|
@@ -46,21 +63,48 @@ export type OutboxRepository = {
|
|
|
46
63
|
export type InboxRepository = {
|
|
47
64
|
record(messageId: string, now?: Date): Promise<boolean>;
|
|
48
65
|
};
|
|
66
|
+
/** SQL dialects supported by Trellis SQL outbox helpers. */
|
|
49
67
|
export type SqlDialect = "sqlite" | "postgres";
|
|
68
|
+
/** Table names used by Trellis SQL outbox and inbox helper tables. */
|
|
50
69
|
export type SqlOutboxTables = {
|
|
51
70
|
outbox: string;
|
|
52
71
|
inbox: string;
|
|
53
72
|
};
|
|
73
|
+
/** Minimal SQL execution surface used by Trellis SQL outbox repositories. */
|
|
54
74
|
export type SqlExecutor = {
|
|
55
75
|
query(sql: string, params: readonly unknown[]): Promise<readonly SqlRow[]>;
|
|
56
76
|
execute(sql: string, params: readonly unknown[]): Promise<void>;
|
|
57
77
|
};
|
|
78
|
+
/** Row shape returned by a {@link SqlExecutor}. */
|
|
58
79
|
export type SqlRow = Record<string, unknown>;
|
|
80
|
+
/** SQL outbox adapter bundle over caller-owned SQL execution. */
|
|
59
81
|
export type SqlOutboxAdapter = {
|
|
60
82
|
outbox: SqlOutboxRepository;
|
|
61
83
|
inbox: SqlInboxRepository;
|
|
62
84
|
ddl: readonly string[];
|
|
63
85
|
};
|
|
86
|
+
/** Versioned Trellis-owned SQL outbox/inbox migration artifact. */
|
|
87
|
+
export type SqlOutboxMigration = {
|
|
88
|
+
/** Stable migration identifier for the dialect and schema version. */
|
|
89
|
+
readonly id: string;
|
|
90
|
+
/** Monotonic Trellis helper-table schema version. */
|
|
91
|
+
readonly version: number;
|
|
92
|
+
/** SQL dialect targeted by this migration artifact. */
|
|
93
|
+
readonly dialect: SqlDialect;
|
|
94
|
+
/** SQL statements that apply this migration. */
|
|
95
|
+
readonly up: readonly string[];
|
|
96
|
+
/** SQL statements that revert this migration when supported by the runner. */
|
|
97
|
+
readonly down?: readonly string[];
|
|
98
|
+
/** Deterministic checksum over the canonical migration SQL. */
|
|
99
|
+
readonly checksum: string;
|
|
100
|
+
};
|
|
101
|
+
/** Options for generating Trellis SQL outbox/inbox migration artifacts. */
|
|
102
|
+
export type SqlOutboxMigrationOptions = {
|
|
103
|
+
/** SQL dialect targeted by the generated migration artifacts. */
|
|
104
|
+
readonly dialect: SqlDialect;
|
|
105
|
+
/** Optional helper-table names; omitted names use Trellis defaults. */
|
|
106
|
+
readonly tables?: Partial<SqlOutboxTables>;
|
|
107
|
+
};
|
|
64
108
|
type KvAsyncResult<T> = Pick<AsyncResult<T, BaseError>, "take">;
|
|
65
109
|
export type OutboxKvEntry = {
|
|
66
110
|
readonly key: string;
|
|
@@ -73,16 +117,22 @@ export type OutboxKvStore = {
|
|
|
73
117
|
get(key: string): KvAsyncResult<OutboxKvEntry>;
|
|
74
118
|
keys(filter?: string | string[]): KvAsyncResult<AsyncIterable<string>>;
|
|
75
119
|
};
|
|
120
|
+
/** Default Trellis helper-table names for SQL outbox and inbox storage. */
|
|
76
121
|
export declare const defaultSqlOutboxTables: SqlOutboxTables;
|
|
77
122
|
/**
|
|
78
|
-
* Creates SQL outbox/inbox repositories plus
|
|
123
|
+
* Creates SQL outbox/inbox repositories plus current helper-table DDL.
|
|
79
124
|
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
* equivalent Drizzle table definition using these table and column names, in
|
|
83
|
-
* their own Drizzle-managed migration flow.
|
|
125
|
+
* Use {@link getSqlOutboxMigrations} when services need versioned Trellis-owned
|
|
126
|
+
* migration artifacts for their normal database migration tooling.
|
|
84
127
|
*/
|
|
85
128
|
export declare function createSqlOutboxAdapter(executor: SqlExecutor, dialect: SqlDialect, tables?: SqlOutboxTables): SqlOutboxAdapter;
|
|
129
|
+
/**
|
|
130
|
+
* Returns Trellis-owned SQL outbox/inbox migration artifacts for a dialect.
|
|
131
|
+
*
|
|
132
|
+
* Trellis generates the helper-table SQL, but services remain responsible for
|
|
133
|
+
* running these artifacts through their normal database migration tooling.
|
|
134
|
+
*/
|
|
135
|
+
export declare function getSqlOutboxMigrations(options: SqlOutboxMigrationOptions): readonly SqlOutboxMigration[];
|
|
86
136
|
/** Returns SQLite DDL for Trellis outbox and inbox tables. */
|
|
87
137
|
export declare function createSqliteOutboxSchema(tables?: SqlOutboxTables): readonly string[];
|
|
88
138
|
/** Returns Postgres DDL for Trellis outbox and inbox tables. */
|
|
@@ -90,9 +140,9 @@ export declare function createPostgresOutboxSchema(tables?: SqlOutboxTables): re
|
|
|
90
140
|
/** In-memory outbox repository intended for tests and local process adapters. */
|
|
91
141
|
export declare class MemoryOutboxRepository implements OutboxRepository {
|
|
92
142
|
#private;
|
|
93
|
-
enqueue(
|
|
143
|
+
enqueue(record: PreparedOutboxRecord): Promise<OutboxMessage>;
|
|
94
144
|
claimDue(limit: number, now: Date): Promise<OutboxMessage[]>;
|
|
95
|
-
markDispatched(id: string, now: Date): Promise<void>;
|
|
145
|
+
markDispatched(id: string, now: Date, outcome?: unknown): Promise<void>;
|
|
96
146
|
markFailed(id: string, failure: {
|
|
97
147
|
error: string;
|
|
98
148
|
nextAttemptAt: Date;
|
|
@@ -111,9 +161,9 @@ export declare class SqlOutboxRepository implements OutboxRepository {
|
|
|
111
161
|
readonly dialect: SqlDialect;
|
|
112
162
|
readonly tables: SqlOutboxTables;
|
|
113
163
|
constructor(executor: SqlExecutor, dialect: SqlDialect, tables?: SqlOutboxTables);
|
|
114
|
-
enqueue(
|
|
164
|
+
enqueue(record: PreparedOutboxRecord): Promise<OutboxMessage>;
|
|
115
165
|
claimDue(limit: number, now: Date): Promise<OutboxMessage[]>;
|
|
116
|
-
markDispatched(id: string, now: Date): Promise<void>;
|
|
166
|
+
markDispatched(id: string, now: Date, outcome?: unknown): Promise<void>;
|
|
117
167
|
markFailed(id: string, failure: {
|
|
118
168
|
error: string;
|
|
119
169
|
nextAttemptAt: Date;
|
|
@@ -134,7 +184,8 @@ declare const KvInboxRecordSchema: Type.TObject<{
|
|
|
134
184
|
}>;
|
|
135
185
|
export declare const KvOutboxRecordSchema: Type.TObject<{
|
|
136
186
|
id: Type.TString;
|
|
137
|
-
|
|
187
|
+
kind: Type.TString;
|
|
188
|
+
name: Type.TString;
|
|
138
189
|
subject: Type.TString;
|
|
139
190
|
payload: Type.TString;
|
|
140
191
|
headers: Type.TRecord<"^.*$", Type.TString>;
|
|
@@ -144,15 +195,16 @@ export declare const KvOutboxRecordSchema: Type.TObject<{
|
|
|
144
195
|
updatedAt: Type.TString;
|
|
145
196
|
nextAttemptAt: Type.TOptional<Type.TString>;
|
|
146
197
|
lastError: Type.TOptional<Type.TString>;
|
|
198
|
+
outcome: Type.TOptional<Type.TString>;
|
|
147
199
|
}>;
|
|
148
200
|
export type KvOutboxRecord = StaticDecode<typeof KvOutboxRecordSchema>;
|
|
149
201
|
/** Durable NATS KV outbox repository for services without SQL state. */
|
|
150
202
|
export declare class NatsKvOutboxRepository implements OutboxRepository {
|
|
151
203
|
readonly kv: OutboxKvStore;
|
|
152
204
|
constructor(kv: OutboxKvStore);
|
|
153
|
-
enqueue(
|
|
205
|
+
enqueue(rec: PreparedOutboxRecord): Promise<OutboxMessage>;
|
|
154
206
|
claimDue(limit: number, now: Date): Promise<OutboxMessage[]>;
|
|
155
|
-
markDispatched(id: string, now: Date): Promise<void>;
|
|
207
|
+
markDispatched(id: string, now: Date, outcome?: unknown): Promise<void>;
|
|
156
208
|
markFailed(id: string, failure: {
|
|
157
209
|
error: string;
|
|
158
210
|
nextAttemptAt: Date;
|
|
@@ -175,19 +227,21 @@ export declare class NatsKvInboxRepository implements InboxRepository {
|
|
|
175
227
|
export declare class OutboxDispatcher {
|
|
176
228
|
#private;
|
|
177
229
|
/** Creates a dispatcher over an existing outbox repository and runtime. */
|
|
178
|
-
constructor(repository: OutboxRepository, runtime:
|
|
230
|
+
constructor(repository: OutboxRepository, runtime: OutboxDispatchRuntime, options?: OutboxDispatcherOptions);
|
|
179
231
|
/** Signals that outbox work may be available and schedules a drain soon. */
|
|
180
232
|
notify(): void;
|
|
181
233
|
/** Cancels pending wakeups and prevents future dispatch work. */
|
|
182
234
|
stop(): void;
|
|
183
235
|
}
|
|
184
|
-
/** Dispatches due outbox messages through a
|
|
185
|
-
export declare function dispatchOutbox(repository: OutboxRepository, runtime:
|
|
236
|
+
/** Dispatches due outbox messages through a dispatch runtime. */
|
|
237
|
+
export declare function dispatchOutbox(repository: OutboxRepository, runtime: OutboxDispatchRuntime, options?: {
|
|
186
238
|
limit?: number;
|
|
187
239
|
now?: Date;
|
|
188
240
|
retryDelayMs?: number;
|
|
189
241
|
}): Promise<OutboxDispatchResult>;
|
|
190
|
-
/** Rehydrates a persisted outbox row into a prepared event. */
|
|
191
|
-
export declare function
|
|
242
|
+
/** Rehydrates a persisted outbox event row into a prepared event. */
|
|
243
|
+
export declare function outboxMessageToPreparedEvent(message: OutboxMessage): PreparedTrellisEvent;
|
|
244
|
+
/** Adapts a prepared Trellis event into a generic outbox record. */
|
|
245
|
+
export declare function preparedTrellisEventToOutboxRecord(event: PreparedTrellisEvent): PreparedOutboxRecord;
|
|
192
246
|
export {};
|
|
193
247
|
//# sourceMappingURL=outbox_inbox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outbox_inbox.d.ts","sourceRoot":"","sources":["../../src/service/outbox_inbox.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"outbox_inbox.d.ts","sourceRoot":"","sources":["../../src/service/outbox_inbox.ts"],"names":[],"mappings":"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"}
|