@qlever-llc/trellis 0.8.3 → 0.9.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/bin/trellis-generate.js +132 -0
- package/esm/auth/browser/login.d.ts.map +1 -1
- package/esm/auth/browser/login.js +46 -3
- package/esm/auth/browser/portal.d.ts.map +1 -1
- package/esm/auth/browser/portal.js +5 -1
- package/esm/auth/browser/session.d.ts +18 -7
- package/esm/auth/browser/session.d.ts.map +1 -1
- package/esm/auth/browser/session.js +47 -11
- package/esm/auth/browser/storage.d.ts +6 -1
- package/esm/auth/browser/storage.d.ts.map +1 -1
- package/esm/auth/browser/storage.js +15 -3
- package/esm/auth/browser.d.ts +2 -2
- package/esm/auth/browser.d.ts.map +1 -1
- package/esm/auth/browser.js +1 -1
- package/esm/auth/device_activation.d.ts +36 -33
- package/esm/auth/device_activation.d.ts.map +1 -1
- package/esm/auth/device_activation.js +26 -22
- package/esm/auth/mod.d.ts +4 -4
- package/esm/auth/mod.d.ts.map +1 -1
- package/esm/auth/mod.js +2 -2
- package/esm/auth/proof.d.ts +3 -1
- package/esm/auth/proof.d.ts.map +1 -1
- package/esm/auth/proof.js +21 -15
- package/esm/auth/protocol.d.ts +2457 -941
- package/esm/auth/protocol.d.ts.map +1 -1
- package/esm/auth/protocol.js +747 -375
- package/esm/auth/schemas.d.ts +25 -4
- package/esm/auth/schemas.d.ts.map +1 -1
- package/esm/auth/schemas.js +14 -4
- package/esm/auth/session_auth.d.ts +1 -1
- package/esm/auth/session_auth.d.ts.map +1 -1
- package/esm/auth/session_auth.js +7 -1
- package/esm/client_connect.d.ts +2 -0
- package/esm/client_connect.d.ts.map +1 -1
- package/esm/client_connect.js +76 -15
- package/esm/contract.d.ts +3 -0
- package/esm/contract.d.ts.map +1 -1
- package/esm/contract_support/mod.d.ts +422 -43
- package/esm/contract_support/mod.d.ts.map +1 -1
- package/esm/contract_support/mod.js +734 -33
- package/esm/contract_support/protocol.d.ts +20 -5
- package/esm/contract_support/protocol.d.ts.map +1 -1
- package/esm/contract_support/protocol.js +18 -10
- package/esm/contract_support/runtime.d.ts +11 -0
- package/esm/contract_support/runtime.d.ts.map +1 -1
- package/esm/contract_support/schema_pointers.d.ts.map +1 -1
- package/esm/contract_support/schema_pointers.js +32 -14
- package/esm/device.d.ts +2 -0
- package/esm/device.d.ts.map +1 -1
- package/esm/device.js +3 -0
- package/esm/errors/AuthError.d.ts +1 -1
- package/esm/errors/AuthError.d.ts.map +1 -1
- package/esm/errors/AuthError.js +5 -1
- package/esm/errors/index.d.ts +4 -4
- package/esm/generated-sdk/auth/api.d.ts +27 -9
- package/esm/generated-sdk/auth/api.d.ts.map +1 -1
- package/esm/generated-sdk/auth/api.js +16 -590
- package/esm/generated-sdk/auth/client.d.ts +91 -85
- package/esm/generated-sdk/auth/client.d.ts.map +1 -1
- package/esm/generated-sdk/auth/contract.d.ts +1 -1
- package/esm/generated-sdk/auth/contract.d.ts.map +1 -1
- package/esm/generated-sdk/auth/contract.js +4 -2
- package/esm/generated-sdk/auth/mod.d.ts +1 -0
- package/esm/generated-sdk/auth/mod.d.ts.map +1 -1
- package/esm/generated-sdk/auth/owned_api.d.ts +3 -0
- package/esm/generated-sdk/auth/owned_api.d.ts.map +1 -0
- package/esm/generated-sdk/auth/owned_api.js +594 -0
- package/esm/generated-sdk/auth/schemas.d.ts +9959 -5160
- package/esm/generated-sdk/auth/schemas.d.ts.map +1 -1
- package/esm/generated-sdk/auth/schemas.js +136 -137
- package/esm/generated-sdk/auth/types.d.ts +2418 -1557
- 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 +24 -9
- package/esm/generated-sdk/health/api.d.ts.map +1 -1
- package/esm/generated-sdk/health/api.js +12 -20
- package/esm/generated-sdk/health/client.d.ts +2 -1
- package/esm/generated-sdk/health/client.d.ts.map +1 -1
- package/esm/generated-sdk/health/contract.d.ts.map +1 -1
- package/esm/generated-sdk/health/contract.js +2 -0
- package/esm/generated-sdk/health/owned_api.d.ts +3 -0
- package/esm/generated-sdk/health/owned_api.d.ts.map +1 -0
- package/esm/generated-sdk/health/owned_api.js +16 -0
- package/esm/generated-sdk/health/types.d.ts +2 -0
- package/esm/generated-sdk/health/types.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/api.d.ts +33 -9
- package/esm/generated-sdk/jobs/api.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/api.js +22 -87
- package/esm/generated-sdk/jobs/client.d.ts +9 -2
- package/esm/generated-sdk/jobs/client.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/contract.d.ts +1 -1
- package/esm/generated-sdk/jobs/contract.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/contract.js +4 -2
- package/esm/generated-sdk/jobs/owned_api.d.ts +3 -0
- package/esm/generated-sdk/jobs/owned_api.d.ts.map +1 -0
- package/esm/generated-sdk/jobs/owned_api.js +118 -0
- package/esm/generated-sdk/jobs/schemas.d.ts +336 -123
- package/esm/generated-sdk/jobs/schemas.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/schemas.js +17 -15
- package/esm/generated-sdk/jobs/types.d.ts +144 -34
- package/esm/generated-sdk/jobs/types.d.ts.map +1 -1
- package/esm/generated-sdk/jobs/types.js +36 -1
- package/esm/generated-sdk/state/api.d.ts +27 -9
- package/esm/generated-sdk/state/api.d.ts.map +1 -1
- package/esm/generated-sdk/state/api.js +16 -71
- package/esm/generated-sdk/state/client.d.ts +4 -2
- package/esm/generated-sdk/state/client.d.ts.map +1 -1
- package/esm/generated-sdk/state/contract.d.ts +1 -1
- package/esm/generated-sdk/state/contract.d.ts.map +1 -1
- package/esm/generated-sdk/state/contract.js +4 -2
- package/esm/generated-sdk/state/owned_api.d.ts +3 -0
- package/esm/generated-sdk/state/owned_api.d.ts.map +1 -0
- package/esm/generated-sdk/state/owned_api.js +66 -0
- package/esm/generated-sdk/state/schemas.d.ts +264 -284
- package/esm/generated-sdk/state/schemas.d.ts.map +1 -1
- package/esm/generated-sdk/state/schemas.js +6 -6
- package/esm/generated-sdk/state/types.d.ts +24 -23
- package/esm/generated-sdk/state/types.d.ts.map +1 -1
- package/esm/generated-sdk/state/types.js +1 -1
- package/esm/generated-sdk/trellis-core/api.d.ts +27 -9
- package/esm/generated-sdk/trellis-core/api.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/api.js +16 -39
- package/esm/generated-sdk/trellis-core/client.d.ts +5 -2
- package/esm/generated-sdk/trellis-core/client.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/contract.d.ts +1 -1
- package/esm/generated-sdk/trellis-core/contract.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/contract.js +4 -2
- package/esm/generated-sdk/trellis-core/owned_api.d.ts +3 -0
- package/esm/generated-sdk/trellis-core/owned_api.d.ts.map +1 -0
- package/esm/generated-sdk/trellis-core/owned_api.js +42 -0
- package/esm/generated-sdk/trellis-core/schemas.d.ts +259 -11
- package/esm/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/schemas.js +5 -3
- package/esm/generated-sdk/trellis-core/types.d.ts +56 -1
- package/esm/generated-sdk/trellis-core/types.d.ts.map +1 -1
- package/esm/generated-sdk/trellis-core/types.js +1 -1
- package/esm/helpers.d.ts.map +1 -1
- package/esm/index.d.ts +4 -3
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -0
- package/esm/jobs.d.ts +10 -1
- package/esm/jobs.d.ts.map +1 -1
- package/esm/jobs.js +16 -1
- package/esm/kv.d.ts.map +1 -1
- package/esm/kv.js +10 -4
- package/esm/models/auth/rpc/Logout.d.ts +4 -4
- package/esm/models/auth/rpc/Logout.d.ts.map +1 -1
- package/esm/models/auth/rpc/Logout.js +2 -2
- package/esm/models/trellis/Page.d.ts +2 -0
- package/esm/models/trellis/Page.d.ts.map +1 -0
- package/esm/models/trellis/Page.js +1 -0
- package/esm/models/trellis/State.d.ts +1 -0
- package/esm/models/trellis/State.d.ts.map +1 -1
- package/esm/models/trellis/State.js +1 -0
- package/esm/models/trellis/rpc/StateList.d.ts +9 -12
- package/esm/models/trellis/rpc/StateList.d.ts.map +1 -1
- package/esm/models/trellis/rpc/StateList.js +16 -18
- package/esm/npm/src/auth/browser/login.d.ts.map +1 -1
- package/esm/npm/src/auth/browser/login.js +46 -3
- package/esm/npm/src/auth/browser/portal.d.ts.map +1 -1
- package/esm/npm/src/auth/browser/portal.js +5 -1
- package/esm/npm/src/auth/browser/session.d.ts +18 -7
- package/esm/npm/src/auth/browser/session.d.ts.map +1 -1
- package/esm/npm/src/auth/browser/session.js +47 -11
- package/esm/npm/src/auth/browser/storage.d.ts +6 -1
- package/esm/npm/src/auth/browser/storage.d.ts.map +1 -1
- package/esm/npm/src/auth/browser/storage.js +15 -3
- package/esm/npm/src/auth/browser.d.ts +2 -2
- package/esm/npm/src/auth/browser.d.ts.map +1 -1
- package/esm/npm/src/auth/browser.js +1 -1
- package/esm/npm/src/auth/device_activation.d.ts +36 -33
- package/esm/npm/src/auth/device_activation.d.ts.map +1 -1
- package/esm/npm/src/auth/device_activation.js +26 -22
- package/esm/npm/src/auth/mod.d.ts +4 -4
- package/esm/npm/src/auth/mod.d.ts.map +1 -1
- package/esm/npm/src/auth/mod.js +2 -2
- package/esm/npm/src/auth/proof.d.ts +3 -1
- package/esm/npm/src/auth/proof.d.ts.map +1 -1
- package/esm/npm/src/auth/proof.js +21 -15
- package/esm/npm/src/auth/protocol.d.ts +2457 -941
- package/esm/npm/src/auth/protocol.d.ts.map +1 -1
- package/esm/npm/src/auth/protocol.js +747 -375
- package/esm/npm/src/auth/schemas.d.ts +25 -4
- package/esm/npm/src/auth/schemas.d.ts.map +1 -1
- package/esm/npm/src/auth/schemas.js +14 -4
- package/esm/npm/src/auth/session_auth.d.ts +1 -1
- package/esm/npm/src/auth/session_auth.d.ts.map +1 -1
- package/esm/npm/src/auth/session_auth.js +7 -1
- package/esm/npm/src/client_connect.d.ts +2 -0
- package/esm/npm/src/client_connect.d.ts.map +1 -1
- package/esm/npm/src/client_connect.js +76 -15
- package/esm/npm/src/contract.d.ts +3 -0
- package/esm/npm/src/contract.d.ts.map +1 -1
- package/esm/npm/src/contract_support/mod.d.ts +422 -43
- package/esm/npm/src/contract_support/mod.d.ts.map +1 -1
- package/esm/npm/src/contract_support/mod.js +734 -33
- package/esm/npm/src/contract_support/protocol.d.ts +20 -5
- package/esm/npm/src/contract_support/protocol.d.ts.map +1 -1
- package/esm/npm/src/contract_support/protocol.js +18 -10
- package/esm/npm/src/contract_support/runtime.d.ts +11 -0
- package/esm/npm/src/contract_support/runtime.d.ts.map +1 -1
- package/esm/npm/src/contract_support/schema_pointers.d.ts.map +1 -1
- package/esm/npm/src/contract_support/schema_pointers.js +32 -14
- package/esm/npm/src/device/deno.d.ts.map +1 -1
- package/esm/npm/src/device/deno.js +6 -0
- package/esm/npm/src/device.d.ts +2 -0
- package/esm/npm/src/device.d.ts.map +1 -1
- package/esm/npm/src/device.js +3 -0
- package/esm/npm/src/errors/AuthError.d.ts +1 -1
- package/esm/npm/src/errors/AuthError.d.ts.map +1 -1
- package/esm/npm/src/errors/AuthError.js +5 -1
- package/esm/npm/src/errors/index.d.ts +4 -4
- package/esm/npm/src/helpers.d.ts.map +1 -1
- package/esm/npm/src/index.d.ts +4 -3
- package/esm/npm/src/index.d.ts.map +1 -1
- package/esm/npm/src/index.js +1 -0
- package/esm/npm/src/jobs.d.ts +10 -1
- package/esm/npm/src/jobs.d.ts.map +1 -1
- package/esm/npm/src/jobs.js +16 -1
- package/esm/npm/src/kv.d.ts.map +1 -1
- package/esm/npm/src/kv.js +10 -4
- package/esm/npm/src/models/auth/rpc/Logout.d.ts +4 -4
- package/esm/npm/src/models/auth/rpc/Logout.d.ts.map +1 -1
- package/esm/npm/src/models/auth/rpc/Logout.js +2 -2
- package/esm/npm/src/models/trellis/Page.d.ts +2 -0
- package/esm/npm/src/models/trellis/Page.d.ts.map +1 -0
- package/esm/npm/src/models/trellis/Page.js +1 -0
- package/esm/npm/src/models/trellis/State.d.ts +1 -0
- package/esm/npm/src/models/trellis/State.d.ts.map +1 -1
- package/esm/npm/src/models/trellis/State.js +1 -0
- package/esm/npm/src/models/trellis/rpc/StateList.d.ts +9 -12
- package/esm/npm/src/models/trellis/rpc/StateList.d.ts.map +1 -1
- package/esm/npm/src/models/trellis/rpc/StateList.js +16 -18
- package/esm/npm/src/operations.d.ts +16 -7
- package/esm/npm/src/operations.d.ts.map +1 -1
- package/esm/npm/src/operations.js +84 -19
- package/esm/npm/src/runtime_transport.d.ts +2 -0
- package/esm/npm/src/runtime_transport.d.ts.map +1 -1
- package/esm/npm/src/runtime_transport.js +1 -0
- package/esm/npm/src/server/internal_jobs/active-job.d.ts +2 -1
- package/esm/npm/src/server/internal_jobs/active-job.d.ts.map +1 -1
- package/esm/npm/src/server/internal_jobs/active-job.js +3 -0
- package/esm/npm/src/server/internal_jobs/job-manager.d.ts +4 -1
- package/esm/npm/src/server/internal_jobs/job-manager.d.ts.map +1 -1
- package/esm/npm/src/server/internal_jobs/job-manager.js +61 -1
- package/esm/npm/src/server/internal_jobs/projection.js +1 -0
- package/esm/npm/src/server/internal_jobs/runtime-worker.d.ts +13 -1
- package/esm/npm/src/server/internal_jobs/runtime-worker.d.ts.map +1 -1
- package/esm/npm/src/server/internal_jobs/runtime-worker.js +73 -13
- package/esm/npm/src/server/internal_jobs/types.d.ts +19 -0
- package/esm/npm/src/server/internal_jobs/types.d.ts.map +1 -1
- package/esm/npm/src/server/internal_jobs/types.js +10 -0
- package/esm/npm/src/server/runtime.d.ts +1 -0
- package/esm/npm/src/server/runtime.d.ts.map +1 -1
- package/esm/npm/src/server/service.d.ts +10 -1
- package/esm/npm/src/server/service.d.ts.map +1 -1
- package/esm/npm/src/server/service.js +190 -64
- package/esm/npm/src/server/transfer.d.ts.map +1 -1
- package/esm/npm/src/server/transfer.js +4 -0
- package/esm/npm/src/server.d.ts.map +1 -1
- package/esm/npm/src/server.js +337 -34
- package/esm/npm/src/store.d.ts +8 -1
- package/esm/npm/src/store.d.ts.map +1 -1
- package/esm/npm/src/store.js +46 -8
- package/esm/npm/src/transfer.d.ts +3 -0
- package/esm/npm/src/transfer.d.ts.map +1 -1
- package/esm/npm/src/transfer.js +20 -30
- package/esm/npm/src/trellis.d.ts +85 -22
- package/esm/npm/src/trellis.d.ts.map +1 -1
- package/esm/npm/src/trellis.js +525 -61
- package/esm/operations.d.ts +16 -7
- package/esm/operations.d.ts.map +1 -1
- package/esm/operations.js +84 -19
- package/esm/runtime_transport.d.ts +2 -0
- package/esm/runtime_transport.d.ts.map +1 -1
- package/esm/runtime_transport.js +1 -0
- package/esm/store.d.ts +8 -1
- package/esm/store.d.ts.map +1 -1
- package/esm/store.js +46 -8
- package/esm/transfer.d.ts +3 -0
- package/esm/transfer.d.ts.map +1 -1
- package/esm/transfer.js +20 -30
- package/esm/trellis.d.ts +85 -22
- package/esm/trellis.d.ts.map +1 -1
- package/esm/trellis.js +525 -61
- package/package.json +6 -4
- package/script/auth/browser/login.d.ts.map +1 -1
- package/script/auth/browser/login.js +46 -3
- package/script/auth/browser/portal.d.ts.map +1 -1
- package/script/auth/browser/portal.js +5 -1
- package/script/auth/browser/session.d.ts +18 -7
- package/script/auth/browser/session.d.ts.map +1 -1
- package/script/auth/browser/session.js +47 -11
- package/script/auth/browser/storage.d.ts +6 -1
- package/script/auth/browser/storage.d.ts.map +1 -1
- package/script/auth/browser/storage.js +15 -3
- package/script/auth/browser.d.ts +2 -2
- package/script/auth/browser.d.ts.map +1 -1
- package/script/auth/browser.js +2 -1
- package/script/auth/device_activation.d.ts +36 -33
- package/script/auth/device_activation.d.ts.map +1 -1
- package/script/auth/device_activation.js +25 -21
- package/script/auth/mod.d.ts +4 -4
- package/script/auth/mod.d.ts.map +1 -1
- package/script/auth/mod.js +132 -137
- package/script/auth/proof.d.ts +3 -1
- package/script/auth/proof.d.ts.map +1 -1
- package/script/auth/proof.js +21 -15
- package/script/auth/protocol.d.ts +2457 -941
- package/script/auth/protocol.d.ts.map +1 -1
- package/script/auth/protocol.js +749 -377
- package/script/auth/schemas.d.ts +25 -4
- package/script/auth/schemas.d.ts.map +1 -1
- package/script/auth/schemas.js +16 -5
- package/script/auth/session_auth.d.ts +1 -1
- package/script/auth/session_auth.d.ts.map +1 -1
- package/script/auth/session_auth.js +7 -1
- package/script/client_connect.d.ts +2 -0
- package/script/client_connect.d.ts.map +1 -1
- package/script/client_connect.js +76 -15
- package/script/contract.d.ts +3 -0
- package/script/contract.d.ts.map +1 -1
- package/script/contract_support/mod.d.ts +422 -43
- package/script/contract_support/mod.d.ts.map +1 -1
- package/script/contract_support/mod.js +757 -51
- package/script/contract_support/protocol.d.ts +20 -5
- package/script/contract_support/protocol.d.ts.map +1 -1
- package/script/contract_support/protocol.js +20 -11
- package/script/contract_support/runtime.d.ts +11 -0
- package/script/contract_support/runtime.d.ts.map +1 -1
- package/script/contract_support/schema_pointers.d.ts.map +1 -1
- package/script/contract_support/schema_pointers.js +32 -14
- package/script/device.d.ts +2 -0
- package/script/device.d.ts.map +1 -1
- package/script/device.js +3 -0
- package/script/errors/AuthError.d.ts +1 -1
- package/script/errors/AuthError.d.ts.map +1 -1
- package/script/errors/AuthError.js +5 -1
- package/script/errors/index.d.ts +4 -4
- package/script/generated-sdk/auth/api.d.ts +27 -9
- package/script/generated-sdk/auth/api.d.ts.map +1 -1
- package/script/generated-sdk/auth/api.js +17 -591
- package/script/generated-sdk/auth/client.d.ts +91 -85
- package/script/generated-sdk/auth/client.d.ts.map +1 -1
- package/script/generated-sdk/auth/contract.d.ts +1 -1
- package/script/generated-sdk/auth/contract.d.ts.map +1 -1
- package/script/generated-sdk/auth/contract.js +4 -2
- package/script/generated-sdk/auth/mod.d.ts +1 -0
- package/script/generated-sdk/auth/mod.d.ts.map +1 -1
- package/script/generated-sdk/auth/owned_api.d.ts +3 -0
- package/script/generated-sdk/auth/owned_api.d.ts.map +1 -0
- package/script/generated-sdk/auth/owned_api.js +597 -0
- package/script/generated-sdk/auth/schemas.d.ts +9959 -5160
- package/script/generated-sdk/auth/schemas.d.ts.map +1 -1
- package/script/generated-sdk/auth/schemas.js +139 -140
- package/script/generated-sdk/auth/types.d.ts +2418 -1557
- 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 +24 -9
- package/script/generated-sdk/health/api.d.ts.map +1 -1
- package/script/generated-sdk/health/api.js +13 -21
- package/script/generated-sdk/health/client.d.ts +2 -1
- package/script/generated-sdk/health/client.d.ts.map +1 -1
- package/script/generated-sdk/health/contract.d.ts.map +1 -1
- package/script/generated-sdk/health/contract.js +2 -0
- package/script/generated-sdk/health/owned_api.d.ts +3 -0
- package/script/generated-sdk/health/owned_api.d.ts.map +1 -0
- package/script/generated-sdk/health/owned_api.js +19 -0
- package/script/generated-sdk/health/types.d.ts +2 -0
- package/script/generated-sdk/health/types.d.ts.map +1 -1
- package/script/generated-sdk/jobs/api.d.ts +33 -9
- package/script/generated-sdk/jobs/api.d.ts.map +1 -1
- package/script/generated-sdk/jobs/api.js +23 -88
- package/script/generated-sdk/jobs/client.d.ts +9 -2
- package/script/generated-sdk/jobs/client.d.ts.map +1 -1
- package/script/generated-sdk/jobs/contract.d.ts +1 -1
- package/script/generated-sdk/jobs/contract.d.ts.map +1 -1
- package/script/generated-sdk/jobs/contract.js +4 -2
- package/script/generated-sdk/jobs/owned_api.d.ts +3 -0
- package/script/generated-sdk/jobs/owned_api.d.ts.map +1 -0
- package/script/generated-sdk/jobs/owned_api.js +154 -0
- package/script/generated-sdk/jobs/schemas.d.ts +336 -123
- package/script/generated-sdk/jobs/schemas.d.ts.map +1 -1
- package/script/generated-sdk/jobs/schemas.js +18 -16
- package/script/generated-sdk/jobs/types.d.ts +144 -34
- package/script/generated-sdk/jobs/types.d.ts.map +1 -1
- package/script/generated-sdk/jobs/types.js +38 -2
- package/script/generated-sdk/state/api.d.ts +27 -9
- package/script/generated-sdk/state/api.d.ts.map +1 -1
- package/script/generated-sdk/state/api.js +17 -72
- package/script/generated-sdk/state/client.d.ts +4 -2
- package/script/generated-sdk/state/client.d.ts.map +1 -1
- package/script/generated-sdk/state/contract.d.ts +1 -1
- package/script/generated-sdk/state/contract.d.ts.map +1 -1
- package/script/generated-sdk/state/contract.js +4 -2
- package/script/generated-sdk/state/owned_api.d.ts +3 -0
- package/script/generated-sdk/state/owned_api.d.ts.map +1 -0
- package/script/generated-sdk/state/owned_api.js +69 -0
- package/script/generated-sdk/state/schemas.d.ts +264 -284
- package/script/generated-sdk/state/schemas.d.ts.map +1 -1
- package/script/generated-sdk/state/schemas.js +6 -6
- package/script/generated-sdk/state/types.d.ts +24 -23
- package/script/generated-sdk/state/types.d.ts.map +1 -1
- package/script/generated-sdk/state/types.js +1 -1
- package/script/generated-sdk/trellis-core/api.d.ts +27 -9
- package/script/generated-sdk/trellis-core/api.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/api.js +17 -40
- package/script/generated-sdk/trellis-core/client.d.ts +5 -2
- package/script/generated-sdk/trellis-core/client.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/contract.d.ts +1 -1
- package/script/generated-sdk/trellis-core/contract.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/contract.js +4 -2
- package/script/generated-sdk/trellis-core/owned_api.d.ts +3 -0
- package/script/generated-sdk/trellis-core/owned_api.d.ts.map +1 -0
- package/script/generated-sdk/trellis-core/owned_api.js +45 -0
- package/script/generated-sdk/trellis-core/schemas.d.ts +259 -11
- package/script/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/schemas.js +6 -4
- package/script/generated-sdk/trellis-core/types.d.ts +56 -1
- package/script/generated-sdk/trellis-core/types.d.ts.map +1 -1
- package/script/generated-sdk/trellis-core/types.js +1 -1
- package/script/helpers.d.ts.map +1 -1
- package/script/index.d.ts +4 -3
- package/script/index.d.ts.map +1 -1
- package/script/index.js +5 -2
- package/script/jobs.d.ts +10 -1
- package/script/jobs.d.ts.map +1 -1
- package/script/jobs.js +17 -2
- package/script/kv.d.ts.map +1 -1
- package/script/kv.js +10 -4
- package/script/models/auth/rpc/Logout.d.ts +4 -4
- package/script/models/auth/rpc/Logout.d.ts.map +1 -1
- package/script/models/auth/rpc/Logout.js +3 -3
- package/script/models/trellis/Page.d.ts +2 -0
- package/script/models/trellis/Page.d.ts.map +1 -0
- package/script/models/trellis/Page.js +6 -0
- package/script/models/trellis/State.d.ts +1 -0
- package/script/models/trellis/State.d.ts.map +1 -1
- package/script/models/trellis/State.js +1 -0
- package/script/models/trellis/rpc/StateList.d.ts +9 -12
- package/script/models/trellis/rpc/StateList.d.ts.map +1 -1
- package/script/models/trellis/rpc/StateList.js +16 -18
- package/script/npm/src/auth/browser/login.d.ts.map +1 -1
- package/script/npm/src/auth/browser/login.js +46 -3
- package/script/npm/src/auth/browser/portal.d.ts.map +1 -1
- package/script/npm/src/auth/browser/portal.js +5 -1
- package/script/npm/src/auth/browser/session.d.ts +18 -7
- package/script/npm/src/auth/browser/session.d.ts.map +1 -1
- package/script/npm/src/auth/browser/session.js +47 -11
- package/script/npm/src/auth/browser/storage.d.ts +6 -1
- package/script/npm/src/auth/browser/storage.d.ts.map +1 -1
- package/script/npm/src/auth/browser/storage.js +15 -3
- package/script/npm/src/auth/browser.d.ts +2 -2
- package/script/npm/src/auth/browser.d.ts.map +1 -1
- package/script/npm/src/auth/browser.js +2 -1
- package/script/npm/src/auth/device_activation.d.ts +36 -33
- package/script/npm/src/auth/device_activation.d.ts.map +1 -1
- package/script/npm/src/auth/device_activation.js +25 -21
- package/script/npm/src/auth/mod.d.ts +4 -4
- package/script/npm/src/auth/mod.d.ts.map +1 -1
- package/script/npm/src/auth/mod.js +132 -137
- package/script/npm/src/auth/proof.d.ts +3 -1
- package/script/npm/src/auth/proof.d.ts.map +1 -1
- package/script/npm/src/auth/proof.js +21 -15
- package/script/npm/src/auth/protocol.d.ts +2457 -941
- package/script/npm/src/auth/protocol.d.ts.map +1 -1
- package/script/npm/src/auth/protocol.js +749 -377
- package/script/npm/src/auth/schemas.d.ts +25 -4
- package/script/npm/src/auth/schemas.d.ts.map +1 -1
- package/script/npm/src/auth/schemas.js +16 -5
- package/script/npm/src/auth/session_auth.d.ts +1 -1
- package/script/npm/src/auth/session_auth.d.ts.map +1 -1
- package/script/npm/src/auth/session_auth.js +7 -1
- package/script/npm/src/client_connect.d.ts +2 -0
- package/script/npm/src/client_connect.d.ts.map +1 -1
- package/script/npm/src/client_connect.js +76 -15
- package/script/npm/src/contract.d.ts +3 -0
- package/script/npm/src/contract.d.ts.map +1 -1
- package/script/npm/src/contract_support/mod.d.ts +422 -43
- package/script/npm/src/contract_support/mod.d.ts.map +1 -1
- package/script/npm/src/contract_support/mod.js +757 -51
- package/script/npm/src/contract_support/protocol.d.ts +20 -5
- package/script/npm/src/contract_support/protocol.d.ts.map +1 -1
- package/script/npm/src/contract_support/protocol.js +20 -11
- package/script/npm/src/contract_support/runtime.d.ts +11 -0
- package/script/npm/src/contract_support/runtime.d.ts.map +1 -1
- package/script/npm/src/contract_support/schema_pointers.d.ts.map +1 -1
- package/script/npm/src/contract_support/schema_pointers.js +32 -14
- package/script/npm/src/device/deno.d.ts.map +1 -1
- package/script/npm/src/device/deno.js +6 -0
- package/script/npm/src/device.d.ts +2 -0
- package/script/npm/src/device.d.ts.map +1 -1
- package/script/npm/src/device.js +3 -0
- package/script/npm/src/errors/AuthError.d.ts +1 -1
- package/script/npm/src/errors/AuthError.d.ts.map +1 -1
- package/script/npm/src/errors/AuthError.js +5 -1
- package/script/npm/src/errors/index.d.ts +4 -4
- package/script/npm/src/helpers.d.ts.map +1 -1
- package/script/npm/src/index.d.ts +4 -3
- package/script/npm/src/index.d.ts.map +1 -1
- package/script/npm/src/index.js +5 -2
- package/script/npm/src/jobs.d.ts +10 -1
- package/script/npm/src/jobs.d.ts.map +1 -1
- package/script/npm/src/jobs.js +17 -2
- package/script/npm/src/kv.d.ts.map +1 -1
- package/script/npm/src/kv.js +10 -4
- package/script/npm/src/models/auth/rpc/Logout.d.ts +4 -4
- package/script/npm/src/models/auth/rpc/Logout.d.ts.map +1 -1
- package/script/npm/src/models/auth/rpc/Logout.js +3 -3
- package/script/npm/src/models/trellis/Page.d.ts +2 -0
- package/script/npm/src/models/trellis/Page.d.ts.map +1 -0
- package/script/npm/src/models/trellis/Page.js +6 -0
- package/script/npm/src/models/trellis/State.d.ts +1 -0
- package/script/npm/src/models/trellis/State.d.ts.map +1 -1
- package/script/npm/src/models/trellis/State.js +1 -0
- package/script/npm/src/models/trellis/rpc/StateList.d.ts +9 -12
- package/script/npm/src/models/trellis/rpc/StateList.d.ts.map +1 -1
- package/script/npm/src/models/trellis/rpc/StateList.js +16 -18
- package/script/npm/src/operations.d.ts +16 -7
- package/script/npm/src/operations.d.ts.map +1 -1
- package/script/npm/src/operations.js +84 -19
- package/script/npm/src/runtime_transport.d.ts +2 -0
- package/script/npm/src/runtime_transport.d.ts.map +1 -1
- package/script/npm/src/runtime_transport.js +2 -1
- package/script/npm/src/server/internal_jobs/active-job.d.ts +2 -1
- package/script/npm/src/server/internal_jobs/active-job.d.ts.map +1 -1
- package/script/npm/src/server/internal_jobs/active-job.js +3 -0
- package/script/npm/src/server/internal_jobs/job-manager.d.ts +4 -1
- package/script/npm/src/server/internal_jobs/job-manager.d.ts.map +1 -1
- package/script/npm/src/server/internal_jobs/job-manager.js +61 -1
- package/script/npm/src/server/internal_jobs/projection.js +1 -0
- package/script/npm/src/server/internal_jobs/runtime-worker.d.ts +13 -1
- package/script/npm/src/server/internal_jobs/runtime-worker.d.ts.map +1 -1
- package/script/npm/src/server/internal_jobs/runtime-worker.js +74 -13
- package/script/npm/src/server/internal_jobs/types.d.ts +19 -0
- package/script/npm/src/server/internal_jobs/types.d.ts.map +1 -1
- package/script/npm/src/server/internal_jobs/types.js +11 -1
- package/script/npm/src/server/runtime.d.ts +1 -0
- package/script/npm/src/server/runtime.d.ts.map +1 -1
- package/script/npm/src/server/service.d.ts +10 -1
- package/script/npm/src/server/service.d.ts.map +1 -1
- package/script/npm/src/server/service.js +188 -62
- package/script/npm/src/server/transfer.d.ts.map +1 -1
- package/script/npm/src/server/transfer.js +4 -0
- package/script/npm/src/server.d.ts.map +1 -1
- package/script/npm/src/server.js +336 -33
- package/script/npm/src/store.d.ts +8 -1
- package/script/npm/src/store.d.ts.map +1 -1
- package/script/npm/src/store.js +46 -8
- package/script/npm/src/transfer.d.ts +3 -0
- package/script/npm/src/transfer.d.ts.map +1 -1
- package/script/npm/src/transfer.js +19 -29
- package/script/npm/src/trellis.d.ts +85 -22
- package/script/npm/src/trellis.d.ts.map +1 -1
- package/script/npm/src/trellis.js +525 -61
- package/script/operations.d.ts +16 -7
- package/script/operations.d.ts.map +1 -1
- package/script/operations.js +84 -19
- package/script/runtime_transport.d.ts +2 -0
- package/script/runtime_transport.d.ts.map +1 -1
- package/script/runtime_transport.js +2 -1
- package/script/store.d.ts +8 -1
- package/script/store.d.ts.map +1 -1
- package/script/store.js +46 -8
- package/script/transfer.d.ts +3 -0
- package/script/transfer.d.ts.map +1 -1
- package/script/transfer.js +19 -29
- package/script/trellis.d.ts +85 -22
- package/script/trellis.d.ts.map +1 -1
- package/script/trellis.js +525 -61
- package/esm/models/trellis/Paginate.d.ts +0 -7
- package/esm/models/trellis/Paginate.d.ts.map +0 -1
- package/esm/models/trellis/Paginate.js +0 -5
- package/esm/npm/src/models/trellis/Paginate.d.ts +0 -7
- package/esm/npm/src/models/trellis/Paginate.d.ts.map +0 -1
- package/esm/npm/src/models/trellis/Paginate.js +0 -5
- package/script/models/trellis/Paginate.d.ts +0 -7
- package/script/models/trellis/Paginate.d.ts.map +0 -1
- package/script/models/trellis/Paginate.js +0 -11
- package/script/npm/src/models/trellis/Paginate.d.ts +0 -7
- package/script/npm/src/models/trellis/Paginate.d.ts.map +0 -1
- package/script/npm/src/models/trellis/Paginate.js +0 -11
|
@@ -10,7 +10,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
12
|
var _StoreHandle_nc, _TrellisService_server, _TrellisService_handlerTrellis, _TrellisService_operationTransfer, _TrellisService_stopHealthPublishing, _TrellisService_managedJobWorkers, _TrellisService_waitPromise, _TrellisService_stopPromise;
|
|
13
|
-
import { jwtAuthenticator, } from "@nats-io/nats-core";
|
|
13
|
+
import { headers as natsHeaders, jwtAuthenticator, } from "@nats-io/nats-core";
|
|
14
14
|
import { Trellis as RootTrellis, TypedKV, TypedStore, } from "@qlever-llc/trellis";
|
|
15
15
|
import { sdk as trellisAuth } from "../sdk/auth.js";
|
|
16
16
|
import { TrellisServiceRuntime, } from "../server.js";
|
|
@@ -24,7 +24,7 @@ import { ServiceHealth } from "./health.js";
|
|
|
24
24
|
import { mountStandardHealthRpc } from "./health_rpc.js";
|
|
25
25
|
import { ServiceTransfer } from "./transfer.js";
|
|
26
26
|
import { logger as noopLogger } from "../globals.js";
|
|
27
|
-
import { DEFAULT_RUNTIME_MAX_RECONNECT_ATTEMPTS, loadDefaultRuntimeTransport, selectRuntimeTransportServers, } from "../runtime_transport.js";
|
|
27
|
+
import { DEFAULT_RUNTIME_MAX_RECONNECT_ATTEMPTS, DEFAULT_SERVICE_RUNTIME_WAIT_ON_FIRST_CONNECT, loadDefaultRuntimeTransport, selectRuntimeTransportServers, } from "../runtime_transport.js";
|
|
28
28
|
import { serverLogger } from "../server_logger.js";
|
|
29
29
|
import { TransportError, UnexpectedError, } from "../errors/index.js";
|
|
30
30
|
import { ActiveJob as PublicActiveJob, JobRef, JobWorkerHostAdapter, } from "../jobs.js";
|
|
@@ -39,6 +39,10 @@ const ClientTransportsSchema = Type.Object({
|
|
|
39
39
|
native: Type.Optional(ClientTransportEndpointsSchema),
|
|
40
40
|
websocket: Type.Optional(ClientTransportEndpointsSchema),
|
|
41
41
|
});
|
|
42
|
+
const DEFAULT_BOOTSTRAP_PENDING_RETRY_MS = 5_000;
|
|
43
|
+
const MAX_BOOTSTRAP_PENDING_RETRY_MS = 60_000;
|
|
44
|
+
const DEFAULT_BOOTSTRAP_UNAVAILABLE_INITIAL_RETRY_MS = 1_000;
|
|
45
|
+
const MAX_BOOTSTRAP_UNAVAILABLE_RETRY_MS = 30_000;
|
|
42
46
|
function resolveServiceLogger(log) {
|
|
43
47
|
if (log === false) {
|
|
44
48
|
return noopLogger;
|
|
@@ -58,7 +62,7 @@ function getErrorCauseMessage(error) {
|
|
|
58
62
|
function bootstrapContractStateError(args) {
|
|
59
63
|
const base = `Service '${args.serviceName}' could not bootstrap contract '${args.contractId}' (${args.contractDigest}) during ${args.step}. ` +
|
|
60
64
|
"This usually means Trellis has stale or incomplete state for this service session. " +
|
|
61
|
-
"
|
|
65
|
+
"Expand the service deployment envelope or re-run instance provisioning so Trellis records contract evidence, permissions, and resource bindings for this instance key.";
|
|
62
66
|
const cause = args.cause
|
|
63
67
|
? ` Underlying error: ${getErrorCauseMessage(args.cause)}`
|
|
64
68
|
: "";
|
|
@@ -68,6 +72,32 @@ function runtimeImport(specifier) {
|
|
|
68
72
|
const load = new Function("specifier", "return import(specifier);");
|
|
69
73
|
return load(specifier);
|
|
70
74
|
}
|
|
75
|
+
function delay(ms) {
|
|
76
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
77
|
+
}
|
|
78
|
+
function bootstrapRetryDelayMs(response) {
|
|
79
|
+
const retryAfter = response.headers.get("retry-after");
|
|
80
|
+
if (retryAfter === null)
|
|
81
|
+
return DEFAULT_BOOTSTRAP_PENDING_RETRY_MS;
|
|
82
|
+
const seconds = Number(retryAfter);
|
|
83
|
+
if (Number.isFinite(seconds) && seconds >= 0) {
|
|
84
|
+
return Math.min(seconds * 1_000, MAX_BOOTSTRAP_PENDING_RETRY_MS);
|
|
85
|
+
}
|
|
86
|
+
const retryAt = Date.parse(retryAfter);
|
|
87
|
+
if (Number.isNaN(retryAt))
|
|
88
|
+
return DEFAULT_BOOTSTRAP_PENDING_RETRY_MS;
|
|
89
|
+
return Math.min(Math.max(0, retryAt - Date.now()), MAX_BOOTSTRAP_PENDING_RETRY_MS);
|
|
90
|
+
}
|
|
91
|
+
function bootstrapUnavailableRetryDelayMs(attempt) {
|
|
92
|
+
const exponent = Math.min(attempt, 10);
|
|
93
|
+
return Math.min(DEFAULT_BOOTSTRAP_UNAVAILABLE_INITIAL_RETRY_MS * 2 ** exponent, MAX_BOOTSTRAP_UNAVAILABLE_RETRY_MS);
|
|
94
|
+
}
|
|
95
|
+
class ServiceBootstrapEndpointUnavailableError extends Error {
|
|
96
|
+
constructor(cause) {
|
|
97
|
+
super("Service bootstrap endpoint is unavailable.", { cause });
|
|
98
|
+
this.name = "ServiceBootstrapEndpointUnavailableError";
|
|
99
|
+
}
|
|
100
|
+
}
|
|
71
101
|
async function loadDefaultServiceRuntimeDeps() {
|
|
72
102
|
const transport = await loadDefaultRuntimeTransport();
|
|
73
103
|
return {
|
|
@@ -110,17 +140,25 @@ const ServiceBootstrapFailureSchema = Type.Object({
|
|
|
110
140
|
async function fetchServiceBootstrapInfoOnce(args) {
|
|
111
141
|
const requestStartedAtMs = Date.now();
|
|
112
142
|
const iat = args.auth.currentIat();
|
|
113
|
-
const
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
iat,
|
|
121
|
-
sig: await args.auth.natsConnectSigForIat(iat, args.contractDigest),
|
|
122
|
-
}),
|
|
143
|
+
const body = JSON.stringify({
|
|
144
|
+
sessionKey: args.auth.sessionKey,
|
|
145
|
+
contractId: args.contractId,
|
|
146
|
+
contractDigest: args.contractDigest,
|
|
147
|
+
...(args.contract ? { contract: args.contract } : {}),
|
|
148
|
+
iat,
|
|
149
|
+
sig: await args.auth.natsConnectSigForIat(iat, args.contractDigest),
|
|
123
150
|
});
|
|
151
|
+
let response;
|
|
152
|
+
try {
|
|
153
|
+
response = await fetch(args.bootstrapUrl, {
|
|
154
|
+
method: "POST",
|
|
155
|
+
headers: { "Content-Type": "application/json" },
|
|
156
|
+
body,
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
catch (cause) {
|
|
160
|
+
throw new ServiceBootstrapEndpointUnavailableError(cause);
|
|
161
|
+
}
|
|
124
162
|
const responseReceivedAtMs = Date.now();
|
|
125
163
|
const responseText = await response.text();
|
|
126
164
|
let payload;
|
|
@@ -139,25 +177,92 @@ async function fetchServiceBootstrapInfoOnce(args) {
|
|
|
139
177
|
};
|
|
140
178
|
}
|
|
141
179
|
async function fetchServiceBootstrapInfo(args) {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
})
|
|
154
|
-
|
|
180
|
+
const bootstrapUrl = new URL("/bootstrap/service", args.trellisUrl);
|
|
181
|
+
let includeContract = false;
|
|
182
|
+
let unavailableAttempt = 0;
|
|
183
|
+
const loggedPendingRequests = new Set();
|
|
184
|
+
while (true) {
|
|
185
|
+
let settled;
|
|
186
|
+
try {
|
|
187
|
+
settled = await fetchServiceBootstrapInfoOnce({
|
|
188
|
+
...args,
|
|
189
|
+
bootstrapUrl,
|
|
190
|
+
contract: includeContract ? args.contract : undefined,
|
|
191
|
+
});
|
|
192
|
+
unavailableAttempt = 0;
|
|
193
|
+
}
|
|
194
|
+
catch (cause) {
|
|
195
|
+
if (!(cause instanceof ServiceBootstrapEndpointUnavailableError)) {
|
|
196
|
+
throw cause;
|
|
197
|
+
}
|
|
198
|
+
const retryDelayMs = bootstrapUnavailableRetryDelayMs(unavailableAttempt);
|
|
199
|
+
unavailableAttempt += 1;
|
|
200
|
+
args.log.warn({
|
|
201
|
+
service: args.serviceName,
|
|
202
|
+
trellisUrl: args.trellisUrl,
|
|
203
|
+
contractId: args.contractId,
|
|
204
|
+
contractDigest: args.contractDigest,
|
|
205
|
+
attempt: unavailableAttempt,
|
|
206
|
+
retryDelayMs,
|
|
207
|
+
causeMessage: getErrorCauseMessage(cause.cause),
|
|
208
|
+
}, "Service bootstrap endpoint unavailable; retrying");
|
|
209
|
+
await delay(retryDelayMs);
|
|
210
|
+
continue;
|
|
155
211
|
}
|
|
156
|
-
}
|
|
157
|
-
if (!settled.response.ok) {
|
|
158
212
|
if (settled.payload !== undefined &&
|
|
159
213
|
Value.Check(ServiceBootstrapFailureSchema, settled.payload)) {
|
|
160
214
|
const failure = settled.payload;
|
|
215
|
+
if (failure.reason === "iat_out_of_range" &&
|
|
216
|
+
typeof failure.serverNow === "number") {
|
|
217
|
+
args.auth.setServerClockOffsetMs(estimateMidpointClockOffsetMs({
|
|
218
|
+
requestStartedAtMs: settled.requestStartedAtMs,
|
|
219
|
+
responseReceivedAtMs: settled.responseReceivedAtMs,
|
|
220
|
+
serverNowSeconds: failure.serverNow,
|
|
221
|
+
}));
|
|
222
|
+
continue;
|
|
223
|
+
}
|
|
224
|
+
if (failure.reason === "manifest_required" && args.contract !== undefined) {
|
|
225
|
+
includeContract = true;
|
|
226
|
+
continue;
|
|
227
|
+
}
|
|
228
|
+
if (failure.reason === "envelope_expansion_required") {
|
|
229
|
+
const retryDelayMs = bootstrapRetryDelayMs(settled.response);
|
|
230
|
+
const pendingKey = failure.requestId ??
|
|
231
|
+
`${failure.deploymentId ?? "unknown"}:${args.contractDigest}`;
|
|
232
|
+
if (!loggedPendingRequests.has(pendingKey)) {
|
|
233
|
+
loggedPendingRequests.add(pendingKey);
|
|
234
|
+
args.log.info({
|
|
235
|
+
service: args.serviceName,
|
|
236
|
+
deploymentId: failure.deploymentId,
|
|
237
|
+
requestId: failure.requestId,
|
|
238
|
+
contractId: args.contractId,
|
|
239
|
+
contractDigest: args.contractDigest,
|
|
240
|
+
retryDelayMs,
|
|
241
|
+
}, "Service deployment envelope expansion pending; waiting for approval");
|
|
242
|
+
}
|
|
243
|
+
await delay(retryDelayMs);
|
|
244
|
+
includeContract = true;
|
|
245
|
+
continue;
|
|
246
|
+
}
|
|
247
|
+
if (failure.reason === "contract_activation_pending") {
|
|
248
|
+
const retryDelayMs = bootstrapRetryDelayMs(settled.response);
|
|
249
|
+
const pendingKey = failure.requestId ??
|
|
250
|
+
`${failure.deploymentId ?? "unknown"}:${args.contractDigest}`;
|
|
251
|
+
if (!loggedPendingRequests.has(pendingKey)) {
|
|
252
|
+
loggedPendingRequests.add(pendingKey);
|
|
253
|
+
args.log.info({
|
|
254
|
+
service: args.serviceName,
|
|
255
|
+
deploymentId: failure.deploymentId,
|
|
256
|
+
requestId: failure.requestId,
|
|
257
|
+
contractId: args.contractId,
|
|
258
|
+
contractDigest: args.contractDigest,
|
|
259
|
+
retryDelayMs,
|
|
260
|
+
}, "Service contract activation pending; waiting for dependency closure");
|
|
261
|
+
}
|
|
262
|
+
await delay(retryDelayMs);
|
|
263
|
+
includeContract = true;
|
|
264
|
+
continue;
|
|
265
|
+
}
|
|
161
266
|
throw new TransportError({
|
|
162
267
|
code: "trellis.bootstrap.failed",
|
|
163
268
|
message: `Service bootstrap failed: ${failure.message ?? failure.reason}`,
|
|
@@ -171,40 +276,42 @@ async function fetchServiceBootstrapInfo(args) {
|
|
|
171
276
|
},
|
|
172
277
|
});
|
|
173
278
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
279
|
+
if (!settled.response.ok) {
|
|
280
|
+
const detail = settled.responseText.trim();
|
|
281
|
+
throw new TransportError({
|
|
282
|
+
code: "trellis.bootstrap.failed",
|
|
283
|
+
message: detail.length > 0
|
|
284
|
+
? `Service bootstrap failed with HTTP ${settled.response.status}: ${detail}`
|
|
285
|
+
: `Service bootstrap failed with HTTP ${settled.response.status}`,
|
|
286
|
+
hint: "Retry the connection. If it keeps failing, check Trellis bootstrap availability.",
|
|
287
|
+
context: {
|
|
288
|
+
trellisUrl: args.trellisUrl,
|
|
289
|
+
contractId: args.contractId,
|
|
290
|
+
contractDigest: args.contractDigest,
|
|
291
|
+
status: settled.response.status,
|
|
292
|
+
},
|
|
293
|
+
});
|
|
294
|
+
}
|
|
295
|
+
if (settled.payload === undefined) {
|
|
296
|
+
throw new TransportError({
|
|
297
|
+
code: "trellis.bootstrap.invalid_response",
|
|
298
|
+
message: `Service bootstrap returned invalid JSON: ${settled.responseText.trim() || "<empty body>"}`,
|
|
299
|
+
hint: "Retry the connection. If it keeps happening, check the Trellis deployment.",
|
|
300
|
+
context: {
|
|
301
|
+
trellisUrl: args.trellisUrl,
|
|
302
|
+
contractId: args.contractId,
|
|
303
|
+
contractDigest: args.contractDigest,
|
|
304
|
+
},
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
const ready = Value.Parse(ServiceBootstrapReadySchema, settled.payload);
|
|
308
|
+
args.auth.setServerClockOffsetMs(estimateMidpointClockOffsetMs({
|
|
309
|
+
requestStartedAtMs: settled.requestStartedAtMs,
|
|
310
|
+
responseReceivedAtMs: settled.responseReceivedAtMs,
|
|
311
|
+
serverNowSeconds: ready.serverNow,
|
|
312
|
+
}));
|
|
313
|
+
return ready;
|
|
200
314
|
}
|
|
201
|
-
const ready = Value.Parse(ServiceBootstrapReadySchema, settled.payload);
|
|
202
|
-
args.auth.setServerClockOffsetMs(estimateMidpointClockOffsetMs({
|
|
203
|
-
requestStartedAtMs: settled.requestStartedAtMs,
|
|
204
|
-
responseReceivedAtMs: settled.responseReceivedAtMs,
|
|
205
|
-
serverNowSeconds: ready.serverNow,
|
|
206
|
-
}));
|
|
207
|
-
return ready;
|
|
208
315
|
}
|
|
209
316
|
export class StoreHandle {
|
|
210
317
|
constructor(nc, binding) {
|
|
@@ -535,6 +642,15 @@ function snapshotFromLifecycleEvent(current, event) {
|
|
|
535
642
|
}
|
|
536
643
|
return base;
|
|
537
644
|
}
|
|
645
|
+
function headersFromJobContext(context) {
|
|
646
|
+
const headers = natsHeaders();
|
|
647
|
+
headers.set("request-id", context.requestId);
|
|
648
|
+
headers.set("traceparent", context.traceparent);
|
|
649
|
+
if (context.tracestate) {
|
|
650
|
+
headers.set("tracestate", context.tracestate);
|
|
651
|
+
}
|
|
652
|
+
return headers;
|
|
653
|
+
}
|
|
538
654
|
function createJobLifecycleTracker(nc) {
|
|
539
655
|
const snapshots = new Map();
|
|
540
656
|
const waiters = new Map();
|
|
@@ -657,12 +773,13 @@ function createJobRef(args) {
|
|
|
657
773
|
eventType: "cancelled",
|
|
658
774
|
state: "cancelled",
|
|
659
775
|
previousState: current.state,
|
|
776
|
+
context: current.context,
|
|
660
777
|
tries: current.tries,
|
|
661
778
|
error: "cancelled",
|
|
662
779
|
timestamp: new Date().toISOString(),
|
|
663
780
|
};
|
|
664
781
|
try {
|
|
665
|
-
args.nc.publish(`${args.queueBinding.publishPrefix}.${args.seed.id}.cancelled`, new TextEncoder().encode(JSON.stringify(event)));
|
|
782
|
+
args.nc.publish(`${args.queueBinding.publishPrefix}.${args.seed.id}.cancelled`, new TextEncoder().encode(JSON.stringify(event)), { headers: headersFromJobContext(event.context) });
|
|
666
783
|
}
|
|
667
784
|
catch (cause) {
|
|
668
785
|
return Result.err(toUnexpectedError(cause));
|
|
@@ -801,7 +918,7 @@ function createJobsFacade(args) {
|
|
|
801
918
|
queueBinding,
|
|
802
919
|
seed: job.job(),
|
|
803
920
|
lifecycle,
|
|
804
|
-
}), job.job().payload, () => job.isCancelled(), {
|
|
921
|
+
}), job.job().payload, job.context(), () => job.isCancelled(), {
|
|
805
922
|
heartbeat: () => wrapVoidTask(() => job.heartbeat()),
|
|
806
923
|
progress: (value) => wrapVoidTask(() => job.updateProgress(value)),
|
|
807
924
|
log: (entry) => wrapVoidTask(() => job.log(entry.level, entry.message)),
|
|
@@ -1001,7 +1118,7 @@ export class TrellisService {
|
|
|
1001
1118
|
}
|
|
1002
1119
|
return Result.ok(current);
|
|
1003
1120
|
}
|
|
1004
|
-
return Result.err(completed.error);
|
|
1121
|
+
return Result.err(toUnexpectedError(completed.error));
|
|
1005
1122
|
})());
|
|
1006
1123
|
}
|
|
1007
1124
|
static connect(args, deps) {
|
|
@@ -1012,11 +1129,15 @@ export class TrellisService {
|
|
|
1012
1129
|
...deps,
|
|
1013
1130
|
};
|
|
1014
1131
|
const auth = await createAuth({ sessionKeySeed: args.sessionKeySeed });
|
|
1132
|
+
const bootstrapLog = resolveServiceLogger(args.server?.log);
|
|
1015
1133
|
const bootstrap = await fetchServiceBootstrapInfo({
|
|
1016
1134
|
trellisUrl: args.trellisUrl,
|
|
1135
|
+
serviceName: args.name,
|
|
1017
1136
|
contractId: args.contract.CONTRACT_ID,
|
|
1018
1137
|
contractDigest: args.contract.CONTRACT_DIGEST,
|
|
1138
|
+
contract: args.contract.CONTRACT,
|
|
1019
1139
|
auth,
|
|
1140
|
+
log: bootstrapLog,
|
|
1020
1141
|
});
|
|
1021
1142
|
const { authenticator: authTokenAuthenticator, inboxPrefix } = await auth
|
|
1022
1143
|
.natsConnectOptions({
|
|
@@ -1027,6 +1148,7 @@ export class TrellisService {
|
|
|
1027
1148
|
nc = await runtimeDeps.connect({
|
|
1028
1149
|
servers: selectRuntimeTransportServers(bootstrap.connectInfo.transports),
|
|
1029
1150
|
maxReconnectAttempts: DEFAULT_RUNTIME_MAX_RECONNECT_ATTEMPTS,
|
|
1151
|
+
waitOnFirstConnect: DEFAULT_SERVICE_RUNTIME_WAIT_ON_FIRST_CONNECT,
|
|
1030
1152
|
inboxPrefix,
|
|
1031
1153
|
authenticator: [
|
|
1032
1154
|
authTokenAuthenticator,
|
|
@@ -1117,10 +1239,14 @@ export class TrellisService {
|
|
|
1117
1239
|
request(method, input, opts) {
|
|
1118
1240
|
return this.trellis.request(method, input, opts);
|
|
1119
1241
|
}
|
|
1242
|
+
feed(feed) {
|
|
1243
|
+
return __classPrivateFieldGet(this, _TrellisService_server, "f").feed(feed);
|
|
1244
|
+
}
|
|
1120
1245
|
operation(operation) {
|
|
1121
1246
|
const registration = __classPrivateFieldGet(this, _TrellisService_server, "f").operation(operation);
|
|
1122
1247
|
return {
|
|
1123
1248
|
accept: (args) => registration.accept(args),
|
|
1249
|
+
control: (operationId) => registration.control(operationId),
|
|
1124
1250
|
handle: (handler) => registration.handle((context) => handler({
|
|
1125
1251
|
...context,
|
|
1126
1252
|
trellis: __classPrivateFieldGet(this, _TrellisService_handlerTrellis, "f"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../../src/server/transfer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../../src/server/transfer.ts"],"names":[],"mappings":"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"}
|
|
@@ -504,6 +504,8 @@ _ServiceTransfer_name = new WeakMap(), _ServiceTransfer_nc = new WeakMap(), _Ser
|
|
|
504
504
|
payload: msg.data,
|
|
505
505
|
proof: msg.headers?.get("proof"),
|
|
506
506
|
sessionKey: msg.headers?.get("session-key"),
|
|
507
|
+
iat: msg.headers?.get("iat"),
|
|
508
|
+
requestId: msg.headers?.get("request-id"),
|
|
507
509
|
});
|
|
508
510
|
if (!authenticated) {
|
|
509
511
|
const error = new TransferError({
|
|
@@ -640,6 +642,8 @@ _ServiceTransfer_name = new WeakMap(), _ServiceTransfer_nc = new WeakMap(), _Ser
|
|
|
640
642
|
payload: msg.data,
|
|
641
643
|
proof: msg.headers?.get("proof"),
|
|
642
644
|
sessionKey: msg.headers?.get("session-key"),
|
|
645
|
+
iat: msg.headers?.get("iat"),
|
|
646
|
+
requestId: msg.headers?.get("request-id"),
|
|
643
647
|
});
|
|
644
648
|
if (!authenticated) {
|
|
645
649
|
publishError(__classPrivateFieldGet(this, _ServiceTransfer_nc, "f"), reply, new TransferError({
|
|
@@ -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,EAMZ,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EAEL,aAAa,EAId,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAEL,KAAK,aAAa,EAMlB,KAAK,SAAS,EAId,KAAK,SAAS,EAEd,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/server.ts"],"names":[],"mappings":"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"}
|