@sixb/core 0.1.7 → 0.1.8
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/dist/actions/delegated-admission.d.ts +24 -0
- package/dist/actions/delegated-admission.d.ts.map +1 -0
- package/dist/actions/descriptor.d.ts +29 -0
- package/dist/actions/descriptor.d.ts.map +1 -0
- package/dist/actions/execution.d.ts +5 -5
- package/dist/actions/execution.d.ts.map +1 -1
- package/dist/actions/index.js +36 -30
- package/dist/actions/index.js.map +1 -1
- package/dist/actions/request.d.ts.map +1 -1
- package/dist/actions/run-authorization.d.ts +20 -0
- package/dist/actions/run-authorization.d.ts.map +1 -0
- package/dist/actions/run-dispatch.d.ts +3 -1
- package/dist/actions/run-dispatch.d.ts.map +1 -1
- package/dist/actions/worker.js +3 -3
- package/dist/actions/worker.js.map +1 -1
- package/dist/agents/adapters.d.ts +5 -122
- package/dist/agents/adapters.d.ts.map +1 -1
- package/dist/agents/authority.d.ts +1 -1
- package/dist/agents/authority.d.ts.map +1 -1
- package/dist/agents/context-resolution.d.ts.map +1 -1
- package/dist/agents/context.js +1 -1
- package/dist/agents/errors.d.ts +0 -9
- package/dist/agents/errors.d.ts.map +1 -1
- package/dist/agents/execution.d.ts.map +1 -1
- package/dist/agents/identity.d.ts +3 -0
- package/dist/agents/identity.d.ts.map +1 -0
- package/dist/agents/index.d.ts +3 -3
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +43 -43
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/message.d.ts +4 -5
- package/dist/agents/message.d.ts.map +1 -1
- package/dist/agents/model-loop.d.ts +2 -0
- package/dist/agents/model-loop.d.ts.map +1 -1
- package/dist/agents/request.d.ts.map +1 -1
- package/dist/agents/tool-definition.d.ts +0 -1
- package/dist/agents/tool-definition.d.ts.map +1 -1
- package/dist/agents/validation.d.ts +0 -4
- package/dist/agents/validation.d.ts.map +1 -1
- package/dist/ai-usage/execution.d.ts.map +1 -1
- package/dist/auth/index.js +8 -5
- package/dist/auth/index.js.map +1 -1
- package/dist/authorization/decision.d.ts +10 -2
- 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 +7 -4
- package/dist/authorization/index.js.map +1 -1
- package/dist/bootstrap/discovery.d.ts +7 -1
- package/dist/bootstrap/discovery.d.ts.map +1 -1
- package/dist/bootstrap/index.js +46 -39
- package/dist/bootstrap/index.js.map +1 -1
- package/dist/bootstrap/ontology-type-manifest.d.ts.map +1 -1
- package/dist/chunk-19jp6g9d.js +131 -0
- package/dist/chunk-19jp6g9d.js.map +11 -0
- package/dist/{chunk-x0qhkqje.js → chunk-2dw777qw.js} +50 -5
- package/dist/{chunk-x0qhkqje.js.map → chunk-2dw777qw.js.map} +4 -3
- package/dist/chunk-359jm1jw.js +147 -0
- package/dist/chunk-359jm1jw.js.map +10 -0
- package/dist/{chunk-2b5qtban.js → chunk-3xep5cjx.js} +56 -21
- package/dist/chunk-3xep5cjx.js.map +15 -0
- package/dist/{chunk-qjycjdj6.js → chunk-3z1qec12.js} +6 -8
- package/dist/{chunk-qjycjdj6.js.map → chunk-3z1qec12.js.map} +2 -2
- package/dist/{chunk-5jcdmjam.js → chunk-4jjp5k14.js} +1 -1
- package/dist/{chunk-n2arzn6e.js → chunk-4qfkag59.js} +44 -221
- package/dist/chunk-4qfkag59.js.map +20 -0
- package/dist/{chunk-rre42skh.js → chunk-4sm0aznx.js} +515 -80
- package/dist/{chunk-rre42skh.js.map → chunk-4sm0aznx.js.map} +11 -7
- package/dist/chunk-4yqmp43v.js +159 -0
- package/dist/chunk-4yqmp43v.js.map +11 -0
- package/dist/{chunk-atmkaf60.js → chunk-5e3pq99w.js} +2 -6
- package/dist/{chunk-atmkaf60.js.map → chunk-5e3pq99w.js.map} +3 -3
- package/dist/{chunk-agsvg9ar.js → chunk-5ntny1qx.js} +1 -1
- package/dist/{chunk-z2sery1b.js → chunk-9nbmsvn5.js} +60 -20
- package/dist/chunk-9nbmsvn5.js.map +11 -0
- package/dist/{chunk-e4rvtvpw.js → chunk-aa2pen2v.js} +250 -78
- package/dist/chunk-aa2pen2v.js.map +34 -0
- package/dist/{chunk-64sr682n.js → chunk-ajnan18g.js} +11 -8
- package/dist/chunk-ajnan18g.js.map +12 -0
- package/dist/{chunk-9aehf39w.js → chunk-f26bck4t.js} +4 -4
- package/dist/{chunk-7ds9620f.js → chunk-fvt9rjsa.js} +23 -7
- package/dist/chunk-fvt9rjsa.js.map +10 -0
- package/dist/{chunk-kt81c11h.js → chunk-gbejpkex.js} +5 -5
- package/dist/{chunk-kt81c11h.js.map → chunk-gbejpkex.js.map} +1 -1
- package/dist/{chunk-vjjv9mrb.js → chunk-gzasd5b6.js} +5 -5
- package/dist/{chunk-vjjv9mrb.js.map → chunk-gzasd5b6.js.map} +3 -3
- package/dist/{chunk-d63tybny.js → chunk-h0k55pc7.js} +4 -4
- package/dist/{chunk-d63tybny.js.map → chunk-h0k55pc7.js.map} +1 -1
- package/dist/chunk-h5vqbfmd.js +1537 -0
- package/dist/chunk-h5vqbfmd.js.map +19 -0
- package/dist/{chunk-3kv70xwp.js → chunk-j1sbhm7p.js} +18 -2
- package/dist/chunk-j1sbhm7p.js.map +10 -0
- package/dist/{chunk-hdz94br2.js → chunk-k522z7v6.js} +10 -5
- package/dist/chunk-k522z7v6.js.map +10 -0
- package/dist/{chunk-wjgm6jjt.js → chunk-mth82m8t.js} +128 -94
- package/dist/chunk-mth82m8t.js.map +14 -0
- package/dist/{chunk-qv38twt8.js → chunk-mwsxn98e.js} +46 -25
- package/dist/{chunk-qv38twt8.js.map → chunk-mwsxn98e.js.map} +6 -6
- package/dist/chunk-n4khvw9n.js +111 -0
- package/dist/chunk-n4khvw9n.js.map +11 -0
- package/dist/{chunk-qjzp9xyb.js → chunk-nn0tekr1.js} +6 -8
- package/dist/chunk-nn0tekr1.js.map +12 -0
- package/dist/chunk-nx7k8tpr.js +436 -0
- package/dist/chunk-nx7k8tpr.js.map +12 -0
- package/dist/{chunk-08twe8m6.js → chunk-p1rzczbt.js} +1 -1
- package/dist/{chunk-37wk412q.js → chunk-p1x242ad.js} +587 -70
- package/dist/chunk-p1x242ad.js.map +25 -0
- package/dist/{chunk-tn7xcs2n.js → chunk-pc7ys28c.js} +68 -5
- package/dist/chunk-pc7ys28c.js.map +14 -0
- package/dist/{chunk-3fqt22c4.js → chunk-q0k9nc5a.js} +280 -88
- package/dist/chunk-q0k9nc5a.js.map +14 -0
- package/dist/chunk-r8jrnexe.js +403 -0
- package/dist/chunk-r8jrnexe.js.map +10 -0
- package/dist/{chunk-gbrpsx4m.js → chunk-rafagrwr.js} +30 -2
- package/dist/chunk-rafagrwr.js.map +11 -0
- package/dist/{chunk-xdpwpkha.js → chunk-rv2hkwwa.js} +1 -1
- package/dist/{chunk-6ed5bwnd.js → chunk-sbzzr4kx.js} +1203 -691
- package/dist/{chunk-6ed5bwnd.js.map → chunk-sbzzr4kx.js.map} +15 -9
- package/dist/{chunk-d2ndstdf.js → chunk-v1xppd0y.js} +13 -11
- package/dist/{chunk-d2ndstdf.js.map → chunk-v1xppd0y.js.map} +2 -2
- package/dist/chunk-v4en4jc2.js +252 -0
- package/dist/chunk-v4en4jc2.js.map +10 -0
- package/dist/{chunk-1kamz6j0.js → chunk-w1tvjszy.js} +1 -1
- package/dist/{chunk-rp1mvzb4.js → chunk-w9tg6yyb.js} +11 -6
- package/dist/{chunk-rp1mvzb4.js.map → chunk-w9tg6yyb.js.map} +3 -3
- package/dist/{chunk-4nxeacx7.js → chunk-wdage1eb.js} +1 -1
- package/dist/{chunk-ha58tjtt.js → chunk-wtf06et8.js} +9 -5
- package/dist/{chunk-ha58tjtt.js.map → chunk-wtf06et8.js.map} +3 -3
- package/dist/{chunk-h0knpbz5.js → chunk-xajtptbw.js} +782 -211
- package/dist/chunk-xajtptbw.js.map +40 -0
- package/dist/{chunk-xc7hq65b.js → chunk-yp8ee62z.js} +49 -2
- package/dist/chunk-yp8ee62z.js.map +11 -0
- package/dist/chunk-z4ccwbkz.js +139 -0
- package/dist/chunk-z4ccwbkz.js.map +10 -0
- package/dist/datasets/builders.d.ts +11 -2
- package/dist/datasets/builders.d.ts.map +1 -1
- package/dist/datasets/changes.d.ts +14 -4
- package/dist/datasets/changes.d.ts.map +1 -1
- package/dist/datasets/execution.d.ts +15 -1
- package/dist/datasets/execution.d.ts.map +1 -1
- package/dist/datasets/index.d.ts +1 -0
- package/dist/datasets/index.d.ts.map +1 -1
- package/dist/datasets/sequence.d.ts +7 -0
- package/dist/datasets/sequence.d.ts.map +1 -0
- package/dist/datasets/types.d.ts +1 -0
- package/dist/datasets/types.d.ts.map +1 -1
- package/dist/datasets/validation.d.ts.map +1 -1
- package/dist/datasets/write.d.ts +37 -0
- package/dist/datasets/write.d.ts.map +1 -0
- package/dist/datasets/write.js +17 -0
- package/dist/datasets/write.js.map +9 -0
- package/dist/events/execution.d.ts.map +1 -1
- package/dist/events/types/datasets.d.ts +2 -6
- package/dist/events/types/datasets.d.ts.map +1 -1
- package/dist/execution/agent.d.ts.map +1 -1
- package/dist/execution/agent.js +39 -32
- package/dist/execution/agent.js.map +1 -1
- package/dist/execution/authorization.d.ts +58 -20
- package/dist/execution/authorization.d.ts.map +1 -1
- package/dist/execution/authorized-object-reader.d.ts +69 -0
- package/dist/execution/authorized-object-reader.d.ts.map +1 -0
- package/dist/execution/durable.d.ts.map +1 -1
- package/dist/execution/index.d.ts +1 -1
- package/dist/execution/index.d.ts.map +1 -1
- package/dist/execution/primitive.js +39 -32
- package/dist/execution/primitive.js.map +2 -2
- package/dist/execution/request.d.ts +11 -0
- package/dist/execution/request.d.ts.map +1 -1
- package/dist/execution/request.js +76 -40
- package/dist/execution/request.js.map +3 -3
- package/dist/execution/scopes.d.ts +16 -0
- package/dist/execution/scopes.d.ts.map +1 -1
- package/dist/execution/types.d.ts +9 -0
- package/dist/execution/types.d.ts.map +1 -1
- package/dist/http/api-routes.d.ts +2 -0
- package/dist/http/api-routes.d.ts.map +1 -1
- package/dist/http/index.js +1 -1
- package/dist/index.d.ts +8 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +92 -78
- package/dist/index.js.map +1 -1
- package/dist/lake-storage/definition-updates.d.ts.map +1 -1
- package/dist/lake-storage/errors.d.ts +5 -1
- package/dist/lake-storage/errors.d.ts.map +1 -1
- package/dist/lake-storage/in-memory.d.ts +1 -0
- package/dist/lake-storage/in-memory.d.ts.map +1 -1
- package/dist/lake-storage/index.d.ts +6 -1
- package/dist/lake-storage/index.d.ts.map +1 -1
- package/dist/lake-storage/index.js +24 -7
- package/dist/lake-storage/index.js.map +1 -1
- package/dist/lake-storage/merge-validation.d.ts.map +1 -1
- package/dist/lake-storage/merge.d.ts +13 -2
- package/dist/lake-storage/merge.d.ts.map +1 -1
- package/dist/lake-storage/source-ordering.d.ts +19 -0
- package/dist/lake-storage/source-ordering.d.ts.map +1 -0
- package/dist/lake-storage/sql-transforms.d.ts +2 -1
- package/dist/lake-storage/sql-transforms.d.ts.map +1 -1
- package/dist/lake-storage/types.d.ts +10 -5
- package/dist/lake-storage/types.d.ts.map +1 -1
- package/dist/lake-storage/version-inputs.d.ts +4 -0
- package/dist/lake-storage/version-inputs.d.ts.map +1 -0
- package/dist/materializer/index.js +25 -22
- package/dist/materializer/index.js.map +1 -1
- package/dist/objects/authorized-ontology-view.d.ts +25 -0
- package/dist/objects/authorized-ontology-view.d.ts.map +1 -0
- package/dist/objects/execution.d.ts +1 -1
- package/dist/objects/execution.d.ts.map +1 -1
- package/dist/objects/index.js +29 -26
- package/dist/objects/index.js.map +1 -1
- package/dist/objects/link/authorization.d.ts +2 -7
- package/dist/objects/link/authorization.d.ts.map +1 -1
- package/dist/objects/query/executor.d.ts +4 -2
- package/dist/objects/query/executor.d.ts.map +1 -1
- package/dist/objects/query/index.js +24 -21
- package/dist/objects/query/index.js.map +1 -1
- package/dist/objects/query/links.d.ts +22 -1
- package/dist/objects/query/links.d.ts.map +1 -1
- package/dist/objects/query/selected-read-admission.d.ts +27 -0
- package/dist/objects/query/selected-read-admission.d.ts.map +1 -0
- package/dist/objects/query/validate.d.ts +60 -2
- package/dist/objects/query/validate.d.ts.map +1 -1
- package/dist/objects/sdk/object-handle.d.ts.map +1 -1
- package/dist/objects/sdk/object-set.d.ts.map +1 -1
- package/dist/objects/sdk/runtime-query-executor.d.ts +2 -7
- 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/list-service.d.ts +2 -3
- package/dist/objects/service/list-service.d.ts.map +1 -1
- package/dist/objects/telemetry/history.d.ts +8 -6
- package/dist/objects/telemetry/history.d.ts.map +1 -1
- package/dist/objects/telemetry/index.d.ts +2 -2
- package/dist/objects/telemetry/index.d.ts.map +1 -1
- package/dist/objects/telemetry/workload.d.ts +11 -0
- package/dist/objects/telemetry/workload.d.ts.map +1 -0
- package/dist/ontology/index.d.ts +2 -1
- package/dist/ontology/index.d.ts.map +1 -1
- package/dist/ontology/index.js +13 -12
- package/dist/ontology/index.js.map +1 -1
- package/dist/ontology/inference/index.d.ts +2 -1
- package/dist/ontology/inference/index.d.ts.map +1 -1
- package/dist/ontology/internal.d.ts +0 -1
- package/dist/ontology/internal.d.ts.map +1 -1
- package/dist/ontology/internal.js +5 -10
- package/dist/ontology/internal.js.map +3 -3
- package/dist/ontology/json-schema.d.ts +10 -6
- package/dist/ontology/json-schema.d.ts.map +1 -1
- package/dist/ontology/link-path-selection.d.ts +35 -0
- package/dist/ontology/link-path-selection.d.ts.map +1 -0
- package/dist/ontology/refs.d.ts +2 -0
- package/dist/ontology/refs.d.ts.map +1 -1
- package/dist/ontology/tokens.d.ts +2 -1
- package/dist/ontology/tokens.d.ts.map +1 -1
- package/dist/pipelines/execution.d.ts.map +1 -1
- package/dist/pipelines/index.js +27 -24
- package/dist/pipelines/index.js.map +1 -1
- package/dist/pipelines/request.d.ts.map +1 -1
- package/dist/projections/execution.d.ts.map +1 -1
- package/dist/projections/internal.js +25 -22
- package/dist/projections/internal.js.map +1 -1
- package/dist/projections/run-dispatch.d.ts.map +1 -1
- package/dist/rules/execution.d.ts.map +1 -1
- package/dist/runtime/create.d.ts +4 -1
- package/dist/runtime/create.d.ts.map +1 -1
- package/dist/runtime/definitions.d.ts +2 -0
- package/dist/runtime/definitions.d.ts.map +1 -1
- package/dist/runtime/host.d.ts +2 -0
- package/dist/runtime/host.d.ts.map +1 -1
- package/dist/runtime/internal.d.ts +1 -0
- package/dist/runtime/internal.d.ts.map +1 -1
- package/dist/runtime/resolve-definitions.d.ts +2 -0
- package/dist/runtime/resolve-definitions.d.ts.map +1 -1
- package/dist/runtime/sixb.d.ts +4 -0
- package/dist/runtime/sixb.d.ts.map +1 -1
- package/dist/runtime/types.d.ts +3 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/schedules/execution.d.ts +2 -1
- package/dist/schedules/execution.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 +7 -2
- package/dist/security/grants.d.ts.map +1 -1
- package/dist/security/index.d.ts +1 -1
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/registry.d.ts +1 -0
- package/dist/security/registry.d.ts.map +1 -1
- package/dist/security/types.d.ts +7 -1
- 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/shares/access-plan.d.ts +22 -0
- package/dist/shares/access-plan.d.ts.map +1 -0
- package/dist/shares/builders.d.ts +14 -0
- package/dist/shares/builders.d.ts.map +1 -0
- package/dist/shares/compiler.d.ts +14 -0
- package/dist/shares/compiler.d.ts.map +1 -0
- package/dist/shares/errors.d.ts +4 -0
- package/dist/shares/errors.d.ts.map +1 -0
- package/dist/shares/execution.d.ts +57 -0
- package/dist/shares/execution.d.ts.map +1 -0
- package/dist/shares/index.d.ts +10 -0
- package/dist/shares/index.d.ts.map +1 -0
- package/dist/shares/internal.d.ts +3 -0
- package/dist/shares/internal.d.ts.map +1 -0
- package/dist/shares/internal.js +239 -0
- package/dist/shares/internal.js.map +10 -0
- package/dist/shares/intersection.d.ts +9 -0
- package/dist/shares/intersection.d.ts.map +1 -0
- package/dist/shares/session-protocol.d.ts +41 -0
- package/dist/shares/session-protocol.d.ts.map +1 -0
- package/dist/shares/types.d.ts +51 -0
- package/dist/shares/types.d.ts.map +1 -0
- package/dist/shares/validation.d.ts +11 -0
- package/dist/shares/validation.d.ts.map +1 -0
- package/dist/storage/action-runs/provider.js +2 -2
- package/dist/storage/agents/provider.js +2 -2
- package/dist/storage/executions/in-memory.d.ts +3 -0
- package/dist/storage/executions/in-memory.d.ts.map +1 -1
- package/dist/storage/executions/provider.d.ts +4 -1
- package/dist/storage/executions/provider.d.ts.map +1 -1
- package/dist/storage/executions/provider.js +23 -3
- package/dist/storage/executions/provider.js.map +3 -3
- package/dist/storage/executions/run-link.d.ts +7 -0
- package/dist/storage/executions/run-link.d.ts.map +1 -1
- package/dist/storage/executions/validation.d.ts +6 -0
- package/dist/storage/executions/validation.d.ts.map +1 -1
- package/dist/storage/in-memory/index.d.ts +8 -0
- package/dist/storage/in-memory/index.d.ts.map +1 -1
- package/dist/storage/index.d.ts +8 -2
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +65 -36
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/objects/execution-limits.d.ts +25 -0
- package/dist/storage/objects/execution-limits.d.ts.map +1 -0
- package/dist/storage/objects/guard.d.ts +16 -0
- package/dist/storage/objects/guard.d.ts.map +1 -0
- package/dist/storage/objects/in-memory/index.d.ts +3 -0
- package/dist/storage/objects/in-memory/index.d.ts.map +1 -0
- package/dist/storage/objects/in-memory/keys.d.ts +10 -0
- package/dist/storage/objects/in-memory/keys.d.ts.map +1 -0
- package/dist/storage/objects/in-memory/query.d.ts +31 -0
- package/dist/storage/objects/in-memory/query.d.ts.map +1 -0
- package/dist/storage/objects/in-memory/read-scope.d.ts +18 -0
- package/dist/storage/objects/in-memory/read-scope.d.ts.map +1 -0
- package/dist/storage/objects/in-memory/read-source.d.ts +10 -0
- package/dist/storage/objects/in-memory/read-source.d.ts.map +1 -0
- package/dist/storage/objects/in-memory/selected-reader.d.ts +9 -0
- package/dist/storage/objects/in-memory/selected-reader.d.ts.map +1 -0
- package/dist/storage/objects/{in-memory.d.ts → in-memory/storage.d.ts} +13 -10
- package/dist/storage/objects/in-memory/storage.d.ts.map +1 -0
- package/dist/storage/objects/index.d.ts +4 -1
- package/dist/storage/objects/index.d.ts.map +1 -1
- package/dist/storage/objects/keys.d.ts +1 -1
- package/dist/storage/objects/keys.d.ts.map +1 -1
- package/dist/storage/objects/read-scope.d.ts +25 -0
- package/dist/storage/objects/read-scope.d.ts.map +1 -0
- package/dist/storage/objects/types.d.ts +114 -22
- package/dist/storage/objects/types.d.ts.map +1 -1
- package/dist/storage/operation-scope.d.ts +3 -0
- package/dist/storage/operation-scope.d.ts.map +1 -1
- package/dist/storage/operation-scope.js +4 -2
- package/dist/storage/operation-scope.js.map +1 -1
- package/dist/storage/pipeline-runs/provider.js +2 -2
- package/dist/storage/projection-runs/provider.js +2 -2
- package/dist/storage/share-grants/errors.d.ts +8 -0
- package/dist/storage/share-grants/errors.d.ts.map +1 -0
- package/dist/storage/share-grants/in-memory.d.ts +11 -0
- package/dist/storage/share-grants/in-memory.d.ts.map +1 -0
- package/dist/storage/share-grants/index.d.ts +5 -0
- package/dist/storage/share-grants/index.d.ts.map +1 -0
- package/dist/storage/share-grants/provider.d.ts +4 -0
- package/dist/storage/share-grants/provider.d.ts.map +1 -0
- package/dist/storage/share-grants/provider.js +24 -0
- package/dist/storage/share-grants/provider.js.map +9 -0
- package/dist/storage/share-grants/record.d.ts +11 -0
- package/dist/storage/share-grants/record.d.ts.map +1 -0
- package/dist/storage/share-grants/types.d.ts +97 -0
- package/dist/storage/share-grants/types.d.ts.map +1 -0
- package/dist/storage/share-sessions/errors.d.ts +8 -0
- package/dist/storage/share-sessions/errors.d.ts.map +1 -0
- package/dist/storage/share-sessions/in-memory.d.ts +14 -0
- package/dist/storage/share-sessions/in-memory.d.ts.map +1 -0
- package/dist/storage/share-sessions/index.d.ts +5 -0
- package/dist/storage/share-sessions/index.d.ts.map +1 -0
- package/dist/storage/share-sessions/provider.d.ts +3 -0
- package/dist/storage/share-sessions/provider.d.ts.map +1 -0
- package/dist/storage/share-sessions/provider.js +20 -0
- package/dist/storage/share-sessions/provider.js.map +9 -0
- package/dist/storage/share-sessions/record.d.ts +8 -0
- package/dist/storage/share-sessions/record.d.ts.map +1 -0
- package/dist/storage/share-sessions/types.d.ts +50 -0
- package/dist/storage/share-sessions/types.d.ts.map +1 -0
- package/dist/storage/sync-runs/provider.js +2 -2
- package/dist/storage/transaction.d.ts +2 -1
- package/dist/storage/transaction.d.ts.map +1 -1
- package/dist/storage/types.d.ts +8 -0
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/webhook-runs/provider.js +2 -2
- package/dist/storage/workflow-runs/provider.js +10 -7
- package/dist/storage/workflow-runs/provider.js.map +1 -1
- package/dist/syncs/execution.d.ts.map +1 -1
- package/dist/syncs/index.js +27 -24
- package/dist/syncs/index.js.map +1 -1
- package/dist/syncs/request.d.ts.map +1 -1
- package/dist/testing/dataset-sequence-contract.d.ts +4 -0
- package/dist/testing/dataset-sequence-contract.d.ts.map +1 -0
- package/dist/testing/effective-storage-contract.d.ts.map +1 -1
- package/dist/testing/execution-storage-contract.d.ts +4 -0
- package/dist/testing/execution-storage-contract.d.ts.map +1 -1
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +2555 -908
- package/dist/testing/index.js.map +11 -7
- package/dist/testing/lake-merge-storage-contract.d.ts +1 -0
- package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -1
- package/dist/testing/lake-storage-contract.d.ts.map +1 -1
- package/dist/testing/object-read-scope-contract.d.ts +22 -0
- package/dist/testing/object-read-scope-contract.d.ts.map +1 -0
- package/dist/testing/share-grant-storage-contract.d.ts +10 -0
- package/dist/testing/share-grant-storage-contract.d.ts.map +1 -0
- package/dist/testing/share-session-storage-contract.d.ts +9 -0
- package/dist/testing/share-session-storage-contract.d.ts.map +1 -0
- package/dist/webhooks/internal.js +24 -21
- package/dist/webhooks/internal.js.map +2 -2
- package/dist/workflows/execution.d.ts.map +1 -1
- package/dist/workflows/index.js +42 -35
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/request.d.ts.map +1 -1
- package/package.json +25 -1
- package/src/actions/delegated-admission.ts +72 -0
- package/src/actions/descriptor.ts +58 -0
- package/src/actions/execution.ts +99 -24
- package/src/actions/request.ts +136 -19
- package/src/actions/run-authorization.ts +53 -0
- package/src/actions/run-dispatch.ts +8 -1
- package/src/agents/adapters.ts +30 -420
- package/src/agents/authority.ts +3 -4
- package/src/agents/context-resolution.ts +1 -4
- package/src/agents/errors.ts +0 -10
- package/src/agents/execution.ts +13 -5
- package/src/agents/identity.ts +4 -0
- package/src/agents/index.ts +1 -20
- package/src/agents/message.ts +4 -5
- package/src/agents/model-loop.ts +54 -6
- package/src/agents/request.ts +16 -3
- package/src/agents/tool-definition.ts +0 -19
- package/src/agents/validation.ts +6 -65
- package/src/ai-usage/execution.ts +4 -11
- package/src/authorization/decision.ts +29 -14
- package/src/authorization/grant-kinds.ts +10 -0
- package/src/authorization/index.ts +1 -0
- package/src/bootstrap/discovery.ts +3 -0
- package/src/bootstrap/ontology-type-manifest.ts +12 -6
- package/src/datasets/builders.ts +23 -2
- package/src/datasets/changes.ts +16 -4
- package/src/datasets/execution.ts +76 -5
- package/src/datasets/index.ts +1 -0
- package/src/datasets/sequence.ts +77 -0
- package/src/datasets/types.ts +1 -0
- package/src/datasets/validation.ts +26 -0
- package/src/datasets/write.ts +240 -0
- package/src/events/execution.ts +57 -7
- package/src/events/types/datasets.ts +2 -6
- package/src/execution/agent.ts +1 -4
- package/src/execution/authorization.ts +470 -90
- package/src/execution/authorized-object-reader.ts +695 -0
- package/src/execution/durable.ts +10 -2
- package/src/execution/index.ts +1 -0
- package/src/execution/request.ts +63 -13
- package/src/execution/scopes.ts +36 -6
- package/src/execution/types.ts +8 -0
- package/src/http/api-routes.ts +45 -0
- package/src/index.ts +36 -15
- package/src/lake-storage/definition-updates.ts +9 -0
- package/src/lake-storage/errors.ts +6 -1
- package/src/lake-storage/in-memory.ts +53 -17
- package/src/lake-storage/index.ts +10 -1
- package/src/lake-storage/merge-validation.ts +12 -2
- package/src/lake-storage/merge.ts +40 -2
- package/src/lake-storage/source-ordering.ts +95 -0
- package/src/lake-storage/sql-transforms.ts +2 -1
- package/src/lake-storage/types.ts +10 -5
- package/src/lake-storage/version-inputs.ts +14 -0
- package/src/objects/authorized-ontology-view.ts +512 -0
- package/src/objects/execution.ts +98 -143
- package/src/objects/link/authorization.ts +3 -2
- package/src/objects/query/executor.ts +45 -34
- package/src/objects/query/links.ts +84 -25
- package/src/objects/query/selected-read-admission.ts +310 -0
- package/src/objects/query/validate.ts +353 -36
- package/src/objects/sdk/object-handle.ts +2 -8
- package/src/objects/sdk/object-set.ts +10 -11
- package/src/objects/sdk/runtime-query-executor.ts +8 -28
- package/src/objects/sdk/telemetry-channel.ts +11 -7
- package/src/objects/service/list-service.ts +15 -29
- package/src/objects/telemetry/history.ts +297 -17
- package/src/objects/telemetry/index.ts +2 -2
- package/src/objects/telemetry/workload.ts +79 -0
- package/src/ontology/index.ts +7 -1
- package/src/ontology/inference/index.ts +4 -1
- package/src/ontology/internal.ts +0 -1
- package/src/ontology/json-schema.ts +13 -12
- package/src/ontology/link-path-selection.ts +193 -0
- package/src/ontology/refs.ts +19 -0
- package/src/ontology/tokens.ts +15 -8
- package/src/pipelines/execution.ts +30 -7
- package/src/pipelines/request.ts +5 -0
- package/src/projections/execution.ts +72 -11
- package/src/projections/run-dispatch.ts +6 -12
- package/src/rules/execution.ts +20 -8
- package/src/runtime/create.ts +5 -1
- package/src/runtime/definitions.ts +2 -0
- package/src/runtime/host.ts +25 -6
- package/src/runtime/internal.ts +1 -0
- package/src/runtime/resolve-definitions.ts +9 -0
- package/src/runtime/sixb.ts +23 -2
- package/src/runtime/types.ts +3 -0
- package/src/schedules/execution.ts +24 -2
- package/src/security/every.ts +4 -0
- package/src/security/grants.ts +45 -3
- package/src/security/index.ts +1 -0
- package/src/security/registry.ts +3 -0
- package/src/security/types.ts +8 -0
- package/src/security/validation.ts +3 -0
- package/src/shares/access-plan.ts +225 -0
- package/src/shares/builders.ts +381 -0
- package/src/shares/compiler.ts +359 -0
- package/src/shares/errors.ts +3 -0
- package/src/shares/execution.ts +394 -0
- package/src/shares/index.ts +28 -0
- package/src/shares/internal.ts +9 -0
- package/src/shares/intersection.ts +178 -0
- package/src/shares/session-protocol.ts +258 -0
- package/src/shares/types.ts +76 -0
- package/src/shares/validation.ts +40 -0
- package/src/storage/executions/in-memory.ts +9 -1
- package/src/storage/executions/provider.ts +30 -1
- package/src/storage/executions/run-link.ts +29 -0
- package/src/storage/executions/validation.ts +46 -1
- package/src/storage/in-memory/index.ts +21 -2
- package/src/storage/index.ts +51 -0
- package/src/storage/objects/execution-limits.ts +283 -0
- package/src/storage/objects/guard.ts +55 -0
- package/src/storage/objects/in-memory/index.ts +2 -0
- package/src/storage/objects/in-memory/keys.ts +46 -0
- package/src/storage/objects/in-memory/query.ts +754 -0
- package/src/storage/objects/in-memory/read-scope.ts +211 -0
- package/src/storage/objects/in-memory/read-source.ts +10 -0
- package/src/storage/objects/in-memory/selected-reader.ts +252 -0
- package/src/storage/objects/in-memory/storage.ts +589 -0
- package/src/storage/objects/index.ts +21 -0
- package/src/storage/objects/keys.ts +1 -1
- package/src/storage/objects/read-scope.ts +672 -0
- package/src/storage/objects/types.ts +123 -19
- package/src/storage/operation-scope.ts +16 -0
- package/src/storage/share-grants/errors.ts +14 -0
- package/src/storage/share-grants/in-memory.ts +107 -0
- package/src/storage/share-grants/index.ts +14 -0
- package/src/storage/share-grants/provider.ts +11 -0
- package/src/storage/share-grants/record.ts +347 -0
- package/src/storage/share-grants/types.ts +112 -0
- package/src/storage/share-sessions/errors.ts +14 -0
- package/src/storage/share-sessions/in-memory.ts +105 -0
- package/src/storage/share-sessions/index.ts +11 -0
- package/src/storage/share-sessions/provider.ts +9 -0
- package/src/storage/share-sessions/record.ts +176 -0
- package/src/storage/share-sessions/types.ts +57 -0
- package/src/storage/transaction.ts +14 -2
- package/src/storage/types.ts +27 -0
- package/src/syncs/execution.ts +25 -5
- package/src/syncs/request.ts +5 -0
- package/src/testing/dataset-sequence-contract.ts +373 -0
- package/src/testing/effective-storage-contract.ts +34 -0
- package/src/testing/execution-storage-contract.ts +79 -0
- package/src/testing/index.ts +16 -0
- package/src/testing/lake-merge-storage-contract.ts +3 -0
- package/src/testing/lake-storage-contract.ts +58 -0
- package/src/testing/object-read-scope-contract.ts +939 -0
- package/src/testing/share-grant-storage-contract.ts +325 -0
- package/src/testing/share-session-storage-contract.ts +235 -0
- package/src/workflows/execution.ts +53 -14
- package/src/workflows/request.ts +5 -0
- package/dist/chunk-2b5qtban.js.map +0 -14
- package/dist/chunk-37wk412q.js.map +0 -23
- package/dist/chunk-3fqt22c4.js.map +0 -14
- package/dist/chunk-3kv70xwp.js.map +0 -10
- package/dist/chunk-64sr682n.js.map +0 -12
- package/dist/chunk-7ds9620f.js.map +0 -10
- package/dist/chunk-dqn23610.js +0 -72
- package/dist/chunk-dqn23610.js.map +0 -11
- package/dist/chunk-e4rvtvpw.js.map +0 -34
- package/dist/chunk-gbrpsx4m.js.map +0 -11
- package/dist/chunk-h0knpbz5.js.map +0 -38
- package/dist/chunk-hdz94br2.js.map +0 -10
- package/dist/chunk-n2arzn6e.js.map +0 -20
- package/dist/chunk-qjzp9xyb.js.map +0 -12
- package/dist/chunk-tn7xcs2n.js.map +0 -13
- package/dist/chunk-wjgm6jjt.js.map +0 -13
- package/dist/chunk-xc7hq65b.js.map +0 -10
- package/dist/chunk-y35ma3mj.js +0 -551
- package/dist/chunk-y35ma3mj.js.map +0 -15
- package/dist/chunk-z2sery1b.js.map +0 -11
- package/dist/storage/objects/in-memory.d.ts.map +0 -1
- package/src/storage/objects/in-memory.ts +0 -1241
- /package/dist/{chunk-5jcdmjam.js.map → chunk-4jjp5k14.js.map} +0 -0
- /package/dist/{chunk-agsvg9ar.js.map → chunk-5ntny1qx.js.map} +0 -0
- /package/dist/{chunk-9aehf39w.js.map → chunk-f26bck4t.js.map} +0 -0
- /package/dist/{chunk-08twe8m6.js.map → chunk-p1rzczbt.js.map} +0 -0
- /package/dist/{chunk-xdpwpkha.js.map → chunk-rv2hkwwa.js.map} +0 -0
- /package/dist/{chunk-1kamz6j0.js.map → chunk-w1tvjszy.js.map} +0 -0
- /package/dist/{chunk-4nxeacx7.js.map → chunk-wdage1eb.js.map} +0 -0
|
@@ -15,6 +15,54 @@ class DatasetValidationError extends Error {
|
|
|
15
15
|
name = "DatasetValidationError";
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
// src/datasets/sequence.ts
|
|
19
|
+
var MIN_INT64 = -(1n << 63n);
|
|
20
|
+
var MAX_INT64 = (1n << 63n) - 1n;
|
|
21
|
+
function datasetSequenceValue(dataset, value) {
|
|
22
|
+
const column = dataset.schema.columns.find((column2) => column2.name === dataset.sequenceBy);
|
|
23
|
+
if (column?.type === "int64") {
|
|
24
|
+
if (typeof value === "number" && Number.isSafeInteger(value) || typeof value === "string" && /^-?\d+$/.test(value)) {
|
|
25
|
+
const integer = BigInt(value);
|
|
26
|
+
if (integer >= MIN_INT64 && integer <= MAX_INT64)
|
|
27
|
+
return integer;
|
|
28
|
+
}
|
|
29
|
+
throw new Error(`Dataset '${dataset.id}' sequence must be a signed int64; use a string outside the safe integer range.`);
|
|
30
|
+
}
|
|
31
|
+
if (column?.type === "timestamp") {
|
|
32
|
+
const millis = parseDatasetTimestamp(value);
|
|
33
|
+
if (millis !== null)
|
|
34
|
+
return BigInt(millis);
|
|
35
|
+
throw new Error(`Dataset '${dataset.id}' sequence must be a valid Date or ISO timestamp with an explicit timezone and at most millisecond precision.`);
|
|
36
|
+
}
|
|
37
|
+
throw new Error(`Dataset '${dataset.id}' sequenceBy must reference a non-nullable timestamp or int64 column.`);
|
|
38
|
+
}
|
|
39
|
+
function parseDatasetTimestamp(value) {
|
|
40
|
+
if (value instanceof Date && Number.isFinite(value.getTime()))
|
|
41
|
+
return value.getTime();
|
|
42
|
+
if (typeof value === "string") {
|
|
43
|
+
const match = /^([+-]\d{6}|\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(?:\.(\d{1,3}))?(Z|[+-]\d{2}:\d{2})$/.exec(value);
|
|
44
|
+
if (match) {
|
|
45
|
+
const [, year, month, day, hour, minute, second, , zone] = match;
|
|
46
|
+
const numericYear = Number(year);
|
|
47
|
+
const leapYear = numericYear % 4 === 0 && (numericYear % 100 !== 0 || numericYear % 400 === 0);
|
|
48
|
+
const days = Number(month) === 2 ? leapYear ? 29 : 28 : [4, 6, 9, 11].includes(Number(month)) ? 30 : 31;
|
|
49
|
+
const validZone = zone === "Z" || Number(zone?.slice(1, 3)) <= 23 && Number(zone?.slice(4)) <= 59;
|
|
50
|
+
const millis = Date.parse(value);
|
|
51
|
+
if (Number(month) >= 1 && Number(month) <= 12 && Number(day) >= 1 && Number(day) <= days && Number(hour) < 24 && Number(minute) < 60 && Number(second) < 60 && validZone && Number.isFinite(millis))
|
|
52
|
+
return millis;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
function getDatasetSequenceValidationError(dataset, value) {
|
|
58
|
+
try {
|
|
59
|
+
datasetSequenceValue(dataset, value);
|
|
60
|
+
return null;
|
|
61
|
+
} catch (error) {
|
|
62
|
+
return error instanceof Error ? error.message : String(error);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
18
66
|
// src/datasets/validation.ts
|
|
19
67
|
var datasetColumnTypes = new Set([
|
|
20
68
|
"string",
|
|
@@ -137,6 +185,12 @@ function assertDatasetDefinition(definition, createError = (message) => new Data
|
|
|
137
185
|
if (definition.primaryKey !== undefined) {
|
|
138
186
|
assertDatasetPrimaryKey(definition.primaryKey, definition.schema, createError);
|
|
139
187
|
}
|
|
188
|
+
if (definition.sequenceBy !== undefined) {
|
|
189
|
+
const column = definition.schema.columns.find((column2) => column2.name === definition.sequenceBy);
|
|
190
|
+
if (definition.primaryKey === undefined || !column || column.nullable || !["timestamp", "int64"].includes(column.type)) {
|
|
191
|
+
throw createError("Dataset sequenceBy requires a primaryKey and a non-nullable timestamp or int64 column.");
|
|
192
|
+
}
|
|
193
|
+
}
|
|
140
194
|
if (definition.partitionBy !== undefined) {
|
|
141
195
|
if (!Array.isArray(definition.partitionBy)) {
|
|
142
196
|
throw createError("Dataset partitionBy must be an array of column names.");
|
|
@@ -195,6 +249,9 @@ function getDatasetRowValidationError(row, dataset, options) {
|
|
|
195
249
|
function getColumnValidationError(row, column, dataset) {
|
|
196
250
|
const hasValue = Object.hasOwn(row, column.name);
|
|
197
251
|
const value = row[column.name];
|
|
252
|
+
if (column.name === dataset.sequenceBy) {
|
|
253
|
+
return getDatasetSequenceValidationError(dataset, value);
|
|
254
|
+
}
|
|
198
255
|
if (!hasValue || value === undefined) {
|
|
199
256
|
if (!column.nullable) {
|
|
200
257
|
return `Dataset '${dataset.id}' row is missing required column '${column.name}'.`;
|
|
@@ -207,6 +264,9 @@ function getColumnValidationError(row, column, dataset) {
|
|
|
207
264
|
}
|
|
208
265
|
return null;
|
|
209
266
|
}
|
|
267
|
+
if (dataset.sequenceBy !== undefined && column.type === "timestamp") {
|
|
268
|
+
return parseDatasetTimestamp(value) === null ? `Dataset '${dataset.id}' column '${column.name}' must be a valid Date or ISO timestamp with an explicit timezone and at most millisecond precision.` : null;
|
|
269
|
+
}
|
|
210
270
|
if (!matchesColumnType(value, column.type)) {
|
|
211
271
|
return `Dataset '${dataset.id}' column '${column.name}' must match type '${column.type}'.`;
|
|
212
272
|
}
|
|
@@ -239,6 +299,7 @@ function createDatasetDefinition(id, options) {
|
|
|
239
299
|
primaryKey: Array.isArray(options.primaryKey) ? [...options.primaryKey] : options.primaryKey
|
|
240
300
|
} : {},
|
|
241
301
|
...options.partitionBy !== undefined ? { partitionBy: [...options.partitionBy] } : {},
|
|
302
|
+
...options.sequenceBy !== undefined ? { sequenceBy: options.sequenceBy } : {},
|
|
242
303
|
...options.description !== undefined ? { description: options.description } : {}
|
|
243
304
|
};
|
|
244
305
|
assertDatasetDefinition(definition, (message) => new DatasetValidationError(message));
|
|
@@ -273,6 +334,7 @@ function deriveDatasetDefinition(id, parent, options = {}) {
|
|
|
273
334
|
return createDatasetDefinition(id, {
|
|
274
335
|
schema: [...pickedColumns, ...options.add ?? []],
|
|
275
336
|
...options.primaryKey !== undefined ? { primaryKey: options.primaryKey } : {},
|
|
337
|
+
...options.sequenceBy !== undefined ? { sequenceBy: options.sequenceBy } : {},
|
|
276
338
|
...options.partitionBy !== undefined ? { partitionBy: options.partitionBy } : {},
|
|
277
339
|
...options.description !== undefined ? { description: options.description } : {}
|
|
278
340
|
});
|
|
@@ -296,10 +358,11 @@ var change = {
|
|
|
296
358
|
upsert(row) {
|
|
297
359
|
return { kind: "upsert", row };
|
|
298
360
|
},
|
|
299
|
-
delete
|
|
300
|
-
return { kind: "delete", key };
|
|
301
|
-
}
|
|
361
|
+
delete: deleteChange
|
|
302
362
|
};
|
|
303
|
-
|
|
363
|
+
function deleteChange(key, options) {
|
|
364
|
+
return { kind: "delete", key, ...options ? { sequence: options.sequence } : {} };
|
|
365
|
+
}
|
|
366
|
+
export { DatasetValidationError, datasetSequenceValue, getDatasetSequenceValidationError, assertDatasetDefinition, isDatasetDefinition, getDatasetRowValidationError, col, defineDataset, change };
|
|
304
367
|
|
|
305
|
-
//# debugId=
|
|
368
|
+
//# debugId=B47BF819D5D4451A64756E2164756E21
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/datasets/errors.ts", "../src/datasets/sequence.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 type { DatasetDefinition } from \"./types\"\n\nconst MIN_INT64 = -(1n << 63n)\nconst MAX_INT64 = (1n << 63n) - 1n\n\n/** Normalize source ordering to an exact integer (timestamp milliseconds or signed int64). */\nexport function datasetSequenceValue(dataset: DatasetDefinition, value: unknown): bigint {\n const column = dataset.schema.columns.find((column) => column.name === dataset.sequenceBy)\n if (column?.type === \"int64\") {\n if (\n (typeof value === \"number\" && Number.isSafeInteger(value)) ||\n (typeof value === \"string\" && /^-?\\d+$/.test(value))\n ) {\n const integer = BigInt(value)\n if (integer >= MIN_INT64 && integer <= MAX_INT64) return integer\n }\n throw new Error(\n `Dataset '${dataset.id}' sequence must be a signed int64; use a string outside the safe integer range.`\n )\n }\n if (column?.type === \"timestamp\") {\n const millis = parseDatasetTimestamp(value)\n if (millis !== null) return BigInt(millis)\n throw new Error(\n `Dataset '${dataset.id}' sequence must be a valid Date or ISO timestamp with an explicit timezone and at most millisecond precision.`\n )\n }\n throw new Error(\n `Dataset '${dataset.id}' sequenceBy must reference a non-nullable timestamp or int64 column.`\n )\n}\n\n/** Date.parse alone normalizes impossible calendar dates instead of rejecting them. */\nexport function parseDatasetTimestamp(value: unknown): number | null {\n if (value instanceof Date && Number.isFinite(value.getTime())) return value.getTime()\n if (typeof value === \"string\") {\n const match =\n /^([+-]\\d{6}|\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d{1,3}))?(Z|[+-]\\d{2}:\\d{2})$/.exec(\n value\n )\n if (match) {\n const [, year, month, day, hour, minute, second, , zone] = match\n const numericYear = Number(year)\n const leapYear = numericYear % 4 === 0 && (numericYear % 100 !== 0 || numericYear % 400 === 0)\n const days =\n Number(month) === 2 ? (leapYear ? 29 : 28) : [4, 6, 9, 11].includes(Number(month)) ? 30 : 31\n const validZone =\n zone === \"Z\" || (Number(zone?.slice(1, 3)) <= 23 && Number(zone?.slice(4)) <= 59)\n const millis = Date.parse(value)\n if (\n Number(month) >= 1 &&\n Number(month) <= 12 &&\n Number(day) >= 1 &&\n Number(day) <= days &&\n Number(hour) < 24 &&\n Number(minute) < 60 &&\n Number(second) < 60 &&\n validZone &&\n Number.isFinite(millis)\n )\n return millis\n }\n }\n return null\n}\n\nexport function getDatasetSequenceValidationError(\n dataset: DatasetDefinition,\n value: unknown\n): string | null {\n try {\n datasetSequenceValue(dataset, value)\n return null\n } catch (error) {\n return error instanceof Error ? error.message : String(error)\n }\n}\n",
|
|
7
|
+
"import { isFileRef } from \"../blob-storage\"\nimport { isJsonValue, isPlainRecord } from \"../json\"\nimport { isDecimalString } from \"../ontology/decimal\"\nimport { DatasetValidationError } from \"./errors\"\nimport { getDatasetSequenceValidationError, parseDatasetTimestamp } from \"./sequence\"\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.sequenceBy !== undefined) {\n const column = definition.schema.columns.find((column) => column.name === definition.sequenceBy)\n if (\n definition.primaryKey === undefined ||\n !column ||\n column.nullable ||\n ![\"timestamp\", \"int64\"].includes(column.type)\n ) {\n throw createError(\n \"Dataset sequenceBy requires a primaryKey and a non-nullable timestamp or int64 column.\"\n )\n }\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 if (column.name === dataset.sequenceBy) {\n return getDatasetSequenceValidationError(dataset, value)\n }\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 // Every timestamp contributes to a sequenced row's millisecond-precision content digest.\n // Reject ambiguous or lossy values before staging, even when another column orders the row.\n if (dataset.sequenceBy !== undefined && column.type === \"timestamp\") {\n return parseDatasetTimestamp(value) === null\n ? `Dataset '${dataset.id}' column '${column.name}' must be a valid Date or ISO timestamp with an explicit timezone and at most millisecond precision.`\n : 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",
|
|
8
|
+
"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 sequenceBy?: string\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 sequenceBy?: string\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 readonly sequenceBy?: SequenceColumnNameOf<TOptions[\"schema\"]>\n}\n\ntype SequenceColumnNameOf<TColumns extends readonly DatasetColumnDefinition[]> =\n string extends ColumnNameOf<TColumns>\n ? string\n : {\n [TName in ColumnNameOf<TColumns>]: ColumnDefinitionOf<TColumns, TName>[\"type\"] extends\n | \"timestamp\"\n | \"int64\"\n ? ColumnDefinitionOf<TColumns, TName> extends { readonly nullable: true }\n ? never\n : TName\n : never\n }[ColumnNameOf<TColumns>]\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\" | \"sequenceBy\" | \"partitionBy\" | \"description\"\n> &\n FieldFromOptions<TOptions, \"sequenceBy\", string> &\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\" | \"sequenceBy\" | \"partitionBy\" | \"description\"\n> &\n FieldFromOptions<TOptions, \"sequenceBy\", string> &\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 readonly sequenceBy?: SequenceColumnNameOf<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.sequenceBy !== undefined ? { sequenceBy: options.sequenceBy } : {}),\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.sequenceBy !== undefined ? { sequenceBy: options.sequenceBy } : {}),\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",
|
|
9
|
+
"export type MergeChange<Row, Key> =\n | { readonly kind: \"upsert\"; readonly row: Row }\n | { readonly kind: \"delete\"; readonly key: Key; readonly sequence?: string | number | Date }\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: deleteChange,\n}\n\nfunction deleteChange<const Key extends object>(\n key: Key\n): { readonly kind: \"delete\"; readonly key: Key }\nfunction deleteChange<const Key extends object, const Sequence extends string | number | Date>(\n key: Key,\n options: { readonly sequence: Sequence }\n): { readonly kind: \"delete\"; readonly key: Key; readonly sequence: Sequence }\nfunction deleteChange<Key extends object>(\n key: Key,\n options?: { readonly sequence: string | number | Date }\n): { readonly kind: \"delete\"; readonly key: Key; readonly sequence?: string | number | Date } {\n return { kind: \"delete\", key, ...(options ? { sequence: options.sequence } : {}) }\n}\n"
|
|
10
|
+
],
|
|
11
|
+
"mappings": "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",
|
|
12
|
+
"debugId": "B47BF819D5D4451A64756E2164756E21",
|
|
13
|
+
"names": []
|
|
14
|
+
}
|