@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
package/src/connectors/types.ts
CHANGED
|
@@ -20,11 +20,127 @@ export interface ConnectorContext {
|
|
|
20
20
|
*/
|
|
21
21
|
export interface ConnectorAdapter<TType extends string = string, TClient = unknown> {
|
|
22
22
|
readonly type: TType
|
|
23
|
+
readonly authentication?: never
|
|
23
24
|
readonly webhooks?: readonly WebhookDefinition<unknown, TClient>[]
|
|
24
25
|
connect(context: ConnectorContext): Promise<TClient> | TClient
|
|
25
26
|
disconnect?(client: TClient): Promise<void> | void
|
|
26
27
|
}
|
|
27
28
|
|
|
29
|
+
/** One OAuth token set normalized by an OAuth connector adapter. */
|
|
30
|
+
export interface ConnectorOAuthCredentials {
|
|
31
|
+
readonly accessToken: string
|
|
32
|
+
readonly refreshToken?: string
|
|
33
|
+
readonly tokenType?: string
|
|
34
|
+
readonly scopes?: readonly string[]
|
|
35
|
+
readonly expiresAt?: Date
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/** Public, non-secret account information returned for framework-owned selection UI. */
|
|
39
|
+
export interface ConnectorAccountCandidate {
|
|
40
|
+
readonly id: string
|
|
41
|
+
readonly label: string
|
|
42
|
+
readonly description?: string
|
|
43
|
+
readonly avatarUrl?: string
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/** V1 intentionally supports project-owned connector connections only. */
|
|
47
|
+
export interface ProjectConnectorConnectionOwner {
|
|
48
|
+
readonly type: "project"
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export type ConnectorConnectionOwner = ProjectConnectorConnectionOwner
|
|
52
|
+
|
|
53
|
+
/** Stable application-defined lookup key for one connector connection. */
|
|
54
|
+
export interface ConnectorConnectionSelector {
|
|
55
|
+
readonly owner: ConnectorConnectionOwner
|
|
56
|
+
readonly slot: string
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/** Stable, non-secret metadata shared by connector connection consumers. */
|
|
60
|
+
export interface ConnectorConnectionMetadata extends ConnectorConnectionSelector {
|
|
61
|
+
readonly id: string
|
|
62
|
+
readonly connectorId: string
|
|
63
|
+
readonly account: ConnectorAccountCandidate
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/** Credential protection required when an OAuth connector uses durable connection storage. */
|
|
67
|
+
export interface ConnectorConnectionOptions {
|
|
68
|
+
/** Canonical base64url encoding of exactly 32 random bytes, shared by storage replicas. */
|
|
69
|
+
readonly encryptionKey: string
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export interface OAuthConnectorAuthorizationContext extends ConnectorContext {
|
|
73
|
+
readonly redirectUri: string
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export interface OAuthConnectorAuthorizationUrlInput {
|
|
77
|
+
readonly state: string
|
|
78
|
+
readonly codeChallenge: string
|
|
79
|
+
readonly codeChallengeMethod: "S256"
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export interface OAuthConnectorCodeExchangeInput {
|
|
83
|
+
readonly code: string
|
|
84
|
+
readonly codeVerifier: string
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export interface ConnectorConnectionClientContext extends ConnectorContext {
|
|
88
|
+
readonly connectionId: string
|
|
89
|
+
readonly account: ConnectorAccountCandidate
|
|
90
|
+
readonly tokenSource: ConnectorTokenSource
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/** One delivered token, bound to the credential revision that produced it. */
|
|
94
|
+
export interface ConnectorAccessToken {
|
|
95
|
+
readonly accessToken: string
|
|
96
|
+
readonly tokenType?: string
|
|
97
|
+
/** Report this exact token as rejected so Sixb can refresh only its credential revision. */
|
|
98
|
+
invalidate(): void
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/** Live credential source owned by Sixb. Adapters must resolve a token for each request. */
|
|
102
|
+
export interface ConnectorTokenSource {
|
|
103
|
+
get(): Promise<ConnectorAccessToken>
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* OAuth-backed connector adapter. Sixb owns persistence, OAuth state, refresh coordination and UI;
|
|
108
|
+
* the adapter owns provider protocol details and typed client creation.
|
|
109
|
+
*/
|
|
110
|
+
export interface ConnectorOAuth2Authentication {
|
|
111
|
+
readonly type: "oauth2"
|
|
112
|
+
authorizationUrl(
|
|
113
|
+
context: OAuthConnectorAuthorizationContext,
|
|
114
|
+
input: OAuthConnectorAuthorizationUrlInput
|
|
115
|
+
): Promise<string | URL> | string | URL
|
|
116
|
+
exchangeCode(
|
|
117
|
+
context: OAuthConnectorAuthorizationContext,
|
|
118
|
+
input: OAuthConnectorCodeExchangeInput
|
|
119
|
+
): Promise<ConnectorOAuthCredentials> | ConnectorOAuthCredentials
|
|
120
|
+
refresh(
|
|
121
|
+
context: ConnectorContext,
|
|
122
|
+
credentials: ConnectorOAuthCredentials
|
|
123
|
+
): Promise<ConnectorOAuthCredentials> | ConnectorOAuthCredentials
|
|
124
|
+
/**
|
|
125
|
+
* Revokes the grant idempotently. An already revoked or invalid grant must resolve successfully
|
|
126
|
+
* so Sixb can converge after losing an earlier provider response.
|
|
127
|
+
*/
|
|
128
|
+
revoke?(context: ConnectorContext, credentials: ConnectorOAuthCredentials): Promise<void> | void
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
export interface OAuthConnectorAdapter<TType extends string = string, TClient = unknown> {
|
|
132
|
+
readonly type: TType
|
|
133
|
+
readonly authentication: ConnectorOAuth2Authentication
|
|
134
|
+
readonly webhooks?: undefined
|
|
135
|
+
discoverAccounts(
|
|
136
|
+
context: ConnectorContext,
|
|
137
|
+
credentials: ConnectorOAuthCredentials
|
|
138
|
+
): Promise<readonly ConnectorAccountCandidate[]> | readonly ConnectorAccountCandidate[]
|
|
139
|
+
connect(context: ConnectorConnectionClientContext): Promise<TClient> | TClient
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
export type AnyConnectorAdapter = ConnectorAdapter | OAuthConnectorAdapter
|
|
143
|
+
|
|
28
144
|
/**
|
|
29
145
|
* Inert connector definition registered with Sixb.
|
|
30
146
|
*
|
|
@@ -33,30 +149,63 @@ export interface ConnectorAdapter<TType extends string = string, TClient = unkno
|
|
|
33
149
|
*/
|
|
34
150
|
export interface ConnectorDefinition<
|
|
35
151
|
TId extends string = string,
|
|
36
|
-
TAdapter extends
|
|
152
|
+
TAdapter extends AnyConnectorAdapter = AnyConnectorAdapter,
|
|
37
153
|
> {
|
|
38
154
|
readonly kind: "connector"
|
|
39
155
|
readonly id: TId
|
|
40
156
|
readonly adapter: TAdapter
|
|
41
157
|
}
|
|
42
158
|
|
|
159
|
+
export type StaticConnectorDefinition = ConnectorDefinition<string, ConnectorAdapter>
|
|
160
|
+
|
|
43
161
|
/** Infer the connected client type returned by a connector adapter. */
|
|
44
|
-
export type ConnectorClient<TAdapter extends
|
|
162
|
+
export type ConnectorClient<TAdapter extends AnyConnectorAdapter> = Awaited<
|
|
45
163
|
ReturnType<TAdapter["connect"]>
|
|
46
164
|
>
|
|
47
165
|
|
|
166
|
+
export function isOAuthConnectorAdapter(
|
|
167
|
+
value: AnyConnectorAdapter
|
|
168
|
+
): value is OAuthConnectorAdapter {
|
|
169
|
+
return "authentication" in value && value.authentication?.type === "oauth2"
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
export function isOAuthConnectorDefinition(
|
|
173
|
+
value: ConnectorDefinition
|
|
174
|
+
): value is ConnectorDefinition<string, OAuthConnectorAdapter> {
|
|
175
|
+
return isOAuthConnectorAdapter(value.adapter)
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
export function isStaticConnectorDefinition(
|
|
179
|
+
value: ConnectorDefinition
|
|
180
|
+
): value is StaticConnectorDefinition {
|
|
181
|
+
return !isOAuthConnectorDefinition(value)
|
|
182
|
+
}
|
|
183
|
+
|
|
48
184
|
export function isConnectorDefinition(value: unknown): value is ConnectorDefinition {
|
|
49
185
|
if (!isRecord(value)) {
|
|
50
186
|
return false
|
|
51
187
|
}
|
|
52
188
|
|
|
53
|
-
|
|
189
|
+
const adapter = value.adapter
|
|
190
|
+
if (
|
|
54
191
|
value.kind === "connector" &&
|
|
55
192
|
typeof value.id === "string" &&
|
|
56
|
-
isRecord(
|
|
57
|
-
typeof
|
|
58
|
-
typeof
|
|
59
|
-
)
|
|
193
|
+
isRecord(adapter) &&
|
|
194
|
+
typeof adapter.type === "string" &&
|
|
195
|
+
typeof adapter.connect === "function"
|
|
196
|
+
) {
|
|
197
|
+
if (adapter.authentication === undefined) return true
|
|
198
|
+
const authentication = adapter.authentication
|
|
199
|
+
if (!isRecord(authentication) || authentication.type !== "oauth2") return false
|
|
200
|
+
return (
|
|
201
|
+
typeof authentication.authorizationUrl === "function" &&
|
|
202
|
+
typeof authentication.exchangeCode === "function" &&
|
|
203
|
+
typeof authentication.refresh === "function" &&
|
|
204
|
+
typeof adapter.discoverAccounts === "function"
|
|
205
|
+
)
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
return false
|
|
60
209
|
}
|
|
61
210
|
|
|
62
211
|
function isRecord(value: unknown): value is Record<string, unknown> {
|
package/src/datasets/builders.ts
CHANGED
|
@@ -4,6 +4,7 @@ import type {
|
|
|
4
4
|
DatasetColumnNameOf,
|
|
5
5
|
DatasetColumnType,
|
|
6
6
|
DatasetDefinition,
|
|
7
|
+
DatasetPrimaryKey,
|
|
7
8
|
} from "./types"
|
|
8
9
|
import { assertDatasetColumnDefinition, assertDatasetDefinition } from "./validation"
|
|
9
10
|
|
|
@@ -13,6 +14,7 @@ type DatasetColumnOptions = {
|
|
|
13
14
|
|
|
14
15
|
type DefineDatasetOptions = {
|
|
15
16
|
readonly schema: readonly DatasetColumnDefinition[]
|
|
17
|
+
readonly primaryKey?: DatasetPrimaryKey
|
|
16
18
|
readonly partitionBy?: readonly string[]
|
|
17
19
|
readonly description?: string
|
|
18
20
|
}
|
|
@@ -20,6 +22,7 @@ type DefineDatasetOptions = {
|
|
|
20
22
|
type DeriveDatasetOptions<TParent extends DatasetDefinition> = {
|
|
21
23
|
readonly pick?: readonly DatasetColumnNameOf<TParent>[]
|
|
22
24
|
readonly add?: readonly DatasetColumnDefinition[]
|
|
25
|
+
readonly primaryKey?: DatasetPrimaryKey
|
|
23
26
|
readonly partitionBy?: readonly string[]
|
|
24
27
|
readonly description?: string
|
|
25
28
|
}
|
|
@@ -39,6 +42,24 @@ type ColumnDefinitionOf<
|
|
|
39
42
|
TName extends ColumnNameOf<TColumns>,
|
|
40
43
|
> = Extract<TColumns[number], { readonly name: TName }>
|
|
41
44
|
|
|
45
|
+
type PrimaryKeyColumnNameOf<TColumns extends readonly DatasetColumnDefinition[]> =
|
|
46
|
+
string extends ColumnNameOf<TColumns>
|
|
47
|
+
? string
|
|
48
|
+
: {
|
|
49
|
+
[TName in ColumnNameOf<TColumns>]: ColumnDefinitionOf<
|
|
50
|
+
TColumns,
|
|
51
|
+
TName
|
|
52
|
+
>["type"] extends "string"
|
|
53
|
+
? ColumnDefinitionOf<TColumns, TName> extends { readonly nullable: true }
|
|
54
|
+
? never
|
|
55
|
+
: TName
|
|
56
|
+
: never
|
|
57
|
+
}[ColumnNameOf<TColumns>]
|
|
58
|
+
|
|
59
|
+
type CheckedDefineDatasetOptions<TOptions extends DefineDatasetOptions> = TOptions & {
|
|
60
|
+
readonly primaryKey?: DatasetPrimaryKey<PrimaryKeyColumnNameOf<TOptions["schema"]>>
|
|
61
|
+
}
|
|
62
|
+
|
|
42
63
|
type PickColumns<
|
|
43
64
|
TColumns extends readonly DatasetColumnDefinition[],
|
|
44
65
|
TNames extends readonly ColumnNameOf<TColumns>[],
|
|
@@ -86,8 +107,9 @@ type DatasetColumnResult<
|
|
|
86
107
|
|
|
87
108
|
type DatasetDefinitionResult<TId extends string, TOptions extends DefineDatasetOptions> = Omit<
|
|
88
109
|
DatasetDefinition<TId, TOptions["schema"]>,
|
|
89
|
-
"partitionBy" | "description"
|
|
110
|
+
"primaryKey" | "partitionBy" | "description"
|
|
90
111
|
> &
|
|
112
|
+
FieldFromOptions<TOptions, "primaryKey", DatasetPrimaryKey> &
|
|
91
113
|
FieldFromOptions<TOptions, "partitionBy", readonly string[]> &
|
|
92
114
|
FieldFromOptions<TOptions, "description", string>
|
|
93
115
|
|
|
@@ -95,10 +117,21 @@ type DerivedDatasetDefinitionResult<
|
|
|
95
117
|
TId extends string,
|
|
96
118
|
TParent extends DatasetDefinition,
|
|
97
119
|
TOptions extends DeriveDatasetOptions<TParent> | undefined,
|
|
98
|
-
> = Omit<
|
|
120
|
+
> = Omit<
|
|
121
|
+
DatasetDefinition<TId, DerivedColumns<TParent, TOptions>>,
|
|
122
|
+
"primaryKey" | "partitionBy" | "description"
|
|
123
|
+
> &
|
|
124
|
+
FieldFromOptions<TOptions, "primaryKey", DatasetPrimaryKey> &
|
|
99
125
|
FieldFromOptions<TOptions, "partitionBy", readonly string[]> &
|
|
100
126
|
FieldFromOptions<TOptions, "description", string>
|
|
101
127
|
|
|
128
|
+
type CheckedDeriveDatasetOptions<
|
|
129
|
+
TParent extends DatasetDefinition,
|
|
130
|
+
TOptions extends DeriveDatasetOptions<TParent>,
|
|
131
|
+
> = TOptions & {
|
|
132
|
+
readonly primaryKey?: DatasetPrimaryKey<PrimaryKeyColumnNameOf<DerivedColumns<TParent, TOptions>>>
|
|
133
|
+
}
|
|
134
|
+
|
|
102
135
|
export function col<const TName extends string, const TType extends DatasetColumnType>(
|
|
103
136
|
name: TName,
|
|
104
137
|
type: TType
|
|
@@ -130,12 +163,19 @@ function assertDatasetId(id: string): void {
|
|
|
130
163
|
}
|
|
131
164
|
|
|
132
165
|
function createDatasetDefinition(id: string, options: DefineDatasetOptions): DatasetDefinition {
|
|
133
|
-
const definition:
|
|
166
|
+
const definition: unknown = {
|
|
134
167
|
kind: "dataset",
|
|
135
168
|
id,
|
|
136
169
|
schema: {
|
|
137
170
|
columns: [...options.schema],
|
|
138
171
|
},
|
|
172
|
+
...(options.primaryKey !== undefined
|
|
173
|
+
? {
|
|
174
|
+
primaryKey: Array.isArray(options.primaryKey)
|
|
175
|
+
? [...options.primaryKey]
|
|
176
|
+
: options.primaryKey,
|
|
177
|
+
}
|
|
178
|
+
: {}),
|
|
139
179
|
...(options.partitionBy !== undefined ? { partitionBy: [...options.partitionBy] } : {}),
|
|
140
180
|
...(options.description !== undefined ? { description: options.description } : {}),
|
|
141
181
|
}
|
|
@@ -189,6 +229,7 @@ function deriveDatasetDefinition(
|
|
|
189
229
|
|
|
190
230
|
return createDatasetDefinition(id, {
|
|
191
231
|
schema: [...pickedColumns, ...(options.add ?? [])],
|
|
232
|
+
...(options.primaryKey !== undefined ? { primaryKey: options.primaryKey } : {}),
|
|
192
233
|
...(options.partitionBy !== undefined ? { partitionBy: options.partitionBy } : {}),
|
|
193
234
|
...(options.description !== undefined ? { description: options.description } : {}),
|
|
194
235
|
})
|
|
@@ -203,7 +244,10 @@ function createDatasetDeriveBuilder<TId extends string>(id: TId) {
|
|
|
203
244
|
function derive<
|
|
204
245
|
const TParent extends DatasetDefinition,
|
|
205
246
|
const TOptions extends DeriveDatasetOptions<TParent>,
|
|
206
|
-
>(
|
|
247
|
+
>(
|
|
248
|
+
parent: TParent,
|
|
249
|
+
options: CheckedDeriveDatasetOptions<TParent, TOptions>
|
|
250
|
+
): DerivedDatasetDefinitionResult<TId, TParent, TOptions>
|
|
207
251
|
function derive(
|
|
208
252
|
parent: DatasetDefinition,
|
|
209
253
|
options?: DeriveDatasetOptions<DatasetDefinition>
|
|
@@ -220,7 +264,7 @@ export function defineDataset<const TId extends string>(
|
|
|
220
264
|
export function defineDataset<
|
|
221
265
|
const TId extends string,
|
|
222
266
|
const TOptions extends DefineDatasetOptions,
|
|
223
|
-
>(id: TId, options: TOptions): DatasetDefinitionResult<TId, TOptions>
|
|
267
|
+
>(id: TId, options: CheckedDefineDatasetOptions<TOptions>): DatasetDefinitionResult<TId, TOptions>
|
|
224
268
|
export function defineDataset(
|
|
225
269
|
id: string,
|
|
226
270
|
options?: DefineDatasetOptions
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type MergeChange<Row, Key> =
|
|
2
|
+
| { readonly kind: "upsert"; readonly row: Row }
|
|
3
|
+
| { readonly kind: "delete"; readonly key: Key }
|
|
4
|
+
|
|
5
|
+
export const change = {
|
|
6
|
+
upsert<const Row extends object>(row: Row): { readonly kind: "upsert"; readonly row: Row } {
|
|
7
|
+
return { kind: "upsert", row }
|
|
8
|
+
},
|
|
9
|
+
|
|
10
|
+
delete<const Key extends object>(key: Key): { readonly kind: "delete"; readonly key: Key } {
|
|
11
|
+
return { kind: "delete", key }
|
|
12
|
+
},
|
|
13
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { isAllowed } from "../authorization"
|
|
2
|
+
import type { SixbRuntimeContext } from "../runtime/types"
|
|
3
|
+
import type { DatasetDefinition } from "./types"
|
|
4
|
+
|
|
5
|
+
export interface DatasetsRuntime {
|
|
6
|
+
list(): readonly DatasetDefinition[]
|
|
7
|
+
getById(datasetId: string): DatasetDefinition | null
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export function createDatasetsRuntime(
|
|
11
|
+
runtime: Pick<SixbRuntimeContext, "authorization">,
|
|
12
|
+
source: Pick<DatasetsRuntime, "list" | "getById">
|
|
13
|
+
): DatasetsRuntime {
|
|
14
|
+
const allowed = (datasetId: string) =>
|
|
15
|
+
isAllowed(runtime.authorization, { kind: "dataset.view", datasetId })
|
|
16
|
+
|
|
17
|
+
return {
|
|
18
|
+
list: () => source.list().filter((dataset) => allowed(dataset.id)),
|
|
19
|
+
getById: (datasetId) => {
|
|
20
|
+
const dataset = source.getById(datasetId)
|
|
21
|
+
return dataset && allowed(datasetId) ? dataset : null
|
|
22
|
+
},
|
|
23
|
+
}
|
|
24
|
+
}
|
package/src/datasets/index.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { col, defineDataset } from "./builders"
|
|
2
|
+
export type { MergeChange } from "./changes"
|
|
3
|
+
export { change } from "./changes"
|
|
2
4
|
export { DatasetValidationError } from "./errors"
|
|
3
5
|
export type {
|
|
4
6
|
DatasetColumnDefinition,
|
|
@@ -8,6 +10,7 @@ export type {
|
|
|
8
10
|
DatasetColumnTypeOf,
|
|
9
11
|
DatasetColumnUnionOf,
|
|
10
12
|
DatasetDefinition,
|
|
13
|
+
DatasetPrimaryKey,
|
|
11
14
|
DatasetSchema,
|
|
12
15
|
} from "./types"
|
|
13
16
|
export { getDatasetRowValidationError, isDatasetDefinition } from "./validation"
|
package/src/datasets/types.ts
CHANGED
|
@@ -24,6 +24,10 @@ export interface DatasetSchema<
|
|
|
24
24
|
readonly columns: TColumns
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
+
export type DatasetPrimaryKey<TColumnName extends string = string> =
|
|
28
|
+
| TColumnName
|
|
29
|
+
| readonly [TColumnName, TColumnName, ...TColumnName[]]
|
|
30
|
+
|
|
27
31
|
export interface DatasetDefinition<
|
|
28
32
|
TId extends string = string,
|
|
29
33
|
TColumns extends readonly DatasetColumnDefinition[] = readonly DatasetColumnDefinition[],
|
|
@@ -31,6 +35,7 @@ export interface DatasetDefinition<
|
|
|
31
35
|
readonly kind: "dataset"
|
|
32
36
|
readonly id: TId
|
|
33
37
|
readonly schema: DatasetSchema<TColumns>
|
|
38
|
+
readonly primaryKey?: DatasetPrimaryKey
|
|
34
39
|
readonly partitionBy?: readonly string[]
|
|
35
40
|
readonly description?: string
|
|
36
41
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { isFileRef } from "../blob-storage"
|
|
2
|
-
import { isJsonValue } from "../json"
|
|
2
|
+
import { isJsonValue, isPlainRecord } from "../json"
|
|
3
3
|
import { isDecimalString } from "../ontology/decimal"
|
|
4
4
|
import { DatasetValidationError } from "./errors"
|
|
5
5
|
import type {
|
|
@@ -25,15 +25,6 @@ function isRecord(value: unknown): value is Record<string, unknown> {
|
|
|
25
25
|
return typeof value === "object" && value !== null && !Array.isArray(value)
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
function isPlainObject(value: unknown): value is Record<string, unknown> {
|
|
29
|
-
if (!isRecord(value)) {
|
|
30
|
-
return false
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
const prototype = Object.getPrototypeOf(value)
|
|
34
|
-
return prototype === Object.prototype || prototype === null
|
|
35
|
-
}
|
|
36
|
-
|
|
37
28
|
function isValidDateValue(value: unknown): boolean {
|
|
38
29
|
return value instanceof Date && !Number.isNaN(value.getTime())
|
|
39
30
|
}
|
|
@@ -128,6 +119,53 @@ function assertDatasetSchema(
|
|
|
128
119
|
}
|
|
129
120
|
}
|
|
130
121
|
|
|
122
|
+
function assertDatasetPrimaryKey(
|
|
123
|
+
primaryKey: unknown,
|
|
124
|
+
schema: DatasetSchema,
|
|
125
|
+
createError: (message: string) => Error
|
|
126
|
+
): void {
|
|
127
|
+
let keyColumns: readonly unknown[]
|
|
128
|
+
if (typeof primaryKey === "string") {
|
|
129
|
+
keyColumns = [primaryKey]
|
|
130
|
+
} else if (Array.isArray(primaryKey)) {
|
|
131
|
+
if (primaryKey.length < 2) {
|
|
132
|
+
throw createError(
|
|
133
|
+
"Dataset primaryKey arrays must contain at least two column names. Use a string for a single-column key."
|
|
134
|
+
)
|
|
135
|
+
}
|
|
136
|
+
keyColumns = primaryKey
|
|
137
|
+
} else {
|
|
138
|
+
throw createError(
|
|
139
|
+
"Dataset primaryKey must be a column name or an array of at least two column names."
|
|
140
|
+
)
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
const columnsByName = new Map(schema.columns.map((column) => [column.name, column] as const))
|
|
144
|
+
const seenColumnNames = new Set<string>()
|
|
145
|
+
|
|
146
|
+
for (const columnName of keyColumns) {
|
|
147
|
+
if (typeof columnName !== "string" || columnName.trim().length === 0) {
|
|
148
|
+
throw createError("Dataset primaryKey columns must be non-empty strings.")
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
if (seenColumnNames.has(columnName)) {
|
|
152
|
+
throw createError(`Dataset primaryKey contains duplicate column '${columnName}'.`)
|
|
153
|
+
}
|
|
154
|
+
seenColumnNames.add(columnName)
|
|
155
|
+
|
|
156
|
+
const column = columnsByName.get(columnName)
|
|
157
|
+
if (column === undefined) {
|
|
158
|
+
throw createError(`Dataset primaryKey column '${columnName}' is not declared in the schema.`)
|
|
159
|
+
}
|
|
160
|
+
if (column.type !== "string") {
|
|
161
|
+
throw createError(`Dataset primaryKey column '${columnName}' must have type 'string'.`)
|
|
162
|
+
}
|
|
163
|
+
if (column.nullable === true) {
|
|
164
|
+
throw createError(`Dataset primaryKey column '${columnName}' must not be nullable.`)
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
131
169
|
export function assertDatasetDefinition(
|
|
132
170
|
definition: unknown,
|
|
133
171
|
createError: (message: string) => Error = (message) => new DatasetValidationError(message)
|
|
@@ -143,6 +181,10 @@ export function assertDatasetDefinition(
|
|
|
143
181
|
assertNonEmptyString(definition.id, "Dataset id", createError)
|
|
144
182
|
assertDatasetSchema(definition.schema, createError)
|
|
145
183
|
|
|
184
|
+
if (definition.primaryKey !== undefined) {
|
|
185
|
+
assertDatasetPrimaryKey(definition.primaryKey, definition.schema, createError)
|
|
186
|
+
}
|
|
187
|
+
|
|
146
188
|
if (definition.partitionBy !== undefined) {
|
|
147
189
|
if (!Array.isArray(definition.partitionBy)) {
|
|
148
190
|
throw createError("Dataset partitionBy must be an array of column names.")
|
|
@@ -176,7 +218,7 @@ export function getDatasetRowValidationError(
|
|
|
176
218
|
dataset: DatasetDefinition,
|
|
177
219
|
options?: { readonly columns?: Iterable<string> }
|
|
178
220
|
): string | null {
|
|
179
|
-
if (!
|
|
221
|
+
if (!isPlainRecord(row)) {
|
|
180
222
|
return `Dataset '${dataset.id}' rows must be plain objects.`
|
|
181
223
|
}
|
|
182
224
|
|
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
import { randomUUID } from "node:crypto"
|
|
2
1
|
import { SixbErrorReporter } from "./reporter"
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
import {
|
|
3
|
+
type ReportActionPhaseFailureInput,
|
|
4
|
+
type ReportEventDeliveryFailureInput,
|
|
5
|
+
type ReportRuleEvaluationFailureInput,
|
|
6
|
+
type ReportRunFailureInput,
|
|
7
|
+
reportActionPhaseFailure as reportActionPhaseFailureWith,
|
|
8
|
+
reportEventDeliveryFailure as reportEventDeliveryFailureWith,
|
|
9
|
+
reportRuleEvaluationFailure as reportRuleEvaluationFailureWith,
|
|
10
|
+
reportRunFailure as reportRunFailureWith,
|
|
11
|
+
} from "./reports"
|
|
12
|
+
import type { SixbErrorHandler } from "./types"
|
|
9
13
|
|
|
10
14
|
const ERROR_REPORTER = Symbol("sixb.error-reporter")
|
|
15
|
+
const FALLBACK_REPORTER = new SixbErrorReporter()
|
|
11
16
|
|
|
12
17
|
type ErrorReporterHost = {
|
|
13
18
|
[ERROR_REPORTER]?: SixbErrorReporter
|
|
@@ -20,6 +25,10 @@ function asHost(value: unknown): ErrorReporterHost | null {
|
|
|
20
25
|
return value as ErrorReporterHost
|
|
21
26
|
}
|
|
22
27
|
|
|
28
|
+
function resolveSixbErrorReporter(host: unknown): SixbErrorReporter {
|
|
29
|
+
return asHost(host)?.[ERROR_REPORTER] ?? FALLBACK_REPORTER
|
|
30
|
+
}
|
|
31
|
+
|
|
23
32
|
export function attachSixbErrorReporter(
|
|
24
33
|
host: object,
|
|
25
34
|
handler?: SixbErrorHandler
|
|
@@ -34,97 +43,35 @@ export function shareSixbErrorReporter(source: object, target: object): void {
|
|
|
34
43
|
if (reporter) (target as ErrorReporterHost)[ERROR_REPORTER] = reporter
|
|
35
44
|
}
|
|
36
45
|
|
|
37
|
-
export
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
46
|
+
export type {
|
|
47
|
+
ReportActionPhaseFailureInput,
|
|
48
|
+
ReportEventDeliveryFailureInput,
|
|
49
|
+
ReportRuleEvaluationFailureInput,
|
|
50
|
+
ReportRunFailureInput,
|
|
42
51
|
}
|
|
43
52
|
|
|
44
|
-
export function
|
|
53
|
+
export function reportActionPhaseFailure(
|
|
45
54
|
host: unknown,
|
|
46
55
|
error: unknown,
|
|
47
|
-
input:
|
|
56
|
+
input: ReportActionPhaseFailureInput
|
|
48
57
|
): void {
|
|
49
|
-
|
|
50
|
-
if (!reporter) return
|
|
51
|
-
|
|
52
|
-
const occurredAt = resolveOccurredAt(input.occurredAt)
|
|
53
|
-
reporter.report(error, {
|
|
54
|
-
type: "run.failed",
|
|
55
|
-
notificationId: `project:${input.projectId}:run:${input.run.kind}:${input.run.runId}:failed:${occurredAt}`,
|
|
56
|
-
projectId: input.projectId,
|
|
57
|
-
occurredAt,
|
|
58
|
-
...(input.attempt === undefined ? {} : { attempt: input.attempt }),
|
|
59
|
-
run: input.run,
|
|
60
|
-
})
|
|
58
|
+
reportActionPhaseFailureWith(resolveSixbErrorReporter(host), error, input)
|
|
61
59
|
}
|
|
62
60
|
|
|
63
|
-
export
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
readonly attempts?: number
|
|
70
|
-
/** Envelope ids, when the events were persisted before delivery failed. */
|
|
71
|
-
readonly eventIds?: readonly string[]
|
|
72
|
-
/**
|
|
73
|
-
* Identity of this loss, used only when nothing was persisted. Defaults to a fresh id; pass one to
|
|
74
|
-
* make a report reproducible in a test.
|
|
75
|
-
*/
|
|
76
|
-
readonly occurrenceId?: string
|
|
61
|
+
export function reportRunFailure(
|
|
62
|
+
host: unknown,
|
|
63
|
+
error: unknown,
|
|
64
|
+
input: ReportRunFailureInput
|
|
65
|
+
): void {
|
|
66
|
+
reportRunFailureWith(resolveSixbErrorReporter(host), error, input)
|
|
77
67
|
}
|
|
78
68
|
|
|
79
|
-
/**
|
|
80
|
-
* Report that domain events were lost.
|
|
81
|
-
*
|
|
82
|
-
* Both delivery paths land here: the outbox dispatcher, which has persisted envelope ids and retries,
|
|
83
|
-
* and a rejected `events.emit()`, which has only the types. Reporting must work for both — an earlier
|
|
84
|
-
* version returned early on an empty `eventIds`, which silently dropped exactly the case this exists
|
|
85
|
-
* to surface.
|
|
86
|
-
*
|
|
87
|
-
* Each path keys on the strongest identity it has. The outbox persisted its envelopes, so the ids plus
|
|
88
|
-
* the attempt number name the loss exactly and stay stable if one report is delivered twice. A rejected
|
|
89
|
-
* emit persisted nothing and is always terminal at attempt 1, so the type list alone was its whole
|
|
90
|
-
* correlation — and two schedules losing `schedule.triggered` in the same broker outage are dispatched
|
|
91
|
-
* concurrently, land in the same millisecond, and were therefore one notification. A timestamp does not
|
|
92
|
-
* fix that; an identity does.
|
|
93
|
-
*/
|
|
94
69
|
export function reportEventDeliveryFailure(
|
|
95
70
|
host: unknown,
|
|
96
71
|
error: unknown,
|
|
97
72
|
input: ReportEventDeliveryFailureInput
|
|
98
73
|
): void {
|
|
99
|
-
|
|
100
|
-
if (!reporter) return
|
|
101
|
-
|
|
102
|
-
const occurredAt = resolveOccurredAt(input.occurredAt)
|
|
103
|
-
const attempts = input.attempts ?? 1
|
|
104
|
-
const eventIds = input.eventIds === undefined ? undefined : [...input.eventIds].sort()
|
|
105
|
-
const firstEventId = eventIds?.[0]
|
|
106
|
-
const occurrence = firstEventId
|
|
107
|
-
? `events:${firstEventId}:attempt:${attempts}`
|
|
108
|
-
: `emit:${input.occurrenceId ?? randomUUID()}`
|
|
109
|
-
reporter.report(error, {
|
|
110
|
-
type: "event.delivery.failed",
|
|
111
|
-
notificationId: `project:${input.projectId}:event-delivery:${occurrence}`,
|
|
112
|
-
projectId: input.projectId,
|
|
113
|
-
occurredAt,
|
|
114
|
-
attempts,
|
|
115
|
-
eventTypes: input.eventTypes,
|
|
116
|
-
...(eventIds === undefined ? {} : { eventIds }),
|
|
117
|
-
})
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
export interface ReportRuleEvaluationFailureInput {
|
|
121
|
-
readonly projectId: string
|
|
122
|
-
readonly source: "live" | "reconciliation"
|
|
123
|
-
readonly eventIds?: readonly string[]
|
|
124
|
-
readonly occurredAt?: Date | string
|
|
125
|
-
/** Set when the failure could be attributed to one rule/subject candidate. */
|
|
126
|
-
readonly ruleId?: string
|
|
127
|
-
readonly subject?: { readonly objectTypeId: string; readonly primaryId: string }
|
|
74
|
+
reportEventDeliveryFailureWith(resolveSixbErrorReporter(host), error, input)
|
|
128
75
|
}
|
|
129
76
|
|
|
130
77
|
export function reportRuleEvaluationFailure(
|
|
@@ -132,29 +79,9 @@ export function reportRuleEvaluationFailure(
|
|
|
132
79
|
error: unknown,
|
|
133
80
|
input: ReportRuleEvaluationFailureInput
|
|
134
81
|
): void {
|
|
135
|
-
|
|
136
|
-
if (!reporter) return
|
|
137
|
-
|
|
138
|
-
const occurredAt = resolveOccurredAt(input.occurredAt)
|
|
139
|
-
const eventIds = [...(input.eventIds ?? [])].sort()
|
|
140
|
-
// A candidate-level failure keys on the candidate, so two rules failing over the same batch stay
|
|
141
|
-
// two notifications rather than collapsing into one.
|
|
142
|
-
const occurrence =
|
|
143
|
-
input.ruleId && input.subject
|
|
144
|
-
? `${input.ruleId}:${input.subject.objectTypeId}:${input.subject.primaryId}`
|
|
145
|
-
: (eventIds[0] ?? "current-state")
|
|
146
|
-
reporter.report(error, {
|
|
147
|
-
type: "rule.evaluation.failed",
|
|
148
|
-
notificationId: `project:${input.projectId}:rule-evaluation:${input.source}:${occurrence}:failed:${occurredAt}`,
|
|
149
|
-
projectId: input.projectId,
|
|
150
|
-
occurredAt,
|
|
151
|
-
source: input.source,
|
|
152
|
-
eventIds,
|
|
153
|
-
...(input.ruleId === undefined ? {} : { ruleId: input.ruleId }),
|
|
154
|
-
...(input.subject === undefined ? {} : { subject: input.subject }),
|
|
155
|
-
})
|
|
82
|
+
reportRuleEvaluationFailureWith(resolveSixbErrorReporter(host), error, input)
|
|
156
83
|
}
|
|
157
84
|
|
|
158
85
|
export async function flushSixbErrors(host: unknown, timeoutMs?: number): Promise<void> {
|
|
159
|
-
await
|
|
86
|
+
await resolveSixbErrorReporter(host).flush(timeoutMs)
|
|
160
87
|
}
|