@sixb/core 0.1.0 → 0.1.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 +54 -23
- package/dist/actions/commit-edits.d.ts +0 -2
- package/dist/actions/commit-edits.d.ts.map +1 -1
- package/dist/actions/execution.d.ts +21 -0
- package/dist/actions/execution.d.ts.map +1 -0
- package/dist/actions/index.d.ts +1 -1
- package/dist/actions/index.d.ts.map +1 -1
- package/dist/actions/index.js +34 -23
- package/dist/actions/index.js.map +1 -1
- package/dist/actions/registry.d.ts +16 -7
- package/dist/actions/registry.d.ts.map +1 -1
- package/dist/actions/request.d.ts +3 -2
- package/dist/actions/request.d.ts.map +1 -1
- package/dist/actions/run-dispatch.d.ts +21 -0
- package/dist/actions/run-dispatch.d.ts.map +1 -0
- package/dist/actions/types/context.d.ts +2 -2
- package/dist/actions/types/context.d.ts.map +1 -1
- package/dist/actions/validation.d.ts +1 -1
- package/dist/actions/validation.d.ts.map +1 -1
- package/dist/actions/worker.js +4 -4
- package/dist/actions/worker.js.map +1 -1
- package/dist/agents/adapters.d.ts +10 -0
- package/dist/agents/adapters.d.ts.map +1 -1
- package/dist/agents/authority.d.ts +31 -0
- package/dist/agents/authority.d.ts.map +1 -0
- package/dist/agents/builders.d.ts +8 -1
- package/dist/agents/builders.d.ts.map +1 -1
- package/dist/agents/context.js +2 -2
- package/dist/agents/dispatch.d.ts.map +1 -1
- package/dist/agents/errors.d.ts +16 -1
- package/dist/agents/errors.d.ts.map +1 -1
- package/dist/agents/execution.d.ts +45 -0
- package/dist/agents/execution.d.ts.map +1 -0
- package/dist/agents/index.d.ts +10 -10
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +81 -14
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/prompt.d.ts.map +1 -1
- package/dist/agents/request.d.ts +6 -2
- package/dist/agents/request.d.ts.map +1 -1
- package/dist/agents/streams.d.ts +29 -3
- package/dist/agents/streams.d.ts.map +1 -1
- package/dist/agents/streams.js +22 -3
- package/dist/agents/streams.js.map +1 -1
- package/dist/agents/tool-definition.d.ts +9 -0
- package/dist/agents/tool-definition.d.ts.map +1 -0
- package/dist/agents/types.d.ts +64 -0
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/agents/validation.d.ts +16 -3
- package/dist/agents/validation.d.ts.map +1 -1
- package/dist/auth/attribution.d.ts +17 -0
- package/dist/auth/attribution.d.ts.map +1 -0
- package/dist/auth/index.d.ts +1 -0
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +9 -5
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/runtime.d.ts +4 -4
- package/dist/auth/runtime.d.ts.map +1 -1
- package/dist/authorization/decision.d.ts +24 -11
- package/dist/authorization/decision.d.ts.map +1 -1
- package/dist/authorization/grant-kinds.d.ts +2 -1
- package/dist/authorization/grant-kinds.d.ts.map +1 -1
- package/dist/authorization/index.d.ts +1 -1
- package/dist/authorization/index.d.ts.map +1 -1
- package/dist/authorization/index.js +8 -4
- package/dist/authorization/index.js.map +1 -1
- package/dist/blob-storage/browser.js +3 -2
- package/dist/blob-storage/browser.js.map +1 -1
- package/dist/blob-storage/execution.d.ts +16 -0
- package/dist/blob-storage/execution.d.ts.map +1 -0
- package/dist/blob-storage/index.js +4 -3
- package/dist/blob-storage/index.js.map +1 -1
- package/dist/blob-storage/validation.d.ts.map +1 -1
- package/dist/bootstrap/discovery.d.ts +90 -24
- package/dist/bootstrap/discovery.d.ts.map +1 -1
- package/dist/bootstrap/index.d.ts +2 -1
- package/dist/bootstrap/index.d.ts.map +1 -1
- package/dist/bootstrap/index.js +59 -59
- package/dist/bootstrap/index.js.map +1 -1
- package/dist/broker/in-memory.d.ts.map +1 -1
- package/dist/broker/index.js +2 -2
- package/dist/broker/types.d.ts +5 -0
- package/dist/broker/types.d.ts.map +1 -1
- package/dist/chunk-0172wgm9.js +333 -0
- package/dist/chunk-0172wgm9.js.map +11 -0
- package/dist/chunk-0k4avqr2.js +317 -0
- package/dist/chunk-0k4avqr2.js.map +11 -0
- package/dist/chunk-0mbx247x.js +2922 -0
- package/dist/chunk-0mbx247x.js.map +43 -0
- package/dist/chunk-34bqh420.js +1168 -0
- package/dist/chunk-34bqh420.js.map +23 -0
- package/dist/{chunk-mx84y05q.js → chunk-3j7573mj.js} +2 -2
- package/dist/{chunk-mx84y05q.js.map → chunk-3j7573mj.js.map} +2 -2
- package/dist/{chunk-45tw90k7.js → chunk-4gz41why.js} +1 -1
- package/dist/chunk-4x43bkbp.js +55 -0
- package/dist/chunk-4x43bkbp.js.map +11 -0
- package/dist/{chunk-xqbtf4wn.js → chunk-57r1cpxx.js} +3 -2
- package/dist/{chunk-xqbtf4wn.js.map → chunk-57r1cpxx.js.map} +3 -3
- package/dist/chunk-57zpb99z.js +194 -0
- package/dist/chunk-57zpb99z.js.map +10 -0
- package/dist/{chunk-dhmj53mx.js → chunk-5egfka8j.js} +13 -33
- package/dist/chunk-5egfka8j.js.map +15 -0
- package/dist/chunk-5gd7tpv6.js +28 -0
- package/dist/chunk-5gd7tpv6.js.map +11 -0
- package/dist/{chunk-867jxh7c.js → chunk-5sz8ta9r.js} +6 -295
- package/dist/chunk-5sz8ta9r.js.map +16 -0
- package/dist/chunk-62c7t4jc.js +27 -0
- package/dist/chunk-62c7t4jc.js.map +11 -0
- package/dist/{chunk-8r8cw2xw.js → chunk-63te770v.js} +40 -5
- package/dist/{chunk-8r8cw2xw.js.map → chunk-63te770v.js.map} +3 -3
- package/dist/chunk-663csy96.js +34 -0
- package/dist/chunk-663csy96.js.map +10 -0
- package/dist/{chunk-xz5g49bp.js → chunk-6gjqgd3d.js} +3 -1
- package/dist/chunk-6gjqgd3d.js.map +11 -0
- package/dist/chunk-7pc8b818.js +128 -0
- package/dist/chunk-7pc8b818.js.map +13 -0
- package/dist/{chunk-f2b5e2gf.js → chunk-85j5ybfj.js} +18 -3
- package/dist/{chunk-f2b5e2gf.js.map → chunk-85j5ybfj.js.map} +3 -3
- package/dist/{chunk-vj723r3p.js → chunk-8b55ygje.js} +1 -1
- package/dist/chunk-8m5ejdpn.js +33 -0
- package/dist/chunk-8m5ejdpn.js.map +10 -0
- package/dist/chunk-8ryen3p3.js +118 -0
- package/dist/chunk-8ryen3p3.js.map +10 -0
- package/dist/chunk-979ww6b3.js +298 -0
- package/dist/chunk-979ww6b3.js.map +12 -0
- package/dist/{chunk-ya6brh8a.js → chunk-9t8f5xfx.js} +10 -5
- package/dist/chunk-9t8f5xfx.js.map +11 -0
- package/dist/{chunk-r65yscvk.js → chunk-a31h57d5.js} +131 -13
- package/dist/chunk-a31h57d5.js.map +13 -0
- package/dist/chunk-bct7hmfc.js +402 -0
- package/dist/chunk-bct7hmfc.js.map +14 -0
- package/dist/chunk-bh6k3nc6.js +164 -0
- package/dist/chunk-bh6k3nc6.js.map +12 -0
- package/dist/{chunk-t72dvahb.js → chunk-bhxaq2nn.js} +61 -44
- package/dist/chunk-bhxaq2nn.js.map +12 -0
- package/dist/{chunk-jdwx7vzs.js → chunk-c6qd89g5.js} +240 -143
- package/dist/chunk-c6qd89g5.js.map +15 -0
- package/dist/{chunk-2s6sydsh.js → chunk-ckxfnx7f.js} +294 -4
- package/dist/chunk-ckxfnx7f.js.map +13 -0
- package/dist/chunk-cy0n5dms.js +27 -0
- package/dist/chunk-cy0n5dms.js.map +11 -0
- package/dist/chunk-dsrkgtnh.js +50 -0
- package/dist/chunk-dsrkgtnh.js.map +10 -0
- package/dist/{chunk-50kv63vj.js → chunk-dysw7nsm.js} +118 -26
- package/dist/chunk-dysw7nsm.js.map +14 -0
- package/dist/chunk-ezake7g1.js +32 -0
- package/dist/chunk-ezake7g1.js.map +11 -0
- package/dist/{chunk-yxss87qa.js → chunk-f2rt4vkh.js} +48 -29
- package/dist/chunk-f2rt4vkh.js.map +14 -0
- package/dist/{chunk-q4qzq0ea.js → chunk-fmx1sz2h.js} +117 -56
- package/dist/chunk-fmx1sz2h.js.map +15 -0
- package/dist/chunk-g9t3kdtx.js +90 -0
- package/dist/chunk-g9t3kdtx.js.map +10 -0
- package/dist/{chunk-c3zd880g.js → chunk-ghteq96b.js} +8 -8
- package/dist/{chunk-c3zd880g.js.map → chunk-ghteq96b.js.map} +4 -4
- package/dist/chunk-h9kxd41f.js +271 -0
- package/dist/chunk-h9kxd41f.js.map +11 -0
- package/dist/chunk-htq0qh7z.js +59 -0
- package/dist/chunk-htq0qh7z.js.map +11 -0
- package/dist/{chunk-dcgrzj1t.js → chunk-jaj13078.js} +121 -9
- package/dist/chunk-jaj13078.js.map +38 -0
- package/dist/{chunk-t358gywy.js → chunk-k9pts48t.js} +81 -58
- package/dist/chunk-k9pts48t.js.map +35 -0
- package/dist/chunk-n8herkry.js +3294 -0
- package/dist/chunk-n8herkry.js.map +35 -0
- package/dist/chunk-nf4r78r4.js +44 -0
- package/dist/chunk-nf4r78r4.js.map +10 -0
- package/dist/{chunk-2gpr6jsz.js → chunk-nnyp53zt.js} +14 -34
- package/dist/chunk-nnyp53zt.js.map +13 -0
- package/dist/chunk-nten49ta.js +404 -0
- package/dist/chunk-nten49ta.js.map +12 -0
- package/dist/chunk-qvybnnpe.js +137 -0
- package/dist/chunk-qvybnnpe.js.map +10 -0
- package/dist/{chunk-tsk2bxs3.js → chunk-rnshztfq.js} +13 -13
- package/dist/{chunk-tsk2bxs3.js.map → chunk-rnshztfq.js.map} +3 -3
- package/dist/chunk-sa4340y1.js +607 -0
- package/dist/chunk-sa4340y1.js.map +14 -0
- package/dist/{chunk-yvef9xwc.js → chunk-st4xgxey.js} +583 -251
- package/dist/chunk-st4xgxey.js.map +45 -0
- package/dist/{chunk-1vffvydj.js → chunk-t8t39h7v.js} +6 -6
- package/dist/chunk-t8t39h7v.js.map +10 -0
- package/dist/chunk-t9xghkva.js +28 -0
- package/dist/chunk-t9xghkva.js.map +10 -0
- package/dist/chunk-vp1vc6ee.js +35 -0
- package/dist/chunk-vp1vc6ee.js.map +11 -0
- package/dist/{chunk-p6r5g77m.js → chunk-vybf6pkp.js} +1 -1
- package/dist/{chunk-wj01s5hr.js → chunk-wtmzkcht.js} +4 -3
- package/dist/chunk-wtmzkcht.js.map +11 -0
- package/dist/{chunk-v5c085yp.js → chunk-xhy826cz.js} +3 -2
- package/dist/chunk-xhy826cz.js.map +10 -0
- package/dist/chunk-xkthy56g.js +33 -0
- package/dist/chunk-xkthy56g.js.map +11 -0
- package/dist/{chunk-aebzcsxr.js → chunk-ys1nse2v.js} +2178 -382
- package/dist/chunk-ys1nse2v.js.map +56 -0
- package/dist/{chunk-5yny9z0e.js → chunk-z3zp0bj1.js} +1 -1
- package/dist/chunk-zcnhxkvd.js +7 -0
- package/dist/chunk-zcnhxkvd.js.map +10 -0
- package/dist/chunk-zg9yryhz.js +252 -0
- package/dist/chunk-zg9yryhz.js.map +12 -0
- package/dist/chunk-zqqz8052.js +3 -0
- package/dist/{storage/projection-runs/lifecycle.js.map → chunk-zqqz8052.js.map} +1 -1
- package/dist/{chunk-4pycxcj3.js → chunk-zqysyfjt.js} +6 -9
- package/dist/{chunk-4pycxcj3.js.map → chunk-zqysyfjt.js.map} +3 -3
- package/dist/connectors/builders.d.ts +2 -1
- package/dist/connectors/builders.d.ts.map +1 -1
- package/dist/connectors/connections/authorizations.d.ts +64 -0
- package/dist/connectors/connections/authorizations.d.ts.map +1 -0
- package/dist/connectors/connections/capability.d.ts +7 -0
- package/dist/connectors/connections/capability.d.ts.map +1 -0
- package/dist/connectors/connections/command-context.d.ts +23 -0
- package/dist/connectors/connections/command-context.d.ts.map +1 -0
- package/dist/connectors/connections/contracts.d.ts +127 -0
- package/dist/connectors/connections/contracts.d.ts.map +1 -0
- package/dist/connectors/connections/credential-codec.d.ts +15 -0
- package/dist/connectors/connections/credential-codec.d.ts.map +1 -0
- package/dist/connectors/connections/credential-mutations.d.ts +63 -0
- package/dist/connectors/connections/credential-mutations.d.ts.map +1 -0
- package/dist/connectors/connections/execution.d.ts +20 -0
- package/dist/connectors/connections/execution.d.ts.map +1 -0
- package/dist/connectors/connections/internal.d.ts +5 -0
- package/dist/connectors/connections/internal.d.ts.map +1 -0
- package/dist/connectors/connections/internal.js +16 -0
- package/dist/connectors/connections/internal.js.map +9 -0
- package/dist/connectors/connections/provider-operation.d.ts +7 -0
- package/dist/connectors/connections/provider-operation.d.ts.map +1 -0
- package/dist/connectors/connections/request.d.ts +84 -0
- package/dist/connectors/connections/request.d.ts.map +1 -0
- package/dist/connectors/connections/runs.d.ts +51 -0
- package/dist/connectors/connections/runs.d.ts.map +1 -0
- package/dist/connectors/connections/service.d.ts +52 -0
- package/dist/connectors/connections/service.d.ts.map +1 -0
- package/dist/connectors/connections/storage-boundary.d.ts +3 -0
- package/dist/connectors/connections/storage-boundary.d.ts.map +1 -0
- package/dist/connectors/connections/tokens.d.ts +32 -0
- package/dist/connectors/connections/tokens.d.ts.map +1 -0
- package/dist/connectors/connections/validation.d.ts +27 -0
- package/dist/connectors/connections/validation.d.ts.map +1 -0
- package/dist/connectors/connections/views.d.ts +7 -0
- package/dist/connectors/connections/views.d.ts.map +1 -0
- package/dist/connectors/credentials.d.ts +25 -0
- package/dist/connectors/credentials.d.ts.map +1 -0
- package/dist/connectors/errors.d.ts +35 -3
- package/dist/connectors/errors.d.ts.map +1 -1
- package/dist/connectors/execution.d.ts +19 -0
- package/dist/connectors/execution.d.ts.map +1 -0
- package/dist/connectors/index.d.ts +5 -3
- package/dist/connectors/index.d.ts.map +1 -1
- package/dist/connectors/service.d.ts +23 -0
- package/dist/connectors/service.d.ts.map +1 -0
- package/dist/connectors/types.d.ts +94 -2
- package/dist/connectors/types.d.ts.map +1 -1
- package/dist/datasets/builders.d.ts +18 -5
- package/dist/datasets/builders.d.ts.map +1 -1
- package/dist/datasets/changes.d.ts +18 -0
- package/dist/datasets/changes.d.ts.map +1 -0
- package/dist/datasets/execution.d.ts +8 -0
- package/dist/datasets/execution.d.ts.map +1 -0
- package/dist/datasets/index.d.ts +3 -1
- package/dist/datasets/index.d.ts.map +1 -1
- package/dist/datasets/types.d.ts +2 -0
- package/dist/datasets/types.d.ts.map +1 -1
- package/dist/datasets/validation.d.ts.map +1 -1
- package/dist/error-reporting/capability.d.ts +4 -49
- package/dist/error-reporting/capability.d.ts.map +1 -1
- package/dist/error-reporting/internal.d.ts +2 -2
- package/dist/error-reporting/internal.d.ts.map +1 -1
- package/dist/error-reporting/internal.js +10 -4
- package/dist/error-reporting/internal.js.map +1 -1
- package/dist/error-reporting/reporter.d.ts +4 -1
- package/dist/error-reporting/reporter.d.ts.map +1 -1
- package/dist/error-reporting/reports.d.ts +64 -0
- package/dist/error-reporting/reports.d.ts.map +1 -0
- package/dist/error-reporting/types.d.ts +88 -34
- package/dist/error-reporting/types.d.ts.map +1 -1
- package/dist/errors/catalog.d.ts +141 -0
- package/dist/errors/catalog.d.ts.map +1 -0
- package/dist/errors/internal.d.ts +68 -0
- package/dist/errors/internal.d.ts.map +1 -0
- package/dist/errors/internal.js +29 -0
- package/dist/errors/internal.js.map +9 -0
- package/dist/errors/types.d.ts +20 -0
- package/dist/errors/types.d.ts.map +1 -0
- package/dist/events/definitions.d.ts +0 -1
- package/dist/events/definitions.d.ts.map +1 -1
- package/dist/events/execution.d.ts +13 -0
- package/dist/events/execution.d.ts.map +1 -0
- package/dist/events/index.d.ts +3 -2
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/index.js +10 -8
- package/dist/events/index.js.map +1 -1
- package/dist/events/outbox-dispatcher.d.ts +4 -2
- package/dist/events/outbox-dispatcher.d.ts.map +1 -1
- package/dist/events/{runtime.d.ts → service.d.ts} +13 -14
- package/dist/events/service.d.ts.map +1 -0
- package/dist/events/types/pipelines.d.ts +4 -1
- package/dist/events/types/pipelines.d.ts.map +1 -1
- package/dist/events/types/syncs.d.ts +3 -0
- package/dist/events/types/syncs.d.ts.map +1 -1
- package/dist/events/types/workflows.d.ts +4 -2
- package/dist/events/types/workflows.d.ts.map +1 -1
- package/dist/execution/agent.d.ts +42 -0
- package/dist/execution/agent.d.ts.map +1 -0
- package/dist/execution/agent.js +70 -0
- package/dist/execution/agent.js.map +9 -0
- package/dist/execution/authorization.d.ts +60 -0
- package/dist/execution/authorization.d.ts.map +1 -0
- package/dist/execution/dispatch.d.ts +8 -0
- package/dist/execution/dispatch.d.ts.map +1 -0
- package/dist/execution/durable.d.ts +37 -0
- package/dist/execution/durable.d.ts.map +1 -0
- package/dist/execution/index.d.ts +2 -0
- package/dist/execution/index.d.ts.map +1 -0
- package/dist/execution/primitive.d.ts +21 -0
- package/dist/execution/primitive.d.ts.map +1 -0
- package/dist/execution/primitive.js +88 -0
- package/dist/execution/primitive.js.map +10 -0
- package/dist/execution/request.d.ts +38 -0
- package/dist/execution/request.d.ts.map +1 -0
- package/dist/execution/request.js +97 -0
- package/dist/execution/request.js.map +10 -0
- package/dist/execution/scopes.d.ts +30 -0
- package/dist/execution/scopes.d.ts.map +1 -0
- package/dist/execution/types.d.ts +111 -0
- package/dist/execution/types.d.ts.map +1 -0
- package/dist/http/api-routes.d.ts.map +1 -1
- package/dist/http/index.js +1 -1
- package/dist/index.d.ts +35 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +142 -111
- package/dist/index.js.map +1 -1
- package/dist/json.d.ts +8 -2
- package/dist/json.d.ts.map +1 -1
- package/dist/lake-storage/definition-updates.d.ts.map +1 -1
- package/dist/lake-storage/in-memory.d.ts +15 -1
- package/dist/lake-storage/in-memory.d.ts.map +1 -1
- package/dist/lake-storage/index.d.ts +3 -1
- package/dist/lake-storage/index.d.ts.map +1 -1
- package/dist/lake-storage/index.js +15 -7
- package/dist/lake-storage/index.js.map +1 -1
- package/dist/lake-storage/merge-validation.d.ts +10 -0
- package/dist/lake-storage/merge-validation.d.ts.map +1 -0
- package/dist/lake-storage/merge.d.ts +32 -0
- package/dist/lake-storage/merge.d.ts.map +1 -0
- package/dist/lake-storage/types.d.ts +3 -1
- package/dist/lake-storage/types.d.ts.map +1 -1
- package/dist/logging/execution.d.ts +9 -0
- package/dist/logging/execution.d.ts.map +1 -0
- package/dist/logging/index.d.ts +1 -1
- package/dist/logging/index.d.ts.map +1 -1
- package/dist/logging/index.js +8 -8
- package/dist/logging/index.js.map +1 -1
- package/dist/logging/{runtime.d.ts → service.d.ts} +7 -7
- package/dist/logging/{runtime.d.ts.map → service.d.ts.map} +1 -1
- package/dist/logging/types.js +2 -2
- package/dist/materialization/events.d.ts +1 -0
- package/dist/materialization/events.d.ts.map +1 -1
- package/dist/materialization/index.d.ts +1 -1
- package/dist/materialization/index.d.ts.map +1 -1
- package/dist/materialization/index.js +2 -2
- package/dist/materialization/model.d.ts +26 -17
- package/dist/materialization/model.d.ts.map +1 -1
- package/dist/materializer/edits/commit.d.ts +2 -1
- package/dist/materializer/edits/commit.d.ts.map +1 -1
- package/dist/materializer/edits/load-state.d.ts +1 -1
- package/dist/materializer/edits/load-state.d.ts.map +1 -1
- package/dist/materializer/edits/operations.d.ts +1 -13
- package/dist/materializer/edits/operations.d.ts.map +1 -1
- package/dist/materializer/edits/plan.d.ts +2 -1
- package/dist/materializer/edits/plan.d.ts.map +1 -1
- package/dist/materializer/edits/working-state.d.ts +36 -8
- package/dist/materializer/edits/working-state.d.ts.map +1 -1
- package/dist/materializer/effective/build-events.d.ts +1 -0
- package/dist/materializer/effective/build-events.d.ts.map +1 -1
- package/dist/materializer/effective/diff.d.ts +7 -0
- package/dist/materializer/effective/diff.d.ts.map +1 -1
- package/dist/materializer/effective/load-state.d.ts +0 -2
- package/dist/materializer/effective/load-state.d.ts.map +1 -1
- package/dist/materializer/effective/resolve.d.ts +17 -2
- package/dist/materializer/effective/resolve.d.ts.map +1 -1
- package/dist/materializer/execution/commit-lifecycle.d.ts +2 -2
- package/dist/materializer/execution/commit-lifecycle.d.ts.map +1 -1
- package/dist/materializer/execution/plan-stream.d.ts.map +1 -1
- package/dist/materializer/execution/scope.d.ts +26 -0
- package/dist/materializer/execution/scope.d.ts.map +1 -0
- package/dist/materializer/execution/work-executor.d.ts.map +1 -1
- package/dist/materializer/execution/work-records.d.ts +6 -5
- package/dist/materializer/execution/work-records.d.ts.map +1 -1
- package/dist/materializer/index.d.ts +2 -2
- package/dist/materializer/index.d.ts.map +1 -1
- package/dist/materializer/index.js +30 -18
- package/dist/materializer/index.js.map +1 -1
- package/dist/materializer/materializer.d.ts +37 -5
- package/dist/materializer/materializer.d.ts.map +1 -1
- package/dist/materializer/projections/finish-run.d.ts +2 -1
- package/dist/materializer/projections/finish-run.d.ts.map +1 -1
- package/dist/materializer/projections/replace.d.ts +2 -1
- package/dist/materializer/projections/replace.d.ts.map +1 -1
- package/dist/materializer/projections/replacement-plan.d.ts +1 -0
- package/dist/materializer/projections/replacement-plan.d.ts.map +1 -1
- package/dist/materializer/shared/batching.d.ts.map +1 -1
- package/dist/materializer/shared/normalize.d.ts.map +1 -1
- package/dist/materializer/telemetry/append.d.ts +2 -1
- package/dist/materializer/telemetry/append.d.ts.map +1 -1
- package/dist/materializer/telemetry/plan.d.ts +7 -1
- package/dist/materializer/telemetry/plan.d.ts.map +1 -1
- package/dist/objects/action/request.d.ts +3 -3
- package/dist/objects/action/request.d.ts.map +1 -1
- package/dist/objects/context/index.d.ts +1 -1
- package/dist/objects/context/index.d.ts.map +1 -1
- package/dist/objects/context/types.d.ts +5 -0
- package/dist/objects/context/types.d.ts.map +1 -1
- package/dist/objects/execution.d.ts +100 -0
- package/dist/objects/execution.d.ts.map +1 -0
- package/dist/objects/index.js +37 -24
- package/dist/objects/index.js.map +1 -1
- package/dist/objects/materializer-adapter.d.ts +1 -1
- package/dist/objects/materializer-adapter.d.ts.map +1 -1
- package/dist/objects/query/executor.d.ts +3 -8
- package/dist/objects/query/executor.d.ts.map +1 -1
- package/dist/objects/query/index.d.ts +2 -2
- package/dist/objects/query/index.d.ts.map +1 -1
- package/dist/objects/query/index.js +9 -13
- package/dist/objects/query/index.js.map +1 -1
- package/dist/objects/query/planner.d.ts +0 -3
- package/dist/objects/query/planner.d.ts.map +1 -1
- package/dist/objects/sdk/object-handle.d.ts +2 -2
- package/dist/objects/sdk/object-handle.d.ts.map +1 -1
- package/dist/objects/sdk/object-set.d.ts +2 -0
- package/dist/objects/sdk/object-set.d.ts.map +1 -1
- package/dist/objects/sdk/runtime-query-executor.d.ts +2 -0
- package/dist/objects/sdk/runtime-query-executor.d.ts.map +1 -1
- package/dist/objects/sdk/telemetry-channel.d.ts.map +1 -1
- package/dist/objects/service/action-service.d.ts +3 -2
- package/dist/objects/service/action-service.d.ts.map +1 -1
- package/dist/objects/service/list-service.d.ts +1 -1
- package/dist/objects/telemetry/history.d.ts +2 -0
- package/dist/objects/telemetry/history.d.ts.map +1 -1
- package/dist/objects/telemetry/write-batch.d.ts.map +1 -1
- package/dist/ontology/index.d.ts +1 -1
- package/dist/ontology/index.d.ts.map +1 -1
- package/dist/ontology/index.js +5 -5
- package/dist/ontology/internal.js +7 -6
- package/dist/ontology/internal.js.map +3 -3
- package/dist/ontology/registry.d.ts +15 -2
- package/dist/ontology/registry.d.ts.map +1 -1
- package/dist/ontology/validation/normalize.d.ts.map +1 -1
- package/dist/pipelines/execution.d.ts +19 -0
- package/dist/pipelines/execution.d.ts.map +1 -0
- package/dist/pipelines/index.d.ts +1 -0
- package/dist/pipelines/index.d.ts.map +1 -1
- package/dist/pipelines/index.js +66 -0
- package/dist/pipelines/index.js.map +9 -0
- package/dist/pipelines/request.d.ts +6 -9
- package/dist/pipelines/request.d.ts.map +1 -1
- package/dist/pipelines/run-dispatch.d.ts +47 -0
- package/dist/pipelines/run-dispatch.d.ts.map +1 -0
- package/dist/projections/builders.d.ts +0 -2
- package/dist/projections/builders.d.ts.map +1 -1
- package/dist/projections/capability.d.ts +7 -0
- package/dist/projections/capability.d.ts.map +1 -0
- package/dist/projections/execution.d.ts +19 -0
- package/dist/projections/execution.d.ts.map +1 -0
- package/dist/projections/index.d.ts +3 -1
- package/dist/projections/index.d.ts.map +1 -1
- package/dist/projections/internal.d.ts +4 -10
- package/dist/projections/internal.d.ts.map +1 -1
- package/dist/projections/internal.js +42 -6
- package/dist/projections/internal.js.map +1 -1
- package/dist/projections/ownership.d.ts +2 -2
- package/dist/projections/ownership.d.ts.map +1 -1
- package/dist/projections/registry.d.ts +21 -11
- package/dist/projections/registry.d.ts.map +1 -1
- package/dist/projections/revision.d.ts +2 -2
- package/dist/projections/revision.d.ts.map +1 -1
- package/dist/projections/run-dispatch.d.ts +37 -0
- package/dist/projections/run-dispatch.d.ts.map +1 -0
- package/dist/projections/run-id.d.ts +3 -0
- package/dist/projections/run-id.d.ts.map +1 -0
- package/dist/projections/types.d.ts +3 -0
- package/dist/projections/types.d.ts.map +1 -1
- package/dist/projections/validation.d.ts +2 -2
- package/dist/projections/validation.d.ts.map +1 -1
- package/dist/queues/in-memory.d.ts +11 -10
- package/dist/queues/in-memory.d.ts.map +1 -1
- package/dist/queues/index.d.ts +1 -1
- package/dist/queues/index.d.ts.map +1 -1
- package/dist/queues/index.js +1 -1
- package/dist/queues/types.d.ts +52 -42
- package/dist/queues/types.d.ts.map +1 -1
- package/dist/rules/execution.d.ts +14 -0
- package/dist/rules/execution.d.ts.map +1 -0
- package/dist/rules/index.d.ts +1 -1
- package/dist/rules/index.d.ts.map +1 -1
- package/dist/rules/validation.d.ts +1 -2
- package/dist/rules/validation.d.ts.map +1 -1
- package/dist/runtime/ai-usage.d.ts +8 -0
- package/dist/runtime/ai-usage.d.ts.map +1 -0
- package/dist/runtime/create.d.ts +7 -5
- package/dist/runtime/create.d.ts.map +1 -1
- package/dist/runtime/definitions.d.ts +35 -0
- package/dist/runtime/definitions.d.ts.map +1 -0
- package/dist/runtime/host.d.ts +123 -0
- package/dist/runtime/host.d.ts.map +1 -0
- package/dist/runtime/index.d.ts +6 -5
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/internal.d.ts +4 -0
- package/dist/runtime/internal.d.ts.map +1 -1
- package/dist/runtime/internal.js +6 -2
- package/dist/runtime/internal.js.map +1 -1
- package/dist/runtime/ontology-mutations.d.ts +4 -2
- package/dist/runtime/ontology-mutations.d.ts.map +1 -1
- package/dist/runtime/resolve-definitions.d.ts +42 -0
- package/dist/runtime/resolve-definitions.d.ts.map +1 -0
- package/dist/runtime/sixb.d.ts +43 -219
- package/dist/runtime/sixb.d.ts.map +1 -1
- package/dist/runtime/types.d.ts +16 -216
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/scheduler/index.d.ts +1 -1
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +3 -6
- package/dist/scheduler/index.js.map +1 -1
- package/dist/scheduler/runtime.d.ts +7 -2
- package/dist/scheduler/runtime.d.ts.map +1 -1
- package/dist/schedules/execution.d.ts +6 -0
- package/dist/schedules/execution.d.ts.map +1 -0
- package/dist/schedules/index.js +9 -7
- package/dist/schedules/index.js.map +1 -1
- package/dist/schedules/types.d.ts +1 -3
- package/dist/schedules/types.d.ts.map +1 -1
- package/dist/security/every.d.ts +4 -1
- package/dist/security/every.d.ts.map +1 -1
- package/dist/security/grants.d.ts +4 -1
- package/dist/security/grants.d.ts.map +1 -1
- package/dist/security/index.d.ts +3 -1
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/registry.d.ts +42 -0
- package/dist/security/registry.d.ts.map +1 -0
- package/dist/security/types.d.ts +7 -12
- package/dist/security/types.d.ts.map +1 -1
- package/dist/security/validation.d.ts +2 -0
- package/dist/security/validation.d.ts.map +1 -1
- package/dist/storage/action-runs/failure.d.ts +7 -0
- package/dist/storage/action-runs/failure.d.ts.map +1 -0
- package/dist/storage/action-runs/failure.js +14 -0
- package/dist/storage/action-runs/failure.js.map +9 -0
- package/dist/storage/action-runs/idempotency.d.ts.map +1 -1
- package/dist/storage/action-runs/in-memory.d.ts +3 -1
- package/dist/storage/action-runs/in-memory.d.ts.map +1 -1
- package/dist/storage/action-runs/index.d.ts +2 -1
- package/dist/storage/action-runs/index.d.ts.map +1 -1
- package/dist/storage/action-runs/provider.d.ts +10 -0
- package/dist/storage/action-runs/provider.d.ts.map +1 -0
- package/dist/storage/action-runs/provider.js +13 -0
- package/dist/storage/action-runs/provider.js.map +9 -0
- package/dist/storage/action-runs/types.d.ts +37 -18
- package/dist/storage/action-runs/types.d.ts.map +1 -1
- package/dist/storage/agents/errors.d.ts +1 -1
- package/dist/storage/agents/errors.d.ts.map +1 -1
- package/dist/storage/agents/in-memory.d.ts +4 -1
- package/dist/storage/agents/in-memory.d.ts.map +1 -1
- package/dist/storage/agents/index.d.ts +2 -2
- package/dist/storage/agents/index.d.ts.map +1 -1
- package/dist/storage/agents/provider.d.ts +10 -0
- package/dist/storage/agents/provider.d.ts.map +1 -0
- package/dist/storage/agents/provider.js +17 -0
- package/dist/storage/agents/provider.js.map +9 -0
- package/dist/storage/agents/types.d.ts +13 -22
- package/dist/storage/agents/types.d.ts.map +1 -1
- package/dist/storage/ai-usage/errors.d.ts +8 -0
- package/dist/storage/ai-usage/errors.d.ts.map +1 -0
- package/dist/storage/ai-usage/in-memory.d.ts +28 -0
- package/dist/storage/ai-usage/in-memory.d.ts.map +1 -0
- package/dist/storage/ai-usage/index.d.ts +8 -0
- package/dist/storage/ai-usage/index.d.ts.map +1 -0
- package/dist/storage/ai-usage/record.d.ts +6 -0
- package/dist/storage/ai-usage/record.d.ts.map +1 -0
- package/dist/storage/ai-usage/types.d.ts +89 -0
- package/dist/storage/ai-usage/types.d.ts.map +1 -0
- package/dist/storage/ai-usage/usage.d.ts +11 -0
- package/dist/storage/ai-usage/usage.d.ts.map +1 -0
- package/dist/storage/auth/types.d.ts +1 -0
- package/dist/storage/auth/types.d.ts.map +1 -1
- package/dist/storage/connector-connections/errors.d.ts +12 -0
- package/dist/storage/connector-connections/errors.d.ts.map +1 -0
- package/dist/storage/connector-connections/in-memory.d.ts +81 -0
- package/dist/storage/connector-connections/in-memory.d.ts.map +1 -0
- package/dist/storage/connector-connections/index.d.ts +7 -0
- package/dist/storage/connector-connections/index.d.ts.map +1 -0
- package/dist/storage/connector-connections/provider/authorizations.d.ts +20 -0
- package/dist/storage/connector-connections/provider/authorizations.d.ts.map +1 -0
- package/dist/storage/connector-connections/provider/connections.d.ts +17 -0
- package/dist/storage/connector-connections/provider/connections.d.ts.map +1 -0
- package/dist/storage/connector-connections/provider/runs.d.ts +14 -0
- package/dist/storage/connector-connections/provider/runs.d.ts.map +1 -0
- package/dist/storage/connector-connections/provider/shared.d.ts +74 -0
- package/dist/storage/connector-connections/provider/shared.d.ts.map +1 -0
- package/dist/storage/connector-connections/provider.d.ts +49 -0
- package/dist/storage/connector-connections/provider.d.ts.map +1 -0
- package/dist/storage/connector-connections/provider.js +1025 -0
- package/dist/storage/connector-connections/provider.js.map +14 -0
- package/dist/storage/connector-connections/types.d.ts +402 -0
- package/dist/storage/connector-connections/types.d.ts.map +1 -0
- package/dist/storage/executions/errors.d.ts +8 -0
- package/dist/storage/executions/errors.d.ts.map +1 -0
- package/dist/storage/executions/in-memory.d.ts +21 -0
- package/dist/storage/executions/in-memory.d.ts.map +1 -0
- package/dist/storage/executions/index.d.ts +5 -0
- package/dist/storage/executions/index.d.ts.map +1 -0
- package/dist/storage/executions/provider.d.ts +29 -0
- package/dist/storage/executions/provider.d.ts.map +1 -0
- package/dist/storage/executions/provider.js +208 -0
- package/dist/storage/executions/provider.js.map +10 -0
- package/dist/storage/executions/run-link.d.ts +24 -0
- package/dist/storage/executions/run-link.d.ts.map +1 -0
- package/dist/storage/executions/types.d.ts +62 -0
- package/dist/storage/executions/types.d.ts.map +1 -0
- package/dist/storage/executions/validation.d.ts +13 -0
- package/dist/storage/executions/validation.d.ts.map +1 -0
- package/dist/storage/in-memory/index.d.ts +20 -5
- package/dist/storage/in-memory/index.d.ts.map +1 -1
- package/dist/storage/index.d.ts +28 -17
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +90 -27
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/ontology/commits.d.ts +1 -0
- package/dist/storage/ontology/commits.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/index.d.ts +1 -0
- package/dist/storage/ontology/in-memory/index.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/materializations-state.d.ts +3 -2
- package/dist/storage/ontology/in-memory/materializations-state.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/materializations-work.d.ts +2 -2
- package/dist/storage/ontology/in-memory/materializations-work.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/materializations.d.ts +3 -1
- package/dist/storage/ontology/in-memory/materializations.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/shared-state.d.ts +7 -2
- package/dist/storage/ontology/in-memory/shared-state.d.ts.map +1 -1
- package/dist/storage/ontology/index.d.ts +3 -2
- package/dist/storage/ontology/index.d.ts.map +1 -1
- package/dist/storage/ontology/materializations.d.ts +50 -5
- package/dist/storage/ontology/materializations.d.ts.map +1 -1
- package/dist/storage/ontology/outbox.d.ts +8 -2
- package/dist/storage/ontology/outbox.d.ts.map +1 -1
- package/dist/storage/ontology/provider-work.d.ts.map +1 -1
- package/dist/storage/ontology/provider.d.ts +5 -22
- package/dist/storage/ontology/provider.d.ts.map +1 -1
- package/dist/storage/ontology/provider.js +6 -7
- package/dist/storage/ontology/provider.js.map +1 -1
- package/dist/storage/operation-scope.d.ts.map +1 -1
- package/dist/storage/operation-scope.js +1 -1
- package/dist/storage/pipeline-runs/idempotency.d.ts +3 -0
- package/dist/storage/pipeline-runs/idempotency.d.ts.map +1 -0
- package/dist/storage/pipeline-runs/in-memory.d.ts +5 -1
- package/dist/storage/pipeline-runs/in-memory.d.ts.map +1 -1
- package/dist/storage/pipeline-runs/index.d.ts +3 -1
- package/dist/storage/pipeline-runs/index.d.ts.map +1 -1
- package/dist/storage/pipeline-runs/provider.d.ts +10 -0
- package/dist/storage/pipeline-runs/provider.d.ts.map +1 -0
- package/dist/storage/pipeline-runs/provider.js +11 -0
- package/dist/storage/pipeline-runs/provider.js.map +9 -0
- package/dist/storage/pipeline-runs/types.d.ts +30 -14
- package/dist/storage/pipeline-runs/types.d.ts.map +1 -1
- package/dist/storage/projection-runs/in-memory.d.ts +8 -3
- package/dist/storage/projection-runs/in-memory.d.ts.map +1 -1
- package/dist/storage/projection-runs/index.d.ts +2 -2
- package/dist/storage/projection-runs/index.d.ts.map +1 -1
- package/dist/storage/projection-runs/lifecycle.d.ts +14 -8
- package/dist/storage/projection-runs/lifecycle.d.ts.map +1 -1
- package/dist/storage/projection-runs/provider.d.ts +13 -0
- package/dist/storage/projection-runs/provider.d.ts.map +1 -0
- package/dist/storage/projection-runs/{lifecycle.js → provider.js} +15 -4
- package/dist/storage/projection-runs/provider.js.map +9 -0
- package/dist/storage/projection-runs/types.d.ts +28 -11
- package/dist/storage/projection-runs/types.d.ts.map +1 -1
- package/dist/storage/run-listing.d.ts +8 -9
- package/dist/storage/run-listing.d.ts.map +1 -1
- package/dist/storage/sync-runs/idempotency.d.ts +3 -0
- package/dist/storage/sync-runs/idempotency.d.ts.map +1 -0
- package/dist/storage/sync-runs/in-memory.d.ts +5 -1
- package/dist/storage/sync-runs/in-memory.d.ts.map +1 -1
- package/dist/storage/sync-runs/index.d.ts +3 -1
- package/dist/storage/sync-runs/index.d.ts.map +1 -1
- package/dist/storage/sync-runs/provider.d.ts +10 -0
- package/dist/storage/sync-runs/provider.d.ts.map +1 -0
- package/dist/storage/sync-runs/provider.js +11 -0
- package/dist/storage/sync-runs/provider.js.map +9 -0
- package/dist/storage/sync-runs/types.d.ts +35 -14
- package/dist/storage/sync-runs/types.d.ts.map +1 -1
- package/dist/storage/types.d.ts +20 -15
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/webhook-runs/errors.d.ts +3 -0
- package/dist/storage/webhook-runs/errors.d.ts.map +1 -1
- package/dist/storage/webhook-runs/in-memory.d.ts +13 -1
- package/dist/storage/webhook-runs/in-memory.d.ts.map +1 -1
- package/dist/storage/webhook-runs/index.d.ts +3 -2
- package/dist/storage/webhook-runs/index.d.ts.map +1 -1
- package/dist/storage/webhook-runs/provider.d.ts +10 -0
- package/dist/storage/webhook-runs/provider.d.ts.map +1 -0
- package/dist/storage/webhook-runs/provider.js +11 -0
- package/dist/storage/webhook-runs/provider.js.map +9 -0
- package/dist/storage/webhook-runs/types.d.ts +37 -11
- package/dist/storage/webhook-runs/types.d.ts.map +1 -1
- package/dist/storage/workflow-runs/in-memory.d.ts +6 -2
- package/dist/storage/workflow-runs/in-memory.d.ts.map +1 -1
- package/dist/storage/workflow-runs/index.d.ts +2 -1
- package/dist/storage/workflow-runs/index.d.ts.map +1 -1
- package/dist/storage/workflow-runs/provider.d.ts +19 -0
- package/dist/storage/workflow-runs/provider.d.ts.map +1 -0
- package/dist/storage/workflow-runs/provider.js +19 -0
- package/dist/storage/workflow-runs/provider.js.map +9 -0
- package/dist/storage/workflow-runs/types.d.ts +30 -30
- package/dist/storage/workflow-runs/types.d.ts.map +1 -1
- package/dist/syncs/builders.d.ts +11 -3
- package/dist/syncs/builders.d.ts.map +1 -1
- package/dist/syncs/execution.d.ts +18 -0
- package/dist/syncs/execution.d.ts.map +1 -0
- package/dist/syncs/index.d.ts +3 -1
- package/dist/syncs/index.d.ts.map +1 -1
- package/dist/syncs/index.js +65 -0
- package/dist/syncs/index.js.map +9 -0
- package/dist/syncs/request.d.ts +6 -16
- package/dist/syncs/request.d.ts.map +1 -1
- package/dist/syncs/run-dispatch.d.ts +47 -0
- package/dist/syncs/run-dispatch.d.ts.map +1 -0
- package/dist/syncs/sources.d.ts +8 -0
- package/dist/syncs/sources.d.ts.map +1 -0
- package/dist/syncs/types.d.ts +34 -22
- package/dist/syncs/types.d.ts.map +1 -1
- package/dist/syncs/validation.d.ts +14 -0
- package/dist/syncs/validation.d.ts.map +1 -0
- package/dist/testing/action-execution.d.ts +12 -0
- package/dist/testing/action-execution.d.ts.map +1 -0
- package/dist/testing/agent-execution.d.ts +14 -0
- package/dist/testing/agent-execution.d.ts.map +1 -0
- package/dist/testing/agent-storage-contract.d.ts +10 -3
- package/dist/testing/agent-storage-contract.d.ts.map +1 -1
- package/dist/testing/ai-usage-storage-contract.d.ts +13 -0
- package/dist/testing/ai-usage-storage-contract.d.ts.map +1 -0
- package/dist/testing/auth-storage-contract.d.ts.map +1 -1
- package/dist/testing/broker-contract.d.ts.map +1 -1
- package/dist/testing/connector-connection-storage-contract.d.ts +16 -0
- package/dist/testing/connector-connection-storage-contract.d.ts.map +1 -0
- package/dist/testing/execution-storage-contract.d.ts +15 -0
- package/dist/testing/execution-storage-contract.d.ts.map +1 -0
- package/dist/testing/execution.d.ts +23 -0
- package/dist/testing/execution.d.ts.map +1 -0
- package/dist/testing/index.d.ts +13 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +4270 -1484
- package/dist/testing/index.js.map +27 -14
- package/dist/testing/lake-merge-storage-contract.d.ts +7 -0
- package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -0
- package/dist/testing/lake-storage-contract.d.ts.map +1 -1
- package/dist/testing/materializer-fixture.d.ts +2 -2
- package/dist/testing/materializer-fixture.d.ts.map +1 -1
- package/dist/testing/materializer-storage-contract.d.ts.map +1 -1
- package/dist/testing/ontology-contract-fixture.d.ts +1 -0
- package/dist/testing/ontology-contract-fixture.d.ts.map +1 -1
- package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
- package/dist/testing/pipeline-execution.d.ts +16 -0
- package/dist/testing/pipeline-execution.d.ts.map +1 -0
- package/dist/testing/projection-execution.d.ts +20 -0
- package/dist/testing/projection-execution.d.ts.map +1 -0
- package/dist/testing/projection-run-storage-contract.d.ts +9 -4
- package/dist/testing/projection-run-storage-contract.d.ts.map +1 -1
- package/dist/testing/queues-contract.d.ts.map +1 -1
- package/dist/testing/sync-execution.d.ts +16 -0
- package/dist/testing/sync-execution.d.ts.map +1 -0
- package/dist/testing/webhook-execution.d.ts +12 -0
- package/dist/testing/webhook-execution.d.ts.map +1 -0
- package/dist/testing/webhook-run-storage-contract.d.ts +11 -0
- package/dist/testing/webhook-run-storage-contract.d.ts.map +1 -0
- package/dist/testing/workflow-execution.d.ts +23 -0
- package/dist/testing/workflow-execution.d.ts.map +1 -0
- package/dist/webhooks/index.d.ts +2 -1
- package/dist/webhooks/index.d.ts.map +1 -1
- package/dist/webhooks/internal.d.ts +2 -0
- package/dist/webhooks/internal.d.ts.map +1 -0
- package/dist/webhooks/internal.js +150 -0
- package/dist/webhooks/internal.js.map +10 -0
- package/dist/webhooks/registry.d.ts +18 -4
- package/dist/webhooks/registry.d.ts.map +1 -1
- package/dist/webhooks/run-admission.d.ts +25 -0
- package/dist/webhooks/run-admission.d.ts.map +1 -0
- package/dist/webhooks/types.d.ts +8 -5
- package/dist/webhooks/types.d.ts.map +1 -1
- package/dist/workers/index.js +18 -19
- package/dist/workers/index.js.map +4 -4
- package/dist/workers/queue-delivery.d.ts +7 -7
- package/dist/workers/queue-delivery.d.ts.map +1 -1
- package/dist/workers/queue-worker.d.ts +30 -11
- package/dist/workers/queue-worker.d.ts.map +1 -1
- package/dist/workflows/execution.d.ts +49 -0
- package/dist/workflows/execution.d.ts.map +1 -0
- package/dist/workflows/failure.d.ts +28 -0
- package/dist/workflows/failure.d.ts.map +1 -0
- package/dist/workflows/index.d.ts +4 -2
- package/dist/workflows/index.d.ts.map +1 -1
- package/dist/workflows/index.js +63 -35
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/request.d.ts +2 -1
- package/dist/workflows/request.d.ts.map +1 -1
- package/dist/workflows/run-dispatch.d.ts +59 -0
- package/dist/workflows/run-dispatch.d.ts.map +1 -0
- package/dist/workflows/types.d.ts +38 -8
- package/dist/workflows/types.d.ts.map +1 -1
- package/package.json +107 -5
- package/src/actions/commit-edits.ts +0 -3
- package/src/actions/execution.ts +83 -0
- package/src/actions/index.ts +1 -1
- package/src/actions/registry.ts +22 -10
- package/src/actions/request.ts +55 -177
- package/src/actions/run-dispatch.ts +276 -0
- package/src/actions/types/context.ts +2 -4
- package/src/actions/validation.ts +2 -2
- package/src/agents/adapters.ts +8 -12
- package/src/agents/authority.ts +189 -0
- package/src/agents/builders.ts +53 -3
- package/src/agents/dispatch.ts +1 -6
- package/src/agents/errors.ts +24 -0
- package/src/agents/execution.ts +254 -0
- package/src/agents/index.ts +37 -5
- package/src/agents/prompt.ts +17 -5
- package/src/agents/request.ts +153 -13
- package/src/agents/streams.ts +150 -3
- package/src/agents/tool-definition.ts +93 -0
- package/src/agents/types.ts +99 -0
- package/src/agents/validation.ts +289 -5
- package/src/auth/attribution.ts +48 -0
- package/src/auth/index.ts +1 -0
- package/src/auth/runtime.ts +5 -5
- package/src/authorization/decision.ts +75 -14
- package/src/authorization/grant-kinds.ts +9 -0
- package/src/authorization/index.ts +2 -0
- package/src/blob-storage/execution.ts +78 -0
- package/src/blob-storage/validation.ts +2 -10
- package/src/bootstrap/discovery.ts +88 -268
- package/src/bootstrap/index.ts +2 -13
- package/src/broker/in-memory.ts +8 -1
- package/src/broker/types.ts +5 -0
- package/src/connectors/builders.ts +37 -2
- package/src/connectors/connections/authorizations.ts +646 -0
- package/src/connectors/connections/capability.ts +59 -0
- package/src/connectors/connections/command-context.ts +98 -0
- package/src/connectors/connections/contracts.ts +208 -0
- package/src/connectors/connections/credential-codec.ts +48 -0
- package/src/connectors/connections/credential-mutations.ts +574 -0
- package/src/connectors/connections/execution.ts +138 -0
- package/src/connectors/connections/internal.ts +17 -0
- package/src/connectors/connections/provider-operation.ts +41 -0
- package/src/connectors/connections/request.ts +447 -0
- package/src/connectors/connections/runs.ts +702 -0
- package/src/connectors/connections/service.ts +644 -0
- package/src/connectors/connections/storage-boundary.ts +13 -0
- package/src/connectors/connections/tokens.ts +292 -0
- package/src/connectors/connections/validation.ts +316 -0
- package/src/connectors/connections/views.ts +37 -0
- package/src/connectors/credentials.ts +149 -0
- package/src/connectors/errors.ts +111 -3
- package/src/connectors/execution.ts +157 -0
- package/src/connectors/index.ts +26 -2
- package/src/connectors/service.ts +142 -0
- package/src/connectors/types.ts +156 -7
- package/src/datasets/builders.ts +49 -5
- package/src/datasets/changes.ts +13 -0
- package/src/datasets/execution.ts +24 -0
- package/src/datasets/index.ts +3 -0
- package/src/datasets/types.ts +5 -0
- package/src/datasets/validation.ts +53 -11
- package/src/error-reporting/capability.ts +33 -106
- package/src/error-reporting/internal.ts +3 -1
- package/src/error-reporting/reporter.ts +19 -3
- package/src/error-reporting/reports.ts +172 -0
- package/src/error-reporting/types.ts +97 -43
- package/src/errors/catalog.ts +149 -0
- package/src/errors/internal.ts +322 -0
- package/src/errors/types.ts +21 -0
- package/src/events/definitions.ts +0 -4
- package/src/events/execution.ts +45 -0
- package/src/events/index.ts +15 -14
- package/src/events/outbox-dispatcher.ts +53 -18
- package/src/events/{runtime.ts → service.ts} +19 -23
- package/src/events/types/pipelines.ts +4 -1
- package/src/events/types/syncs.ts +3 -0
- package/src/events/types/workflows.ts +4 -2
- package/src/execution/agent.ts +130 -0
- package/src/execution/authorization.ts +409 -0
- package/src/execution/dispatch.ts +7 -0
- package/src/execution/durable.ts +193 -0
- package/src/execution/index.ts +12 -0
- package/src/execution/primitive.ts +50 -0
- package/src/execution/request.ts +109 -0
- package/src/execution/scopes.ts +198 -0
- package/src/execution/types.ts +113 -0
- package/src/http/api-routes.ts +42 -7
- package/src/index.ts +127 -10
- package/src/json.ts +11 -8
- package/src/lake-storage/definition-updates.ts +21 -0
- package/src/lake-storage/in-memory.ts +284 -2
- package/src/lake-storage/index.ts +14 -0
- package/src/lake-storage/merge-validation.ts +117 -0
- package/src/lake-storage/merge.ts +35 -0
- package/src/lake-storage/types.ts +3 -1
- package/src/logging/execution.ts +28 -0
- package/src/logging/index.ts +4 -4
- package/src/logging/{runtime.ts → service.ts} +7 -7
- package/src/materialization/events.ts +1 -0
- package/src/materialization/index.ts +2 -0
- package/src/materialization/model.ts +30 -18
- package/src/materializer/README.md +9 -13
- package/src/materializer/edits/commit.ts +85 -28
- package/src/materializer/edits/load-state.ts +79 -16
- package/src/materializer/edits/operations.ts +72 -36
- package/src/materializer/edits/plan.ts +95 -22
- package/src/materializer/edits/working-state.ts +86 -55
- package/src/materializer/effective/build-events.ts +2 -0
- package/src/materializer/effective/diff.ts +22 -0
- package/src/materializer/effective/load-state.ts +0 -31
- package/src/materializer/effective/resolve.ts +62 -0
- package/src/materializer/execution/commit-lifecycle.ts +9 -1
- package/src/materializer/execution/plan-stream.ts +33 -9
- package/src/materializer/execution/scope.ts +95 -0
- package/src/materializer/execution/work-executor.ts +6 -2
- package/src/materializer/execution/work-records.ts +39 -6
- package/src/materializer/index.ts +9 -1
- package/src/materializer/materializer.ts +67 -5
- package/src/materializer/projections/finish-run.ts +29 -11
- package/src/materializer/projections/replace.ts +55 -22
- package/src/materializer/projections/replacement-plan.ts +37 -7
- package/src/materializer/shared/batching.ts +4 -1
- package/src/materializer/shared/normalize.ts +0 -19
- package/src/materializer/telemetry/append.ts +57 -26
- package/src/materializer/telemetry/plan.ts +15 -6
- package/src/objects/action/request.ts +5 -5
- package/src/objects/context/index.ts +1 -0
- package/src/objects/context/types.ts +6 -0
- package/src/objects/execution.ts +346 -0
- package/src/objects/materializer-adapter.ts +1 -23
- package/src/objects/query/executor.ts +15 -29
- package/src/objects/query/index.ts +1 -2
- package/src/objects/query/planner.ts +0 -6
- package/src/objects/sdk/object-handle.ts +2 -2
- package/src/objects/sdk/object-set.ts +17 -7
- package/src/objects/sdk/runtime-query-executor.ts +9 -2
- package/src/objects/sdk/telemetry-channel.ts +5 -1
- package/src/objects/service/action-service.ts +5 -2
- package/src/objects/service/list-service.ts +1 -1
- package/src/objects/telemetry/history.ts +8 -3
- package/src/objects/telemetry/write-batch.ts +0 -2
- package/src/ontology/index.ts +6 -1
- package/src/ontology/json-schema.ts +2 -1
- package/src/ontology/registry.ts +16 -2
- package/src/ontology/validation/normalize.ts +9 -15
- package/src/pipelines/execution.ts +105 -0
- package/src/pipelines/index.ts +7 -0
- package/src/pipelines/request.ts +32 -26
- package/src/pipelines/run-dispatch.ts +308 -0
- package/src/projections/builders.ts +0 -9
- package/src/projections/capability.ts +37 -0
- package/src/projections/execution.ts +85 -0
- package/src/projections/index.ts +2 -1
- package/src/projections/internal.ts +17 -60
- package/src/projections/ownership.ts +2 -2
- package/src/projections/registry.ts +26 -11
- package/src/projections/revision.ts +7 -5
- package/src/projections/run-dispatch.ts +497 -0
- package/src/projections/run-id.ts +20 -0
- package/src/projections/types.ts +12 -0
- package/src/projections/validation.ts +3 -3
- package/src/queues/in-memory.ts +37 -11
- package/src/queues/index.ts +9 -2
- package/src/queues/types.ts +70 -45
- package/src/rules/execution.ts +49 -0
- package/src/rules/index.ts +0 -1
- package/src/rules/validation.ts +2 -6
- package/src/runtime/ai-usage.ts +17 -0
- package/src/runtime/create.ts +28 -68
- package/src/runtime/definitions.ts +44 -0
- package/src/runtime/host.ts +377 -0
- package/src/runtime/index.ts +5 -13
- package/src/runtime/internal.ts +12 -0
- package/src/runtime/ontology-mutations.ts +5 -3
- package/src/runtime/resolve-definitions.ts +238 -0
- package/src/runtime/sixb.ts +95 -807
- package/src/runtime/types.ts +17 -290
- package/src/scheduler/index.ts +1 -1
- package/src/scheduler/runtime.ts +37 -6
- package/src/schedules/execution.ts +14 -0
- package/src/schedules/types.ts +0 -8
- package/src/security/every.ts +4 -0
- package/src/security/grants.ts +13 -1
- package/src/security/index.ts +3 -1
- package/src/security/registry.ts +107 -0
- package/src/security/types.ts +8 -12
- package/src/security/validation.ts +7 -0
- package/src/storage/action-runs/failure.ts +64 -0
- package/src/storage/action-runs/idempotency.ts +3 -1
- package/src/storage/action-runs/in-memory.ts +39 -9
- package/src/storage/action-runs/index.ts +3 -0
- package/src/storage/action-runs/provider.ts +25 -0
- package/src/storage/action-runs/types.ts +61 -27
- package/src/storage/agents/errors.ts +1 -0
- package/src/storage/agents/in-memory.ts +49 -11
- package/src/storage/agents/index.ts +2 -1
- package/src/storage/agents/provider.ts +27 -0
- package/src/storage/agents/types.ts +19 -19
- package/src/storage/ai-usage/errors.ts +13 -0
- package/src/storage/ai-usage/in-memory.ts +162 -0
- package/src/storage/ai-usage/index.ts +21 -0
- package/src/storage/ai-usage/record.ts +74 -0
- package/src/storage/ai-usage/types.ts +102 -0
- package/src/storage/ai-usage/usage.ts +104 -0
- package/src/storage/auth/types.ts +1 -0
- package/src/storage/connector-connections/errors.ts +24 -0
- package/src/storage/connector-connections/in-memory.ts +1377 -0
- package/src/storage/connector-connections/index.ts +66 -0
- package/src/storage/connector-connections/provider/authorizations.ts +446 -0
- package/src/storage/connector-connections/provider/connections.ts +291 -0
- package/src/storage/connector-connections/provider/runs.ts +369 -0
- package/src/storage/connector-connections/provider/shared.ts +342 -0
- package/src/storage/connector-connections/provider.ts +219 -0
- package/src/storage/connector-connections/types.ts +546 -0
- package/src/storage/executions/errors.ts +21 -0
- package/src/storage/executions/in-memory.ts +75 -0
- package/src/storage/executions/index.ts +16 -0
- package/src/storage/executions/provider.ts +292 -0
- package/src/storage/executions/run-link.ts +70 -0
- package/src/storage/executions/types.ts +49 -0
- package/src/storage/executions/validation.ts +370 -0
- package/src/storage/in-memory/index.ts +50 -16
- package/src/storage/index.ts +155 -15
- package/src/storage/ontology/commits.ts +1 -0
- package/src/storage/ontology/in-memory/index.ts +2 -0
- package/src/storage/ontology/in-memory/materializations-finalization.ts +2 -1
- package/src/storage/ontology/in-memory/materializations-state.ts +10 -0
- package/src/storage/ontology/in-memory/materializations-work.ts +2 -1
- package/src/storage/ontology/in-memory/materializations.ts +131 -9
- package/src/storage/ontology/in-memory/outbox.ts +1 -1
- package/src/storage/ontology/in-memory/shared-state.ts +12 -1
- package/src/storage/ontology/index.ts +6 -0
- package/src/storage/ontology/materializations.ts +50 -4
- package/src/storage/ontology/outbox.ts +13 -2
- package/src/storage/ontology/provider-header-validation.ts +1 -0
- package/src/storage/ontology/provider-work.ts +33 -14
- package/src/storage/ontology/provider.ts +72 -52
- package/src/storage/operation-scope.ts +1 -0
- package/src/storage/pipeline-runs/idempotency.ts +14 -0
- package/src/storage/pipeline-runs/in-memory.ts +88 -8
- package/src/storage/pipeline-runs/index.ts +5 -1
- package/src/storage/pipeline-runs/provider.ts +25 -0
- package/src/storage/pipeline-runs/types.ts +37 -14
- package/src/storage/projection-runs/in-memory.ts +93 -24
- package/src/storage/projection-runs/index.ts +4 -0
- package/src/storage/projection-runs/lifecycle.ts +165 -36
- package/src/storage/projection-runs/provider.ts +34 -0
- package/src/storage/projection-runs/types.ts +34 -11
- package/src/storage/run-listing.ts +22 -13
- package/src/storage/sync-runs/idempotency.ts +18 -0
- package/src/storage/sync-runs/in-memory.ts +92 -9
- package/src/storage/sync-runs/index.ts +5 -1
- package/src/storage/sync-runs/provider.ts +25 -0
- package/src/storage/sync-runs/types.ts +44 -15
- package/src/storage/types.ts +45 -17
- package/src/storage/webhook-runs/errors.ts +14 -0
- package/src/storage/webhook-runs/in-memory.ts +84 -9
- package/src/storage/webhook-runs/index.ts +5 -1
- package/src/storage/webhook-runs/provider.ts +30 -0
- package/src/storage/webhook-runs/types.ts +52 -11
- package/src/storage/workflow-runs/in-memory.ts +91 -55
- package/src/storage/workflow-runs/index.ts +2 -0
- package/src/storage/workflow-runs/provider.ts +70 -0
- package/src/storage/workflow-runs/types.ts +38 -25
- package/src/syncs/builders.ts +33 -15
- package/src/syncs/execution.ts +78 -0
- package/src/syncs/index.ts +14 -0
- package/src/syncs/request.ts +32 -43
- package/src/syncs/run-dispatch.ts +312 -0
- package/src/syncs/sources.ts +20 -0
- package/src/syncs/types.ts +75 -25
- package/src/syncs/validation.ts +77 -0
- package/src/testing/action-execution.ts +61 -0
- package/src/testing/agent-execution.ts +81 -0
- package/src/testing/agent-storage-contract.ts +158 -63
- package/src/testing/ai-usage-storage-contract.ts +528 -0
- package/src/testing/auth-storage-contract.ts +17 -1
- package/src/testing/broker-contract.ts +16 -1
- package/src/testing/connector-connection-storage-contract.ts +1052 -0
- package/src/testing/execution-storage-contract.ts +435 -0
- package/src/testing/execution.ts +48 -0
- package/src/testing/index.ts +56 -0
- package/src/testing/lake-merge-storage-contract.ts +302 -0
- package/src/testing/lake-storage-contract.ts +23 -0
- package/src/testing/materializer-fixture.ts +11 -3
- package/src/testing/materializer-storage-contract.ts +213 -11
- package/src/testing/ontology-contract-fixture.ts +35 -2
- package/src/testing/ontology-storage-contract.ts +75 -14
- package/src/testing/pipeline-execution.ts +64 -0
- package/src/testing/projection-execution.ts +98 -0
- package/src/testing/projection-run-storage-contract.ts +215 -29
- package/src/testing/queues-contract.ts +40 -51
- package/src/testing/sync-execution.ts +61 -0
- package/src/testing/webhook-execution.ts +47 -0
- package/src/testing/webhook-run-storage-contract.ts +240 -0
- package/src/testing/workflow-execution.ts +77 -0
- package/src/webhooks/index.ts +2 -1
- package/src/webhooks/internal.ts +5 -0
- package/src/webhooks/registry.ts +60 -36
- package/src/webhooks/run-admission.ts +172 -0
- package/src/webhooks/types.ts +8 -5
- package/src/workers/queue-delivery.ts +25 -22
- package/src/workers/queue-worker.ts +62 -32
- package/src/workflows/execution.ts +292 -0
- package/src/workflows/failure.ts +63 -0
- package/src/workflows/index.ts +10 -1
- package/src/workflows/request.ts +39 -118
- package/src/workflows/run-dispatch.ts +359 -0
- package/src/workflows/snapshot.ts +1 -10
- package/src/workflows/types.ts +39 -8
- package/dist/actions/runtime.d.ts +0 -11
- package/dist/actions/runtime.d.ts.map +0 -1
- package/dist/agents/runtime.d.ts +0 -41
- package/dist/agents/runtime.d.ts.map +0 -1
- package/dist/chunk-0fygrz37.js +0 -354
- package/dist/chunk-0fygrz37.js.map +0 -17
- package/dist/chunk-0psb6kdw.js +0 -989
- package/dist/chunk-0psb6kdw.js.map +0 -15
- package/dist/chunk-1vffvydj.js.map +0 -10
- package/dist/chunk-2gpr6jsz.js.map +0 -13
- package/dist/chunk-2s6sydsh.js.map +0 -12
- package/dist/chunk-50kv63vj.js.map +0 -12
- package/dist/chunk-590dejbp.js +0 -49
- package/dist/chunk-590dejbp.js.map +0 -10
- package/dist/chunk-867jxh7c.js.map +0 -19
- package/dist/chunk-aebzcsxr.js.map +0 -48
- package/dist/chunk-btpe64e4.js +0 -554
- package/dist/chunk-btpe64e4.js.map +0 -13
- package/dist/chunk-dcgrzj1t.js.map +0 -36
- package/dist/chunk-dhmj53mx.js.map +0 -16
- package/dist/chunk-hsv43v58.js +0 -1390
- package/dist/chunk-hsv43v58.js.map +0 -21
- package/dist/chunk-jdwx7vzs.js.map +0 -14
- package/dist/chunk-k25jm1x5.js +0 -102
- package/dist/chunk-k25jm1x5.js.map +0 -10
- package/dist/chunk-k41ajtz7.js +0 -352
- package/dist/chunk-k41ajtz7.js.map +0 -13
- package/dist/chunk-k6j72mtt.js +0 -9
- package/dist/chunk-k6j72mtt.js.map +0 -10
- package/dist/chunk-nvamz5dv.js +0 -819
- package/dist/chunk-nvamz5dv.js.map +0 -21
- package/dist/chunk-pv1yad91.js +0 -1165
- package/dist/chunk-pv1yad91.js.map +0 -27
- package/dist/chunk-q4qzq0ea.js.map +0 -14
- package/dist/chunk-r65yscvk.js.map +0 -11
- package/dist/chunk-t358gywy.js.map +0 -34
- package/dist/chunk-t72dvahb.js.map +0 -12
- package/dist/chunk-v5c085yp.js.map +0 -10
- package/dist/chunk-wj01s5hr.js.map +0 -11
- package/dist/chunk-wxhdnwh4.js +0 -37
- package/dist/chunk-wxhdnwh4.js.map +0 -10
- package/dist/chunk-xz5g49bp.js.map +0 -11
- package/dist/chunk-ya6brh8a.js.map +0 -11
- package/dist/chunk-yvef9xwc.js.map +0 -44
- package/dist/chunk-yxss87qa.js.map +0 -14
- package/dist/connectors/runtime.d.ts +0 -13
- package/dist/connectors/runtime.d.ts.map +0 -1
- package/dist/events/runtime.d.ts.map +0 -1
- package/dist/objects/contexts.d.ts +0 -45
- package/dist/objects/contexts.d.ts.map +0 -1
- package/dist/objects/helpers.d.ts +0 -7
- package/dist/objects/helpers.d.ts.map +0 -1
- package/dist/runtime/scoped.d.ts +0 -158
- package/dist/runtime/scoped.d.ts.map +0 -1
- package/dist/security/runtime.d.ts +0 -16
- package/dist/security/runtime.d.ts.map +0 -1
- package/dist/storage/webhook-deliveries/in-memory.d.ts +0 -18
- package/dist/storage/webhook-deliveries/in-memory.d.ts.map +0 -1
- package/dist/storage/webhook-deliveries/index.d.ts +0 -3
- package/dist/storage/webhook-deliveries/index.d.ts.map +0 -1
- package/dist/storage/webhook-deliveries/types.d.ts +0 -43
- package/dist/storage/webhook-deliveries/types.d.ts.map +0 -1
- package/dist/workflows/runtime.d.ts +0 -33
- package/dist/workflows/runtime.d.ts.map +0 -1
- package/src/actions/runtime.ts +0 -31
- package/src/agents/runtime.ts +0 -124
- package/src/connectors/runtime.ts +0 -100
- package/src/objects/contexts.ts +0 -64
- package/src/objects/helpers.ts +0 -18
- package/src/runtime/scoped.ts +0 -436
- package/src/security/runtime.ts +0 -101
- package/src/storage/webhook-deliveries/in-memory.ts +0 -108
- package/src/storage/webhook-deliveries/index.ts +0 -9
- package/src/storage/webhook-deliveries/types.ts +0 -41
- package/src/workflows/runtime.ts +0 -68
- /package/dist/{chunk-45tw90k7.js.map → chunk-4gz41why.js.map} +0 -0
- /package/dist/{chunk-vj723r3p.js.map → chunk-8b55ygje.js.map} +0 -0
- /package/dist/{chunk-p6r5g77m.js.map → chunk-vybf6pkp.js.map} +0 -0
- /package/dist/{chunk-5yny9z0e.js.map → chunk-z3zp0bj1.js.map} +0 -0
|
@@ -4,10 +4,11 @@ import {
|
|
|
4
4
|
} from "./chunk-04b07a9q.js";
|
|
5
5
|
import {
|
|
6
6
|
isFileRef
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-zqysyfjt.js";
|
|
8
8
|
import {
|
|
9
|
-
isJsonValue
|
|
10
|
-
|
|
9
|
+
isJsonValue,
|
|
10
|
+
isPlainRecord
|
|
11
|
+
} from "./chunk-t8t39h7v.js";
|
|
11
12
|
|
|
12
13
|
// src/datasets/errors.ts
|
|
13
14
|
class DatasetValidationError extends Error {
|
|
@@ -29,13 +30,6 @@ var datasetColumnTypes = new Set([
|
|
|
29
30
|
function isRecord(value) {
|
|
30
31
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
31
32
|
}
|
|
32
|
-
function isPlainObject(value) {
|
|
33
|
-
if (!isRecord(value)) {
|
|
34
|
-
return false;
|
|
35
|
-
}
|
|
36
|
-
const prototype = Object.getPrototypeOf(value);
|
|
37
|
-
return prototype === Object.prototype || prototype === null;
|
|
38
|
-
}
|
|
39
33
|
function isValidDateValue(value) {
|
|
40
34
|
return value instanceof Date && !Number.isNaN(value.getTime());
|
|
41
35
|
}
|
|
@@ -97,6 +91,40 @@ function assertDatasetSchema(schema, createError) {
|
|
|
97
91
|
seenColumnNames.add(column.name);
|
|
98
92
|
}
|
|
99
93
|
}
|
|
94
|
+
function assertDatasetPrimaryKey(primaryKey, schema, createError) {
|
|
95
|
+
let keyColumns;
|
|
96
|
+
if (typeof primaryKey === "string") {
|
|
97
|
+
keyColumns = [primaryKey];
|
|
98
|
+
} else if (Array.isArray(primaryKey)) {
|
|
99
|
+
if (primaryKey.length < 2) {
|
|
100
|
+
throw createError("Dataset primaryKey arrays must contain at least two column names. Use a string for a single-column key.");
|
|
101
|
+
}
|
|
102
|
+
keyColumns = primaryKey;
|
|
103
|
+
} else {
|
|
104
|
+
throw createError("Dataset primaryKey must be a column name or an array of at least two column names.");
|
|
105
|
+
}
|
|
106
|
+
const columnsByName = new Map(schema.columns.map((column) => [column.name, column]));
|
|
107
|
+
const seenColumnNames = new Set;
|
|
108
|
+
for (const columnName of keyColumns) {
|
|
109
|
+
if (typeof columnName !== "string" || columnName.trim().length === 0) {
|
|
110
|
+
throw createError("Dataset primaryKey columns must be non-empty strings.");
|
|
111
|
+
}
|
|
112
|
+
if (seenColumnNames.has(columnName)) {
|
|
113
|
+
throw createError(`Dataset primaryKey contains duplicate column '${columnName}'.`);
|
|
114
|
+
}
|
|
115
|
+
seenColumnNames.add(columnName);
|
|
116
|
+
const column = columnsByName.get(columnName);
|
|
117
|
+
if (column === undefined) {
|
|
118
|
+
throw createError(`Dataset primaryKey column '${columnName}' is not declared in the schema.`);
|
|
119
|
+
}
|
|
120
|
+
if (column.type !== "string") {
|
|
121
|
+
throw createError(`Dataset primaryKey column '${columnName}' must have type 'string'.`);
|
|
122
|
+
}
|
|
123
|
+
if (column.nullable === true) {
|
|
124
|
+
throw createError(`Dataset primaryKey column '${columnName}' must not be nullable.`);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
100
128
|
function assertDatasetDefinition(definition, createError = (message) => new DatasetValidationError(message)) {
|
|
101
129
|
if (!isRecord(definition)) {
|
|
102
130
|
throw createError("Dataset definition must be an object.");
|
|
@@ -106,6 +134,9 @@ function assertDatasetDefinition(definition, createError = (message) => new Data
|
|
|
106
134
|
}
|
|
107
135
|
assertNonEmptyString(definition.id, "Dataset id", createError);
|
|
108
136
|
assertDatasetSchema(definition.schema, createError);
|
|
137
|
+
if (definition.primaryKey !== undefined) {
|
|
138
|
+
assertDatasetPrimaryKey(definition.primaryKey, definition.schema, createError);
|
|
139
|
+
}
|
|
109
140
|
if (definition.partitionBy !== undefined) {
|
|
110
141
|
if (!Array.isArray(definition.partitionBy)) {
|
|
111
142
|
throw createError("Dataset partitionBy must be an array of column names.");
|
|
@@ -131,7 +162,7 @@ function isDatasetDefinition(value) {
|
|
|
131
162
|
}
|
|
132
163
|
}
|
|
133
164
|
function getDatasetRowValidationError(row, dataset, options) {
|
|
134
|
-
if (!
|
|
165
|
+
if (!isPlainRecord(row)) {
|
|
135
166
|
return `Dataset '${dataset.id}' rows must be plain objects.`;
|
|
136
167
|
}
|
|
137
168
|
const columnsByName = new Map(dataset.schema.columns.map((column) => [column.name, column]));
|
|
@@ -182,6 +213,93 @@ function getColumnValidationError(row, column, dataset) {
|
|
|
182
213
|
return null;
|
|
183
214
|
}
|
|
184
215
|
|
|
185
|
-
|
|
216
|
+
// src/datasets/builders.ts
|
|
217
|
+
function col(name, type, options) {
|
|
218
|
+
const column = {
|
|
219
|
+
name,
|
|
220
|
+
type,
|
|
221
|
+
...options?.nullable !== undefined ? { nullable: options.nullable } : {}
|
|
222
|
+
};
|
|
223
|
+
assertDatasetColumnDefinition(column, (message) => new DatasetValidationError(message));
|
|
224
|
+
return column;
|
|
225
|
+
}
|
|
226
|
+
function assertDatasetId(id) {
|
|
227
|
+
if (!id.trim()) {
|
|
228
|
+
throw new DatasetValidationError("Dataset id must not be empty.");
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
function createDatasetDefinition(id, options) {
|
|
232
|
+
const definition = {
|
|
233
|
+
kind: "dataset",
|
|
234
|
+
id,
|
|
235
|
+
schema: {
|
|
236
|
+
columns: [...options.schema]
|
|
237
|
+
},
|
|
238
|
+
...options.primaryKey !== undefined ? {
|
|
239
|
+
primaryKey: Array.isArray(options.primaryKey) ? [...options.primaryKey] : options.primaryKey
|
|
240
|
+
} : {},
|
|
241
|
+
...options.partitionBy !== undefined ? { partitionBy: [...options.partitionBy] } : {},
|
|
242
|
+
...options.description !== undefined ? { description: options.description } : {}
|
|
243
|
+
};
|
|
244
|
+
assertDatasetDefinition(definition, (message) => new DatasetValidationError(message));
|
|
245
|
+
return definition;
|
|
246
|
+
}
|
|
247
|
+
function assertStringArray(value, field) {
|
|
248
|
+
if (!Array.isArray(value)) {
|
|
249
|
+
throw new DatasetValidationError(`${field} must be an array of column names.`);
|
|
250
|
+
}
|
|
251
|
+
for (const item of value) {
|
|
252
|
+
if (typeof item !== "string" || !item.trim()) {
|
|
253
|
+
throw new DatasetValidationError(`${field} must contain only non-empty column names.`);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
function deriveDatasetDefinition(id, parent, options = {}) {
|
|
258
|
+
assertDatasetDefinition(parent, (message) => new DatasetValidationError(message));
|
|
259
|
+
if (options.pick !== undefined) {
|
|
260
|
+
assertStringArray(options.pick, "Dataset derive pick");
|
|
261
|
+
}
|
|
262
|
+
if (options.add !== undefined && !Array.isArray(options.add)) {
|
|
263
|
+
throw new DatasetValidationError("Dataset derive add must be an array of columns.");
|
|
264
|
+
}
|
|
265
|
+
const parentColumnsByName = new Map(parent.schema.columns.map((column) => [column.name, column]));
|
|
266
|
+
const pickedColumns = options.pick === undefined ? parent.schema.columns : options.pick.map((columnName) => {
|
|
267
|
+
const column = parentColumnsByName.get(columnName);
|
|
268
|
+
if (column === undefined) {
|
|
269
|
+
throw new DatasetValidationError(`Dataset derive pick column '${columnName}' is not declared on parent dataset '${parent.id}'.`);
|
|
270
|
+
}
|
|
271
|
+
return column;
|
|
272
|
+
});
|
|
273
|
+
return createDatasetDefinition(id, {
|
|
274
|
+
schema: [...pickedColumns, ...options.add ?? []],
|
|
275
|
+
...options.primaryKey !== undefined ? { primaryKey: options.primaryKey } : {},
|
|
276
|
+
...options.partitionBy !== undefined ? { partitionBy: options.partitionBy } : {},
|
|
277
|
+
...options.description !== undefined ? { description: options.description } : {}
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
function createDatasetDeriveBuilder(id) {
|
|
281
|
+
assertDatasetId(id);
|
|
282
|
+
function derive(parent, options) {
|
|
283
|
+
return deriveDatasetDefinition(id, parent, options);
|
|
284
|
+
}
|
|
285
|
+
return { derive };
|
|
286
|
+
}
|
|
287
|
+
function defineDataset(id, options) {
|
|
288
|
+
if (options === undefined) {
|
|
289
|
+
return createDatasetDeriveBuilder(id);
|
|
290
|
+
}
|
|
291
|
+
return createDatasetDefinition(id, options);
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
// src/datasets/changes.ts
|
|
295
|
+
var change = {
|
|
296
|
+
upsert(row) {
|
|
297
|
+
return { kind: "upsert", row };
|
|
298
|
+
},
|
|
299
|
+
delete(key) {
|
|
300
|
+
return { kind: "delete", key };
|
|
301
|
+
}
|
|
302
|
+
};
|
|
303
|
+
export { DatasetValidationError, assertDatasetDefinition, isDatasetDefinition, getDatasetRowValidationError, col, defineDataset, change };
|
|
186
304
|
|
|
187
|
-
//# debugId=
|
|
305
|
+
//# debugId=5BD3A97C32D4B31E64756E2164756E21
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/datasets/errors.ts", "../src/datasets/validation.ts", "../src/datasets/builders.ts", "../src/datasets/changes.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"export class DatasetValidationError extends Error {\n readonly name = \"DatasetValidationError\"\n}\n",
|
|
6
|
+
"import { isFileRef } from \"../blob-storage\"\nimport { isJsonValue, isPlainRecord } from \"../json\"\nimport { isDecimalString } from \"../ontology/decimal\"\nimport { DatasetValidationError } from \"./errors\"\nimport type {\n DatasetColumnDefinition,\n DatasetColumnType,\n DatasetDefinition,\n DatasetSchema,\n} from \"./types\"\n\nconst datasetColumnTypes = new Set<DatasetColumnType>([\n \"string\",\n \"boolean\",\n \"int64\",\n \"float64\",\n \"decimal\",\n \"date\",\n \"timestamp\",\n \"json\",\n \"fileRef\",\n])\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value)\n}\n\nfunction isValidDateValue(value: unknown): boolean {\n return value instanceof Date && !Number.isNaN(value.getTime())\n}\n\nfunction isDateString(value: unknown): value is string {\n return (\n typeof value === \"string\" &&\n /^\\d{4}-\\d{2}-\\d{2}$/.test(value) &&\n !Number.isNaN(Date.parse(value))\n )\n}\n\nfunction isTimestampString(value: unknown): value is string {\n return typeof value === \"string\" && !Number.isNaN(Date.parse(value))\n}\n\nfunction matchesColumnType(value: unknown, type: DatasetColumnType): boolean {\n switch (type) {\n case \"string\":\n return typeof value === \"string\"\n case \"boolean\":\n return typeof value === \"boolean\"\n case \"int64\":\n return (\n (typeof value === \"number\" && Number.isInteger(value)) ||\n (typeof value === \"string\" && /^-?\\d+$/.test(value))\n )\n case \"float64\":\n return typeof value === \"number\" && Number.isFinite(value)\n case \"decimal\":\n return isDecimalString(value)\n case \"date\":\n return isValidDateValue(value) || isDateString(value)\n case \"timestamp\":\n return isValidDateValue(value) || isTimestampString(value)\n case \"json\":\n return isJsonValue(value)\n case \"fileRef\":\n return isFileRef(value)\n }\n}\n\nfunction assertNonEmptyString(\n value: unknown,\n field: string,\n createError: (message: string) => Error\n): asserts value is string {\n if (typeof value !== \"string\" || value.trim().length === 0) {\n throw createError(`${field} must not be empty.`)\n }\n}\n\nexport function assertDatasetColumnDefinition(\n column: unknown,\n createError: (message: string) => Error,\n fieldPrefix = \"Dataset column\"\n): asserts column is DatasetColumnDefinition {\n if (!isRecord(column)) {\n throw createError(`${fieldPrefix} must be an object.`)\n }\n\n assertNonEmptyString(column.name, `${fieldPrefix} name`, createError)\n\n if (!datasetColumnTypes.has(column.type as DatasetColumnType)) {\n throw createError(\n `${fieldPrefix} '${column.name}' has an invalid type '${String(column.type)}'.`\n )\n }\n\n if (column.nullable !== undefined && typeof column.nullable !== \"boolean\") {\n throw createError(`${fieldPrefix} '${column.name}' nullable must be a boolean.`)\n }\n}\n\nfunction assertDatasetSchema(\n schema: unknown,\n createError: (message: string) => Error\n): asserts schema is DatasetSchema {\n if (!isRecord(schema) || !Array.isArray(schema.columns)) {\n throw createError(\"Dataset definitions must declare a schema.\")\n }\n\n const seenColumnNames = new Set<string>()\n for (const column of schema.columns) {\n assertDatasetColumnDefinition(column, createError)\n\n if (seenColumnNames.has(column.name)) {\n throw createError(`Dataset schema contains a duplicate column '${column.name}'.`)\n }\n\n seenColumnNames.add(column.name)\n }\n}\n\nfunction assertDatasetPrimaryKey(\n primaryKey: unknown,\n schema: DatasetSchema,\n createError: (message: string) => Error\n): void {\n let keyColumns: readonly unknown[]\n if (typeof primaryKey === \"string\") {\n keyColumns = [primaryKey]\n } else if (Array.isArray(primaryKey)) {\n if (primaryKey.length < 2) {\n throw createError(\n \"Dataset primaryKey arrays must contain at least two column names. Use a string for a single-column key.\"\n )\n }\n keyColumns = primaryKey\n } else {\n throw createError(\n \"Dataset primaryKey must be a column name or an array of at least two column names.\"\n )\n }\n\n const columnsByName = new Map(schema.columns.map((column) => [column.name, column] as const))\n const seenColumnNames = new Set<string>()\n\n for (const columnName of keyColumns) {\n if (typeof columnName !== \"string\" || columnName.trim().length === 0) {\n throw createError(\"Dataset primaryKey columns must be non-empty strings.\")\n }\n\n if (seenColumnNames.has(columnName)) {\n throw createError(`Dataset primaryKey contains duplicate column '${columnName}'.`)\n }\n seenColumnNames.add(columnName)\n\n const column = columnsByName.get(columnName)\n if (column === undefined) {\n throw createError(`Dataset primaryKey column '${columnName}' is not declared in the schema.`)\n }\n if (column.type !== \"string\") {\n throw createError(`Dataset primaryKey column '${columnName}' must have type 'string'.`)\n }\n if (column.nullable === true) {\n throw createError(`Dataset primaryKey column '${columnName}' must not be nullable.`)\n }\n }\n}\n\nexport function assertDatasetDefinition(\n definition: unknown,\n createError: (message: string) => Error = (message) => new DatasetValidationError(message)\n): asserts definition is DatasetDefinition {\n if (!isRecord(definition)) {\n throw createError(\"Dataset definition must be an object.\")\n }\n\n if (definition.kind !== \"dataset\") {\n throw createError(\"Dataset definition kind must be 'dataset'.\")\n }\n\n assertNonEmptyString(definition.id, \"Dataset id\", createError)\n assertDatasetSchema(definition.schema, createError)\n\n if (definition.primaryKey !== undefined) {\n assertDatasetPrimaryKey(definition.primaryKey, definition.schema, createError)\n }\n\n if (definition.partitionBy !== undefined) {\n if (!Array.isArray(definition.partitionBy)) {\n throw createError(\"Dataset partitionBy must be an array of column names.\")\n }\n\n const columnNames = new Set(definition.schema.columns.map((column) => column.name))\n for (const columnName of definition.partitionBy) {\n assertNonEmptyString(columnName, \"Dataset partition column\", createError)\n if (!columnNames.has(columnName)) {\n throw createError(`Dataset partition column '${columnName}' is not declared in the schema.`)\n }\n }\n }\n\n if (definition.description !== undefined && typeof definition.description !== \"string\") {\n throw createError(\"Dataset description must be a string.\")\n }\n}\n\nexport function isDatasetDefinition(value: unknown): value is DatasetDefinition {\n try {\n assertDatasetDefinition(value, (message) => new Error(message))\n return true\n } catch {\n return false\n }\n}\n\nexport function getDatasetRowValidationError(\n row: unknown,\n dataset: DatasetDefinition,\n options?: { readonly columns?: Iterable<string> }\n): string | null {\n if (!isPlainRecord(row)) {\n return `Dataset '${dataset.id}' rows must be plain objects.`\n }\n\n const columnsByName = new Map(\n dataset.schema.columns.map((column) => [column.name, column] as const)\n )\n\n // When `columns` is provided, validate only that subset (e.g. the columns a\n // projection actually maps). Projection reads are column-pruned, so the row\n // never carries unmapped columns and must not be checked against them.\n if (options?.columns !== undefined) {\n const columnsToValidate = new Set(options.columns)\n for (const column of dataset.schema.columns) {\n if (!columnsToValidate.has(column.name)) {\n continue\n }\n\n const error = getColumnValidationError(row, column, dataset)\n if (error) {\n return error\n }\n }\n\n return null\n }\n\n for (const columnName of Object.keys(row)) {\n if (!columnsByName.has(columnName)) {\n return `Dataset '${dataset.id}' row contains unknown column '${columnName}'.`\n }\n }\n\n for (const column of dataset.schema.columns) {\n const error = getColumnValidationError(row, column, dataset)\n if (error) {\n return error\n }\n }\n\n return null\n}\n\nfunction getColumnValidationError(\n row: Record<string, unknown>,\n column: DatasetColumnDefinition,\n dataset: DatasetDefinition\n): string | null {\n const hasValue = Object.hasOwn(row, column.name)\n const value = row[column.name]\n\n // Treat `undefined` the same as an omitted field so callers either send a real\n // value or use `null` explicitly on nullable columns.\n if (!hasValue || value === undefined) {\n if (!column.nullable) {\n return `Dataset '${dataset.id}' row is missing required column '${column.name}'.`\n }\n return null\n }\n\n if (value === null) {\n if (!column.nullable) {\n return `Dataset '${dataset.id}' column '${column.name}' does not allow null values.`\n }\n return null\n }\n\n if (!matchesColumnType(value, column.type)) {\n return `Dataset '${dataset.id}' column '${column.name}' must match type '${column.type}'.`\n }\n\n return null\n}\n",
|
|
7
|
+
"import { DatasetValidationError } from \"./errors\"\nimport type {\n DatasetColumnDefinition,\n DatasetColumnNameOf,\n DatasetColumnType,\n DatasetDefinition,\n DatasetPrimaryKey,\n} from \"./types\"\nimport { assertDatasetColumnDefinition, assertDatasetDefinition } from \"./validation\"\n\ntype DatasetColumnOptions = {\n readonly nullable?: boolean\n}\n\ntype DefineDatasetOptions = {\n readonly schema: readonly DatasetColumnDefinition[]\n readonly primaryKey?: DatasetPrimaryKey\n readonly partitionBy?: readonly string[]\n readonly description?: string\n}\n\ntype DeriveDatasetOptions<TParent extends DatasetDefinition> = {\n readonly pick?: readonly DatasetColumnNameOf<TParent>[]\n readonly add?: readonly DatasetColumnDefinition[]\n readonly primaryKey?: DatasetPrimaryKey\n readonly partitionBy?: readonly string[]\n readonly description?: string\n}\n\ntype FieldFromOptions<TOptions, TKey extends string, TFallback> = TOptions extends {\n readonly [K in TKey]: infer TValue\n}\n ? TValue extends TFallback\n ? { readonly [K in TKey]: TValue }\n : { readonly [K in TKey]?: TFallback }\n : { readonly [K in TKey]?: TFallback }\n\ntype ColumnNameOf<TColumns extends readonly DatasetColumnDefinition[]> = TColumns[number][\"name\"]\n\ntype ColumnDefinitionOf<\n TColumns extends readonly DatasetColumnDefinition[],\n TName extends ColumnNameOf<TColumns>,\n> = Extract<TColumns[number], { readonly name: TName }>\n\ntype PrimaryKeyColumnNameOf<TColumns extends readonly DatasetColumnDefinition[]> =\n string extends ColumnNameOf<TColumns>\n ? string\n : {\n [TName in ColumnNameOf<TColumns>]: ColumnDefinitionOf<\n TColumns,\n TName\n >[\"type\"] extends \"string\"\n ? ColumnDefinitionOf<TColumns, TName> extends { readonly nullable: true }\n ? never\n : TName\n : never\n }[ColumnNameOf<TColumns>]\n\ntype CheckedDefineDatasetOptions<TOptions extends DefineDatasetOptions> = TOptions & {\n readonly primaryKey?: DatasetPrimaryKey<PrimaryKeyColumnNameOf<TOptions[\"schema\"]>>\n}\n\ntype PickColumns<\n TColumns extends readonly DatasetColumnDefinition[],\n TNames extends readonly ColumnNameOf<TColumns>[],\n> = TNames extends readonly [infer THead, ...infer TTail]\n ? THead extends ColumnNameOf<TColumns>\n ? TTail extends readonly ColumnNameOf<TColumns>[]\n ? readonly [ColumnDefinitionOf<TColumns, THead>, ...PickColumns<TColumns, TTail>]\n : never\n : never\n : TNames extends readonly []\n ? readonly []\n : readonly ColumnDefinitionOf<TColumns, TNames[number]>[]\n\ntype AddColumns<\n TColumns extends readonly DatasetColumnDefinition[],\n TAdd extends readonly DatasetColumnDefinition[],\n> = readonly [...TColumns, ...TAdd]\n\ntype DerivedBaseColumns<\n TParent extends DatasetDefinition,\n TOptions extends DeriveDatasetOptions<TParent> | undefined,\n> = TOptions extends { readonly pick: infer TPick }\n ? TPick extends readonly DatasetColumnNameOf<TParent>[]\n ? PickColumns<TParent[\"schema\"][\"columns\"], TPick>\n : TParent[\"schema\"][\"columns\"]\n : TParent[\"schema\"][\"columns\"]\n\ntype DerivedColumns<\n TParent extends DatasetDefinition,\n TOptions extends DeriveDatasetOptions<TParent> | undefined,\n> = TOptions extends { readonly add: infer TAdd }\n ? TAdd extends readonly DatasetColumnDefinition[]\n ? AddColumns<DerivedBaseColumns<TParent, TOptions>, TAdd>\n : DerivedBaseColumns<TParent, TOptions>\n : DerivedBaseColumns<TParent, TOptions>\n\ntype DatasetColumnResult<\n TName extends string,\n TType extends DatasetColumnType,\n TOptions extends DatasetColumnOptions | undefined,\n> = {\n readonly name: TName\n readonly type: TType\n} & FieldFromOptions<TOptions, \"nullable\", boolean>\n\ntype DatasetDefinitionResult<TId extends string, TOptions extends DefineDatasetOptions> = Omit<\n DatasetDefinition<TId, TOptions[\"schema\"]>,\n \"primaryKey\" | \"partitionBy\" | \"description\"\n> &\n FieldFromOptions<TOptions, \"primaryKey\", DatasetPrimaryKey> &\n FieldFromOptions<TOptions, \"partitionBy\", readonly string[]> &\n FieldFromOptions<TOptions, \"description\", string>\n\ntype DerivedDatasetDefinitionResult<\n TId extends string,\n TParent extends DatasetDefinition,\n TOptions extends DeriveDatasetOptions<TParent> | undefined,\n> = Omit<\n DatasetDefinition<TId, DerivedColumns<TParent, TOptions>>,\n \"primaryKey\" | \"partitionBy\" | \"description\"\n> &\n FieldFromOptions<TOptions, \"primaryKey\", DatasetPrimaryKey> &\n FieldFromOptions<TOptions, \"partitionBy\", readonly string[]> &\n FieldFromOptions<TOptions, \"description\", string>\n\ntype CheckedDeriveDatasetOptions<\n TParent extends DatasetDefinition,\n TOptions extends DeriveDatasetOptions<TParent>,\n> = TOptions & {\n readonly primaryKey?: DatasetPrimaryKey<PrimaryKeyColumnNameOf<DerivedColumns<TParent, TOptions>>>\n}\n\nexport function col<const TName extends string, const TType extends DatasetColumnType>(\n name: TName,\n type: TType\n): DatasetColumnResult<TName, TType, undefined>\nexport function col<\n const TName extends string,\n const TType extends DatasetColumnType,\n const TOptions extends DatasetColumnOptions,\n>(name: TName, type: TType, options: TOptions): DatasetColumnResult<TName, TType, TOptions>\nexport function col(\n name: string,\n type: DatasetColumnType,\n options?: DatasetColumnOptions\n): DatasetColumnDefinition {\n const column: DatasetColumnDefinition = {\n name,\n type,\n ...(options?.nullable !== undefined ? { nullable: options.nullable } : {}),\n }\n\n assertDatasetColumnDefinition(column, (message) => new DatasetValidationError(message))\n return column\n}\n\nfunction assertDatasetId(id: string): void {\n if (!id.trim()) {\n throw new DatasetValidationError(\"Dataset id must not be empty.\")\n }\n}\n\nfunction createDatasetDefinition(id: string, options: DefineDatasetOptions): DatasetDefinition {\n const definition: unknown = {\n kind: \"dataset\",\n id,\n schema: {\n columns: [...options.schema],\n },\n ...(options.primaryKey !== undefined\n ? {\n primaryKey: Array.isArray(options.primaryKey)\n ? [...options.primaryKey]\n : options.primaryKey,\n }\n : {}),\n ...(options.partitionBy !== undefined ? { partitionBy: [...options.partitionBy] } : {}),\n ...(options.description !== undefined ? { description: options.description } : {}),\n }\n\n assertDatasetDefinition(definition, (message) => new DatasetValidationError(message))\n return definition\n}\n\nfunction assertStringArray(value: unknown, field: string): asserts value is readonly string[] {\n if (!Array.isArray(value)) {\n throw new DatasetValidationError(`${field} must be an array of column names.`)\n }\n\n for (const item of value) {\n if (typeof item !== \"string\" || !item.trim()) {\n throw new DatasetValidationError(`${field} must contain only non-empty column names.`)\n }\n }\n}\n\nfunction deriveDatasetDefinition(\n id: string,\n parent: DatasetDefinition,\n options: DeriveDatasetOptions<DatasetDefinition> = {}\n): DatasetDefinition {\n assertDatasetDefinition(parent, (message) => new DatasetValidationError(message))\n\n if (options.pick !== undefined) {\n assertStringArray(options.pick, \"Dataset derive pick\")\n }\n\n if (options.add !== undefined && !Array.isArray(options.add)) {\n throw new DatasetValidationError(\"Dataset derive add must be an array of columns.\")\n }\n\n const parentColumnsByName = new Map(\n parent.schema.columns.map((column) => [column.name, column] as const)\n )\n const pickedColumns =\n options.pick === undefined\n ? parent.schema.columns\n : options.pick.map((columnName) => {\n const column = parentColumnsByName.get(columnName)\n if (column === undefined) {\n throw new DatasetValidationError(\n `Dataset derive pick column '${columnName}' is not declared on parent dataset '${parent.id}'.`\n )\n }\n return column\n })\n\n return createDatasetDefinition(id, {\n schema: [...pickedColumns, ...(options.add ?? [])],\n ...(options.primaryKey !== undefined ? { primaryKey: options.primaryKey } : {}),\n ...(options.partitionBy !== undefined ? { partitionBy: options.partitionBy } : {}),\n ...(options.description !== undefined ? { description: options.description } : {}),\n })\n}\n\nfunction createDatasetDeriveBuilder<TId extends string>(id: TId) {\n assertDatasetId(id)\n\n function derive<const TParent extends DatasetDefinition>(\n parent: TParent\n ): DerivedDatasetDefinitionResult<TId, TParent, undefined>\n function derive<\n const TParent extends DatasetDefinition,\n const TOptions extends DeriveDatasetOptions<TParent>,\n >(\n parent: TParent,\n options: CheckedDeriveDatasetOptions<TParent, TOptions>\n ): DerivedDatasetDefinitionResult<TId, TParent, TOptions>\n function derive(\n parent: DatasetDefinition,\n options?: DeriveDatasetOptions<DatasetDefinition>\n ): DatasetDefinition {\n return deriveDatasetDefinition(id, parent, options)\n }\n\n return { derive }\n}\n\nexport function defineDataset<const TId extends string>(\n id: TId\n): ReturnType<typeof createDatasetDeriveBuilder<TId>>\nexport function defineDataset<\n const TId extends string,\n const TOptions extends DefineDatasetOptions,\n>(id: TId, options: CheckedDefineDatasetOptions<TOptions>): DatasetDefinitionResult<TId, TOptions>\nexport function defineDataset(\n id: string,\n options?: DefineDatasetOptions\n): DatasetDefinition | ReturnType<typeof createDatasetDeriveBuilder<string>> {\n if (options === undefined) {\n return createDatasetDeriveBuilder(id)\n }\n\n return createDatasetDefinition(id, options)\n}\n",
|
|
8
|
+
"export type MergeChange<Row, Key> =\n | { readonly kind: \"upsert\"; readonly row: Row }\n | { readonly kind: \"delete\"; readonly key: Key }\n\nexport const change = {\n upsert<const Row extends object>(row: Row): { readonly kind: \"upsert\"; readonly row: Row } {\n return { kind: \"upsert\", row }\n },\n\n delete<const Key extends object>(key: Key): { readonly kind: \"delete\"; readonly key: Key } {\n return { kind: \"delete\", key }\n },\n}\n"
|
|
9
|
+
],
|
|
10
|
+
"mappings": "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",
|
|
11
|
+
"debugId": "5BD3A97C32D4B31E64756E2164756E21",
|
|
12
|
+
"names": []
|
|
13
|
+
}
|
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import {
|
|
3
|
+
isOAuthConnectorDefinition
|
|
4
|
+
} from "./chunk-8m5ejdpn.js";
|
|
5
|
+
import {
|
|
6
|
+
createPrimitiveExecutionRecord,
|
|
7
|
+
ensureExecutionRecord,
|
|
8
|
+
executionRecordInputFromRuntime
|
|
9
|
+
} from "./chunk-8ryen3p3.js";
|
|
10
|
+
import {
|
|
11
|
+
SYNC_RUN_FAILURE_CODES
|
|
12
|
+
} from "./chunk-ys1nse2v.js";
|
|
13
|
+
import {
|
|
14
|
+
SyncRunError
|
|
15
|
+
} from "./chunk-62c7t4jc.js";
|
|
16
|
+
import {
|
|
17
|
+
ConnectorConnectionStorageError
|
|
18
|
+
} from "./chunk-5gd7tpv6.js";
|
|
19
|
+
import {
|
|
20
|
+
reportRunFailure
|
|
21
|
+
} from "./chunk-dsrkgtnh.js";
|
|
22
|
+
import {
|
|
23
|
+
AuthorizationError,
|
|
24
|
+
assertAuthorized,
|
|
25
|
+
assertProviderAccess,
|
|
26
|
+
resolveExecutionScopeAuthorization
|
|
27
|
+
} from "./chunk-34bqh420.js";
|
|
28
|
+
import {
|
|
29
|
+
createSixbError,
|
|
30
|
+
isSixbError,
|
|
31
|
+
toSixbFailure
|
|
32
|
+
} from "./chunk-0172wgm9.js";
|
|
33
|
+
|
|
34
|
+
// src/connectors/errors.ts
|
|
35
|
+
class ConnectorError extends Error {
|
|
36
|
+
name = "ConnectorError";
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
class ConnectorNotFoundError extends ConnectorError {
|
|
40
|
+
connectorId;
|
|
41
|
+
name = "ConnectorNotFoundError";
|
|
42
|
+
constructor(connectorId) {
|
|
43
|
+
super(`Unknown connector '${connectorId}'`);
|
|
44
|
+
this.connectorId = connectorId;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
class ConnectorOAuthError extends ConnectorError {
|
|
49
|
+
kind;
|
|
50
|
+
name = "ConnectorOAuthError";
|
|
51
|
+
constructor(kind, message, options) {
|
|
52
|
+
super(message, options);
|
|
53
|
+
this.kind = kind;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function createConnectorCodedError(code, message, options = {}) {
|
|
57
|
+
return createSixbError(code, message.startsWith("[Sixb]") ? message : `[Sixb] ${message}`, options);
|
|
58
|
+
}
|
|
59
|
+
function createAmbiguousProviderOperationError(options = {}) {
|
|
60
|
+
return createConnectorCodedError("connector.provider_failed", "Connector provider operation outcome is ambiguous.", options);
|
|
61
|
+
}
|
|
62
|
+
function oauthErrorKind(error) {
|
|
63
|
+
return error instanceof ConnectorOAuthError ? error.kind : "ambiguous";
|
|
64
|
+
}
|
|
65
|
+
function providerFailureCode(error) {
|
|
66
|
+
return oauthErrorKind(error) === "retryable" ? "connector.provider_unavailable" : "connector.provider_failed";
|
|
67
|
+
}
|
|
68
|
+
function providerBoundaryError(error, code, message) {
|
|
69
|
+
if (isSixbError(error) && error.code.startsWith("connector."))
|
|
70
|
+
return error;
|
|
71
|
+
return createConnectorCodedError(code, message, { cause: error });
|
|
72
|
+
}
|
|
73
|
+
function isConnectorStorageError(error, code) {
|
|
74
|
+
return error instanceof ConnectorConnectionStorageError && (code === undefined || error.code === code);
|
|
75
|
+
}
|
|
76
|
+
function storageBoundaryError(error, message) {
|
|
77
|
+
return createConnectorCodedError("internal.unexpected", message, { cause: error });
|
|
78
|
+
}
|
|
79
|
+
async function recoverConnectorFailure(primaryError, message, recovery) {
|
|
80
|
+
try {
|
|
81
|
+
return await recovery();
|
|
82
|
+
} catch (recoveryError) {
|
|
83
|
+
throw createConnectorCodedError("internal.unexpected", message, {
|
|
84
|
+
cause: new AggregateError([primaryError, recoveryError], message)
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// src/syncs/errors.ts
|
|
90
|
+
class SyncValidationError extends Error {
|
|
91
|
+
name = "SyncValidationError";
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
// src/syncs/run-dispatch.ts
|
|
95
|
+
import { randomUUID } from "crypto";
|
|
96
|
+
class SyncRunDispatcher {
|
|
97
|
+
dependencies;
|
|
98
|
+
constructor(dependencies) {
|
|
99
|
+
this.dependencies = dependencies;
|
|
100
|
+
}
|
|
101
|
+
async dispatch(input) {
|
|
102
|
+
assertAutomaticDispatchInput(input);
|
|
103
|
+
const sync = this.dependencies.definitions.syncs.getById(input.syncId);
|
|
104
|
+
if (!sync)
|
|
105
|
+
throw new SyncValidationError(`[Sixb] Unknown sync '${input.syncId}'`);
|
|
106
|
+
return dispatchSyncRun({
|
|
107
|
+
errorReporterHost: this.dependencies,
|
|
108
|
+
projectId: this.dependencies.id,
|
|
109
|
+
sync,
|
|
110
|
+
storage: this.dependencies.storage,
|
|
111
|
+
queue: this.dependencies.queues.syncRuns,
|
|
112
|
+
runId: input.runId,
|
|
113
|
+
expectedLatestVersionId: input.expectedLatestVersionId,
|
|
114
|
+
commitMessage: input.commitMessage,
|
|
115
|
+
metadata: input.metadata,
|
|
116
|
+
validateExistingRun: (run, storage) => assertAutomaticExecutionIdentity(storage, this.dependencies.id, input, run),
|
|
117
|
+
createExecution: async (executionId, runId) => createPrimitiveExecutionRecord({
|
|
118
|
+
id: executionId,
|
|
119
|
+
primitive: { kind: "sync", id: sync.id, runId },
|
|
120
|
+
origin: {
|
|
121
|
+
type: "automatic",
|
|
122
|
+
projectId: this.dependencies.id,
|
|
123
|
+
source: input.source,
|
|
124
|
+
correlationId: input.correlationId
|
|
125
|
+
}
|
|
126
|
+
})
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
async function dispatchSyncRun(input) {
|
|
131
|
+
const runId = createSyncRunId(input.runId);
|
|
132
|
+
const persisted = await persistSyncRun(input, runId);
|
|
133
|
+
if (!persisted.publish)
|
|
134
|
+
return existingSyncRunResult(persisted.run);
|
|
135
|
+
return publishSyncRun(input, persisted);
|
|
136
|
+
}
|
|
137
|
+
async function persistSyncRun(input, runId) {
|
|
138
|
+
const syncRuns = requireSyncRunStorage(input.storage);
|
|
139
|
+
const existing = await syncRuns.getById({ projectId: input.projectId, id: runId });
|
|
140
|
+
if (existing)
|
|
141
|
+
return reuseSyncRun(input, existing);
|
|
142
|
+
const execution = await input.createExecution(`exec_${randomUUID()}`, runId);
|
|
143
|
+
const queuedAt = new Date;
|
|
144
|
+
try {
|
|
145
|
+
return await input.storage.transaction(async (tx) => {
|
|
146
|
+
const transactionalRuns = requireSyncRunStorage(tx);
|
|
147
|
+
const raced = await transactionalRuns.getById({ projectId: input.projectId, id: runId });
|
|
148
|
+
if (raced) {
|
|
149
|
+
assertExistingRunMatchesRequest(raced, input);
|
|
150
|
+
await input.validateExistingRun?.(raced, tx);
|
|
151
|
+
return { publish: false, run: raced };
|
|
152
|
+
}
|
|
153
|
+
await tx.executions.create(execution);
|
|
154
|
+
const run = await transactionalRuns.queue({
|
|
155
|
+
projectId: input.projectId,
|
|
156
|
+
id: runId,
|
|
157
|
+
executionId: execution.id,
|
|
158
|
+
syncId: input.sync.id,
|
|
159
|
+
datasetId: input.sync.target.dataset.id,
|
|
160
|
+
mode: input.sync.config.mode,
|
|
161
|
+
queuedAt,
|
|
162
|
+
expectedLatestVersionId: input.expectedLatestVersionId,
|
|
163
|
+
commitMessage: input.commitMessage
|
|
164
|
+
});
|
|
165
|
+
return { publish: true, run, execution, queuedAt, created: true };
|
|
166
|
+
}, { isolation: "serializable" });
|
|
167
|
+
} catch (error) {
|
|
168
|
+
if (!(error instanceof SyncRunError))
|
|
169
|
+
throw error;
|
|
170
|
+
const raced = await syncRuns.getById({ projectId: input.projectId, id: runId });
|
|
171
|
+
if (!raced)
|
|
172
|
+
throw error;
|
|
173
|
+
assertExistingRunMatchesRequest(raced, input);
|
|
174
|
+
await input.validateExistingRun?.(raced, input.storage);
|
|
175
|
+
return { publish: false, run: raced };
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
async function reuseSyncRun(input, existing) {
|
|
179
|
+
assertExistingRunMatchesRequest(existing, input);
|
|
180
|
+
await input.validateExistingRun?.(existing, input.storage);
|
|
181
|
+
if (existing.status !== "failed" || existing.error?.code !== "queue.enqueue_failed" || !existing.error.retryable) {
|
|
182
|
+
return { publish: false, run: existing };
|
|
183
|
+
}
|
|
184
|
+
const execution = await input.storage.executions.getById({
|
|
185
|
+
projectId: input.projectId,
|
|
186
|
+
id: existing.executionId
|
|
187
|
+
});
|
|
188
|
+
if (!execution) {
|
|
189
|
+
throw new SyncRunError(`[Sixb] Execution '${existing.executionId}' for Sync run '${existing.id}' was not found.`);
|
|
190
|
+
}
|
|
191
|
+
const queuedAt = new Date;
|
|
192
|
+
const run = await requireSyncRunStorage(input.storage).queue({
|
|
193
|
+
projectId: input.projectId,
|
|
194
|
+
id: existing.id,
|
|
195
|
+
executionId: existing.executionId,
|
|
196
|
+
syncId: existing.syncId,
|
|
197
|
+
datasetId: existing.datasetId,
|
|
198
|
+
mode: existing.mode,
|
|
199
|
+
queuedAt,
|
|
200
|
+
expectedLatestVersionId: existing.expectedLatestVersionId,
|
|
201
|
+
commitMessage: existing.commitMessage
|
|
202
|
+
});
|
|
203
|
+
return { publish: true, run, execution, queuedAt, created: false };
|
|
204
|
+
}
|
|
205
|
+
async function publishSyncRun(input, persisted) {
|
|
206
|
+
try {
|
|
207
|
+
const [job] = await input.queue.enqueue({
|
|
208
|
+
projectId: input.projectId,
|
|
209
|
+
jobs: [
|
|
210
|
+
{
|
|
211
|
+
id: persisted.run.id,
|
|
212
|
+
type: "sync.run.requested",
|
|
213
|
+
payload: { runId: persisted.run.id },
|
|
214
|
+
...input.metadata === undefined ? {} : { metadata: input.metadata }
|
|
215
|
+
}
|
|
216
|
+
]
|
|
217
|
+
});
|
|
218
|
+
return {
|
|
219
|
+
syncId: persisted.run.syncId,
|
|
220
|
+
runId: persisted.run.id,
|
|
221
|
+
queuedAt: persisted.queuedAt.toISOString(),
|
|
222
|
+
...job?.id ? { jobId: job.id } : {},
|
|
223
|
+
created: persisted.created
|
|
224
|
+
};
|
|
225
|
+
} catch (error) {
|
|
226
|
+
const failedAt = new Date;
|
|
227
|
+
const failure = toEnqueueFailure(error, persisted.run, failedAt);
|
|
228
|
+
const failed = await requireSyncRunStorage(input.storage).finish({
|
|
229
|
+
projectId: input.projectId,
|
|
230
|
+
id: persisted.run.id,
|
|
231
|
+
status: "failed",
|
|
232
|
+
finishedAt: failedAt,
|
|
233
|
+
error: failure
|
|
234
|
+
});
|
|
235
|
+
reportRunFailure(input.errorReporterHost, error, {
|
|
236
|
+
projectId: input.projectId,
|
|
237
|
+
runKind: "sync",
|
|
238
|
+
run: { runId: failed.id, syncId: failed.syncId },
|
|
239
|
+
failure
|
|
240
|
+
});
|
|
241
|
+
throw error;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
function assertExistingRunMatchesRequest(existing, input) {
|
|
245
|
+
if (existing.syncId !== input.sync.id || existing.datasetId !== input.sync.target.dataset.id || existing.mode !== input.sync.config.mode || existing.expectedLatestVersionId !== input.expectedLatestVersionId || existing.commitMessage !== input.commitMessage) {
|
|
246
|
+
throw new SyncRunError(`[Sixb] Sync run '${existing.id}' already exists with a different request payload.`);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
function existingSyncRunResult(existing) {
|
|
250
|
+
return {
|
|
251
|
+
syncId: existing.syncId,
|
|
252
|
+
runId: existing.id,
|
|
253
|
+
queuedAt: existing.queuedAt.toISOString(),
|
|
254
|
+
created: false
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
function requireSyncRunStorage(storage) {
|
|
258
|
+
if (!storage.syncRuns)
|
|
259
|
+
throw new SyncValidationError("[Sixb] Sync run storage is not configured.");
|
|
260
|
+
return storage.syncRuns;
|
|
261
|
+
}
|
|
262
|
+
function createSyncRunId(runId) {
|
|
263
|
+
if (runId === undefined)
|
|
264
|
+
return `run_${randomUUID()}`;
|
|
265
|
+
if (!runId.trim())
|
|
266
|
+
throw new SyncValidationError("[Sixb] Sync run id must not be empty");
|
|
267
|
+
return runId;
|
|
268
|
+
}
|
|
269
|
+
function assertAutomaticDispatchInput(input) {
|
|
270
|
+
assertNonBlank(input.syncId, "Sync id");
|
|
271
|
+
assertNonBlank(input.runId, "Sync run id");
|
|
272
|
+
assertNonBlank(input.source.eventId, "Sync source event id");
|
|
273
|
+
assertNonBlank(input.correlationId, "Sync correlation id");
|
|
274
|
+
}
|
|
275
|
+
async function assertAutomaticExecutionIdentity(storage, projectId, input, run) {
|
|
276
|
+
const execution = await storage.executions.getById({ projectId, id: run.executionId });
|
|
277
|
+
if (!execution || execution.source.type !== input.source.type || execution.source.eventId !== input.source.eventId || execution.correlationId !== input.correlationId || execution.requestedBy !== undefined) {
|
|
278
|
+
throw new SyncValidationError(`[Sixb] Sync run '${run.id}' already exists with different automatic provenance.`);
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
function toEnqueueFailure(error, run, at) {
|
|
282
|
+
const enqueueError = createSixbError("queue.enqueue_failed", `[Sixb] Could not enqueue Sync run '${run.id}'.`, {
|
|
283
|
+
cause: error,
|
|
284
|
+
details: { syncId: run.syncId, runId: run.id, phase: "enqueue" }
|
|
285
|
+
});
|
|
286
|
+
return toSixbFailure(enqueueError, { allowedCodes: SYNC_RUN_FAILURE_CODES, at });
|
|
287
|
+
}
|
|
288
|
+
function assertNonBlank(value, label) {
|
|
289
|
+
if (!value.trim())
|
|
290
|
+
throw new SyncValidationError(`[Sixb] ${label} must not be empty.`);
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
// src/syncs/request.ts
|
|
294
|
+
async function requestSyncRun(runtime, execution, sync, options = {}) {
|
|
295
|
+
assertAuthorized(runtime, { kind: "sync.run", syncId: sync.id });
|
|
296
|
+
if (!runtime.storage.syncRuns) {
|
|
297
|
+
throw new SyncValidationError("[Sixb] Sync run storage is not configured.");
|
|
298
|
+
}
|
|
299
|
+
const queue = runtime.queues.syncRuns;
|
|
300
|
+
if (!queue) {
|
|
301
|
+
throw new SyncValidationError("[Sixb] Sync run queue is not configured.");
|
|
302
|
+
}
|
|
303
|
+
return dispatchSyncRun({
|
|
304
|
+
errorReporterHost: runtime,
|
|
305
|
+
projectId: runtime.projectId,
|
|
306
|
+
sync,
|
|
307
|
+
storage: runtime.storage,
|
|
308
|
+
queue,
|
|
309
|
+
...options,
|
|
310
|
+
createExecution: async (executionId, runId) => {
|
|
311
|
+
const caller = await ensureExecutionRecord(runtime.storage.executions, executionRecordInputFromRuntime({
|
|
312
|
+
execution,
|
|
313
|
+
runtimeAuthorization: runtime.runtimeAuthorization
|
|
314
|
+
}));
|
|
315
|
+
return createPrimitiveExecutionRecord({
|
|
316
|
+
id: executionId,
|
|
317
|
+
primitive: { kind: "sync", id: sync.id, runId },
|
|
318
|
+
origin: { type: "execution", parent: caller }
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
});
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
// src/connectors/execution.ts
|
|
325
|
+
var sourceResolvers = new WeakMap;
|
|
326
|
+
function createConnectorRuntime(runtime, execution, service) {
|
|
327
|
+
const connector = (definition, selector) => {
|
|
328
|
+
if (isOAuthConnectorDefinition(definition)) {
|
|
329
|
+
assertConnectorConnectionAccess(runtime, execution);
|
|
330
|
+
if (!selector) {
|
|
331
|
+
throw createConnectorCodedError("connector.configuration_invalid", `[Sixb] Connector '${definition.id}' uses persistent connections and requires an explicit owner and slot.`);
|
|
332
|
+
}
|
|
333
|
+
return service.connectConnection(definition, selector);
|
|
334
|
+
}
|
|
335
|
+
if (selector) {
|
|
336
|
+
throw createConnectorCodedError("connector.configuration_invalid", `[Sixb] Static connector '${definition.id}' does not accept a connection.`);
|
|
337
|
+
}
|
|
338
|
+
assertProviderAccess(runtime, execution, "connector.connect");
|
|
339
|
+
return service.connect(definition);
|
|
340
|
+
};
|
|
341
|
+
registerConnectorExecutionSourceResolver(connector, {
|
|
342
|
+
async list(definition) {
|
|
343
|
+
if (!isOAuthConnectorDefinition(definition)) {
|
|
344
|
+
return [
|
|
345
|
+
{
|
|
346
|
+
connect: (_signal) => connector(definition)
|
|
347
|
+
}
|
|
348
|
+
];
|
|
349
|
+
}
|
|
350
|
+
assertConnectorConnectionAccess(runtime, execution);
|
|
351
|
+
const connections = await service.listExecutionConnections(definition);
|
|
352
|
+
return connections.map((connection) => ({
|
|
353
|
+
connection: {
|
|
354
|
+
id: connection.id,
|
|
355
|
+
connectorId: connection.connectorId,
|
|
356
|
+
owner: connection.owner,
|
|
357
|
+
slot: connection.slot,
|
|
358
|
+
account: connection.account
|
|
359
|
+
},
|
|
360
|
+
connect: (signal) => service.connectExecutionConnection(definition, connection, signal)
|
|
361
|
+
}));
|
|
362
|
+
}
|
|
363
|
+
});
|
|
364
|
+
return connector;
|
|
365
|
+
}
|
|
366
|
+
function registerConnectorExecutionSourceResolver(connector, resolver) {
|
|
367
|
+
const registered = sourceResolvers.get(connector);
|
|
368
|
+
if (registered && registered !== resolver) {
|
|
369
|
+
throw new Error("[Sixb] Connector source resolver is already registered for this execution.");
|
|
370
|
+
}
|
|
371
|
+
sourceResolvers.set(connector, resolver);
|
|
372
|
+
}
|
|
373
|
+
function getConnectorExecutionSourceResolver(connector) {
|
|
374
|
+
const resolver = sourceResolvers.get(connector);
|
|
375
|
+
if (resolver)
|
|
376
|
+
return resolver;
|
|
377
|
+
return {
|
|
378
|
+
async list(definition) {
|
|
379
|
+
if (isOAuthConnectorDefinition(definition)) {
|
|
380
|
+
throw createConnectorCodedError("connector.configuration_invalid", `[Sixb] OAuth connector '${definition.id}' cannot be resolved without the managed connection runtime.`);
|
|
381
|
+
}
|
|
382
|
+
return [
|
|
383
|
+
{
|
|
384
|
+
connect: (_signal) => connector(definition)
|
|
385
|
+
}
|
|
386
|
+
];
|
|
387
|
+
}
|
|
388
|
+
};
|
|
389
|
+
}
|
|
390
|
+
function assertConnectorConnectionAccess(runtime, execution) {
|
|
391
|
+
const resolved = resolveExecutionScopeAuthorization(runtime.projectId, {
|
|
392
|
+
execution,
|
|
393
|
+
authorization: runtime.runtimeAuthorization
|
|
394
|
+
});
|
|
395
|
+
if (resolved.type === "unrestricted" && resolved.ref.type === "trustedPrimitive")
|
|
396
|
+
return;
|
|
397
|
+
throw new AuthorizationError("privileged:connector-connection.connect", "[Sixb] Connector connection clients are restricted to trusted primitive executions.");
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
export { ConnectorError, ConnectorNotFoundError, ConnectorOAuthError, createConnectorCodedError, createAmbiguousProviderOperationError, oauthErrorKind, providerFailureCode, providerBoundaryError, isConnectorStorageError, storageBoundaryError, recoverConnectorFailure, createConnectorRuntime, getConnectorExecutionSourceResolver, SyncValidationError, SyncRunDispatcher, requestSyncRun };
|
|
401
|
+
|
|
402
|
+
//# debugId=ED1A30ED8A438D8864756E2164756E21
|