@sixb/core 0.1.10 → 0.1.12
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/builders/params.d.ts +1 -22
- package/dist/actions/builders/params.d.ts.map +1 -1
- package/dist/actions/index.js +29 -28
- package/dist/actions/index.js.map +1 -1
- package/dist/actions/types/params.d.ts +10 -44
- package/dist/actions/types/params.d.ts.map +1 -1
- package/dist/actions/validation.d.ts.map +1 -1
- package/dist/actions/worker.js +3 -2
- package/dist/actions/worker.js.map +2 -2
- package/dist/agents/errors.d.ts +1 -1
- package/dist/agents/errors.d.ts.map +1 -1
- package/dist/agents/execution.d.ts +15 -9
- package/dist/agents/execution.d.ts.map +1 -1
- package/dist/agents/ids.d.ts +2 -0
- package/dist/agents/ids.d.ts.map +1 -1
- package/dist/agents/index.d.ts +1 -1
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +48 -42
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/request.d.ts.map +1 -1
- package/dist/agents/sandbox.d.ts +5 -0
- package/dist/agents/sandbox.d.ts.map +1 -0
- package/dist/agents/streams/index.js +4 -3
- package/dist/agents/streams/index.js.map +1 -1
- package/dist/agents/streams/internal.js +4 -3
- package/dist/agents/streams/internal.js.map +1 -1
- package/dist/agents/validation.d.ts.map +1 -1
- package/dist/auth/index.js +8 -6
- package/dist/auth/index.js.map +1 -1
- package/dist/authorization/index.js +5 -4
- package/dist/authorization/index.js.map +1 -1
- package/dist/blob-storage/types.d.ts +4 -1
- package/dist/blob-storage/types.d.ts.map +1 -1
- package/dist/bootstrap/index.js +50 -46
- package/dist/bootstrap/index.js.map +1 -1
- package/dist/{chunk-17kfctj6.js → chunk-0mza4xb2.js} +2 -2
- package/dist/chunk-2c4j899j.js.map +1 -1
- package/dist/{chunk-g00bfdq6.js → chunk-2cxv584m.js} +12 -56
- package/dist/{chunk-g00bfdq6.js.map → chunk-2cxv584m.js.map} +3 -3
- package/dist/{chunk-e0d1rzef.js → chunk-2h63nrde.js} +380 -97
- package/dist/chunk-2h63nrde.js.map +20 -0
- package/dist/{chunk-rtk71jzp.js → chunk-3bnt2wna.js} +2 -2
- package/dist/{chunk-awbhdqyc.js → chunk-3ghw2t5q.js} +1 -1
- package/dist/{chunk-b19g04jk.js → chunk-3h7ctayx.js} +1 -1
- package/dist/{chunk-wjasrj67.js → chunk-3qpcrcj8.js} +1 -1
- package/dist/{chunk-5hz0fnca.js → chunk-4k53sm9e.js} +6 -2
- package/dist/chunk-4k53sm9e.js.map +12 -0
- package/dist/chunk-4ph94nhd.js +81 -0
- package/dist/chunk-4ph94nhd.js.map +10 -0
- package/dist/chunk-58geavnf.js +29 -0
- package/dist/chunk-58geavnf.js.map +10 -0
- package/dist/{chunk-0y39rgsb.js → chunk-5tetw4hn.js} +1 -1
- package/dist/{chunk-7bs40fe1.js → chunk-69266efg.js} +83 -2
- package/dist/chunk-69266efg.js.map +12 -0
- package/dist/{chunk-g7knyczr.js → chunk-6ma8dvzc.js} +121 -53
- package/dist/chunk-6ma8dvzc.js.map +15 -0
- package/dist/{chunk-skz0hst3.js → chunk-7c2g3sz9.js} +6 -86
- package/dist/{chunk-skz0hst3.js.map → chunk-7c2g3sz9.js.map} +3 -3
- package/dist/{chunk-976rxdpx.js → chunk-7qnvhtcd.js} +93 -17
- package/dist/{chunk-976rxdpx.js.map → chunk-7qnvhtcd.js.map} +7 -6
- package/dist/{chunk-c5rkjrgp.js → chunk-7ytf06d3.js} +1 -1
- package/dist/{chunk-mrp7k0pw.js → chunk-91kcnbf0.js} +9 -14
- package/dist/chunk-91kcnbf0.js.map +10 -0
- package/dist/{chunk-yv79ncbv.js → chunk-96yw3pwd.js} +3 -3
- package/dist/chunk-96yw3pwd.js.map +10 -0
- package/dist/chunk-98cw09sw.js.map +2 -2
- package/dist/{chunk-93csa55g.js → chunk-axndsymr.js} +10 -4
- package/dist/chunk-axndsymr.js.map +11 -0
- package/dist/{chunk-r7fj830t.js → chunk-b768c93y.js} +100 -29
- package/dist/chunk-b768c93y.js.map +36 -0
- package/dist/{chunk-dz5h08xv.js → chunk-bbaa1fet.js} +24 -9
- package/dist/{chunk-dz5h08xv.js.map → chunk-bbaa1fet.js.map} +4 -4
- package/dist/{chunk-7apz6hg4.js → chunk-bet1rb9h.js} +8 -4
- package/dist/chunk-bet1rb9h.js.map +10 -0
- package/dist/{chunk-358caqf5.js → chunk-bfjv1adk.js} +2 -2
- package/dist/{chunk-b0ec55a1.js → chunk-bg2bs62d.js} +5 -5
- package/dist/{chunk-860dwwy0.js → chunk-cd234ba4.js} +22 -12
- package/dist/chunk-cd234ba4.js.map +14 -0
- package/dist/chunk-d62kjtbg.js.map +1 -1
- package/dist/chunk-dmn70ztd.js.map +2 -2
- package/dist/{chunk-28ja2cjs.js → chunk-e1f1sqba.js} +39 -53
- package/dist/{chunk-28ja2cjs.js.map → chunk-e1f1sqba.js.map} +5 -6
- package/dist/{chunk-ap0g1g74.js → chunk-eyjzgav0.js} +39 -4
- package/dist/chunk-eyjzgav0.js.map +12 -0
- package/dist/{chunk-rb1xx120.js → chunk-f06sf7rr.js} +9 -5
- package/dist/chunk-f06sf7rr.js.map +11 -0
- package/dist/{chunk-g6cke204.js → chunk-f85hpqnm.js} +1 -1
- package/dist/{chunk-vsj3mdfj.js → chunk-fc5zfxy1.js} +1 -1
- package/dist/{chunk-38zv5rkr.js → chunk-g2gezsg5.js} +1 -1
- package/dist/{chunk-38zv5rkr.js.map → chunk-g2gezsg5.js.map} +2 -2
- package/dist/{chunk-nmbxcaqx.js → chunk-g50nxqs5.js} +53 -66
- package/dist/chunk-g50nxqs5.js.map +18 -0
- package/dist/{chunk-1824gssz.js → chunk-gswwr35f.js} +4 -4
- package/dist/{chunk-92vk7gta.js → chunk-gzt6v1ja.js} +1 -1
- package/dist/{chunk-aa6z4a19.js → chunk-hgqpcmyr.js} +2 -1
- package/dist/chunk-hgqpcmyr.js.map +12 -0
- package/dist/{chunk-gqh45d2n.js → chunk-hkw8rykk.js} +2 -2
- package/dist/{chunk-f4w3yp4f.js → chunk-hzw7yv5g.js} +104 -21
- package/dist/chunk-hzw7yv5g.js.map +13 -0
- package/dist/{chunk-5c7ga8zz.js → chunk-jjwhy3rs.js} +5 -5
- package/dist/chunk-kept9cdd.js +29 -0
- package/dist/chunk-kept9cdd.js.map +10 -0
- package/dist/{chunk-ftv470j8.js → chunk-m7cx05vp.js} +247 -16
- package/dist/{chunk-ftv470j8.js.map → chunk-m7cx05vp.js.map} +14 -10
- package/dist/{chunk-qyeptdyv.js → chunk-mdnw7nj8.js} +10 -6
- package/dist/chunk-mdnw7nj8.js.map +15 -0
- package/dist/{chunk-5p1v802y.js → chunk-nzsy3xrp.js} +253 -86
- package/dist/chunk-nzsy3xrp.js.map +46 -0
- package/dist/chunk-p1683c0v.js +104 -0
- package/dist/chunk-p1683c0v.js.map +11 -0
- package/dist/chunk-p6r1ex7t.js +93 -0
- package/dist/chunk-p6r1ex7t.js.map +10 -0
- package/dist/{chunk-p5vcsw9c.js → chunk-qm535afa.js} +10 -10
- package/dist/{chunk-p5vcsw9c.js.map → chunk-qm535afa.js.map} +4 -4
- package/dist/chunk-r5zythxp.js +552 -0
- package/dist/chunk-r5zythxp.js.map +17 -0
- package/dist/{chunk-9qsh3p5y.js → chunk-rb143ggb.js} +1 -1
- package/dist/{chunk-653vwrzr.js → chunk-rdghfsss.js} +1 -1
- package/dist/{chunk-t1f4f1ve.js → chunk-sfypc7mk.js} +18 -13
- package/dist/{chunk-t1f4f1ve.js.map → chunk-sfypc7mk.js.map} +3 -3
- package/dist/{chunk-f0rwz2vh.js → chunk-t6f3tdnr.js} +2 -54
- package/dist/chunk-t6f3tdnr.js.map +10 -0
- package/dist/{chunk-bn138h9w.js → chunk-t7dzd1tm.js} +3 -3
- package/dist/{chunk-pr2h4bv4.js → chunk-tg4g4zh0.js} +3 -3
- package/dist/chunk-vpxss818.js +56 -0
- package/dist/chunk-vpxss818.js.map +10 -0
- package/dist/{chunk-ms2tmn1k.js → chunk-vsg0g7h9.js} +53 -57
- package/dist/chunk-vsg0g7h9.js.map +17 -0
- package/dist/{chunk-8vj0rjgs.js → chunk-wjffn5m4.js} +1 -1
- package/dist/{chunk-nt99sxd6.js → chunk-x9tmx3fc.js} +18 -24
- package/dist/chunk-x9tmx3fc.js.map +14 -0
- package/dist/{chunk-agbbygvh.js → chunk-xn686q2e.js} +8 -8
- package/dist/{chunk-g53f0e4j.js → chunk-xnx96gfy.js} +45 -17
- package/dist/{chunk-g53f0e4j.js.map → chunk-xnx96gfy.js.map} +3 -3
- package/dist/{chunk-v2vcg0w6.js → chunk-xtfryrfb.js} +2 -2
- package/dist/chunk-y0v18c2j.js +363 -0
- package/dist/chunk-y0v18c2j.js.map +14 -0
- package/dist/{chunk-72w2pxk7.js → chunk-y1ahv8b7.js} +11 -3
- package/dist/{chunk-72w2pxk7.js.map → chunk-y1ahv8b7.js.map} +3 -3
- package/dist/chunk-y3ev53cq.js +84 -0
- package/dist/chunk-y3ev53cq.js.map +10 -0
- package/dist/{chunk-p6a4npdx.js → chunk-ybhz3j9g.js} +362 -60
- package/dist/chunk-ybhz3j9g.js.map +63 -0
- package/dist/{chunk-z30bv4ga.js → chunk-yxb4c62x.js} +3 -2
- package/dist/{chunk-z30bv4ga.js.map → chunk-yxb4c62x.js.map} +3 -3
- package/dist/chunk-z3y5kg1x.js +14 -0
- package/dist/chunk-z3y5kg1x.js.map +10 -0
- package/dist/connectors/connections/command-context.d.ts +2 -0
- package/dist/connectors/connections/command-context.d.ts.map +1 -1
- package/dist/connectors/connections/contracts.d.ts +1 -1
- package/dist/connectors/connections/contracts.d.ts.map +1 -1
- package/dist/connectors/connections/execution.d.ts +1 -0
- package/dist/connectors/connections/execution.d.ts.map +1 -1
- package/dist/connectors/connections/runs.d.ts +1 -0
- package/dist/connectors/connections/runs.d.ts.map +1 -1
- package/dist/connectors/connections/service.d.ts +2 -0
- package/dist/connectors/connections/service.d.ts.map +1 -1
- package/dist/datasets/validation.d.ts +4 -0
- package/dist/datasets/validation.d.ts.map +1 -1
- package/dist/datasets/write.d.ts.map +1 -1
- package/dist/datasets/write.js +5 -4
- package/dist/datasets/write.js.map +1 -1
- package/dist/error-reporting/capability.d.ts +3 -2
- package/dist/error-reporting/capability.d.ts.map +1 -1
- package/dist/error-reporting/internal.js +5 -4
- package/dist/error-reporting/internal.js.map +1 -1
- package/dist/error-reporting/reports.d.ts +10 -0
- package/dist/error-reporting/reports.d.ts.map +1 -1
- package/dist/error-reporting/types.d.ts +10 -2
- package/dist/error-reporting/types.d.ts.map +1 -1
- package/dist/errors/catalog.d.ts +12 -0
- package/dist/errors/catalog.d.ts.map +1 -1
- package/dist/errors/failure-message.d.ts +8 -0
- package/dist/errors/failure-message.d.ts.map +1 -0
- package/dist/errors/internal.d.ts.map +1 -1
- package/dist/errors/internal.js +3 -2
- package/dist/errors/internal.js.map +1 -1
- package/dist/events/index.js +5 -4
- package/dist/events/index.js.map +1 -1
- package/dist/events/outbox-dispatcher.d.ts +2 -2
- package/dist/events/outbox-dispatcher.d.ts.map +1 -1
- package/dist/execution/agent.js +44 -41
- package/dist/execution/agent.js.map +1 -1
- package/dist/execution/authorization.d.ts.map +1 -1
- package/dist/execution/authorized-object-reader.d.ts +3 -0
- package/dist/execution/authorized-object-reader.d.ts.map +1 -1
- package/dist/execution/kernel-operation.d.ts +4 -0
- package/dist/execution/kernel-operation.d.ts.map +1 -0
- package/dist/execution/primitive.js +44 -41
- package/dist/execution/primitive.js.map +2 -2
- package/dist/execution/request.js +45 -42
- package/dist/execution/request.js.map +2 -2
- package/dist/execution/types.d.ts +6 -0
- package/dist/execution/types.d.ts.map +1 -1
- package/dist/index.d.ts +15 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +68 -59
- package/dist/index.js.map +1 -1
- package/dist/lake-storage/in-memory.d.ts.map +1 -1
- package/dist/lake-storage/index.js +5 -4
- package/dist/lake-storage/index.js.map +1 -1
- package/dist/lake-storage/types.d.ts +2 -0
- package/dist/lake-storage/types.d.ts.map +1 -1
- package/dist/maintenance/ontology-maintenance.d.ts.map +1 -1
- package/dist/maintenance/types.d.ts +1 -1
- package/dist/maintenance/types.d.ts.map +1 -1
- package/dist/materialization/errors.d.ts +1 -1
- package/dist/materialization/errors.d.ts.map +1 -1
- package/dist/materialization/index.d.ts +1 -0
- package/dist/materialization/index.d.ts.map +1 -1
- package/dist/materialization/index.js +3 -3
- package/dist/materialization/model.d.ts +2 -0
- package/dist/materialization/model.d.ts.map +1 -1
- package/dist/materialization/vectors.d.ts +19 -0
- package/dist/materialization/vectors.d.ts.map +1 -0
- package/dist/materializer/context.d.ts.map +1 -1
- package/dist/materializer/edits/commit.d.ts.map +1 -1
- package/dist/materializer/edits/vector-authority.d.ts +6 -0
- package/dist/materializer/edits/vector-authority.d.ts.map +1 -0
- package/dist/materializer/edits/vectors.d.ts +6 -0
- package/dist/materializer/edits/vectors.d.ts.map +1 -0
- package/dist/materializer/effective/validate.d.ts.map +1 -1
- package/dist/materializer/effective/vector-indexing.d.ts +7 -0
- package/dist/materializer/effective/vector-indexing.d.ts.map +1 -0
- package/dist/materializer/effective/vectors.d.ts +6 -0
- package/dist/materializer/effective/vectors.d.ts.map +1 -0
- package/dist/materializer/execution/work-executor.d.ts +2 -1
- package/dist/materializer/execution/work-executor.d.ts.map +1 -1
- package/dist/materializer/index.js +26 -25
- package/dist/materializer/index.js.map +1 -1
- package/dist/materializer/shared/normalize.d.ts.map +1 -1
- package/dist/models/catalog-index.d.ts +15 -0
- package/dist/models/catalog-index.d.ts.map +1 -0
- package/dist/models/catalog.d.ts +27 -6
- package/dist/models/catalog.d.ts.map +1 -1
- package/dist/models/decision/catalog.d.ts +12 -0
- package/dist/models/decision/catalog.d.ts.map +1 -0
- package/dist/models/decision/errors.d.ts +7 -0
- package/dist/models/decision/errors.d.ts.map +1 -0
- package/dist/models/decision/output.d.ts +50 -0
- package/dist/models/decision/output.d.ts.map +1 -0
- package/dist/models/decision/questions.d.ts +14 -0
- package/dist/models/decision/questions.d.ts.map +1 -0
- package/dist/models/decision/runtime.d.ts +7 -0
- package/dist/models/decision/runtime.d.ts.map +1 -0
- package/dist/models/decision/types.d.ts +92 -0
- package/dist/models/decision/types.d.ts.map +1 -0
- package/dist/models/decision/validation.d.ts +7 -0
- package/dist/models/decision/validation.d.ts.map +1 -0
- package/dist/models/definitions.d.ts +8 -1
- package/dist/models/definitions.d.ts.map +1 -1
- package/dist/models/embedding-model.d.ts +60 -0
- package/dist/models/embedding-model.d.ts.map +1 -0
- package/dist/models/execution/binding.d.ts +2 -0
- package/dist/models/execution/binding.d.ts.map +1 -1
- package/dist/models/execution/embedding.d.ts +5 -0
- package/dist/models/execution/embedding.d.ts.map +1 -0
- package/dist/models/execution/index.js +29 -26
- package/dist/models/execution/index.js.map +1 -1
- package/dist/models/execution/model-call-recorder.d.ts +5 -1
- package/dist/models/execution/model-call-recorder.d.ts.map +1 -1
- package/dist/models/execution/session.d.ts +21 -0
- package/dist/models/execution/session.d.ts.map +1 -0
- package/dist/models/execution.d.ts.map +1 -1
- package/dist/models/generation-types.d.ts +2 -0
- package/dist/models/generation-types.d.ts.map +1 -1
- package/dist/models/index.d.ts +9 -1
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/index.js +17 -7
- package/dist/models/index.js.map +1 -1
- package/dist/models/pricing.d.ts +3 -2
- package/dist/models/pricing.d.ts.map +1 -1
- package/dist/objects/authorized-ontology-view.d.ts.map +1 -1
- package/dist/objects/execution.d.ts +1 -0
- package/dist/objects/execution.d.ts.map +1 -1
- package/dist/objects/index.js +29 -28
- package/dist/objects/index.js.map +1 -1
- package/dist/objects/query/executor.d.ts +3 -0
- package/dist/objects/query/executor.d.ts.map +1 -1
- package/dist/objects/query/index.d.ts +2 -0
- package/dist/objects/query/index.d.ts.map +1 -1
- package/dist/objects/query/index.js +34 -24
- package/dist/objects/query/index.js.map +1 -1
- package/dist/objects/query/ir.d.ts +6 -2
- package/dist/objects/query/ir.d.ts.map +1 -1
- package/dist/objects/query/normalize.d.ts.map +1 -1
- package/dist/objects/query/validate.d.ts.map +1 -1
- package/dist/objects/sdk/object-handle.d.ts +5 -0
- 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/query-executor.d.ts +2 -0
- package/dist/objects/sdk/query-executor.d.ts.map +1 -1
- package/dist/objects/sdk/runtime-query-executor.d.ts.map +1 -1
- package/dist/objects/vectors/handle.d.ts +4 -0
- package/dist/objects/vectors/handle.d.ts.map +1 -0
- package/dist/objects/vectors/indexing-batch.d.ts +6 -0
- package/dist/objects/vectors/indexing-batch.d.ts.map +1 -0
- package/dist/objects/vectors/indexing-generate.d.ts +11 -0
- package/dist/objects/vectors/indexing-generate.d.ts.map +1 -0
- package/dist/objects/vectors/indexing-runtime.d.ts +7 -0
- package/dist/objects/vectors/indexing-runtime.d.ts.map +1 -0
- package/dist/objects/vectors/indexing-shared.d.ts +17 -0
- package/dist/objects/vectors/indexing-shared.d.ts.map +1 -0
- package/dist/objects/vectors/indexing-single.d.ts +4 -0
- package/dist/objects/vectors/indexing-single.d.ts.map +1 -0
- package/dist/objects/vectors/indexing-store-batch.d.ts +6 -0
- package/dist/objects/vectors/indexing-store-batch.d.ts.map +1 -0
- package/dist/objects/vectors/indexing.d.ts +7 -0
- package/dist/objects/vectors/indexing.d.ts.map +1 -0
- package/dist/objects/vectors/profile.d.ts +13 -0
- package/dist/objects/vectors/profile.d.ts.map +1 -0
- package/dist/objects/vectors/query.d.ts +5 -0
- package/dist/objects/vectors/query.d.ts.map +1 -0
- package/dist/objects/vectors/resolve-query.d.ts +6 -0
- package/dist/objects/vectors/resolve-query.d.ts.map +1 -0
- package/dist/objects/vectors/types.d.ts +11 -0
- package/dist/objects/vectors/types.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 +5 -5
- package/dist/ontology/index.js.map +1 -1
- package/dist/ontology/internal.js +5 -4
- package/dist/ontology/internal.js.map +1 -1
- package/dist/ontology/registry.d.ts.map +1 -1
- package/dist/ontology/types.d.ts +8 -9
- package/dist/ontology/types.d.ts.map +1 -1
- package/dist/ontology/validation/definition.d.ts +3 -0
- package/dist/ontology/validation/definition.d.ts.map +1 -0
- package/dist/ontology/validation/properties.d.ts.map +1 -1
- package/dist/ontology/validation/query.d.ts.map +1 -1
- package/dist/ontology/validation/schema.d.ts +1 -1
- package/dist/ontology/validation/schema.d.ts.map +1 -1
- package/dist/ontology/vector-profiles.d.ts +4 -0
- package/dist/ontology/vector-profiles.d.ts.map +1 -0
- package/dist/pipelines/index.js +28 -27
- package/dist/pipelines/index.js.map +1 -1
- package/dist/projections/internal.js +24 -23
- package/dist/projections/internal.js.map +1 -1
- package/dist/query.js +2 -2
- package/dist/queues/in-memory.d.ts +2 -1
- package/dist/queues/in-memory.d.ts.map +1 -1
- package/dist/queues/index.d.ts +1 -1
- package/dist/queues/index.d.ts.map +1 -1
- package/dist/queues/index.js +1 -1
- package/dist/queues/types.d.ts +5 -0
- package/dist/queues/types.d.ts.map +1 -1
- package/dist/runtime/create.d.ts +4 -3
- package/dist/runtime/create.d.ts.map +1 -1
- package/dist/runtime/host.d.ts +9 -6
- package/dist/runtime/host.d.ts.map +1 -1
- package/dist/runtime/internal.d.ts +3 -0
- package/dist/runtime/internal.d.ts.map +1 -1
- package/dist/runtime/internal.js +47 -1
- package/dist/runtime/internal.js.map +1 -1
- package/dist/runtime/resolve-definitions.d.ts.map +1 -1
- package/dist/runtime/sixb.d.ts +9 -4
- package/dist/runtime/sixb.d.ts.map +1 -1
- package/dist/runtime/types.d.ts +15 -3
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/sandboxes/auth.d.ts +16 -0
- package/dist/sandboxes/auth.d.ts.map +1 -0
- package/dist/sandboxes/config.d.ts +5 -0
- package/dist/sandboxes/config.d.ts.map +1 -0
- package/dist/sandboxes/configuration.d.ts +41 -0
- package/dist/sandboxes/configuration.d.ts.map +1 -0
- package/dist/sandboxes/environment.d.ts +13 -0
- package/dist/sandboxes/environment.d.ts.map +1 -0
- package/dist/sandboxes/errors.d.ts +1 -1
- package/dist/sandboxes/errors.d.ts.map +1 -1
- package/dist/sandboxes/index.d.ts +6 -1
- package/dist/sandboxes/index.d.ts.map +1 -1
- package/dist/sandboxes/index.js +16 -3
- package/dist/sandboxes/index.js.map +1 -1
- package/dist/sandboxes/sandbox.d.ts +35 -3
- package/dist/sandboxes/sandbox.d.ts.map +1 -1
- package/dist/shared/params/builders.d.ts +25 -0
- package/dist/shared/params/builders.d.ts.map +1 -0
- package/dist/shared/params/types.d.ts +47 -0
- package/dist/shared/params/types.d.ts.map +1 -0
- package/dist/shared/params/validation.d.ts +15 -0
- package/dist/shared/params/validation.d.ts.map +1 -0
- package/dist/shares/internal.js +23 -22
- package/dist/shares/internal.js.map +2 -2
- package/dist/storage/action-runs/failure.js +4 -3
- package/dist/storage/action-runs/failure.js.map +1 -1
- package/dist/storage/action-runs/provider.js +1 -1
- package/dist/storage/agents/in-memory.d.ts +2 -1
- 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 +5 -1
- package/dist/storage/agents/provider.d.ts.map +1 -1
- package/dist/storage/agents/provider.js +8 -4
- package/dist/storage/agents/provider.js.map +1 -1
- package/dist/storage/agents/types.d.ts +49 -0
- package/dist/storage/agents/types.d.ts.map +1 -1
- package/dist/storage/ai-cost/analytics.d.ts +1 -0
- package/dist/storage/ai-cost/analytics.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.js +2 -2
- package/dist/storage/ai-cost/types.d.ts +14 -2
- package/dist/storage/ai-cost/types.d.ts.map +1 -1
- package/dist/storage/ai-limits/enforcement.js +4 -3
- package/dist/storage/ai-limits/enforcement.js.map +1 -1
- package/dist/storage/connector-connections/in-memory.d.ts +1 -0
- package/dist/storage/connector-connections/in-memory.d.ts.map +1 -1
- package/dist/storage/connector-connections/provider/connections.d.ts.map +1 -1
- package/dist/storage/connector-connections/provider/runs.d.ts +1 -0
- package/dist/storage/connector-connections/provider/runs.d.ts.map +1 -1
- package/dist/storage/connector-connections/provider/shared.d.ts +1 -0
- package/dist/storage/connector-connections/provider/shared.d.ts.map +1 -1
- package/dist/storage/connector-connections/provider.d.ts +1 -0
- package/dist/storage/connector-connections/provider.d.ts.map +1 -1
- package/dist/storage/connector-connections/provider.js +12 -17
- package/dist/storage/connector-connections/provider.js.map +6 -6
- package/dist/storage/connector-connections/types.d.ts +3 -1
- package/dist/storage/connector-connections/types.d.ts.map +1 -1
- package/dist/storage/executions/provider.d.ts +3 -3
- package/dist/storage/executions/provider.d.ts.map +1 -1
- package/dist/storage/executions/provider.js +13 -11
- package/dist/storage/executions/provider.js.map +3 -3
- package/dist/storage/executions/types.d.ts +3 -0
- package/dist/storage/executions/types.d.ts.map +1 -1
- package/dist/storage/executions/validation.d.ts.map +1 -1
- package/dist/storage/index.d.ts +5 -3
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +25 -22
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/internal.js +2 -2
- package/dist/storage/objects/in-memory/query.d.ts.map +1 -1
- package/dist/storage/objects/in-memory/read-source.d.ts +5 -0
- package/dist/storage/objects/in-memory/read-source.d.ts.map +1 -1
- package/dist/storage/objects/in-memory/selected-reader.d.ts.map +1 -1
- package/dist/storage/objects/in-memory/storage.d.ts +7 -0
- package/dist/storage/objects/in-memory/storage.d.ts.map +1 -1
- package/dist/storage/objects/types.d.ts +2 -0
- package/dist/storage/objects/types.d.ts.map +1 -1
- package/dist/storage/ontology/commits.d.ts +1 -0
- package/dist/storage/ontology/commits.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/index.d.ts +4 -0
- package/dist/storage/ontology/in-memory/index.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/materializations.d.ts +2 -0
- package/dist/storage/ontology/in-memory/materializations.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/shared-state.d.ts +7 -0
- package/dist/storage/ontology/in-memory/shared-state.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/vector-indexing.d.ts +44 -0
- package/dist/storage/ontology/in-memory/vector-indexing.d.ts.map +1 -0
- package/dist/storage/ontology/in-memory/vectors.d.ts +31 -0
- package/dist/storage/ontology/in-memory/vectors.d.ts.map +1 -0
- package/dist/storage/ontology/index.d.ts +6 -0
- package/dist/storage/ontology/index.d.ts.map +1 -1
- package/dist/storage/ontology/outbox.d.ts +1 -0
- package/dist/storage/ontology/outbox.d.ts.map +1 -1
- package/dist/storage/ontology/provider.js +2 -2
- package/dist/storage/ontology/vector-indexing.d.ts +94 -0
- package/dist/storage/ontology/vector-indexing.d.ts.map +1 -0
- package/dist/storage/ontology/vectors.d.ts +56 -0
- package/dist/storage/ontology/vectors.d.ts.map +1 -0
- package/dist/storage/operation-scope.d.ts.map +1 -1
- package/dist/storage/operation-scope.js +1 -1
- package/dist/storage/projection-runs/provider.js +4 -3
- package/dist/storage/projection-runs/provider.js.map +1 -1
- package/dist/storage/types.d.ts +1 -1
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/workflow-runs/provider.js +9 -7
- package/dist/storage/workflow-runs/provider.js.map +1 -1
- package/dist/syncs/index.js +29 -28
- package/dist/syncs/index.js.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/index.js +488 -81
- package/dist/testing/index.js.map +10 -10
- package/dist/testing/lake-storage-contract.d.ts.map +1 -1
- package/dist/testing/object-query-contract.d.ts.map +1 -1
- package/dist/testing/object-read-scope-contract.d.ts.map +1 -1
- package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
- package/dist/testing/queues-contract.d.ts.map +1 -1
- package/dist/webhooks/internal.js +24 -23
- package/dist/webhooks/internal.js.map +2 -2
- package/dist/workers/index.js +3 -2
- package/dist/workers/index.js.map +2 -2
- package/dist/workflows/failure.d.ts.map +1 -1
- package/dist/workflows/index.js +47 -43
- package/dist/workflows/index.js.map +1 -1
- package/package.json +1 -1
- package/src/actions/builders/params.ts +1 -48
- package/src/actions/types/params.ts +14 -74
- package/src/actions/validation.ts +7 -84
- package/src/agents/errors.ts +3 -0
- package/src/agents/execution.ts +67 -15
- package/src/agents/ids.ts +8 -0
- package/src/agents/index.ts +1 -0
- package/src/agents/model-loop.ts +7 -0
- package/src/agents/request.ts +11 -0
- package/src/agents/sandbox.ts +44 -0
- package/src/agents/validation.ts +2 -108
- package/src/blob-storage/types.ts +4 -1
- package/src/connectors/connections/command-context.ts +21 -4
- package/src/connectors/connections/contracts.ts +4 -1
- package/src/connectors/connections/execution.ts +3 -0
- package/src/connectors/connections/runs.ts +38 -1
- package/src/connectors/connections/service.ts +6 -0
- package/src/datasets/validation.ts +40 -11
- package/src/datasets/write.ts +8 -11
- package/src/error-reporting/capability.ts +11 -0
- package/src/error-reporting/reports.ts +23 -0
- package/src/error-reporting/types.ts +12 -1
- package/src/errors/catalog.ts +12 -0
- package/src/errors/failure-message.ts +15 -0
- package/src/errors/internal.ts +57 -25
- package/src/events/outbox-dispatcher.ts +20 -26
- package/src/execution/authorization.ts +12 -5
- package/src/execution/authorized-object-reader.ts +37 -2
- package/src/execution/kernel-operation.ts +27 -0
- package/src/execution/scopes.ts +2 -0
- package/src/execution/types.ts +4 -4
- package/src/index.ts +60 -1
- package/src/lake-storage/in-memory.ts +7 -3
- package/src/lake-storage/types.ts +2 -0
- package/src/maintenance/ontology-maintenance.ts +6 -2
- package/src/maintenance/types.ts +1 -1
- package/src/materialization/errors.ts +2 -2
- package/src/materialization/index.ts +1 -0
- package/src/materialization/model.ts +2 -0
- package/src/materialization/vectors.ts +18 -0
- package/src/materializer/README.md +15 -1
- package/src/materializer/context.ts +10 -0
- package/src/materializer/edits/commit.ts +8 -1
- package/src/materializer/edits/vector-authority.ts +108 -0
- package/src/materializer/edits/vectors.ts +100 -0
- package/src/materializer/effective/validate.ts +10 -3
- package/src/materializer/effective/vector-indexing.ts +84 -0
- package/src/materializer/effective/vectors.ts +47 -0
- package/src/materializer/execution/work-executor.ts +11 -3
- package/src/materializer/projections/replace.ts +1 -1
- package/src/materializer/shared/normalize.ts +11 -0
- package/src/materializer/telemetry/append.ts +1 -1
- package/src/models/catalog-index.ts +38 -0
- package/src/models/catalog.ts +66 -38
- package/src/models/decision/catalog.ts +32 -0
- package/src/models/decision/errors.ts +18 -0
- package/src/models/decision/output.ts +101 -0
- package/src/models/decision/questions.ts +29 -0
- package/src/models/decision/runtime.ts +188 -0
- package/src/models/decision/types.ts +109 -0
- package/src/models/decision/validation.ts +335 -0
- package/src/models/definitions.ts +20 -1
- package/src/models/embedding-model.ts +129 -0
- package/src/models/execution/README.md +63 -0
- package/src/models/execution/binding.ts +2 -0
- package/src/models/execution/embedding.ts +133 -0
- package/src/models/execution/model-call-recorder.ts +42 -30
- package/src/models/execution/session.ts +81 -0
- package/src/models/execution.ts +10 -52
- package/src/models/generation-types.ts +2 -0
- package/src/models/index.ts +37 -0
- package/src/models/pricing.ts +7 -4
- package/src/objects/authorized-ontology-view.ts +12 -8
- package/src/objects/execution.ts +2 -0
- package/src/objects/query/executor.ts +13 -4
- package/src/objects/query/explain.ts +7 -2
- package/src/objects/query/index.ts +2 -0
- package/src/objects/query/ir.ts +6 -2
- package/src/objects/query/normalize.ts +5 -1
- package/src/objects/query/validate.ts +74 -73
- package/src/objects/sdk/object-handle.ts +3 -0
- package/src/objects/sdk/object-set.ts +1 -0
- package/src/objects/sdk/query-builder.ts +9 -3
- package/src/objects/sdk/query-executor.ts +2 -1
- package/src/objects/sdk/runtime-query-executor.ts +6 -2
- package/src/objects/vectors/README.md +59 -0
- package/src/objects/vectors/handle.ts +91 -0
- package/src/objects/vectors/indexing-batch.ts +163 -0
- package/src/objects/vectors/indexing-generate.ts +184 -0
- package/src/objects/vectors/indexing-runtime.ts +17 -0
- package/src/objects/vectors/indexing-shared.ts +188 -0
- package/src/objects/vectors/indexing-single.ts +51 -0
- package/src/objects/vectors/indexing-store-batch.ts +62 -0
- package/src/objects/vectors/indexing.ts +23 -0
- package/src/objects/vectors/profile.ts +64 -0
- package/src/objects/vectors/query.ts +16 -0
- package/src/objects/vectors/resolve-query.ts +89 -0
- package/src/objects/vectors/types.ts +10 -0
- package/src/ontology/index.ts +2 -0
- package/src/ontology/registry.ts +8 -0
- package/src/ontology/types.ts +9 -9
- package/src/ontology/validation/definition.ts +104 -0
- package/src/ontology/validation/properties.ts +14 -4
- package/src/ontology/validation/query.ts +34 -51
- package/src/ontology/validation/schema.ts +85 -23
- package/src/ontology/vector-profiles.ts +35 -0
- package/src/queues/in-memory.ts +5 -0
- package/src/queues/index.ts +1 -0
- package/src/queues/types.ts +10 -0
- package/src/runtime/create.ts +7 -6
- package/src/runtime/host.ts +42 -6
- package/src/runtime/internal.ts +3 -0
- package/src/runtime/resolve-definitions.ts +19 -1
- package/src/runtime/sixb.ts +27 -9
- package/src/runtime/types.ts +16 -4
- package/src/sandboxes/README.md +41 -0
- package/src/sandboxes/auth.ts +17 -0
- package/src/sandboxes/config.ts +37 -0
- package/src/sandboxes/configuration.ts +268 -0
- package/src/sandboxes/environment.ts +107 -0
- package/src/sandboxes/errors.ts +1 -1
- package/src/sandboxes/index.ts +15 -0
- package/src/sandboxes/sandbox.ts +38 -3
- package/src/shared/params/builders.ts +50 -0
- package/src/shared/params/types.ts +84 -0
- package/src/shared/params/validation.ts +114 -0
- package/src/storage/agents/in-memory.ts +25 -1
- package/src/storage/agents/index.ts +3 -0
- package/src/storage/agents/provider.ts +105 -0
- package/src/storage/agents/types.ts +54 -0
- package/src/storage/ai-cost/analytics.ts +59 -21
- package/src/storage/ai-cost/index.ts +1 -0
- package/src/storage/ai-cost/types.ts +19 -2
- package/src/storage/connector-connections/in-memory.ts +16 -18
- package/src/storage/connector-connections/provider/connections.ts +1 -15
- package/src/storage/connector-connections/provider/runs.ts +6 -0
- package/src/storage/connector-connections/provider/shared.ts +2 -3
- package/src/storage/connector-connections/provider.ts +6 -0
- package/src/storage/connector-connections/types.ts +5 -1
- package/src/storage/executions/provider.ts +24 -12
- package/src/storage/executions/types.ts +1 -0
- package/src/storage/executions/validation.ts +7 -3
- package/src/storage/index.ts +15 -1
- package/src/storage/objects/in-memory/query.ts +25 -11
- package/src/storage/objects/in-memory/read-scope.ts +9 -2
- package/src/storage/objects/in-memory/read-source.ts +5 -0
- package/src/storage/objects/in-memory/selected-reader.ts +5 -1
- package/src/storage/objects/in-memory/storage.ts +19 -1
- package/src/storage/objects/types.ts +2 -0
- package/src/storage/ontology/commits.ts +1 -0
- package/src/storage/ontology/in-memory/index.ts +20 -0
- package/src/storage/ontology/in-memory/materializations.ts +13 -0
- package/src/storage/ontology/in-memory/shared-state.ts +19 -3
- package/src/storage/ontology/in-memory/vector-indexing.ts +179 -0
- package/src/storage/ontology/in-memory/vectors.ts +73 -0
- package/src/storage/ontology/index.ts +14 -0
- package/src/storage/ontology/outbox.ts +1 -0
- package/src/storage/ontology/vector-indexing.ts +98 -0
- package/src/storage/ontology/vectors.ts +48 -0
- package/src/storage/operation-scope.ts +1 -0
- package/src/storage/types.ts +3 -0
- package/src/testing/agent-storage-contract.ts +246 -0
- package/src/testing/ai-cost-storage-contract.ts +134 -0
- package/src/testing/connector-connection-storage-contract.ts +11 -11
- package/src/testing/lake-storage-contract.ts +29 -0
- package/src/testing/object-query-contract.ts +41 -25
- package/src/testing/object-read-scope-contract.ts +1 -5
- package/src/testing/ontology-storage-contract.ts +8 -3
- package/src/testing/queues-contract.ts +31 -0
- package/src/workflows/failure.ts +10 -4
- package/src/workflows/validation.ts +2 -2
- package/dist/chunk-5hz0fnca.js.map +0 -12
- package/dist/chunk-5p1v802y.js.map +0 -44
- package/dist/chunk-7apz6hg4.js.map +0 -10
- package/dist/chunk-7bs40fe1.js.map +0 -12
- package/dist/chunk-860dwwy0.js.map +0 -14
- package/dist/chunk-93csa55g.js.map +0 -11
- package/dist/chunk-aa6z4a19.js.map +0 -12
- package/dist/chunk-ap0g1g74.js.map +0 -11
- package/dist/chunk-e0d1rzef.js.map +0 -15
- package/dist/chunk-f0rwz2vh.js.map +0 -11
- package/dist/chunk-f4w3yp4f.js.map +0 -12
- package/dist/chunk-g7knyczr.js.map +0 -14
- package/dist/chunk-mrp7k0pw.js.map +0 -10
- package/dist/chunk-ms2tmn1k.js.map +0 -17
- package/dist/chunk-nmbxcaqx.js.map +0 -19
- package/dist/chunk-nt99sxd6.js.map +0 -14
- package/dist/chunk-p6a4npdx.js.map +0 -58
- package/dist/chunk-qyeptdyv.js.map +0 -15
- package/dist/chunk-r7fj830t.js.map +0 -36
- package/dist/chunk-rb1xx120.js.map +0 -11
- package/dist/chunk-yv79ncbv.js.map +0 -10
- package/dist/chunk-z3y411fq.js +0 -99
- package/dist/chunk-z3y411fq.js.map +0 -11
- /package/dist/{chunk-17kfctj6.js.map → chunk-0mza4xb2.js.map} +0 -0
- /package/dist/{chunk-rtk71jzp.js.map → chunk-3bnt2wna.js.map} +0 -0
- /package/dist/{chunk-awbhdqyc.js.map → chunk-3ghw2t5q.js.map} +0 -0
- /package/dist/{chunk-b19g04jk.js.map → chunk-3h7ctayx.js.map} +0 -0
- /package/dist/{chunk-wjasrj67.js.map → chunk-3qpcrcj8.js.map} +0 -0
- /package/dist/{chunk-0y39rgsb.js.map → chunk-5tetw4hn.js.map} +0 -0
- /package/dist/{chunk-c5rkjrgp.js.map → chunk-7ytf06d3.js.map} +0 -0
- /package/dist/{chunk-358caqf5.js.map → chunk-bfjv1adk.js.map} +0 -0
- /package/dist/{chunk-b0ec55a1.js.map → chunk-bg2bs62d.js.map} +0 -0
- /package/dist/{chunk-g6cke204.js.map → chunk-f85hpqnm.js.map} +0 -0
- /package/dist/{chunk-vsj3mdfj.js.map → chunk-fc5zfxy1.js.map} +0 -0
- /package/dist/{chunk-1824gssz.js.map → chunk-gswwr35f.js.map} +0 -0
- /package/dist/{chunk-92vk7gta.js.map → chunk-gzt6v1ja.js.map} +0 -0
- /package/dist/{chunk-gqh45d2n.js.map → chunk-hkw8rykk.js.map} +0 -0
- /package/dist/{chunk-5c7ga8zz.js.map → chunk-jjwhy3rs.js.map} +0 -0
- /package/dist/{chunk-9qsh3p5y.js.map → chunk-rb143ggb.js.map} +0 -0
- /package/dist/{chunk-653vwrzr.js.map → chunk-rdghfsss.js.map} +0 -0
- /package/dist/{chunk-bn138h9w.js.map → chunk-t7dzd1tm.js.map} +0 -0
- /package/dist/{chunk-pr2h4bv4.js.map → chunk-tg4g4zh0.js.map} +0 -0
- /package/dist/{chunk-8vj0rjgs.js.map → chunk-wjffn5m4.js.map} +0 -0
- /package/dist/{chunk-agbbygvh.js.map → chunk-xn686q2e.js.map} +0 -0
- /package/dist/{chunk-v2vcg0w6.js.map → chunk-xtfryrfb.js.map} +0 -0
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { SchemaOrRef, ValueType } from "../ontology"
|
|
1
|
+
import type { ValueType } from "../ontology"
|
|
3
2
|
import { OntologyValidationError } from "../ontology/errors"
|
|
4
|
-
import { validateSchemaOrRefValue } from "../ontology/refs"
|
|
5
3
|
import type { ObjectTypeWithPropertyTokens } from "../ontology/tokens"
|
|
6
|
-
import
|
|
7
|
-
import { coerceSchemaValueToTyped, normalizeSchemaValue } from "../ontology/validation"
|
|
4
|
+
import { coerceParamsToTyped, normalizeParams } from "../shared/params/validation"
|
|
8
5
|
import type { ActionRunParams } from "../storage/action-runs"
|
|
9
6
|
import { ActionDefinitionError } from "./errors"
|
|
10
7
|
import type {
|
|
@@ -55,53 +52,10 @@ export function normalizeActionParams(
|
|
|
55
52
|
params: Record<string, unknown>,
|
|
56
53
|
pathPrefix: string
|
|
57
54
|
): ActionRunParams {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
if (!knownParamIds.has(paramId)) {
|
|
63
|
-
throw new OntologyValidationError(`Unknown param '${paramId}' for action '${pathPrefix}'`)
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
for (const [paramId, paramDef] of Object.entries(paramsConfig)) {
|
|
68
|
-
const value = params[paramId]
|
|
69
|
-
|
|
70
|
-
if (value === undefined) {
|
|
71
|
-
if (paramDef.required) {
|
|
72
|
-
throw new OntologyValidationError(
|
|
73
|
-
`Missing required param '${paramId}' for action '${pathPrefix}'`
|
|
74
|
-
)
|
|
75
|
-
}
|
|
76
|
-
continue
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
if (value === null) {
|
|
80
|
-
if (!paramDef.nullable) {
|
|
81
|
-
throw new OntologyValidationError(
|
|
82
|
-
`[Sixb] Action param ${pathPrefix}.${paramId} cannot be null`
|
|
83
|
-
)
|
|
84
|
-
}
|
|
85
|
-
normalized[paramId] = null
|
|
86
|
-
continue
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
validateSchemaOrRefValue(
|
|
90
|
-
paramDef.schema,
|
|
91
|
-
value,
|
|
92
|
-
`${pathPrefix}.${paramId}`,
|
|
93
|
-
runtime.ontology.getValueTypesById()
|
|
94
|
-
)
|
|
95
|
-
|
|
96
|
-
normalized[paramId] = normalizeSchemaOrRefValue(
|
|
97
|
-
paramDef.schema,
|
|
98
|
-
value,
|
|
99
|
-
`${pathPrefix}.${paramId}`,
|
|
100
|
-
runtime.ontology.getValueTypesById()
|
|
101
|
-
)
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
return normalized
|
|
55
|
+
return normalizeParams(runtime.ontology.getValueTypesById(), paramsConfig, params, {
|
|
56
|
+
kind: "action",
|
|
57
|
+
id: pathPrefix,
|
|
58
|
+
})
|
|
105
59
|
}
|
|
106
60
|
|
|
107
61
|
/**
|
|
@@ -115,21 +69,7 @@ export function coerceActionParamsToTyped(
|
|
|
115
69
|
params: Record<string, unknown>,
|
|
116
70
|
valueTypesById: ReadonlyMap<string, ValueType>
|
|
117
71
|
): Record<string, unknown> {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
for (const [paramId, paramDef] of Object.entries(paramsConfig)) {
|
|
121
|
-
const value = params[paramId]
|
|
122
|
-
if (value === undefined) continue
|
|
123
|
-
|
|
124
|
-
const schema = paramDef.schema
|
|
125
|
-
if (typeof schema === "object" && schema !== null && schema.type === "objectRef") {
|
|
126
|
-
continue
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
coerced[paramId] = coerceSchemaValueToTyped(schema as Schema, value, valueTypesById)
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
return coerced
|
|
72
|
+
return coerceParamsToTyped(paramsConfig, params, valueTypesById)
|
|
133
73
|
}
|
|
134
74
|
|
|
135
75
|
export function validateActionSubject(action: ActionDefinition, subject: ActionSubject): void {
|
|
@@ -168,20 +108,3 @@ function actionAppliesToObjectType(
|
|
|
168
108
|
.listForType(objectType)
|
|
169
109
|
.some((candidate) => candidate.id === action.id)
|
|
170
110
|
}
|
|
171
|
-
|
|
172
|
-
function normalizeSchemaOrRefValue(
|
|
173
|
-
schema: SchemaOrRef,
|
|
174
|
-
value: unknown,
|
|
175
|
-
path: string,
|
|
176
|
-
valueTypesById: ReadonlyMap<string, ValueType>
|
|
177
|
-
): JsonValue {
|
|
178
|
-
if (typeof schema === "object" && schema !== null && schema.type === "objectRef") {
|
|
179
|
-
const refValue = value as { objectTypeId: string; primaryId: string }
|
|
180
|
-
return {
|
|
181
|
-
objectTypeId: refValue.objectTypeId,
|
|
182
|
-
primaryId: refValue.primaryId,
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
return normalizeSchemaValue(schema as Schema, value, path, valueTypesById)
|
|
187
|
-
}
|
package/src/agents/errors.ts
CHANGED
|
@@ -40,6 +40,9 @@ export type AgentRequestErrorCode =
|
|
|
40
40
|
| "authority_not_inheritable"
|
|
41
41
|
| "invalid_context"
|
|
42
42
|
| "storage_unavailable"
|
|
43
|
+
| "sandbox_not_configured"
|
|
44
|
+
| "invalid_sandbox_params"
|
|
45
|
+
| "sandbox_execution_unavailable"
|
|
43
46
|
|
|
44
47
|
/**
|
|
45
48
|
* Raised by {@link requestAgentRun} (the trigger). Callers branch on `code` rather than message text
|
package/src/agents/execution.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { resolveRuntimeAuthorizationForProject } from "../execution/authorizatio
|
|
|
5
5
|
import type { ModelCatalog } from "../models"
|
|
6
6
|
import { resolveExecutionCosts } from "../runtime/ai-cost"
|
|
7
7
|
import { resolveExecutionUsage } from "../runtime/ai-usage"
|
|
8
|
+
import type { SixbDependencies } from "../runtime/sixb"
|
|
8
9
|
import type { SixbRuntimeContext } from "../runtime/types"
|
|
9
10
|
import type {
|
|
10
11
|
AgentThreadRecord,
|
|
@@ -17,7 +18,7 @@ import type {
|
|
|
17
18
|
import type { AiCostSummary } from "../storage/ai-cost"
|
|
18
19
|
import type { AiModelCallUsage } from "../storage/ai-usage"
|
|
19
20
|
import { AgentRequestError } from "./errors"
|
|
20
|
-
import { createAgentThreadId } from "./ids"
|
|
21
|
+
import { createAgentThreadId, createAgentThreadSandboxName } from "./ids"
|
|
21
22
|
import {
|
|
22
23
|
type RequestAgentRunInput,
|
|
23
24
|
type RequestAgentRunResult,
|
|
@@ -25,24 +26,41 @@ import {
|
|
|
25
26
|
retryAgentRun,
|
|
26
27
|
} from "./request"
|
|
27
28
|
import { assertNoAgentSelector } from "./retired-config"
|
|
29
|
+
import { normalizeSandboxBinding } from "./sandbox"
|
|
28
30
|
import type { AgentDescriptor } from "./types"
|
|
29
31
|
|
|
30
32
|
export type ExecutionAgentRequestInput = Omit<RequestAgentRunInput, "principal">
|
|
33
|
+
|
|
34
|
+
/** Execution ownership tokens never leave the storage/worker boundary. */
|
|
35
|
+
function publicThread(thread: AgentThreadRecord): AgentThreadRecord {
|
|
36
|
+
if (!thread.sandboxState) return thread
|
|
37
|
+
const { name, status, initialized } = thread.sandboxState
|
|
38
|
+
return { ...thread, sandboxState: { name, status, initialized } }
|
|
39
|
+
}
|
|
31
40
|
export type ListExecutionAgentThreadsInput = Omit<
|
|
32
41
|
ListAgentThreadsInput,
|
|
33
42
|
"projectId" | "ownerPrincipal"
|
|
34
43
|
>
|
|
35
44
|
|
|
36
|
-
export
|
|
45
|
+
export type CreateExecutionAgentThreadInput<
|
|
46
|
+
TParams extends Record<string, unknown> = Record<string, unknown>,
|
|
47
|
+
> = {
|
|
37
48
|
readonly id?: string
|
|
38
49
|
readonly title?: string
|
|
50
|
+
readonly sandbox?: TParams
|
|
39
51
|
}
|
|
40
52
|
|
|
41
|
-
export
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
53
|
+
export type AgentThreadsRuntime<TParams extends Record<string, unknown> = Record<string, unknown>> =
|
|
54
|
+
{
|
|
55
|
+
/** Start fresh after uncertain recovery; never deletes the previous sandbox. */
|
|
56
|
+
recreateSandbox(
|
|
57
|
+
threadId: string,
|
|
58
|
+
input: { readonly expectedSandboxName: string }
|
|
59
|
+
): Promise<AgentThreadRecord>
|
|
60
|
+
create(input: CreateExecutionAgentThreadInput<TParams>): Promise<AgentThreadRecord>
|
|
61
|
+
getById(threadId: string): Promise<AgentThreadRecord | null>
|
|
62
|
+
list(input?: ListExecutionAgentThreadsInput): Promise<ListAgentThreadsResult>
|
|
63
|
+
}
|
|
46
64
|
|
|
47
65
|
export interface AgentRunsRuntime {
|
|
48
66
|
request(input: ExecutionAgentRequestInput): Promise<ExecutionAgentRunResult>
|
|
@@ -71,18 +89,21 @@ export interface ExecutionAgentRunResult extends Omit<RequestAgentRunResult, "ru
|
|
|
71
89
|
readonly run: AgentRunView
|
|
72
90
|
}
|
|
73
91
|
|
|
74
|
-
export
|
|
92
|
+
export type AgentRuntime<TParams extends Record<string, unknown> = Record<string, unknown>> = {
|
|
75
93
|
/** Null when no language models are configured or the caller cannot run the Agent. */
|
|
76
94
|
get(): AgentDescriptor | null
|
|
77
|
-
readonly threads: AgentThreadsRuntime
|
|
95
|
+
readonly threads: AgentThreadsRuntime<TParams>
|
|
78
96
|
readonly runs: AgentRunsRuntime
|
|
79
97
|
}
|
|
80
98
|
|
|
81
|
-
export function createAgentRuntime
|
|
99
|
+
export function createAgentRuntime<
|
|
100
|
+
TParams extends Record<string, unknown> = Record<string, unknown>,
|
|
101
|
+
>(
|
|
82
102
|
runtime: SixbRuntimeContext,
|
|
83
103
|
execution: ExecutionContext,
|
|
84
|
-
models?: ModelCatalog
|
|
85
|
-
|
|
104
|
+
models?: ModelCatalog,
|
|
105
|
+
sandbox?: SixbDependencies["sandbox"]
|
|
106
|
+
): AgentRuntime<TParams> {
|
|
86
107
|
const authority = resolveRuntimeAuthorizationForProject(runtime)
|
|
87
108
|
const principal = authority.type === "principal" ? authority.context.principal : SYSTEM_PRINCIPAL
|
|
88
109
|
const allowed = () => isRuntimeAllowed(runtime, { kind: "agent.run" })
|
|
@@ -97,12 +118,12 @@ export function createAgentRuntime(
|
|
|
97
118
|
if (!thread || !allowed()) return null
|
|
98
119
|
return authority.type === "principal" && !principalsEqual(principal, thread.ownerPrincipal)
|
|
99
120
|
? null
|
|
100
|
-
: thread
|
|
121
|
+
: publicThread(thread)
|
|
101
122
|
}
|
|
102
123
|
|
|
103
124
|
const getAgent = (): AgentDescriptor | null => {
|
|
104
125
|
if (authority.type === "denied" || authority.type === "delegated") return null
|
|
105
|
-
const model = models?.language
|
|
126
|
+
const model = models?.language?.default
|
|
106
127
|
if (!model || !allowed()) return null
|
|
107
128
|
return {
|
|
108
129
|
name: "Sixb",
|
|
@@ -130,6 +151,25 @@ export function createAgentRuntime(
|
|
|
130
151
|
return {
|
|
131
152
|
get: getAgent,
|
|
132
153
|
threads: {
|
|
154
|
+
recreateSandbox: async (threadId, input) => {
|
|
155
|
+
const thread = await getVisibleThreadRecord(threadId)
|
|
156
|
+
if (!thread)
|
|
157
|
+
throw new AgentRequestError("thread_not_found", "[Sixb] Agent thread not found.")
|
|
158
|
+
const storage = runtime.storage.agents
|
|
159
|
+
if (!storage)
|
|
160
|
+
throw new AgentRequestError(
|
|
161
|
+
"storage_unavailable",
|
|
162
|
+
"[Sixb] Agent storage is not configured."
|
|
163
|
+
)
|
|
164
|
+
const sandboxState = await storage.threads.transitionSandbox({
|
|
165
|
+
projectId: runtime.projectId,
|
|
166
|
+
id: threadId,
|
|
167
|
+
action: "recreate",
|
|
168
|
+
expectedSandboxName: input.expectedSandboxName,
|
|
169
|
+
name: createAgentThreadSandboxName(runtime.projectId, threadId),
|
|
170
|
+
})
|
|
171
|
+
return publicThread({ ...thread, sandboxState })
|
|
172
|
+
},
|
|
133
173
|
create: async (input) => {
|
|
134
174
|
assertNoAgentSelector(input)
|
|
135
175
|
const agent = getAgent()
|
|
@@ -143,7 +183,18 @@ export function createAgentRuntime(
|
|
|
143
183
|
"[Sixb] Agent storage is not configured."
|
|
144
184
|
)
|
|
145
185
|
}
|
|
186
|
+
if (input.sandbox !== undefined && !sandbox?.supportsPersistence) {
|
|
187
|
+
throw new AgentRequestError(
|
|
188
|
+
"sandbox_not_configured",
|
|
189
|
+
"[Sixb] Thread sandboxes require a provider with persistence support."
|
|
190
|
+
)
|
|
191
|
+
}
|
|
192
|
+
const binding =
|
|
193
|
+
input.sandbox === undefined
|
|
194
|
+
? undefined
|
|
195
|
+
: normalizeSandboxBinding(sandbox?.definition, input.sandbox, runtime.ontology)
|
|
146
196
|
return storage.threads.create({
|
|
197
|
+
...(binding === undefined ? {} : { sandboxParams: binding }),
|
|
147
198
|
id: input.id ?? createAgentThreadId(),
|
|
148
199
|
projectId: runtime.projectId,
|
|
149
200
|
ownerPrincipal: principal,
|
|
@@ -158,11 +209,12 @@ export function createAgentRuntime(
|
|
|
158
209
|
}
|
|
159
210
|
const storage = runtime.storage.agents
|
|
160
211
|
if (!storage || !allowed()) return { threads: [], hasMore: false, total: 0 }
|
|
161
|
-
|
|
212
|
+
const result = await storage.threads.list({
|
|
162
213
|
...input,
|
|
163
214
|
projectId: runtime.projectId,
|
|
164
215
|
ownerPrincipal: authority.type === "principal" ? principal : undefined,
|
|
165
216
|
})
|
|
217
|
+
return { ...result, threads: result.threads.map(publicThread) }
|
|
166
218
|
},
|
|
167
219
|
},
|
|
168
220
|
runs: {
|
package/src/agents/ids.ts
CHANGED
|
@@ -10,6 +10,14 @@ export function createAgentThreadId(): string {
|
|
|
10
10
|
return `agt_thr_${randomUUID()}`
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
+
/** A fresh provider name, scoped to one project's thread; never a filesystem revision. */
|
|
14
|
+
export function createAgentThreadSandboxName(projectId: string, threadId: string): string {
|
|
15
|
+
const digest = createHash("sha256")
|
|
16
|
+
.update(JSON.stringify([projectId, threadId, randomUUID()]))
|
|
17
|
+
.digest("hex")
|
|
18
|
+
return `sixb-sb-${digest}`
|
|
19
|
+
}
|
|
20
|
+
|
|
13
21
|
export function createAgentRunId(): string {
|
|
14
22
|
return `agt_run_${randomUUID()}`
|
|
15
23
|
}
|
package/src/agents/index.ts
CHANGED
package/src/agents/model-loop.ts
CHANGED
|
@@ -255,6 +255,13 @@ export async function runModelLoop(
|
|
|
255
255
|
}
|
|
256
256
|
|
|
257
257
|
const localCalls = response.toolCalls.filter((call) => call.part.providerExecuted !== true)
|
|
258
|
+
// Closed tool arguments are not proof of a successful response. In particular,
|
|
259
|
+
// providers can close valid JSON before reporting truncation or content filtering.
|
|
260
|
+
if (localCalls.length > 0 && !["stop", "tool-calls", "pause"].includes(response.finishReason)) {
|
|
261
|
+
throw new ModelStreamError(
|
|
262
|
+
`[SixbModels] Cannot execute local tools after '${response.finishReason}'.`
|
|
263
|
+
)
|
|
264
|
+
}
|
|
258
265
|
if (
|
|
259
266
|
input.rejectLocalToolCalls &&
|
|
260
267
|
(localCalls.length > 0 || response.finishReason === "tool-calls")
|
package/src/agents/request.ts
CHANGED
|
@@ -114,6 +114,7 @@ export async function requestAgentRun(
|
|
|
114
114
|
principal,
|
|
115
115
|
})
|
|
116
116
|
|
|
117
|
+
assertSandboxExecutionAvailable(thread)
|
|
117
118
|
// Fast single-flight check for a clear error. `runs.create` below is the atomic authority.
|
|
118
119
|
if (thread.activeRunId !== null) {
|
|
119
120
|
throw new AgentRequestError(
|
|
@@ -203,6 +204,7 @@ export async function retryAgentRun(
|
|
|
203
204
|
`[Sixb] Agent thread '${failedRun.threadId}' was not found.`
|
|
204
205
|
)
|
|
205
206
|
}
|
|
207
|
+
assertSandboxExecutionAvailable(thread)
|
|
206
208
|
const runId = createAgentRunId()
|
|
207
209
|
const durableExecution = await prepareDurableAgentExecution(runtime, execution, runId)
|
|
208
210
|
await assertAiLimitPreflight(runtime, durableExecution)
|
|
@@ -236,6 +238,15 @@ export async function retryAgentRun(
|
|
|
236
238
|
return { run, ...(jobId ? { jobId } : {}), createdThread: false }
|
|
237
239
|
}
|
|
238
240
|
|
|
241
|
+
function assertSandboxExecutionAvailable(thread: AgentThreadRecord): void {
|
|
242
|
+
if (thread.sandboxState && !["new", "ready"].includes(thread.sandboxState.status)) {
|
|
243
|
+
throw new AgentRequestError(
|
|
244
|
+
"sandbox_execution_unavailable",
|
|
245
|
+
"[Sixb] Sandbox recovery is required before another run. Reload the thread and explicitly recreate it to start fresh."
|
|
246
|
+
)
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
|
|
239
250
|
async function assertAiLimitPreflight(
|
|
240
251
|
runtime: SixbRuntimeContext,
|
|
241
252
|
execution: Pick<ExecutionRecord, "requestedBy" | "requesterGroupIds">
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { getInvalidJsonValueReason, isPlainRecord } from "../json"
|
|
2
|
+
import { OntologyValidationError } from "../ontology/errors"
|
|
3
|
+
import type { OntologyRegistry } from "../ontology/registry"
|
|
4
|
+
import type { SandboxDefinition } from "../sandboxes/configuration"
|
|
5
|
+
import { normalizeParams } from "../shared/params/validation"
|
|
6
|
+
import type { AgentThreadSandboxParams } from "../storage/agents/types"
|
|
7
|
+
import { AgentRequestError } from "./errors"
|
|
8
|
+
|
|
9
|
+
export function normalizeSandboxBinding(
|
|
10
|
+
definition: Pick<SandboxDefinition, "params"> | undefined,
|
|
11
|
+
input: unknown,
|
|
12
|
+
ontology: OntologyRegistry
|
|
13
|
+
): AgentThreadSandboxParams {
|
|
14
|
+
if (!definition) {
|
|
15
|
+
throw new AgentRequestError(
|
|
16
|
+
"sandbox_not_configured",
|
|
17
|
+
"[Sixb] This sandbox provider has no compatible thread configuration."
|
|
18
|
+
)
|
|
19
|
+
}
|
|
20
|
+
if (!isPlainRecord(input)) {
|
|
21
|
+
throw new AgentRequestError(
|
|
22
|
+
"invalid_sandbox_params",
|
|
23
|
+
"[Sixb] sandbox must be an object containing the declared parameter values."
|
|
24
|
+
)
|
|
25
|
+
}
|
|
26
|
+
try {
|
|
27
|
+
const params = normalizeParams(ontology.getValueTypesById(), definition.params, input, {
|
|
28
|
+
kind: "sandbox",
|
|
29
|
+
id: "sandboxes",
|
|
30
|
+
path: "sandbox",
|
|
31
|
+
})
|
|
32
|
+
if (getInvalidJsonValueReason(params)) {
|
|
33
|
+
throw new OntologyValidationError("[Sixb] Sandbox params must normalize to JSON values.")
|
|
34
|
+
}
|
|
35
|
+
return params
|
|
36
|
+
} catch (error) {
|
|
37
|
+
throw new AgentRequestError(
|
|
38
|
+
"invalid_sandbox_params",
|
|
39
|
+
error instanceof OntologyValidationError
|
|
40
|
+
? error.message
|
|
41
|
+
: "[Sixb] Sandbox params could not be normalized."
|
|
42
|
+
)
|
|
43
|
+
}
|
|
44
|
+
}
|
package/src/agents/validation.ts
CHANGED
|
@@ -1,23 +1,12 @@
|
|
|
1
1
|
import { getInvalidJsonValueReason, isPlainRecord, type JsonValue } from "../json"
|
|
2
2
|
import { type ObjectSchema, OntologyValidationError, type ValueType } from "../ontology"
|
|
3
|
+
import { assertValidSchema } from "../ontology/validation/definition"
|
|
3
4
|
import { normalizeSchemaValue } from "../ontology/validation/normalize"
|
|
4
5
|
import { validateSchemaValue } from "../ontology/validation/schema"
|
|
5
6
|
import { AgentDefinitionError } from "./errors"
|
|
6
7
|
import type { AgentToolDefinition, AgentToolInputSchema } from "./types"
|
|
7
8
|
|
|
8
9
|
const AGENT_TOOL_NAME_PATTERN = /^[A-Za-z_][A-Za-z0-9_-]{0,63}$/
|
|
9
|
-
const AGENT_TOOL_PRIMITIVE_SCHEMAS = new Set([
|
|
10
|
-
"string",
|
|
11
|
-
"integer",
|
|
12
|
-
"double",
|
|
13
|
-
"decimal",
|
|
14
|
-
"boolean",
|
|
15
|
-
"date",
|
|
16
|
-
"timestamp",
|
|
17
|
-
"uuid",
|
|
18
|
-
"fileRef",
|
|
19
|
-
])
|
|
20
|
-
|
|
21
10
|
export const AGENT_RESERVED_TOOL_NAMES = [
|
|
22
11
|
"bash",
|
|
23
12
|
"read",
|
|
@@ -65,7 +54,7 @@ export function assertValidAgentToolInput(name: string, input: unknown): void {
|
|
|
65
54
|
`[Sixb] Agent tool '${name}' input field names must not be empty.`
|
|
66
55
|
)
|
|
67
56
|
}
|
|
68
|
-
|
|
57
|
+
assertValidSchema(schema, `input.${field}`, (path) => invalidAgentToolSchema(name, path))
|
|
69
58
|
}
|
|
70
59
|
}
|
|
71
60
|
|
|
@@ -115,80 +104,6 @@ export function validateAndNormalizeAgentToolInput(
|
|
|
115
104
|
)
|
|
116
105
|
}
|
|
117
106
|
|
|
118
|
-
function assertValidAgentToolSchema(
|
|
119
|
-
toolName: string,
|
|
120
|
-
schema: unknown,
|
|
121
|
-
path: string,
|
|
122
|
-
visiting: Set<object>
|
|
123
|
-
): void {
|
|
124
|
-
if (typeof schema === "string") {
|
|
125
|
-
if (AGENT_TOOL_PRIMITIVE_SCHEMAS.has(schema)) {
|
|
126
|
-
return
|
|
127
|
-
}
|
|
128
|
-
throw invalidAgentToolSchema(toolName, path)
|
|
129
|
-
}
|
|
130
|
-
if (!isPlainRecord(schema) || typeof schema.type !== "string" || visiting.has(schema)) {
|
|
131
|
-
throw invalidAgentToolSchema(toolName, path)
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
visiting.add(schema)
|
|
135
|
-
switch (schema.type) {
|
|
136
|
-
case "enum": {
|
|
137
|
-
const values = schema.values
|
|
138
|
-
const validValues = isValidAgentToolEnumValues(values, schema.valueType)
|
|
139
|
-
if (!validValues || new Set(values).size !== values.length) {
|
|
140
|
-
throw invalidAgentToolSchema(toolName, path)
|
|
141
|
-
}
|
|
142
|
-
break
|
|
143
|
-
}
|
|
144
|
-
case "array":
|
|
145
|
-
assertValidAgentToolSchema(toolName, schema.items, `${path}.items`, visiting)
|
|
146
|
-
break
|
|
147
|
-
case "map":
|
|
148
|
-
if (schema.keySchema !== "string") {
|
|
149
|
-
throw invalidAgentToolSchema(toolName, path)
|
|
150
|
-
}
|
|
151
|
-
assertValidAgentToolSchema(toolName, schema.valueSchema, `${path}.valueSchema`, visiting)
|
|
152
|
-
break
|
|
153
|
-
case "object": {
|
|
154
|
-
if (!isPlainRecord(schema.properties)) {
|
|
155
|
-
throw invalidAgentToolSchema(toolName, path)
|
|
156
|
-
}
|
|
157
|
-
for (const [fieldId, field] of Object.entries(schema.properties)) {
|
|
158
|
-
if (!fieldId.trim() || !isPlainRecord(field) || !("schema" in field)) {
|
|
159
|
-
throw invalidAgentToolSchema(toolName, `${path}.properties.${fieldId}`)
|
|
160
|
-
}
|
|
161
|
-
if (
|
|
162
|
-
(field.required !== undefined && typeof field.required !== "boolean") ||
|
|
163
|
-
(field.nullable !== undefined && typeof field.nullable !== "boolean") ||
|
|
164
|
-
(field.description !== undefined &&
|
|
165
|
-
(typeof field.description !== "string" || !field.description.trim()))
|
|
166
|
-
) {
|
|
167
|
-
throw invalidAgentToolSchema(toolName, `${path}.properties.${fieldId}`)
|
|
168
|
-
}
|
|
169
|
-
assertValidAgentToolSchema(
|
|
170
|
-
toolName,
|
|
171
|
-
field.schema,
|
|
172
|
-
`${path}.properties.${fieldId}.schema`,
|
|
173
|
-
visiting
|
|
174
|
-
)
|
|
175
|
-
}
|
|
176
|
-
break
|
|
177
|
-
}
|
|
178
|
-
case "valueTypeRef":
|
|
179
|
-
if (typeof schema.valueTypeId !== "string" || !schema.valueTypeId.trim()) {
|
|
180
|
-
throw invalidAgentToolSchema(toolName, path)
|
|
181
|
-
}
|
|
182
|
-
if (schema._resolved !== undefined) {
|
|
183
|
-
assertValidAgentToolSchema(toolName, schema._resolved, `${path}._resolved`, visiting)
|
|
184
|
-
}
|
|
185
|
-
break
|
|
186
|
-
default:
|
|
187
|
-
throw invalidAgentToolSchema(toolName, path)
|
|
188
|
-
}
|
|
189
|
-
visiting.delete(schema)
|
|
190
|
-
}
|
|
191
|
-
|
|
192
107
|
function invalidAgentToolSchema(toolName: string, path: string): AgentDefinitionError {
|
|
193
108
|
return new AgentDefinitionError(
|
|
194
109
|
`[Sixb] Agent tool '${toolName}' ${path} must be a valid Sixb schema.`
|
|
@@ -219,27 +134,6 @@ export function assertValidProjectAgentToolDefinitions(
|
|
|
219
134
|
}
|
|
220
135
|
}
|
|
221
136
|
|
|
222
|
-
function isValidAgentToolEnumValues(values: unknown, valueType: unknown): values is unknown[] {
|
|
223
|
-
if (!Array.isArray(values) || values.length === 0) {
|
|
224
|
-
return false
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
for (let index = 0; index < values.length; index += 1) {
|
|
228
|
-
if (!Object.hasOwn(values, index)) {
|
|
229
|
-
return false
|
|
230
|
-
}
|
|
231
|
-
const value = values[index]
|
|
232
|
-
if (
|
|
233
|
-
valueType === "string"
|
|
234
|
-
? typeof value !== "string"
|
|
235
|
-
: valueType !== "integer" || typeof value !== "number" || !Number.isInteger(value)
|
|
236
|
-
) {
|
|
237
|
-
return false
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
return true
|
|
241
|
-
}
|
|
242
|
-
|
|
243
137
|
function deepFreeze<T>(value: T, seen: Set<object> = new Set()): T {
|
|
244
138
|
if (value === null || typeof value !== "object" || seen.has(value)) {
|
|
245
139
|
return value
|
|
@@ -87,6 +87,8 @@ export interface DirectPutBlobUploadSession {
|
|
|
87
87
|
|
|
88
88
|
export interface MultipartBlobUploadSession {
|
|
89
89
|
readonly strategy: "multipart"
|
|
90
|
+
/** Required upload-response receipt. Omission defaults to "etag" for compatibility. */
|
|
91
|
+
readonly partReceipt?: "etag" | "none"
|
|
90
92
|
readonly uploadId: string
|
|
91
93
|
readonly partSizeBytes: number
|
|
92
94
|
readonly expiresAt: Date
|
|
@@ -114,7 +116,8 @@ export interface SignedBlobUploadPart {
|
|
|
114
116
|
|
|
115
117
|
export interface BlobUploadPart {
|
|
116
118
|
readonly partNumber: number
|
|
117
|
-
|
|
119
|
+
/** Required when the multipart session's partReceipt is "etag" or omitted. */
|
|
120
|
+
readonly etag?: string
|
|
118
121
|
}
|
|
119
122
|
|
|
120
123
|
export interface CompleteBlobUploadInput {
|
|
@@ -50,10 +50,7 @@ export function assertConnectorConnectionRunInitiator(
|
|
|
50
50
|
current: ConnectorConnectionCommandActor,
|
|
51
51
|
connectorId: string
|
|
52
52
|
): asserts execution is ExecutionRecord {
|
|
53
|
-
|
|
54
|
-
? connectorConnectionActorFromExecution(execution, execution.projectId)
|
|
55
|
-
: null
|
|
56
|
-
if (!initiating || !sameConnectorConnectionCommandActor(initiating, current)) {
|
|
53
|
+
if (!isConnectorConnectionRunInitiator(execution, current)) {
|
|
57
54
|
throw new AuthorizationError(
|
|
58
55
|
`connection-run:connector:${connectorId}`,
|
|
59
56
|
"[Sixb] This connector connection run can only be accessed by its initiating actor."
|
|
@@ -61,6 +58,26 @@ export function assertConnectorConnectionRunInitiator(
|
|
|
61
58
|
}
|
|
62
59
|
}
|
|
63
60
|
|
|
61
|
+
/** User-owned runs survive session renewal; access-token runs remain bound to their credential. */
|
|
62
|
+
export function isConnectorConnectionRunInitiator(
|
|
63
|
+
execution: ExecutionRecord | null,
|
|
64
|
+
current: ConnectorConnectionCommandActor
|
|
65
|
+
): boolean {
|
|
66
|
+
const initiating = execution
|
|
67
|
+
? connectorConnectionActorFromExecution(execution, execution.projectId)
|
|
68
|
+
: null
|
|
69
|
+
if (!initiating) return false
|
|
70
|
+
if (
|
|
71
|
+
initiating.principal.type === "user" &&
|
|
72
|
+
current.principal.type === "user" &&
|
|
73
|
+
initiating.credential.type === "session" &&
|
|
74
|
+
current.credential.type === "session"
|
|
75
|
+
) {
|
|
76
|
+
return initiating.principal.id === current.principal.id
|
|
77
|
+
}
|
|
78
|
+
return sameConnectorConnectionCommandActor(initiating, current)
|
|
79
|
+
}
|
|
80
|
+
|
|
64
81
|
function connectorConnectionActorFromExecution(
|
|
65
82
|
execution: CreateExecutionInput | ExecutionRecord,
|
|
66
83
|
projectId: string
|
|
@@ -118,7 +118,6 @@ export type ConnectorConnectionRunView =
|
|
|
118
118
|
readonly status: "waiting"
|
|
119
119
|
readonly waitingFor: "account_selection"
|
|
120
120
|
readonly accounts: readonly ConnectorAccountCandidate[]
|
|
121
|
-
readonly expiresAt: Date
|
|
122
121
|
})
|
|
123
122
|
| (ConnectorConnectionRunViewBase & {
|
|
124
123
|
readonly status: "succeeded"
|
|
@@ -162,6 +161,10 @@ export interface ConnectorConnectionProcess {
|
|
|
162
161
|
connectorId: string,
|
|
163
162
|
input: AddConnectorConnectionInput
|
|
164
163
|
): Promise<ConnectorConnectionRunView>
|
|
164
|
+
listPendingConnectionRuns(
|
|
165
|
+
context: ConnectorConnectionCommandContext,
|
|
166
|
+
connectorId: string
|
|
167
|
+
): Promise<readonly ConnectorConnectionRunView[]>
|
|
165
168
|
getConnectionRun(
|
|
166
169
|
context: ConnectorConnectionCommandContext,
|
|
167
170
|
connectorId: string,
|
|
@@ -31,6 +31,7 @@ export interface ConnectorConnectionsRuntime {
|
|
|
31
31
|
connectorId: string,
|
|
32
32
|
input: AddConnectorConnectionInput
|
|
33
33
|
): Promise<ConnectorConnectionRunView>
|
|
34
|
+
listPendingConnectionRuns(connectorId: string): Promise<readonly ConnectorConnectionRunView[]>
|
|
34
35
|
getConnectionRun(connectorId: string, runId: string): Promise<ConnectorConnectionRunView | null>
|
|
35
36
|
selectConnectionRunAccount(
|
|
36
37
|
connectorId: string,
|
|
@@ -77,6 +78,8 @@ export function createConnectorConnectionsRuntime(
|
|
|
77
78
|
process.startConnectionRun(contextFor(connectorId), connectorId, input),
|
|
78
79
|
addConnection: (connectorId, input) =>
|
|
79
80
|
process.addConnection(contextFor(connectorId), connectorId, input),
|
|
81
|
+
listPendingConnectionRuns: (connectorId) =>
|
|
82
|
+
process.listPendingConnectionRuns(contextFor(connectorId), connectorId),
|
|
80
83
|
getConnectionRun: (connectorId, runId) =>
|
|
81
84
|
process.getConnectionRun(contextFor(connectorId), connectorId, runId),
|
|
82
85
|
selectConnectionRunAccount: (connectorId, input) =>
|