@sixb/core 0.1.6 → 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 +50 -40
- 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 +5 -5
- package/dist/actions/worker.js.map +1 -1
- package/dist/agents/adapters.d.ts +6 -166
- package/dist/agents/adapters.d.ts.map +1 -1
- package/dist/agents/authority.d.ts +22 -6
- package/dist/agents/authority.d.ts.map +1 -1
- package/dist/agents/builders.d.ts +3 -11
- package/dist/agents/builders.d.ts.map +1 -1
- package/dist/agents/context-resolution.d.ts.map +1 -1
- package/dist/agents/context.js +2 -2
- package/dist/agents/dispatch.d.ts +9 -1
- package/dist/agents/dispatch.d.ts.map +1 -1
- package/dist/agents/errors.d.ts +1 -10
- package/dist/agents/errors.d.ts.map +1 -1
- package/dist/agents/execution.d.ts +9 -10
- 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/ids.d.ts +4 -0
- package/dist/agents/ids.d.ts.map +1 -1
- package/dist/agents/index.d.ts +15 -11
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +90 -78
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/message.d.ts +19 -13
- package/dist/agents/message.d.ts.map +1 -1
- package/dist/agents/model-loop.d.ts +58 -0
- package/dist/agents/model-loop.d.ts.map +1 -0
- package/dist/agents/reference.d.ts +4 -0
- package/dist/agents/reference.d.ts.map +1 -0
- package/dist/agents/request.d.ts +10 -8
- package/dist/agents/request.d.ts.map +1 -1
- package/dist/agents/retired-config.d.ts +4 -0
- package/dist/agents/retired-config.d.ts.map +1 -0
- package/dist/agents/streams.d.ts +13 -8
- package/dist/agents/streams.d.ts.map +1 -1
- package/dist/agents/streams.js +7 -5
- package/dist/agents/streams.js.map +1 -1
- package/dist/agents/tool-catalog.d.ts +9 -0
- package/dist/agents/tool-catalog.d.ts.map +1 -0
- package/dist/agents/tool-definition.d.ts +1 -1
- package/dist/agents/tool-definition.d.ts.map +1 -1
- package/dist/agents/types.d.ts +31 -68
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/agents/validation.d.ts +3 -13
- package/dist/agents/validation.d.ts.map +1 -1
- package/dist/ai-usage/execution.d.ts +53 -0
- package/dist/ai-usage/execution.d.ts.map +1 -0
- package/dist/ai-usage/index.d.ts +3 -0
- package/dist/ai-usage/index.d.ts.map +1 -0
- package/dist/auth/index.js +12 -9
- package/dist/auth/index.js.map +1 -1
- package/dist/authorization/decision.d.ts +14 -3
- package/dist/authorization/decision.d.ts.map +1 -1
- package/dist/authorization/grant-kinds.d.ts +25 -8
- 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 +12 -7
- package/dist/authorization/index.js.map +1 -1
- package/dist/authorization/resolve.d.ts +3 -3
- package/dist/authorization/resolve.d.ts.map +1 -1
- package/dist/authorization/types.d.ts +7 -5
- package/dist/authorization/types.d.ts.map +1 -1
- package/dist/blob-storage/browser.js +2 -2
- package/dist/blob-storage/index.js +3 -3
- package/dist/bootstrap/discovery.d.ts +6 -6
- package/dist/bootstrap/discovery.d.ts.map +1 -1
- package/dist/bootstrap/index.js +62 -51
- package/dist/bootstrap/index.js.map +1 -1
- package/dist/bootstrap/ontology-type-manifest.d.ts.map +1 -1
- package/dist/broker/index.js +2 -2
- package/dist/{chunk-zqysyfjt.js → chunk-08m3b6w8.js} +1 -1
- package/dist/chunk-19jp6g9d.js +131 -0
- package/dist/chunk-19jp6g9d.js.map +11 -0
- package/dist/{chunk-3j7573mj.js → chunk-2dw777qw.js} +50 -5
- package/dist/{chunk-3j7573mj.js.map → chunk-2dw777qw.js.map} +4 -3
- package/dist/{chunk-0172wgm9.js → chunk-2xns679x.js} +10 -2
- package/dist/{chunk-0172wgm9.js.map → chunk-2xns679x.js.map} +3 -3
- package/dist/chunk-359jm1jw.js +147 -0
- package/dist/chunk-359jm1jw.js.map +10 -0
- package/dist/{chunk-dy311asx.js → chunk-3xep5cjx.js} +58 -23
- package/dist/chunk-3xep5cjx.js.map +15 -0
- package/dist/{chunk-n4spznws.js → chunk-3z1qec12.js} +83 -12
- package/dist/chunk-3z1qec12.js.map +12 -0
- package/dist/{chunk-z3zp0bj1.js → chunk-407j3msh.js} +1 -1
- package/dist/{chunk-rhrbz7d4.js → chunk-4a849fr1.js} +1 -1
- package/dist/{chunk-cy0n5dms.js → chunk-4jjp5k14.js} +1 -1
- package/dist/chunk-4qfkag59.js +1568 -0
- package/dist/chunk-4qfkag59.js.map +20 -0
- package/dist/{chunk-1e8m6yn3.js → chunk-4sm0aznx.js} +685 -86
- package/dist/chunk-4sm0aznx.js.map +43 -0
- package/dist/chunk-4yqmp43v.js +159 -0
- package/dist/chunk-4yqmp43v.js.map +11 -0
- package/dist/{chunk-rdeagz6b.js → chunk-5e3pq99w.js} +3 -7
- package/dist/{chunk-rdeagz6b.js.map → chunk-5e3pq99w.js.map} +3 -3
- package/dist/{chunk-ezake7g1.js → chunk-5ntny1qx.js} +1 -1
- package/dist/{chunk-dm72y8wt.js → chunk-7y0f6rf1.js} +29 -16
- package/dist/chunk-7y0f6rf1.js.map +10 -0
- package/dist/{chunk-72q2y8hn.js → chunk-8tsf6dmc.js} +2 -2
- package/dist/{chunk-qewtks41.js → chunk-9nbmsvn5.js} +123 -20
- package/dist/chunk-9nbmsvn5.js.map +11 -0
- package/dist/{chunk-5sxb1168.js → chunk-aa2pen2v.js} +256 -82
- package/dist/chunk-aa2pen2v.js.map +34 -0
- package/dist/{chunk-819wnjz8.js → chunk-ajnan18g.js} +13 -10
- package/dist/chunk-ajnan18g.js.map +12 -0
- package/dist/chunk-c15dr03f.js +43 -0
- package/dist/chunk-c15dr03f.js.map +10 -0
- package/dist/{chunk-t0jjkep3.js → chunk-d8qkxt2v.js} +4 -2
- package/dist/chunk-d8qkxt2v.js.map +10 -0
- package/dist/{chunk-vybf6pkp.js → chunk-dbc80ad7.js} +1 -1
- package/dist/{chunk-nkbfrt0c.js → chunk-f26bck4t.js} +7 -7
- package/dist/{chunk-x2yw73hy.js → chunk-fvt9rjsa.js} +23 -7
- package/dist/chunk-fvt9rjsa.js.map +10 -0
- package/dist/{chunk-znagycq7.js → chunk-gbejpkex.js} +5 -5
- package/dist/{chunk-znagycq7.js.map → chunk-gbejpkex.js.map} +1 -1
- package/dist/{chunk-e42bc6m3.js → chunk-gzasd5b6.js} +5 -5
- package/dist/{chunk-e42bc6m3.js.map → chunk-gzasd5b6.js.map} +3 -3
- package/dist/{chunk-rnshztfq.js → chunk-h0k55pc7.js} +6 -6
- package/dist/{chunk-rnshztfq.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-j1sbhm7p.js +45 -0
- package/dist/chunk-j1sbhm7p.js.map +10 -0
- package/dist/chunk-jecn6t54.js +307 -0
- package/dist/chunk-jecn6t54.js.map +12 -0
- package/dist/{chunk-dsrkgtnh.js → chunk-jq43kdvk.js} +1 -1
- package/dist/{chunk-wtmzkcht.js → chunk-k34z5rvh.js} +1 -1
- package/dist/{chunk-f6erf2vv.js → chunk-k522z7v6.js} +10 -5
- package/dist/chunk-k522z7v6.js.map +10 -0
- package/dist/{chunk-htq0qh7z.js → chunk-ka3a2ft3.js} +2 -2
- package/dist/{chunk-ckxfnx7f.js → chunk-mth82m8t.js} +129 -95
- package/dist/chunk-mth82m8t.js.map +14 -0
- package/dist/{chunk-5gynx4xn.js → chunk-mwsxn98e.js} +79 -77
- package/dist/{chunk-5gynx4xn.js.map → chunk-mwsxn98e.js.map} +8 -8
- package/dist/{chunk-f2rt4vkh.js → chunk-n2w475r0.js} +3 -3
- package/dist/chunk-n4khvw9n.js +111 -0
- package/dist/chunk-n4khvw9n.js.map +11 -0
- package/dist/{chunk-t8t39h7v.js → chunk-n6jxh8sw.js} +10 -2
- package/dist/chunk-n6jxh8sw.js.map +10 -0
- package/dist/chunk-nn0tekr1.js +284 -0
- 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-drjqm1aa.js → chunk-p03r0h5s.js} +310 -28
- package/dist/chunk-p03r0h5s.js.map +16 -0
- package/dist/{chunk-1g8negke.js → chunk-p1rzczbt.js} +93 -8
- package/dist/chunk-p1rzczbt.js.map +12 -0
- package/dist/{chunk-f83ka50g.js → chunk-p1x242ad.js} +652 -77
- package/dist/chunk-p1x242ad.js.map +25 -0
- package/dist/chunk-p2vqaxkc.js +528 -0
- package/dist/chunk-p2vqaxkc.js.map +15 -0
- package/dist/{chunk-a31h57d5.js → chunk-pc7ys28c.js} +70 -7
- package/dist/chunk-pc7ys28c.js.map +14 -0
- package/dist/{chunk-md8k0r54.js → chunk-q0k9nc5a.js} +281 -89
- package/dist/chunk-q0k9nc5a.js.map +14 -0
- package/dist/{chunk-bhxaq2nn.js → chunk-qw9gvjv5.js} +1 -1
- package/dist/chunk-r8jrnexe.js +403 -0
- package/dist/chunk-r8jrnexe.js.map +10 -0
- package/dist/{chunk-h9kxd41f.js → chunk-rafagrwr.js} +48 -7
- package/dist/chunk-rafagrwr.js.map +11 -0
- package/dist/{chunk-dysw7nsm.js → chunk-rv2hkwwa.js} +2 -2
- package/dist/{chunk-ghteq96b.js → chunk-s5y30bc9.js} +2 -2
- package/dist/{chunk-t624af60.js → chunk-sbzzr4kx.js} +1848 -757
- package/dist/chunk-sbzzr4kx.js.map +63 -0
- package/dist/{chunk-6gjqgd3d.js → chunk-tpnd31c1.js} +2 -1
- package/dist/chunk-tpnd31c1.js.map +11 -0
- package/dist/chunk-trxxmgnf.js +68 -0
- package/dist/chunk-trxxmgnf.js.map +11 -0
- package/dist/{chunk-0hc5j867.js → chunk-v1xppd0y.js} +17 -13
- package/dist/{chunk-0hc5j867.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-xkthy56g.js → chunk-w1tvjszy.js} +1 -1
- package/dist/{chunk-8b55ygje.js → chunk-w3e09qqk.js} +1 -1
- package/dist/{chunk-8gv5z0zm.js → chunk-w9tg6yyb.js} +13 -8
- package/dist/{chunk-8gv5z0zm.js.map → chunk-w9tg6yyb.js.map} +3 -3
- package/dist/{chunk-62c7t4jc.js → chunk-wdage1eb.js} +1 -1
- package/dist/{chunk-tg5mee00.js → chunk-wtf06et8.js} +11 -7
- package/dist/{chunk-tg5mee00.js.map → chunk-wtf06et8.js.map} +3 -3
- package/dist/{chunk-nva1xkjz.js → chunk-xajtptbw.js} +1237 -1434
- 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/error-reporting/internal.js +4 -4
- package/dist/error-reporting/types.d.ts +7 -2
- package/dist/error-reporting/types.d.ts.map +1 -1
- package/dist/errors/catalog.d.ts +8 -0
- package/dist/errors/catalog.d.ts.map +1 -1
- package/dist/errors/internal.js +2 -2
- package/dist/events/execution.d.ts.map +1 -1
- package/dist/events/index.js +4 -4
- 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 +18 -9
- package/dist/execution/agent.d.ts.map +1 -1
- package/dist/execution/agent.js +62 -46
- package/dist/execution/agent.js.map +1 -1
- package/dist/execution/authorization.d.ts +68 -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 +55 -46
- package/dist/execution/primitive.js.map +2 -2
- package/dist/execution/request.d.ts +14 -1
- package/dist/execution/request.d.ts.map +1 -1
- package/dist/execution/request.js +92 -54
- 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 +10 -1
- 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 +15 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +128 -109
- package/dist/index.js.map +1 -1
- package/dist/json.d.ts +2 -0
- package/dist/json.d.ts.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 +27 -10
- 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/logging/index.js +3 -3
- package/dist/logging/types.js +2 -2
- package/dist/materialization/index.js +2 -2
- package/dist/materializer/index.js +38 -31
- package/dist/materializer/index.js.map +1 -1
- package/dist/models/catalog.d.ts +40 -0
- package/dist/models/catalog.d.ts.map +1 -0
- package/dist/models/definitions.d.ts +25 -0
- package/dist/models/definitions.d.ts.map +1 -0
- package/dist/models/errors.d.ts +52 -0
- package/dist/models/errors.d.ts.map +1 -0
- package/dist/models/events.d.ts +192 -0
- package/dist/models/events.d.ts.map +1 -0
- package/dist/models/index.d.ts +17 -39
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/index.js +50 -0
- package/dist/models/index.js.map +9 -0
- package/dist/models/language-model.d.ts +90 -0
- package/dist/models/language-model.d.ts.map +1 -0
- package/dist/models/messages.d.ts +74 -0
- package/dist/models/messages.d.ts.map +1 -0
- package/dist/models/pricing.d.ts +69 -0
- package/dist/models/pricing.d.ts.map +1 -0
- package/dist/models/rate-card.d.ts +24 -0
- package/dist/models/rate-card.d.ts.map +1 -0
- package/dist/models/tools.d.ts +24 -0
- package/dist/models/tools.d.ts.map +1 -0
- 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 +43 -36
- 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 +36 -29
- 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 +15 -14
- 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 +41 -36
- 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 +39 -32
- package/dist/projections/internal.js.map +1 -1
- package/dist/projections/run-dispatch.d.ts.map +1 -1
- package/dist/queues/in-memory.d.ts +3 -2
- package/dist/queues/in-memory.d.ts.map +1 -1
- package/dist/queues/index.d.ts +3 -1
- package/dist/queues/index.d.ts.map +1 -1
- package/dist/queues/index.js +1 -1
- package/dist/queues/types.d.ts +15 -3
- package/dist/queues/types.d.ts.map +1 -1
- package/dist/rules/execution.d.ts.map +1 -1
- package/dist/runtime/create.d.ts +7 -4
- package/dist/runtime/create.d.ts.map +1 -1
- package/dist/runtime/definitions.d.ts +4 -2
- package/dist/runtime/definitions.d.ts.map +1 -1
- package/dist/runtime/host.d.ts +5 -2
- 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 +4 -2
- package/dist/runtime/resolve-definitions.d.ts.map +1 -1
- package/dist/runtime/sixb.d.ts +8 -2
- 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 -4
- package/dist/security/every.d.ts.map +1 -1
- package/dist/security/grants.d.ts +12 -6
- 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 +2 -1
- package/dist/security/registry.d.ts.map +1 -1
- package/dist/security/types.d.ts +19 -5
- package/dist/security/types.d.ts.map +1 -1
- package/dist/security/validation.d.ts +6 -2
- 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/failure.js +3 -3
- package/dist/storage/action-runs/provider.js +2 -2
- package/dist/storage/agents/errors.d.ts +1 -1
- package/dist/storage/agents/errors.d.ts.map +1 -1
- package/dist/storage/agents/in-memory.d.ts +3 -2
- package/dist/storage/agents/in-memory.d.ts.map +1 -1
- package/dist/storage/agents/index.d.ts +1 -1
- package/dist/storage/agents/index.d.ts.map +1 -1
- package/dist/storage/agents/provider.d.ts +11 -4
- package/dist/storage/agents/provider.d.ts.map +1 -1
- package/dist/storage/agents/provider.js +18 -15
- package/dist/storage/agents/provider.js.map +1 -1
- package/dist/storage/agents/types.d.ts +65 -17
- package/dist/storage/agents/types.d.ts.map +1 -1
- package/dist/storage/ai-cost/analytics.d.ts +2 -1
- package/dist/storage/ai-cost/analytics.d.ts.map +1 -1
- package/dist/storage/ai-cost/codec.d.ts +3 -2
- package/dist/storage/ai-cost/codec.d.ts.map +1 -1
- package/dist/storage/ai-cost/groups.d.ts +51 -0
- package/dist/storage/ai-cost/groups.d.ts.map +1 -0
- package/dist/storage/ai-cost/in-memory.d.ts +11 -1
- package/dist/storage/ai-cost/in-memory.d.ts.map +1 -1
- package/dist/storage/ai-cost/index.d.ts +1 -1
- package/dist/storage/ai-cost/index.d.ts.map +1 -1
- package/dist/storage/ai-cost/provider.d.ts +2 -0
- package/dist/storage/ai-cost/provider.d.ts.map +1 -1
- package/dist/storage/ai-cost/provider.js +29 -13
- package/dist/storage/ai-cost/provider.js.map +3 -3
- package/dist/storage/ai-cost/types.d.ts +64 -15
- package/dist/storage/ai-cost/types.d.ts.map +1 -1
- package/dist/storage/ai-cost/validation.d.ts +2 -1
- package/dist/storage/ai-cost/validation.d.ts.map +1 -1
- package/dist/storage/ai-limits/enforcement.d.ts +14 -0
- package/dist/storage/ai-limits/enforcement.d.ts.map +1 -0
- package/dist/storage/ai-limits/enforcement.js +21 -0
- package/dist/storage/ai-limits/enforcement.js.map +9 -0
- package/dist/storage/ai-limits/errors.d.ts +8 -0
- package/dist/storage/ai-limits/errors.d.ts.map +1 -0
- package/dist/storage/ai-limits/in-memory.d.ts +78 -0
- package/dist/storage/ai-limits/in-memory.d.ts.map +1 -0
- package/dist/storage/ai-limits/index.d.ts +7 -0
- package/dist/storage/ai-limits/index.d.ts.map +1 -0
- package/dist/storage/ai-limits/period.d.ts +4 -0
- package/dist/storage/ai-limits/period.d.ts.map +1 -0
- package/dist/storage/ai-limits/provider.d.ts +85 -0
- package/dist/storage/ai-limits/provider.d.ts.map +1 -0
- package/dist/storage/ai-limits/provider.js +62 -0
- package/dist/storage/ai-limits/provider.js.map +9 -0
- package/dist/storage/ai-limits/types.d.ts +175 -0
- package/dist/storage/ai-limits/types.d.ts.map +1 -0
- package/dist/storage/ai-usage/in-memory.d.ts +4 -0
- package/dist/storage/ai-usage/in-memory.d.ts.map +1 -1
- package/dist/storage/ai-usage/record.d.ts.map +1 -1
- package/dist/storage/ai-usage/types.d.ts +6 -2
- package/dist/storage/ai-usage/types.d.ts.map +1 -1
- package/dist/storage/auth/errors.d.ts +1 -1
- package/dist/storage/auth/errors.d.ts.map +1 -1
- package/dist/storage/auth/in-memory/auth-storage.d.ts +4 -1
- package/dist/storage/auth/in-memory/auth-storage.d.ts.map +1 -1
- package/dist/storage/auth/in-memory/device-authorizations.d.ts +29 -0
- package/dist/storage/auth/in-memory/device-authorizations.d.ts.map +1 -0
- package/dist/storage/auth/in-memory/shared.d.ts +3 -1
- package/dist/storage/auth/in-memory/shared.d.ts.map +1 -1
- package/dist/storage/auth/index.d.ts +2 -1
- package/dist/storage/auth/index.d.ts.map +1 -1
- package/dist/storage/auth/types.d.ts +66 -0
- package/dist/storage/auth/types.d.ts.map +1 -1
- package/dist/storage/connector-connections/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 +14 -2
- 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 +12 -0
- package/dist/storage/in-memory/index.d.ts.map +1 -1
- package/dist/storage/index.d.ts +15 -6
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +78 -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/ontology/provider.js +3 -3
- 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 +4 -4
- 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 +13 -1
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/webhook-runs/provider.js +2 -2
- package/dist/storage/workflow-runs/provider.d.ts +1 -1
- package/dist/storage/workflow-runs/provider.js +14 -12
- package/dist/storage/workflow-runs/provider.js.map +1 -1
- package/dist/storage/workflow-runs/types.d.ts +5 -4
- package/dist/storage/workflow-runs/types.d.ts.map +1 -1
- package/dist/syncs/execution.d.ts.map +1 -1
- package/dist/syncs/index.js +41 -36
- package/dist/syncs/index.js.map +1 -1
- package/dist/syncs/request.d.ts.map +1 -1
- package/dist/testing/agent-execution.d.ts +3 -1
- package/dist/testing/agent-execution.d.ts.map +1 -1
- package/dist/testing/agent-storage-contract.d.ts.map +1 -1
- package/dist/testing/ai-cost-storage-contract.d.ts.map +1 -1
- package/dist/testing/ai-limit-storage-contract.d.ts +18 -0
- package/dist/testing/ai-limit-storage-contract.d.ts.map +1 -0
- package/dist/testing/ai-model-call-groups-contract.d.ts +6 -0
- package/dist/testing/ai-model-call-groups-contract.d.ts.map +1 -0
- package/dist/testing/ai-usage-storage-contract.d.ts.map +1 -1
- package/dist/testing/auth-storage-contract.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 +5 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +5392 -2070
- package/dist/testing/index.js.map +21 -15
- 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/queues-contract.d.ts.map +1 -1
- 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 +36 -29
- package/dist/webhooks/internal.js.map +2 -2
- package/dist/workers/index.js +2 -2
- package/dist/workflows/agent-step-identity.d.ts +3 -0
- package/dist/workflows/agent-step-identity.d.ts.map +1 -0
- package/dist/workflows/builders.d.ts +2 -3
- package/dist/workflows/builders.d.ts.map +1 -1
- package/dist/workflows/execution.d.ts +1 -1
- package/dist/workflows/execution.d.ts.map +1 -1
- package/dist/workflows/failure.d.ts +1 -1
- package/dist/workflows/failure.d.ts.map +1 -1
- package/dist/workflows/index.d.ts +3 -2
- package/dist/workflows/index.d.ts.map +1 -1
- package/dist/workflows/index.js +63 -48
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/request.d.ts.map +1 -1
- package/dist/workflows/types.d.ts +26 -11
- package/dist/workflows/types.d.ts.map +1 -1
- package/dist/workflows/validation.d.ts +7 -1
- package/dist/workflows/validation.d.ts.map +1 -1
- package/package.json +43 -4
- 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 +60 -456
- package/src/agents/authority.ts +215 -34
- package/src/agents/builders.ts +3 -50
- package/src/agents/context-compaction.ts +4 -0
- package/src/agents/context-resolution.ts +1 -4
- package/src/agents/dispatch.ts +59 -2
- package/src/agents/errors.ts +4 -11
- package/src/agents/execution.ts +65 -56
- package/src/agents/identity.ts +4 -0
- package/src/agents/ids.ts +16 -1
- package/src/agents/index.ts +23 -30
- package/src/agents/message.ts +20 -12
- package/src/agents/model-loop.ts +1071 -0
- package/src/agents/reference.ts +7 -0
- package/src/agents/request.ts +157 -77
- package/src/agents/retired-config.ts +20 -0
- package/src/agents/streams.ts +45 -19
- package/src/agents/tool-catalog.ts +21 -0
- package/src/agents/tool-definition.ts +9 -5
- package/src/agents/types.ts +39 -81
- package/src/agents/validation.ts +11 -216
- package/src/ai-usage/execution.ts +189 -0
- package/src/ai-usage/index.ts +15 -0
- package/src/authorization/decision.ts +54 -22
- package/src/authorization/grant-kinds.ts +72 -15
- package/src/authorization/index.ts +2 -0
- package/src/authorization/resolve.ts +12 -5
- package/src/authorization/types.ts +7 -5
- package/src/bootstrap/discovery.ts +3 -3
- 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/error-reporting/types.ts +4 -2
- package/src/errors/catalog.ts +8 -0
- package/src/events/execution.ts +57 -7
- package/src/events/types/datasets.ts +2 -6
- package/src/execution/agent.ts +129 -25
- package/src/execution/authorization.ts +493 -83
- 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 +67 -14
- package/src/execution/scopes.ts +36 -6
- package/src/execution/types.ts +9 -1
- package/src/http/api-routes.ts +108 -0
- package/src/index.ts +72 -22
- package/src/json.ts +9 -0
- 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/models/catalog.ts +137 -0
- package/src/models/definitions.ts +202 -0
- package/src/models/errors.ts +83 -0
- package/src/models/events.ts +198 -0
- package/src/models/index.ts +89 -71
- package/src/models/language-model.ts +143 -0
- package/src/models/messages.ts +78 -0
- package/src/models/pricing.ts +390 -0
- package/src/models/rate-card.ts +101 -0
- package/src/models/tools.ts +29 -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/queues/in-memory.ts +5 -0
- package/src/queues/index.ts +11 -0
- package/src/queues/types.ts +20 -3
- package/src/rules/execution.ts +20 -8
- package/src/runtime/create.ts +11 -5
- package/src/runtime/definitions.ts +4 -2
- package/src/runtime/host.ts +28 -8
- package/src/runtime/internal.ts +1 -0
- package/src/runtime/resolve-definitions.ts +22 -36
- package/src/runtime/sixb.ts +29 -10
- package/src/runtime/types.ts +3 -0
- package/src/schedules/execution.ts +24 -2
- package/src/security/every.ts +4 -4
- package/src/security/grants.ts +100 -14
- package/src/security/index.ts +3 -0
- package/src/security/registry.ts +9 -5
- package/src/security/types.ts +23 -4
- package/src/security/validation.ts +33 -9
- 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/agents/errors.ts +1 -0
- package/src/storage/agents/in-memory.ts +121 -11
- package/src/storage/agents/index.ts +7 -0
- package/src/storage/agents/provider.ts +150 -6
- package/src/storage/agents/types.ts +73 -16
- package/src/storage/ai-cost/analytics.ts +63 -6
- package/src/storage/ai-cost/codec.ts +37 -12
- package/src/storage/ai-cost/groups.ts +248 -0
- package/src/storage/ai-cost/in-memory.ts +42 -0
- package/src/storage/ai-cost/index.ts +6 -0
- package/src/storage/ai-cost/provider.ts +7 -0
- package/src/storage/ai-cost/types.ts +76 -14
- package/src/storage/ai-cost/validation.ts +147 -17
- package/src/storage/ai-limits/enforcement.ts +68 -0
- package/src/storage/ai-limits/errors.ts +23 -0
- package/src/storage/ai-limits/in-memory.ts +671 -0
- package/src/storage/ai-limits/index.ts +31 -0
- package/src/storage/ai-limits/period.ts +11 -0
- package/src/storage/ai-limits/provider.ts +430 -0
- package/src/storage/ai-limits/types.ts +195 -0
- package/src/storage/ai-usage/in-memory.ts +13 -0
- package/src/storage/ai-usage/record.ts +17 -0
- package/src/storage/ai-usage/types.ts +6 -2
- package/src/storage/auth/errors.ts +6 -0
- package/src/storage/auth/in-memory/auth-storage.ts +69 -0
- package/src/storage/auth/in-memory/device-authorizations.ts +145 -0
- package/src/storage/auth/in-memory/shared.ts +7 -0
- package/src/storage/auth/index.ts +7 -0
- package/src/storage/auth/types.ts +73 -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 +45 -6
- package/src/storage/executions/validation.ts +82 -7
- package/src/storage/in-memory/index.ts +69 -6
- package/src/storage/index.ts +102 -1
- 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 +64 -0
- package/src/storage/workflow-runs/in-memory.ts +3 -3
- package/src/storage/workflow-runs/provider.ts +2 -2
- package/src/storage/workflow-runs/types.ts +6 -3
- package/src/syncs/execution.ts +25 -5
- package/src/syncs/request.ts +5 -0
- package/src/testing/agent-execution.ts +40 -28
- package/src/testing/agent-storage-contract.ts +249 -28
- package/src/testing/ai-cost-storage-contract.ts +96 -8
- package/src/testing/ai-limit-storage-contract.ts +1134 -0
- package/src/testing/ai-model-call-groups-contract.ts +353 -0
- package/src/testing/ai-usage-storage-contract.ts +31 -0
- package/src/testing/auth-storage-contract.ts +85 -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 +81 -2
- package/src/testing/index.ts +26 -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/queues-contract.ts +36 -1
- package/src/testing/share-grant-storage-contract.ts +325 -0
- package/src/testing/share-session-storage-contract.ts +235 -0
- package/src/workflows/agent-step-identity.ts +4 -0
- package/src/workflows/builders.ts +95 -9
- package/src/workflows/execution.ts +55 -16
- package/src/workflows/failure.ts +2 -2
- package/src/workflows/index.ts +3 -0
- package/src/workflows/request.ts +5 -0
- package/src/workflows/types.ts +23 -11
- package/src/workflows/validation.ts +100 -7
- package/dist/chunk-1e8m6yn3.js.map +0 -37
- package/dist/chunk-1g8negke.js.map +0 -11
- package/dist/chunk-4gz41why.js +0 -72
- package/dist/chunk-4gz41why.js.map +0 -11
- package/dist/chunk-5sxb1168.js.map +0 -34
- package/dist/chunk-6gjqgd3d.js.map +0 -11
- package/dist/chunk-819wnjz8.js.map +0 -12
- package/dist/chunk-a31h57d5.js.map +0 -13
- package/dist/chunk-a44d5zgd.js +0 -556
- package/dist/chunk-a44d5zgd.js.map +0 -16
- package/dist/chunk-ckxfnx7f.js.map +0 -13
- package/dist/chunk-dm72y8wt.js.map +0 -10
- package/dist/chunk-drjqm1aa.js.map +0 -15
- package/dist/chunk-dy311asx.js.map +0 -14
- package/dist/chunk-f6erf2vv.js.map +0 -10
- package/dist/chunk-f83ka50g.js.map +0 -23
- package/dist/chunk-fe5ev6mr.js +0 -55
- package/dist/chunk-fe5ev6mr.js.map +0 -11
- package/dist/chunk-h9kxd41f.js.map +0 -11
- package/dist/chunk-hceck7dq.js +0 -137
- package/dist/chunk-hceck7dq.js.map +0 -10
- package/dist/chunk-md8k0r54.js.map +0 -14
- package/dist/chunk-n4spznws.js.map +0 -11
- package/dist/chunk-nva1xkjz.js.map +0 -46
- package/dist/chunk-qewtks41.js.map +0 -11
- package/dist/chunk-t0jjkep3.js.map +0 -10
- package/dist/chunk-t624af60.js.map +0 -56
- package/dist/chunk-t8t39h7v.js.map +0 -10
- package/dist/chunk-t9xghkva.js +0 -28
- package/dist/chunk-t9xghkva.js.map +0 -10
- package/dist/chunk-x2yw73hy.js.map +0 -10
- package/dist/chunk-xc7hq65b.js.map +0 -10
- package/dist/storage/objects/in-memory.d.ts.map +0 -1
- package/src/storage/objects/in-memory.ts +0 -1241
- /package/dist/{chunk-zqysyfjt.js.map → chunk-08m3b6w8.js.map} +0 -0
- /package/dist/{chunk-z3zp0bj1.js.map → chunk-407j3msh.js.map} +0 -0
- /package/dist/{chunk-rhrbz7d4.js.map → chunk-4a849fr1.js.map} +0 -0
- /package/dist/{chunk-cy0n5dms.js.map → chunk-4jjp5k14.js.map} +0 -0
- /package/dist/{chunk-ezake7g1.js.map → chunk-5ntny1qx.js.map} +0 -0
- /package/dist/{chunk-72q2y8hn.js.map → chunk-8tsf6dmc.js.map} +0 -0
- /package/dist/{chunk-vybf6pkp.js.map → chunk-dbc80ad7.js.map} +0 -0
- /package/dist/{chunk-nkbfrt0c.js.map → chunk-f26bck4t.js.map} +0 -0
- /package/dist/{chunk-dsrkgtnh.js.map → chunk-jq43kdvk.js.map} +0 -0
- /package/dist/{chunk-wtmzkcht.js.map → chunk-k34z5rvh.js.map} +0 -0
- /package/dist/{chunk-htq0qh7z.js.map → chunk-ka3a2ft3.js.map} +0 -0
- /package/dist/{chunk-f2rt4vkh.js.map → chunk-n2w475r0.js.map} +0 -0
- /package/dist/{chunk-bhxaq2nn.js.map → chunk-qw9gvjv5.js.map} +0 -0
- /package/dist/{chunk-dysw7nsm.js.map → chunk-rv2hkwwa.js.map} +0 -0
- /package/dist/{chunk-ghteq96b.js.map → chunk-s5y30bc9.js.map} +0 -0
- /package/dist/{chunk-xkthy56g.js.map → chunk-w1tvjszy.js.map} +0 -0
- /package/dist/{chunk-8b55ygje.js.map → chunk-w3e09qqk.js.map} +0 -0
- /package/dist/{chunk-62c7t4jc.js.map → chunk-wdage1eb.js.map} +0 -0
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import type { ActionDefinition } from "../actions"
|
|
2
2
|
import { isActionDefinition } from "../actions"
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
3
|
+
import { AGENT_REASONING_LEVELS, isAgentToolDefinition } from "../agents"
|
|
4
|
+
import { isModelReasoning } from "../models/language-model"
|
|
5
5
|
import type { SchemaOrRef } from "../ontology"
|
|
6
6
|
import type { ScheduleDefinition, ScheduleDefinitionForEvent } from "../schedules"
|
|
7
7
|
import { isScheduleDefinition } from "../schedules"
|
|
8
|
+
import { isGroupDefinition } from "../security"
|
|
8
9
|
import { WorkflowDefinitionError } from "./errors"
|
|
9
10
|
import type {
|
|
10
11
|
AgentStepBuilder,
|
|
11
12
|
AgentStepDefinition,
|
|
13
|
+
DefineAgentStepConfig,
|
|
12
14
|
InterventionBuilder,
|
|
13
15
|
InterventionDefaultsRuntimeHandler,
|
|
14
16
|
InterventionDefinition,
|
|
@@ -115,14 +117,25 @@ export function defineWorkflowStep<const TId extends string>(id: TId): StepBuild
|
|
|
115
117
|
} as unknown as StepBuilder<TId>
|
|
116
118
|
}
|
|
117
119
|
|
|
118
|
-
export function defineAgentStep<const TId extends string
|
|
120
|
+
export function defineAgentStep<const TId extends string>(
|
|
119
121
|
id: TId,
|
|
120
|
-
|
|
121
|
-
): AgentStepBuilder<TId
|
|
122
|
+
config: DefineAgentStepConfig
|
|
123
|
+
): AgentStepBuilder<TId> {
|
|
122
124
|
assertNonEmpty(id, "Agent step", "id")
|
|
123
|
-
if (!
|
|
124
|
-
throw new WorkflowDefinitionError(`Agent step "${id}"
|
|
125
|
+
if (!isRecord(config)) {
|
|
126
|
+
throw new WorkflowDefinitionError(`Agent step "${id}" config must be an object.`)
|
|
125
127
|
}
|
|
128
|
+
if (typeof config.instructions !== "string" || !config.instructions.trim()) {
|
|
129
|
+
throw new WorkflowDefinitionError(`Agent step "${id}" instructions must not be empty.`)
|
|
130
|
+
}
|
|
131
|
+
if (config.reasoning !== undefined && !isModelReasoning(config.reasoning)) {
|
|
132
|
+
throw new WorkflowDefinitionError(
|
|
133
|
+
`Agent step "${id}" reasoning must be one of: ${AGENT_REASONING_LEVELS.join(", ")}, or a nonnegative budgetTokens object.`
|
|
134
|
+
)
|
|
135
|
+
}
|
|
136
|
+
const { model, reasoning, instructions } = config
|
|
137
|
+
const groupIds = groupIdsFromAgentStepConfig(id, config)
|
|
138
|
+
const toolNames = toolNamesFromAgentStepConfig(id, config)
|
|
126
139
|
|
|
127
140
|
return {
|
|
128
141
|
input(input: RuntimeWorkflowInput): unknown {
|
|
@@ -133,13 +146,82 @@ export function defineAgentStep<const TId extends string, const TAgent extends A
|
|
|
133
146
|
if (typeof prompt !== "function") {
|
|
134
147
|
throw new WorkflowDefinitionError(`Agent step "${id}" prompt must be a function.`)
|
|
135
148
|
}
|
|
136
|
-
return {
|
|
149
|
+
return {
|
|
150
|
+
kind: "agentStep",
|
|
151
|
+
id,
|
|
152
|
+
...(model === undefined ? {} : { model }),
|
|
153
|
+
...(reasoning === undefined ? {} : { reasoning }),
|
|
154
|
+
instructions,
|
|
155
|
+
groupIds,
|
|
156
|
+
toolNames,
|
|
157
|
+
input,
|
|
158
|
+
output,
|
|
159
|
+
prompt,
|
|
160
|
+
}
|
|
137
161
|
},
|
|
138
162
|
}
|
|
139
163
|
},
|
|
140
164
|
}
|
|
141
165
|
},
|
|
142
|
-
} as unknown as AgentStepBuilder<TId
|
|
166
|
+
} as unknown as AgentStepBuilder<TId>
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
function groupIdsFromAgentStepConfig(
|
|
170
|
+
stepId: string,
|
|
171
|
+
config: DefineAgentStepConfig
|
|
172
|
+
): readonly string[] {
|
|
173
|
+
if (config.groups !== undefined && !Array.isArray(config.groups)) {
|
|
174
|
+
throw new WorkflowDefinitionError(
|
|
175
|
+
`Agent step "${stepId}" groups must be an array of group definitions.`
|
|
176
|
+
)
|
|
177
|
+
}
|
|
178
|
+
const groupIds = Array.from(config.groups ?? [], (group) => {
|
|
179
|
+
if (!isGroupDefinition(group)) {
|
|
180
|
+
throw new WorkflowDefinitionError(
|
|
181
|
+
`Agent step "${stepId}" groups must contain only group definitions.`
|
|
182
|
+
)
|
|
183
|
+
}
|
|
184
|
+
return group.id
|
|
185
|
+
})
|
|
186
|
+
assertUniqueAgentStepValues(stepId, "group", groupIds)
|
|
187
|
+
return Object.freeze(groupIds)
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
function toolNamesFromAgentStepConfig(
|
|
191
|
+
stepId: string,
|
|
192
|
+
config: DefineAgentStepConfig
|
|
193
|
+
): readonly string[] {
|
|
194
|
+
if (config.tools !== undefined && !Array.isArray(config.tools)) {
|
|
195
|
+
throw new WorkflowDefinitionError(
|
|
196
|
+
`Agent step "${stepId}" tools must be an array of agent tool definitions.`
|
|
197
|
+
)
|
|
198
|
+
}
|
|
199
|
+
const toolNames = Array.from(config.tools ?? [], (tool) => {
|
|
200
|
+
if (!isAgentToolDefinition(tool)) {
|
|
201
|
+
throw new WorkflowDefinitionError(
|
|
202
|
+
`Agent step "${stepId}" tools must contain only agent tool definitions.`
|
|
203
|
+
)
|
|
204
|
+
}
|
|
205
|
+
return tool.name
|
|
206
|
+
})
|
|
207
|
+
assertUniqueAgentStepValues(stepId, "tool", toolNames)
|
|
208
|
+
return Object.freeze(toolNames)
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
function assertUniqueAgentStepValues(
|
|
212
|
+
stepId: string,
|
|
213
|
+
kind: "group" | "tool",
|
|
214
|
+
values: readonly string[]
|
|
215
|
+
): void {
|
|
216
|
+
const seen = new Set<string>()
|
|
217
|
+
for (const value of values) {
|
|
218
|
+
if (seen.has(value)) {
|
|
219
|
+
throw new WorkflowDefinitionError(
|
|
220
|
+
`Agent step "${stepId}" ${kind}s contains duplicate ${kind} '${value}'.`
|
|
221
|
+
)
|
|
222
|
+
}
|
|
223
|
+
seen.add(value)
|
|
224
|
+
}
|
|
143
225
|
}
|
|
144
226
|
|
|
145
227
|
export function defineIntervention<const TId extends string>(
|
|
@@ -469,3 +551,7 @@ function isRuntimeWorkflowMapper(value: unknown): value is RuntimeWorkflowMapper
|
|
|
469
551
|
function isRuntimeWorkflowScheduleMapper(value: unknown): value is RuntimeWorkflowScheduleMapper {
|
|
470
552
|
return typeof value === "function"
|
|
471
553
|
}
|
|
554
|
+
|
|
555
|
+
function isRecord(value: unknown): value is Readonly<Record<string, unknown>> {
|
|
556
|
+
return typeof value === "object" && value !== null && !Array.isArray(value)
|
|
557
|
+
}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
assertAuthorized,
|
|
3
|
+
canViewWorkflowIntervention,
|
|
4
|
+
canViewWorkflowRun,
|
|
5
|
+
isRuntimeAllowed,
|
|
6
|
+
} from "../authorization"
|
|
2
7
|
import type { AuthorizablePrincipal, ExecutionContext } from "../execution"
|
|
8
|
+
import { resolveRuntimeAuthorizationForProject } from "../execution/authorization"
|
|
3
9
|
import { resolveExecutionCosts } from "../runtime/ai-cost"
|
|
4
10
|
import { resolveExecutionUsage } from "../runtime/ai-usage"
|
|
5
11
|
import type { SixbRuntimeContext } from "../runtime/types"
|
|
@@ -61,7 +67,8 @@ export type ListWorkflowRunNodesInput = Omit<
|
|
|
61
67
|
>
|
|
62
68
|
|
|
63
69
|
/** Execution-facing Agent node view derived from its run row and model-call ledger. */
|
|
64
|
-
export interface WorkflowAgentNodeRunView
|
|
70
|
+
export interface WorkflowAgentNodeRunView
|
|
71
|
+
extends Omit<WorkflowAgentNodeRunRecord, "execution" | "actorId"> {
|
|
65
72
|
readonly usage?: AiModelCallUsage
|
|
66
73
|
/** Preferred valuation; omitted when there are no calls or cost storage is unavailable. */
|
|
67
74
|
readonly cost?: AiCostSummary
|
|
@@ -100,22 +107,40 @@ export function createWorkflowsRuntime(
|
|
|
100
107
|
execution: ExecutionContext,
|
|
101
108
|
source: Pick<WorkflowsRuntime, "list" | "getById">
|
|
102
109
|
): WorkflowsRuntime {
|
|
110
|
+
const authority = resolveRuntimeAuthorizationForProject(runtime)
|
|
103
111
|
const allowed = (workflowId: string) =>
|
|
104
|
-
|
|
105
|
-
const canAccessHistory = (workflowId: string) =>
|
|
106
|
-
|
|
112
|
+
isRuntimeAllowed(runtime, { kind: "workflow.run", workflowId })
|
|
113
|
+
const canAccessHistory = (workflowId: string) => {
|
|
114
|
+
switch (authority.type) {
|
|
115
|
+
case "denied":
|
|
116
|
+
case "delegated":
|
|
117
|
+
return false
|
|
118
|
+
case "unrestricted":
|
|
119
|
+
return true
|
|
120
|
+
case "principal":
|
|
121
|
+
return allowed(workflowId) && source.getById(workflowId) !== null
|
|
122
|
+
}
|
|
123
|
+
}
|
|
107
124
|
const visibleIds = () =>
|
|
108
125
|
source
|
|
109
126
|
.list()
|
|
110
127
|
.filter((workflow) => allowed(workflow.id))
|
|
111
128
|
.map((workflow) => workflow.id)
|
|
129
|
+
const historyFilterIds = () =>
|
|
130
|
+
authority.type === "unrestricted"
|
|
131
|
+
? undefined
|
|
132
|
+
: authority.type === "principal"
|
|
133
|
+
? visibleIds()
|
|
134
|
+
: []
|
|
112
135
|
const getVisibleRunRecord = async (runId: string): Promise<WorkflowRunRecord | null> => {
|
|
136
|
+
if (authority.type === "denied" || authority.type === "delegated") return null
|
|
113
137
|
const run =
|
|
114
138
|
(await runtime.storage.workflowRuns?.getById({
|
|
115
139
|
projectId: runtime.projectId,
|
|
116
140
|
id: runId,
|
|
117
141
|
})) ?? null
|
|
118
|
-
|
|
142
|
+
if (!run || !canAccessHistory(run.workflowId)) return null
|
|
143
|
+
return authority.type === "unrestricted" || canViewWorkflowRun(authority.context, run)
|
|
119
144
|
? run
|
|
120
145
|
: null
|
|
121
146
|
}
|
|
@@ -130,9 +155,9 @@ export function createWorkflowsRuntime(
|
|
|
130
155
|
const storage = runtime.storage.workflowRuns
|
|
131
156
|
if (!storage || !(await getVisibleRunRecord(runId))) return null
|
|
132
157
|
const result = await storage.nodes.list({
|
|
133
|
-
projectId: runtime.projectId,
|
|
134
158
|
...input,
|
|
135
159
|
workflowRunId: runId,
|
|
160
|
+
projectId: runtime.projectId,
|
|
136
161
|
})
|
|
137
162
|
return {
|
|
138
163
|
...result,
|
|
@@ -141,13 +166,18 @@ export function createWorkflowsRuntime(
|
|
|
141
166
|
}
|
|
142
167
|
|
|
143
168
|
return {
|
|
144
|
-
list: () =>
|
|
169
|
+
list: () =>
|
|
170
|
+
authority.type === "denied" || authority.type === "delegated"
|
|
171
|
+
? []
|
|
172
|
+
: source.list().filter((workflow) => allowed(workflow.id)),
|
|
145
173
|
getById: (workflowId) => {
|
|
174
|
+
if (authority.type === "denied" || authority.type === "delegated") return null
|
|
146
175
|
const workflow = source.getById(workflowId)
|
|
147
176
|
return workflow && allowed(workflowId) ? workflow : null
|
|
148
177
|
},
|
|
149
178
|
request: (workflow, options) => requestWorkflowRun(runtime, execution, workflow, options),
|
|
150
179
|
requestById: async (input) => {
|
|
180
|
+
assertAuthorized(runtime, { kind: "workflow.run", workflowId: input.workflowId })
|
|
151
181
|
const workflow = source.getById(input.workflowId)
|
|
152
182
|
if (!workflow) {
|
|
153
183
|
throw new WorkflowValidationError(`[Sixb] Unknown workflow '${input.workflowId}'`)
|
|
@@ -157,12 +187,15 @@ export function createWorkflowsRuntime(
|
|
|
157
187
|
runs: {
|
|
158
188
|
getById: getRun,
|
|
159
189
|
list: async (input = {}) => {
|
|
190
|
+
if (authority.type === "denied" || authority.type === "delegated") {
|
|
191
|
+
return { runs: [], hasMore: false, total: 0 }
|
|
192
|
+
}
|
|
160
193
|
const storage = runtime.storage.workflowRuns
|
|
161
194
|
if (!storage) return { runs: [], hasMore: false, total: 0 }
|
|
162
195
|
const result = await storage.list({
|
|
163
|
-
projectId: runtime.projectId,
|
|
164
196
|
...input,
|
|
165
|
-
workflowIds:
|
|
197
|
+
workflowIds: historyFilterIds(),
|
|
198
|
+
projectId: runtime.projectId,
|
|
166
199
|
})
|
|
167
200
|
return {
|
|
168
201
|
...result,
|
|
@@ -170,6 +203,9 @@ export function createWorkflowsRuntime(
|
|
|
170
203
|
}
|
|
171
204
|
},
|
|
172
205
|
listLatest: async (workflowIds) => {
|
|
206
|
+
if (authority.type === "denied" || authority.type === "delegated") {
|
|
207
|
+
return { runs: [] }
|
|
208
|
+
}
|
|
173
209
|
const storage = runtime.storage.workflowRuns
|
|
174
210
|
if (!storage || workflowIds.length === 0) return { runs: [] }
|
|
175
211
|
const allowedIds = workflowIds.filter(canAccessHistory)
|
|
@@ -186,24 +222,28 @@ export function createWorkflowsRuntime(
|
|
|
186
222
|
},
|
|
187
223
|
interventions: {
|
|
188
224
|
getById: async (interventionId) => {
|
|
225
|
+
if (authority.type === "denied" || authority.type === "delegated") return null
|
|
189
226
|
const intervention =
|
|
190
227
|
(await runtime.storage.workflowInterventions?.getById({
|
|
191
228
|
projectId: runtime.projectId,
|
|
192
229
|
id: interventionId,
|
|
193
230
|
})) ?? null
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
231
|
+
if (!intervention || !canAccessHistory(intervention.workflowId)) return null
|
|
232
|
+
return authority.type === "unrestricted" ||
|
|
233
|
+
canViewWorkflowIntervention(authority.context, intervention)
|
|
197
234
|
? intervention
|
|
198
235
|
: null
|
|
199
236
|
},
|
|
200
237
|
list: (input = {}) => {
|
|
238
|
+
if (authority.type === "denied" || authority.type === "delegated") {
|
|
239
|
+
return Promise.resolve({ interventions: [], hasMore: false, total: 0 })
|
|
240
|
+
}
|
|
201
241
|
const storage = runtime.storage.workflowInterventions
|
|
202
242
|
if (!storage) return Promise.resolve({ interventions: [], hasMore: false, total: 0 })
|
|
203
243
|
return storage.list({
|
|
204
|
-
projectId: runtime.projectId,
|
|
205
244
|
...input,
|
|
206
|
-
workflowIds:
|
|
245
|
+
workflowIds: historyFilterIds(),
|
|
246
|
+
projectId: runtime.projectId,
|
|
207
247
|
})
|
|
208
248
|
},
|
|
209
249
|
},
|
|
@@ -274,7 +314,6 @@ function toWorkflowAgentNodeRunView(
|
|
|
274
314
|
projectId: execution.projectId,
|
|
275
315
|
nodeRunId: execution.nodeRunId,
|
|
276
316
|
executionId: execution.executionId,
|
|
277
|
-
agentId: execution.agentId,
|
|
278
317
|
status: execution.status,
|
|
279
318
|
prompt: execution.prompt,
|
|
280
319
|
modelId: execution.modelId,
|
package/src/workflows/failure.ts
CHANGED
|
@@ -15,7 +15,7 @@ export interface WorkflowNodeFailureIdentity extends WorkflowNodeFailureIdentity
|
|
|
15
15
|
readonly actionId: string
|
|
16
16
|
readonly actionRunId?: string
|
|
17
17
|
}
|
|
18
|
-
| { readonly type: "agent"; readonly
|
|
18
|
+
| { readonly type: "agent"; readonly agentStepId: string }
|
|
19
19
|
| { readonly type: "intervention"; readonly interventionId: string }
|
|
20
20
|
}
|
|
21
21
|
|
|
@@ -56,7 +56,7 @@ function workflowNodeFailureDetails(identity: WorkflowNodeFailureIdentity) {
|
|
|
56
56
|
...(identity.child.actionRunId ? { actionRunId: identity.child.actionRunId } : {}),
|
|
57
57
|
}
|
|
58
58
|
case "agent":
|
|
59
|
-
return { ...base,
|
|
59
|
+
return { ...base, agentStepId: identity.child.agentStepId }
|
|
60
60
|
case "intervention":
|
|
61
61
|
return { ...base, interventionId: identity.child.interventionId }
|
|
62
62
|
}
|
package/src/workflows/index.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export { workflowAgentStepActorId } from "./agent-step-identity"
|
|
1
2
|
export {
|
|
2
3
|
defineAgentStep,
|
|
3
4
|
defineIntervention,
|
|
@@ -39,6 +40,7 @@ export type {
|
|
|
39
40
|
AgentStepPrompt,
|
|
40
41
|
AgentStepPromptBuilder,
|
|
41
42
|
AgentStepPromptContext,
|
|
43
|
+
DefineAgentStepConfig,
|
|
42
44
|
DerivedWorkflowNodeKey,
|
|
43
45
|
InferAgentStepInput,
|
|
44
46
|
InferAgentStepOutput,
|
|
@@ -90,6 +92,7 @@ export {
|
|
|
90
92
|
isInterventionDefinition,
|
|
91
93
|
isStepDefinition,
|
|
92
94
|
isWorkflowDefinition,
|
|
95
|
+
validateWorkflowAgentStepGroupReferences,
|
|
93
96
|
validateWorkflowAgentStepInput,
|
|
94
97
|
validateWorkflowAgentStepOutput,
|
|
95
98
|
validateWorkflowDefinition,
|
package/src/workflows/request.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { snapshotRequesterGroupIds } from "../auth/attribution"
|
|
2
2
|
import { assertAuthorized } from "../authorization"
|
|
3
|
+
import { resolveExecutionScopeAuthorization } from "../execution/authorization"
|
|
3
4
|
import {
|
|
4
5
|
createPrimitiveExecutionRecord,
|
|
5
6
|
ensureExecutionRecord,
|
|
@@ -44,6 +45,10 @@ export async function requestWorkflowRun(
|
|
|
44
45
|
workflow: WorkflowDefinition,
|
|
45
46
|
options: WorkflowRunRequestOptions = {}
|
|
46
47
|
): Promise<WorkflowRunRequestResult> {
|
|
48
|
+
resolveExecutionScopeAuthorization(runtime.projectId, {
|
|
49
|
+
execution,
|
|
50
|
+
authorization: runtime.runtimeAuthorization,
|
|
51
|
+
})
|
|
47
52
|
assertAuthorized(runtime, { kind: "workflow.run", workflowId: workflow.id })
|
|
48
53
|
const requesterGroupIds = execution.requestedBy
|
|
49
54
|
? await snapshotRequesterGroupIds({
|
package/src/workflows/types.ts
CHANGED
|
@@ -5,8 +5,8 @@ import type {
|
|
|
5
5
|
ObjectActionDefinition,
|
|
6
6
|
} from "../actions"
|
|
7
7
|
import type { ActionsRuntime } from "../actions/execution"
|
|
8
|
-
import type {
|
|
9
|
-
import type {
|
|
8
|
+
import type { AgentRuntime } from "../agents/execution"
|
|
9
|
+
import type { AgentReasoningLevel, AgentToolDefinition } from "../agents/types"
|
|
10
10
|
import type { Principal } from "../auth"
|
|
11
11
|
import type { BlobsRuntime } from "../blob-storage/execution"
|
|
12
12
|
import type { ConnectorRuntime } from "../connectors/execution"
|
|
@@ -15,6 +15,7 @@ import type { EventsRuntime } from "../events/execution"
|
|
|
15
15
|
import type { JsonValue } from "../json"
|
|
16
16
|
import type { Logger } from "../logging"
|
|
17
17
|
import type { LogsRuntime } from "../logging/execution"
|
|
18
|
+
import type { LanguageModel } from "../models/language-model"
|
|
18
19
|
import type { ObjectsRuntime } from "../objects/execution"
|
|
19
20
|
import type { InferSchemaOrRef, ObjectRef, OntologySource, SchemaOrRef } from "../ontology"
|
|
20
21
|
import type { PipelinesRuntime } from "../pipelines/execution"
|
|
@@ -22,6 +23,7 @@ import type { ProjectionsRuntime } from "../projections/execution"
|
|
|
22
23
|
import type { RulesRuntime } from "../rules/execution"
|
|
23
24
|
import type { ScheduleDefinition, ScheduleDefinitionForEvent } from "../schedules"
|
|
24
25
|
import type { SchedulesRuntime } from "../schedules/execution"
|
|
26
|
+
import type { GroupDefinition } from "../security"
|
|
25
27
|
import type { SyncsRuntime } from "../syncs/execution"
|
|
26
28
|
import type { WorkflowsRuntime } from "./execution"
|
|
27
29
|
|
|
@@ -60,7 +62,7 @@ export interface StepRunContext<TInput extends Record<string, unknown>> {
|
|
|
60
62
|
export interface WorkflowRuntimeFacade {
|
|
61
63
|
readonly objects: ObjectsRuntime<readonly OntologySource[]>
|
|
62
64
|
readonly actions: ActionsRuntime
|
|
63
|
-
readonly
|
|
65
|
+
readonly agent: AgentRuntime
|
|
64
66
|
readonly datasets: DatasetsRuntime
|
|
65
67
|
readonly workflows: WorkflowsRuntime
|
|
66
68
|
readonly syncs: SyncsRuntime
|
|
@@ -133,9 +135,18 @@ export type AgentStepPrompt<TInput extends Record<string, unknown>> = (
|
|
|
133
135
|
ctx: AgentStepPromptContext<TInput>
|
|
134
136
|
) => string | Promise<string>
|
|
135
137
|
|
|
138
|
+
/** Runtime configuration owned directly by a workflow Agent step. */
|
|
139
|
+
export interface DefineAgentStepConfig {
|
|
140
|
+
readonly model?: LanguageModel
|
|
141
|
+
readonly reasoning?: AgentReasoningLevel
|
|
142
|
+
readonly instructions: string
|
|
143
|
+
readonly groups?: readonly GroupDefinition[]
|
|
144
|
+
/** Project tools this workflow task may call. Defaults to none. */
|
|
145
|
+
readonly tools?: readonly AgentToolDefinition[]
|
|
146
|
+
}
|
|
147
|
+
|
|
136
148
|
export interface AgentStepDefinition<
|
|
137
149
|
TId extends string = string,
|
|
138
|
-
TAgent extends AgentDefinition = AgentDefinition,
|
|
139
150
|
TInput extends Record<string, unknown> = Record<string, unknown>,
|
|
140
151
|
TOutput extends Record<string, unknown> = Record<string, unknown>,
|
|
141
152
|
TInputValue extends Record<string, unknown> = Record<string, unknown>,
|
|
@@ -143,7 +154,11 @@ export interface AgentStepDefinition<
|
|
|
143
154
|
> {
|
|
144
155
|
readonly kind: "agentStep"
|
|
145
156
|
readonly id: TId
|
|
146
|
-
readonly
|
|
157
|
+
readonly model?: LanguageModel
|
|
158
|
+
readonly reasoning?: AgentReasoningLevel
|
|
159
|
+
readonly instructions: string
|
|
160
|
+
readonly groupIds: readonly string[]
|
|
161
|
+
readonly toolNames: readonly string[]
|
|
147
162
|
readonly input: TInput
|
|
148
163
|
readonly output: TOutput
|
|
149
164
|
readonly prompt: AgentStepPrompt<Record<string, unknown>>
|
|
@@ -153,7 +168,6 @@ export interface AgentStepDefinition<
|
|
|
153
168
|
|
|
154
169
|
export interface AgentStepPromptBuilder<
|
|
155
170
|
TId extends string,
|
|
156
|
-
TAgent extends AgentDefinition,
|
|
157
171
|
TInput extends Record<string, unknown>,
|
|
158
172
|
TOutput extends Record<string, unknown>,
|
|
159
173
|
> {
|
|
@@ -161,7 +175,6 @@ export interface AgentStepPromptBuilder<
|
|
|
161
175
|
prompt: AgentStepPrompt<InferSchemaOrRefRecord<TInput>>
|
|
162
176
|
): AgentStepDefinition<
|
|
163
177
|
TId,
|
|
164
|
-
TAgent,
|
|
165
178
|
TInput,
|
|
166
179
|
TOutput,
|
|
167
180
|
InferSchemaOrRefRecord<TInput>,
|
|
@@ -171,18 +184,17 @@ export interface AgentStepPromptBuilder<
|
|
|
171
184
|
|
|
172
185
|
export interface AgentStepOutputBuilder<
|
|
173
186
|
TId extends string,
|
|
174
|
-
TAgent extends AgentDefinition,
|
|
175
187
|
TInput extends Record<string, unknown>,
|
|
176
188
|
> {
|
|
177
189
|
output<const TOutput extends Record<string, unknown>>(
|
|
178
190
|
output: TOutput & SchemaOrRefInput<TOutput>
|
|
179
|
-
): AgentStepPromptBuilder<TId,
|
|
191
|
+
): AgentStepPromptBuilder<TId, TInput, TOutput>
|
|
180
192
|
}
|
|
181
193
|
|
|
182
|
-
export interface AgentStepBuilder<TId extends string
|
|
194
|
+
export interface AgentStepBuilder<TId extends string> {
|
|
183
195
|
input<const TInput extends Record<string, unknown>>(
|
|
184
196
|
input: TInput & SchemaOrRefInput<TInput>
|
|
185
|
-
): AgentStepOutputBuilder<TId,
|
|
197
|
+
): AgentStepOutputBuilder<TId, TInput>
|
|
186
198
|
}
|
|
187
199
|
|
|
188
200
|
export type InferAgentStepInput<TStep extends AgentStepDefinition> = TStep extends {
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { isActionDefinition } from "../actions"
|
|
2
|
-
import {
|
|
2
|
+
import type { AgentToolCatalog } from "../agents"
|
|
3
|
+
import type { ModelCatalog } from "../models"
|
|
4
|
+
import { isModelReasoning } from "../models/language-model"
|
|
3
5
|
import type { SchemaOrRef, ValueType } from "../ontology"
|
|
4
6
|
import { validateSchemaOrRefValue } from "../ontology"
|
|
5
7
|
import type { ScheduleDefinition } from "../schedules"
|
|
8
|
+
import type { SecurityDefinitionCatalog } from "../security"
|
|
6
9
|
import { WorkflowDefinitionError, WorkflowValidationError } from "./errors"
|
|
7
10
|
import type {
|
|
8
11
|
AgentStepDefinition,
|
|
@@ -45,7 +48,11 @@ export function isAgentStepDefinition(value: unknown): value is AgentStepDefinit
|
|
|
45
48
|
isRecord(value) &&
|
|
46
49
|
value.kind === "agentStep" &&
|
|
47
50
|
typeof value.id === "string" &&
|
|
48
|
-
|
|
51
|
+
(value.model === undefined || isLanguageModel(value.model)) &&
|
|
52
|
+
(value.reasoning === undefined || isModelReasoning(value.reasoning)) &&
|
|
53
|
+
typeof value.instructions === "string" &&
|
|
54
|
+
isStringArray(value.groupIds) &&
|
|
55
|
+
isStringArray(value.toolNames) &&
|
|
49
56
|
isRecord(value.input) &&
|
|
50
57
|
isRecord(value.output) &&
|
|
51
58
|
typeof value.prompt === "function"
|
|
@@ -111,7 +118,8 @@ export function validateWorkflowsAtStartup(options: {
|
|
|
111
118
|
workflows: readonly WorkflowDefinition[]
|
|
112
119
|
registeredSchedules: ReadonlyMap<string, ScheduleDefinition>
|
|
113
120
|
registeredActionIds: ReadonlySet<string>
|
|
114
|
-
|
|
121
|
+
models?: ModelCatalog
|
|
122
|
+
tools: AgentToolCatalog
|
|
115
123
|
}): readonly WorkflowDefinition[] {
|
|
116
124
|
for (const workflow of options.workflows) {
|
|
117
125
|
validateWorkflowDefinition(workflow)
|
|
@@ -131,10 +139,8 @@ export function validateWorkflowsAtStartup(options: {
|
|
|
131
139
|
`Workflow "${workflow.id}" references unknown action "${node.action.id}". Add it to 'actions' in createSixb() or export it from 'actions/'.`
|
|
132
140
|
)
|
|
133
141
|
}
|
|
134
|
-
if (node.type === "agent"
|
|
135
|
-
|
|
136
|
-
`Workflow "${workflow.id}" references unknown agent "${node.agentStep.agent.id}". Add it to 'agents' in createSixb() or export it from 'agents/'.`
|
|
137
|
-
)
|
|
142
|
+
if (node.type === "agent") {
|
|
143
|
+
validateWorkflowAgentStepRuntimeReferences(workflow.id, node.agentStep, options)
|
|
138
144
|
}
|
|
139
145
|
}
|
|
140
146
|
}
|
|
@@ -142,6 +148,52 @@ export function validateWorkflowsAtStartup(options: {
|
|
|
142
148
|
return options.workflows
|
|
143
149
|
}
|
|
144
150
|
|
|
151
|
+
/** Validate workflow task memberships once the security catalog has been composed. */
|
|
152
|
+
export function validateWorkflowAgentStepGroupReferences(
|
|
153
|
+
workflows: readonly WorkflowDefinition[],
|
|
154
|
+
security: SecurityDefinitionCatalog
|
|
155
|
+
): void {
|
|
156
|
+
for (const workflow of workflows) {
|
|
157
|
+
for (const node of workflow.nodes) {
|
|
158
|
+
if (node.type !== "agent") continue
|
|
159
|
+
for (const groupId of node.agentStep.groupIds) {
|
|
160
|
+
if (!security.getGroupById(groupId)) {
|
|
161
|
+
throw new WorkflowDefinitionError(
|
|
162
|
+
`Workflow "${workflow.id}" agent step "${node.id}" references unknown group "${groupId}". Add it to 'security/groups/' or pass it to createSixb({ groups }).`
|
|
163
|
+
)
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
function validateWorkflowAgentStepRuntimeReferences(
|
|
171
|
+
workflowId: string,
|
|
172
|
+
step: AgentStepDefinition,
|
|
173
|
+
options: { readonly models?: ModelCatalog; readonly tools: AgentToolCatalog }
|
|
174
|
+
): void {
|
|
175
|
+
if (step.model === undefined && options.models === undefined) {
|
|
176
|
+
throw new WorkflowDefinitionError(
|
|
177
|
+
`Workflow "${workflowId}" agent step "${step.id}" needs a model. Configure 'models.language' or pass 'model' to defineAgentStep().`
|
|
178
|
+
)
|
|
179
|
+
}
|
|
180
|
+
if (step.model !== undefined && options.models !== undefined) {
|
|
181
|
+
const ref = { provider: step.model.providerId, modelId: step.model.modelId }
|
|
182
|
+
if (options.models.language.getByRef(ref) === null) {
|
|
183
|
+
throw new WorkflowDefinitionError(
|
|
184
|
+
`Workflow "${workflowId}" agent step "${step.id}" uses unknown language model "${ref.provider}/${ref.modelId}". Add it to 'models.language' in createSixb().`
|
|
185
|
+
)
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
for (const toolName of step.toolNames) {
|
|
189
|
+
if (options.tools.getByName(toolName) === null) {
|
|
190
|
+
throw new WorkflowDefinitionError(
|
|
191
|
+
`Workflow "${workflowId}" agent step "${step.id}" uses unknown project tool "${toolName}". Add it to 'tools' in createSixb().`
|
|
192
|
+
)
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
145
197
|
export function validateWorkflowInput(params: {
|
|
146
198
|
readonly workflow: WorkflowDefinition
|
|
147
199
|
readonly value: unknown
|
|
@@ -326,6 +378,13 @@ function validateAgentNodeDefinition(workflowId: string, node: WorkflowAgentNode
|
|
|
326
378
|
`Workflow "${workflowId}" agent node id "${node.id}" does not match agent step definition id "${node.agentStep.id}".`
|
|
327
379
|
)
|
|
328
380
|
}
|
|
381
|
+
if (!node.agentStep.instructions.trim()) {
|
|
382
|
+
throw new WorkflowDefinitionError(
|
|
383
|
+
`Workflow "${workflowId}" agent step "${node.id}" instructions must not be empty.`
|
|
384
|
+
)
|
|
385
|
+
}
|
|
386
|
+
assertUniqueNonEmptyAgentStepValues(workflowId, node.id, "group", node.agentStep.groupIds)
|
|
387
|
+
assertUniqueNonEmptyAgentStepValues(workflowId, node.id, "tool", node.agentStep.toolNames)
|
|
329
388
|
if (node.mapper !== undefined && typeof node.mapper !== "function") {
|
|
330
389
|
throw new WorkflowDefinitionError(
|
|
331
390
|
`Workflow "${workflowId}" agent node "${node.id}" mapper must be a function.`
|
|
@@ -333,6 +392,40 @@ function validateAgentNodeDefinition(workflowId: string, node: WorkflowAgentNode
|
|
|
333
392
|
}
|
|
334
393
|
}
|
|
335
394
|
|
|
395
|
+
function assertUniqueNonEmptyAgentStepValues(
|
|
396
|
+
workflowId: string,
|
|
397
|
+
stepId: string,
|
|
398
|
+
kind: "group" | "tool",
|
|
399
|
+
values: readonly string[]
|
|
400
|
+
): void {
|
|
401
|
+
const seen = new Set<string>()
|
|
402
|
+
for (const value of values) {
|
|
403
|
+
if (!value.trim()) {
|
|
404
|
+
throw new WorkflowDefinitionError(
|
|
405
|
+
`Workflow "${workflowId}" agent step "${stepId}" has an empty ${kind} id.`
|
|
406
|
+
)
|
|
407
|
+
}
|
|
408
|
+
if (seen.has(value)) {
|
|
409
|
+
throw new WorkflowDefinitionError(
|
|
410
|
+
`Workflow "${workflowId}" agent step "${stepId}" has duplicate ${kind} '${value}'.`
|
|
411
|
+
)
|
|
412
|
+
}
|
|
413
|
+
seen.add(value)
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
function isLanguageModel(value: unknown): boolean {
|
|
418
|
+
return (typeof value === "object" || typeof value === "function") && value !== null
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
function isStringArray(value: unknown): value is readonly string[] {
|
|
422
|
+
if (!Array.isArray(value)) return false
|
|
423
|
+
for (let index = 0; index < value.length; index += 1) {
|
|
424
|
+
if (!Object.hasOwn(value, index) || typeof value[index] !== "string") return false
|
|
425
|
+
}
|
|
426
|
+
return true
|
|
427
|
+
}
|
|
428
|
+
|
|
336
429
|
export function validateWorkflowAgentStepInput(params: {
|
|
337
430
|
readonly workflowId: string
|
|
338
431
|
readonly agentStep: AgentStepDefinition
|