@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
|
@@ -6,6 +6,7 @@ import type {
|
|
|
6
6
|
ObjectQuerySortField,
|
|
7
7
|
QueryScalarKind,
|
|
8
8
|
} from "../../objects/query"
|
|
9
|
+
import type { ObjectReadExecutionLimits } from "./execution-limits"
|
|
9
10
|
import type { LinkBatchKey, ObjectBatchKey } from "./keys"
|
|
10
11
|
|
|
11
12
|
/**
|
|
@@ -85,6 +86,78 @@ export interface QueryObjectLinksResult {
|
|
|
85
86
|
hasMore: boolean
|
|
86
87
|
}
|
|
87
88
|
|
|
89
|
+
/**
|
|
90
|
+
* A finite, provider-neutral selection rooted at exact object identities.
|
|
91
|
+
*
|
|
92
|
+
* Object and link instances are resolved live by the provider for every operation. The selection
|
|
93
|
+
* describes only which paths and properties may become visible.
|
|
94
|
+
*/
|
|
95
|
+
export interface SelectedObjectReadScope {
|
|
96
|
+
readonly kind: "selected"
|
|
97
|
+
readonly roots: readonly ObjectReadRoot[]
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export interface ObjectReadRoot {
|
|
101
|
+
readonly anchor: {
|
|
102
|
+
readonly objectTypeId: string
|
|
103
|
+
readonly primaryId: string
|
|
104
|
+
}
|
|
105
|
+
readonly node: ObjectReadNode
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export interface ObjectReadNode {
|
|
109
|
+
/** Visible properties for every concrete object type selected at this path occurrence. */
|
|
110
|
+
readonly objects: readonly ObjectReadObjectSelection[]
|
|
111
|
+
readonly links: readonly ObjectReadLinkSelection[]
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export interface ObjectReadObjectSelection {
|
|
115
|
+
readonly objectTypeId: string
|
|
116
|
+
readonly propertyIds: readonly string[]
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export interface ObjectReadLinkSelection {
|
|
120
|
+
/** Physical ontology link definitions allowed from this exact path occurrence. */
|
|
121
|
+
readonly definitions: readonly ObjectReadLinkDefinitionSelection[]
|
|
122
|
+
readonly target: ObjectReadNode
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export interface ObjectReadLinkDefinitionSelection {
|
|
126
|
+
readonly sourceObjectTypeId: string
|
|
127
|
+
readonly linkId: string
|
|
128
|
+
readonly targetObjectTypeIds: readonly string[]
|
|
129
|
+
readonly propertyIds: readonly string[]
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/** Detached and deeply immutable selection consumed by storage providers. */
|
|
133
|
+
export interface CompiledSelectedObjectReadScope {
|
|
134
|
+
readonly kind: "selected"
|
|
135
|
+
readonly roots: readonly CompiledObjectReadRoot[]
|
|
136
|
+
readonly objects: readonly CompiledObjectReadObjectSelection[]
|
|
137
|
+
readonly steps: readonly CompiledObjectReadStep[]
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
export interface CompiledObjectReadRoot {
|
|
141
|
+
/** Id of this root's path occurrence. */
|
|
142
|
+
readonly nodeId: number
|
|
143
|
+
readonly objectTypeId: string
|
|
144
|
+
readonly primaryId: string
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
export interface CompiledObjectReadObjectSelection extends ObjectReadObjectSelection {
|
|
148
|
+
readonly nodeId: number
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
export interface CompiledObjectReadStep {
|
|
152
|
+
/** Id of the target path occurrence reached by this step. */
|
|
153
|
+
readonly nodeId: number
|
|
154
|
+
readonly parentNodeId: number
|
|
155
|
+
readonly sourceObjectTypeId: string
|
|
156
|
+
readonly linkId: string
|
|
157
|
+
readonly targetObjectTypeId: string
|
|
158
|
+
readonly propertyIds: readonly string[]
|
|
159
|
+
}
|
|
160
|
+
|
|
88
161
|
export type ObjectQueryCapabilityMap<T extends string> = Readonly<Partial<Record<T, boolean>>>
|
|
89
162
|
|
|
90
163
|
export type ObjectQueryScalarOperation = "equality" | "ordering"
|
|
@@ -189,7 +262,8 @@ export interface FacetObjectsResult {
|
|
|
189
262
|
facets: readonly ObjectFacetResult[]
|
|
190
263
|
}
|
|
191
264
|
|
|
192
|
-
|
|
265
|
+
/** Provider-facing read-only surface for effective objects and links. */
|
|
266
|
+
export interface ObjectReadStorage {
|
|
193
267
|
queryCapabilities(): ObjectQueryCapabilities
|
|
194
268
|
|
|
195
269
|
queryObjects?(params: QueryObjectsInput): Promise<QueryObjectsResult>
|
|
@@ -203,6 +277,22 @@ export interface ObjectStorage {
|
|
|
203
277
|
primaryId: string
|
|
204
278
|
}): Promise<ObjectRow | null>
|
|
205
279
|
|
|
280
|
+
/**
|
|
281
|
+
* Check whether each requested property belongs to the reader's selection.
|
|
282
|
+
*
|
|
283
|
+
* Results align exactly with `items`, including duplicates. Selection is independent from the
|
|
284
|
+
* property's current materialized value: an unrestricted reader selects every property of an
|
|
285
|
+
* existing object even when that property has no stored value.
|
|
286
|
+
*/
|
|
287
|
+
selectsObjectProperties(params: {
|
|
288
|
+
projectId: string
|
|
289
|
+
items: readonly {
|
|
290
|
+
objectTypeId: string
|
|
291
|
+
primaryId: string
|
|
292
|
+
propertyId: string
|
|
293
|
+
}[]
|
|
294
|
+
}): Promise<readonly boolean[]>
|
|
295
|
+
|
|
206
296
|
listLinks(params: {
|
|
207
297
|
projectId: string
|
|
208
298
|
objectTypeId: string
|
|
@@ -221,11 +311,13 @@ export interface ObjectStorage {
|
|
|
221
311
|
}): Promise<ReadonlyMap<ObjectBatchKey, ObjectRow>>
|
|
222
312
|
|
|
223
313
|
/**
|
|
224
|
-
* Batch fetch
|
|
314
|
+
* Batch fetch links by (objectTypeId, objectId, linkId) tuples in the requested direction.
|
|
315
|
+
* Direction defaults to outgoing.
|
|
225
316
|
* Returns a Map keyed by {@link linkBatchKey}. Missing entries are absent.
|
|
226
317
|
*/
|
|
227
318
|
listLinksBatch(params: {
|
|
228
319
|
projectId: string
|
|
320
|
+
direction?: LinkDirection
|
|
229
321
|
items: readonly { objectTypeId: string; objectId: string; linkId: string }[]
|
|
230
322
|
}): Promise<ReadonlyMap<LinkBatchKey, ObjectLinkRow[]>>
|
|
231
323
|
|
|
@@ -236,11 +328,38 @@ export interface ObjectStorage {
|
|
|
236
328
|
*/
|
|
237
329
|
queryLinks(params: QueryObjectLinksInput): Promise<QueryObjectLinksResult>
|
|
238
330
|
|
|
331
|
+
list(params: {
|
|
332
|
+
projectId: string
|
|
333
|
+
objectTypeId?: string | readonly string[]
|
|
334
|
+
primaryIdPrefix?: string
|
|
335
|
+
primaryIdSuffix?: string
|
|
336
|
+
updatedAfter?: Date
|
|
337
|
+
updatedBefore?: Date
|
|
338
|
+
createdAfter?: Date
|
|
339
|
+
createdBefore?: Date
|
|
340
|
+
limit?: number
|
|
341
|
+
offset?: number
|
|
342
|
+
orderBy?: "createdAt" | "updatedAt" | "primaryId"
|
|
343
|
+
order?: "asc" | "desc"
|
|
344
|
+
}): Promise<{ objects: readonly ObjectRow[]; hasMore: boolean; total: number }>
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
/** Provider capability for enforcing a finite, precompiled object-read selection. */
|
|
348
|
+
export interface ObjectReadScopeFactory {
|
|
349
|
+
createSelectedReadScope(params: {
|
|
350
|
+
projectId: string
|
|
351
|
+
scope: CompiledSelectedObjectReadScope
|
|
352
|
+
limits: ObjectReadExecutionLimits
|
|
353
|
+
}): ObjectReadStorage
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
/** Latest-state projection storage, including selected reads and trusted internal primitives. */
|
|
357
|
+
export interface ObjectStorage extends ObjectReadStorage, ObjectReadScopeFactory {
|
|
239
358
|
/**
|
|
240
359
|
* Batch fetch every link incident to any of the given objects, in BOTH directions (the object as
|
|
241
360
|
* link source or target). Returns a flat, de-duplicated list: a physical link incident to two
|
|
242
|
-
* listed objects appears once. This unpaged primitive
|
|
243
|
-
*
|
|
361
|
+
* listed objects appears once. This unpaged primitive is reserved for trusted internal work and
|
|
362
|
+
* deliberately absent from {@link ObjectReadStorage}; interactive reads use {@link queryLinks}.
|
|
244
363
|
*/
|
|
245
364
|
listIncidentLinksBatch(params: {
|
|
246
365
|
projectId: string
|
|
@@ -254,19 +373,4 @@ export interface ObjectStorage {
|
|
|
254
373
|
afterPrimaryId?: string
|
|
255
374
|
limit: number
|
|
256
375
|
}): Promise<{ objects: readonly ObjectRow[]; nextPrimaryId?: string }>
|
|
257
|
-
|
|
258
|
-
list(params: {
|
|
259
|
-
projectId: string
|
|
260
|
-
objectTypeId?: string | readonly string[]
|
|
261
|
-
primaryIdPrefix?: string
|
|
262
|
-
primaryIdSuffix?: string
|
|
263
|
-
updatedAfter?: Date
|
|
264
|
-
updatedBefore?: Date
|
|
265
|
-
createdAfter?: Date
|
|
266
|
-
createdBefore?: Date
|
|
267
|
-
limit?: number
|
|
268
|
-
offset?: number
|
|
269
|
-
orderBy?: "createdAt" | "updatedAt" | "primaryId"
|
|
270
|
-
order?: "asc" | "desc"
|
|
271
|
-
}): Promise<{ objects: readonly ObjectRow[]; hasMore: boolean; total: number }>
|
|
272
376
|
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { AsyncLocalStorage } from "node:async_hooks"
|
|
2
2
|
import type { AgentStorage } from "./agents"
|
|
3
3
|
import type { AuthStorage } from "./auth"
|
|
4
|
+
import type { ObjectStorage } from "./objects"
|
|
5
|
+
import { createGuardedObjectReadStorage, requireObjectReadScopeFactory } from "./objects/guard"
|
|
4
6
|
import type { OntologyStorage } from "./ontology"
|
|
5
7
|
import type { WorkflowRunStorage } from "./workflow-runs"
|
|
6
8
|
|
|
@@ -231,6 +233,20 @@ export function createOntologyOperationScope<T extends OntologyStorage>(
|
|
|
231
233
|
}) as T
|
|
232
234
|
}
|
|
233
235
|
|
|
236
|
+
/** Keep synchronously created selected readers inside the provider's root operation scope. */
|
|
237
|
+
export function createObjectOperationScope<T extends ObjectStorage>(
|
|
238
|
+
target: T,
|
|
239
|
+
scope: StorageOperationScope
|
|
240
|
+
): T {
|
|
241
|
+
const factory = requireObjectReadScopeFactory(target)
|
|
242
|
+
return createOperationScopedFacade<ObjectStorage>(target, scope, {
|
|
243
|
+
createSelectedReadScope: (params) => {
|
|
244
|
+
scope.assertAvailable()
|
|
245
|
+
return createGuardedObjectReadStorage(factory.createSelectedReadScope(params), scope)
|
|
246
|
+
},
|
|
247
|
+
}) as T
|
|
248
|
+
}
|
|
249
|
+
|
|
234
250
|
export function createWorkflowRunOperationScope<T extends WorkflowRunStorage>(
|
|
235
251
|
target: T,
|
|
236
252
|
scope: StorageOperationScope
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type ShareGrantStorageErrorCode = "duplicate" | "invalid_input" | "invalid_record"
|
|
2
|
+
|
|
3
|
+
/** Provider-level control signal; Core maps it to the public Share lifecycle error vocabulary. */
|
|
4
|
+
export class ShareGrantStorageError extends Error {
|
|
5
|
+
readonly name = "ShareGrantStorageError"
|
|
6
|
+
|
|
7
|
+
constructor(
|
|
8
|
+
readonly code: ShareGrantStorageErrorCode,
|
|
9
|
+
message: string,
|
|
10
|
+
options?: ErrorOptions
|
|
11
|
+
) {
|
|
12
|
+
super(message, options)
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { ShareGrantStorageError } from "./errors"
|
|
2
|
+
import {
|
|
3
|
+
cloneShareGrantRecord,
|
|
4
|
+
normalizeGetShareGrantByIdInput,
|
|
5
|
+
normalizeListShareGrantsInput,
|
|
6
|
+
normalizeRevokeShareGrantInput,
|
|
7
|
+
normalizeShareGrantCreate,
|
|
8
|
+
parseShareGrantRecord,
|
|
9
|
+
} from "./record"
|
|
10
|
+
import type {
|
|
11
|
+
CreateShareGrantInput,
|
|
12
|
+
GetShareGrantByIdInput,
|
|
13
|
+
ListShareGrantsInput,
|
|
14
|
+
ListShareGrantsResult,
|
|
15
|
+
RevokeShareGrantInput,
|
|
16
|
+
ShareGrantRecord,
|
|
17
|
+
ShareGrantStorage,
|
|
18
|
+
} from "./types"
|
|
19
|
+
|
|
20
|
+
export class InMemoryShareGrantStorage implements ShareGrantStorage {
|
|
21
|
+
private rows = new Map<string, ShareGrantRecord>()
|
|
22
|
+
|
|
23
|
+
async create(input: CreateShareGrantInput): Promise<ShareGrantRecord> {
|
|
24
|
+
const record = normalizeShareGrantCreate(input)
|
|
25
|
+
const key = rowKey(record.projectId, record.id)
|
|
26
|
+
const duplicateTokenHash = [...this.rows.values()].some(
|
|
27
|
+
(current) => current.projectId === record.projectId && current.tokenHash === record.tokenHash
|
|
28
|
+
)
|
|
29
|
+
if (this.rows.has(key) || duplicateTokenHash) {
|
|
30
|
+
throw new ShareGrantStorageError(
|
|
31
|
+
"duplicate",
|
|
32
|
+
`[Sixb] Share grant '${record.id}' conflicts with an existing record.`
|
|
33
|
+
)
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
this.rows.set(key, record)
|
|
37
|
+
return cloneShareGrantRecord(record)
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
async getById(input: GetShareGrantByIdInput): Promise<ShareGrantRecord | null> {
|
|
41
|
+
const normalized = normalizeGetShareGrantByIdInput(input)
|
|
42
|
+
const record = this.rows.get(rowKey(normalized.projectId, normalized.id))
|
|
43
|
+
return record ? cloneShareGrantRecord(record) : null
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
async list(input: ListShareGrantsInput): Promise<ListShareGrantsResult> {
|
|
47
|
+
const normalized = normalizeListShareGrantsInput(input)
|
|
48
|
+
const matching = [...this.rows.values()]
|
|
49
|
+
.filter(
|
|
50
|
+
(record) =>
|
|
51
|
+
record.projectId === normalized.projectId &&
|
|
52
|
+
(normalized.definitionId === undefined ||
|
|
53
|
+
record.definitionId === normalized.definitionId) &&
|
|
54
|
+
(normalized.target === undefined ||
|
|
55
|
+
(record.target.objectTypeId === normalized.target.objectTypeId &&
|
|
56
|
+
record.target.primaryId === normalized.target.primaryId)) &&
|
|
57
|
+
(normalized.includeRevoked || record.revokedAt === undefined) &&
|
|
58
|
+
(normalized.includeExpired || record.expiresAt.getTime() > normalized.now.getTime())
|
|
59
|
+
)
|
|
60
|
+
.sort(compareShareGrants)
|
|
61
|
+
|
|
62
|
+
const total = matching.length
|
|
63
|
+
const grants = matching
|
|
64
|
+
.slice(normalized.offset, normalized.offset + normalized.limit)
|
|
65
|
+
.map(cloneShareGrantRecord)
|
|
66
|
+
return {
|
|
67
|
+
grants,
|
|
68
|
+
total,
|
|
69
|
+
hasMore: normalized.offset + grants.length < total,
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
async revoke(input: RevokeShareGrantInput): Promise<ShareGrantRecord | null> {
|
|
74
|
+
const normalized = normalizeRevokeShareGrantInput(input)
|
|
75
|
+
const key = rowKey(normalized.projectId, normalized.id)
|
|
76
|
+
const current = this.rows.get(key)
|
|
77
|
+
if (!current) return null
|
|
78
|
+
if (current.revokedAt) return cloneShareGrantRecord(current)
|
|
79
|
+
|
|
80
|
+
const revocation = normalizeRevokeShareGrantInput(normalized, current.createdAt)
|
|
81
|
+
const updated: ShareGrantRecord = {
|
|
82
|
+
...current,
|
|
83
|
+
revokedAt: new Date(revocation.revokedAt),
|
|
84
|
+
revokedBy: { ...revocation.revokedBy },
|
|
85
|
+
}
|
|
86
|
+
this.rows.set(key, updated)
|
|
87
|
+
return cloneShareGrantRecord(updated)
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
snapshot(): ReadonlyMap<string, ShareGrantRecord> {
|
|
91
|
+
return new Map([...this.rows].map(([key, record]) => [key, cloneShareGrantRecord(record)]))
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
restore(snapshot: ReadonlyMap<string, ShareGrantRecord>): void {
|
|
95
|
+
this.rows = new Map([...snapshot].map(([key, record]) => [key, parseShareGrantRecord(record)]))
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
function compareShareGrants(left: ShareGrantRecord, right: ShareGrantRecord): number {
|
|
100
|
+
const created = right.createdAt.getTime() - left.createdAt.getTime()
|
|
101
|
+
if (created !== 0) return created
|
|
102
|
+
return left.id === right.id ? 0 : left.id < right.id ? 1 : -1
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
function rowKey(projectId: string, id: string): string {
|
|
106
|
+
return `${projectId}\0${id}`
|
|
107
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type { ShareGrantStorageErrorCode } from "./errors"
|
|
2
|
+
export { ShareGrantStorageError } from "./errors"
|
|
3
|
+
export { InMemoryShareGrantStorage } from "./in-memory"
|
|
4
|
+
export type {
|
|
5
|
+
CreateShareGrantInput,
|
|
6
|
+
GetShareGrantByIdInput,
|
|
7
|
+
ListShareGrantsInput,
|
|
8
|
+
ListShareGrantsResult,
|
|
9
|
+
RevokeShareGrantInput,
|
|
10
|
+
ShareAuthoritySnapshot,
|
|
11
|
+
ShareAuthoritySnapshotV1,
|
|
12
|
+
ShareGrantRecord,
|
|
13
|
+
ShareGrantStorage,
|
|
14
|
+
} from "./types"
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** @internal Repository storage-provider helpers; not part of the app-author API. */
|
|
2
|
+
export {
|
|
3
|
+
cloneShareGrantRecord,
|
|
4
|
+
normalizeGetShareGrantByIdInput,
|
|
5
|
+
normalizeListShareGrantsInput,
|
|
6
|
+
normalizeRevokeShareGrantInput,
|
|
7
|
+
normalizeShareGrantCreate,
|
|
8
|
+
parseShareGrantRecord,
|
|
9
|
+
shareAuthorityDigest,
|
|
10
|
+
} from "./record"
|
|
11
|
+
export type { NormalizedListShareGrantsInput } from "./types"
|