@sixb/core 0.1.7 → 0.1.9
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 +78 -84
- 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/types/context.d.ts +2 -0
- package/dist/actions/types/context.d.ts.map +1 -1
- package/dist/actions/validation.d.ts +1 -1
- package/dist/actions/validation.d.ts.map +1 -1
- package/dist/actions/worker.js +33 -37
- package/dist/actions/worker.js.map +2 -2
- package/dist/agents/adapters.d.ts +8 -125
- package/dist/agents/adapters.d.ts.map +1 -1
- package/dist/agents/authority.d.ts +1 -1
- package/dist/agents/authority.d.ts.map +1 -1
- package/dist/agents/{context.d.ts → context/entries.d.ts} +3 -3
- package/dist/agents/context/entries.d.ts.map +1 -0
- package/dist/agents/context/index.d.ts +4 -0
- package/dist/agents/context/index.d.ts.map +1 -0
- package/dist/agents/context/index.js +19 -0
- package/dist/agents/{streams.js.map → context/index.js.map} +1 -1
- package/dist/agents/context-model.d.ts +1 -1
- package/dist/agents/context-model.d.ts.map +1 -1
- package/dist/agents/context-resolution.d.ts +1 -1
- package/dist/agents/context-resolution.d.ts.map +1 -1
- package/dist/agents/errors.d.ts +0 -9
- package/dist/agents/errors.d.ts.map +1 -1
- package/dist/agents/execution.d.ts.map +1 -1
- package/dist/agents/identity.d.ts +3 -0
- package/dist/agents/identity.d.ts.map +1 -0
- package/dist/agents/index.d.ts +7 -7
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +193 -205
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/message.d.ts +5 -6
- package/dist/agents/message.d.ts.map +1 -1
- package/dist/agents/model-loop.d.ts +4 -0
- package/dist/agents/model-loop.d.ts.map +1 -1
- package/dist/agents/request.d.ts +1 -1
- package/dist/agents/request.d.ts.map +1 -1
- package/dist/agents/streams/index.d.ts +4 -0
- package/dist/agents/streams/index.d.ts.map +1 -0
- package/dist/agents/streams/index.js +20 -0
- package/dist/{chunk-y64skrwp.js.map → agents/streams/index.js.map} +1 -1
- package/dist/agents/streams/internal.d.ts +3 -0
- package/dist/agents/streams/internal.d.ts.map +1 -0
- package/dist/agents/streams/internal.js +40 -0
- package/dist/agents/{context.js.map → streams/internal.js.map} +1 -1
- package/dist/agents/{streams.d.ts → streams/protocol.d.ts} +5 -5
- package/dist/agents/streams/protocol.d.ts.map +1 -0
- package/dist/agents/tool-definition.d.ts +0 -1
- package/dist/agents/tool-definition.d.ts.map +1 -1
- package/dist/agents/types.d.ts +1 -1
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/agents/validation.d.ts +0 -4
- package/dist/agents/validation.d.ts.map +1 -1
- package/dist/ai-usage/execution.d.ts.map +1 -1
- package/dist/auth/index.d.ts +0 -1
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +96 -105
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/strategy.js +8 -9
- package/dist/auth/strategy.js.map +1 -1
- package/dist/authorization/decision.d.ts +10 -2
- package/dist/authorization/decision.d.ts.map +1 -1
- package/dist/authorization/grant-kinds.d.ts +2 -1
- package/dist/authorization/grant-kinds.d.ts.map +1 -1
- package/dist/authorization/index.d.ts +1 -1
- package/dist/authorization/index.d.ts.map +1 -1
- package/dist/authorization/index.js +51 -53
- package/dist/authorization/index.js.map +1 -1
- package/dist/blob-storage/browser.js +15 -17
- package/dist/blob-storage/browser.js.map +1 -1
- package/dist/blob-storage/index.js +36 -38
- package/dist/blob-storage/index.js.map +1 -1
- package/dist/bootstrap/discovery.d.ts +20 -1
- package/dist/bootstrap/discovery.d.ts.map +1 -1
- package/dist/bootstrap/index.d.ts +2 -2
- package/dist/bootstrap/index.d.ts.map +1 -1
- package/dist/bootstrap/index.js +79 -81
- package/dist/bootstrap/index.js.map +1 -1
- package/dist/bootstrap/ontology-type-manifest.d.ts.map +1 -1
- package/dist/broker/index.js +8 -10
- package/dist/broker/index.js.map +1 -1
- package/dist/{chunk-k34z5rvh.js → chunk-0rdrecsb.js} +18 -18
- package/dist/{chunk-k34z5rvh.js.map → chunk-0rdrecsb.js.map} +2 -2
- package/dist/{chunk-3fqt22c4.js → chunk-0w35wavj.js} +360 -168
- package/dist/chunk-0w35wavj.js.map +14 -0
- package/dist/chunk-0y39rgsb.js +43 -0
- package/dist/{chunk-c15dr03f.js.map → chunk-0y39rgsb.js.map} +2 -2
- package/dist/{chunk-hdz94br2.js → chunk-17kfctj6.js} +23 -13
- package/dist/chunk-17kfctj6.js.map +10 -0
- package/dist/{chunk-e4rvtvpw.js → chunk-1enhpacz.js} +418 -233
- package/dist/chunk-1enhpacz.js.map +34 -0
- package/dist/{chunk-5gd7tpv6.js → chunk-2c4j899j.js} +4 -4
- package/dist/{chunk-5gd7tpv6.js.map → chunk-2c4j899j.js.map} +2 -2
- package/dist/{chunk-7ds9620f.js → chunk-38zv5rkr.js} +24 -8
- package/dist/chunk-38zv5rkr.js.map +10 -0
- package/dist/{chunk-w3e09qqk.js → chunk-39tqv9hz.js} +24 -24
- package/dist/{chunk-w3e09qqk.js.map → chunk-39tqv9hz.js.map} +2 -2
- package/dist/{chunk-04b07a9q.js → chunk-3bh94gbw.js} +13 -13
- package/dist/{chunk-04b07a9q.js.map → chunk-3bh94gbw.js.map} +2 -2
- package/dist/{chunk-8m5ejdpn.js → chunk-3f7veca0.js} +4 -4
- package/dist/{chunk-8m5ejdpn.js.map → chunk-3f7veca0.js.map} +2 -2
- package/dist/chunk-3frsnm7x.js +32 -0
- package/dist/chunk-3frsnm7x.js.map +11 -0
- package/dist/{chunk-n2w475r0.js → chunk-3tgwrcyh.js} +81 -81
- package/dist/{chunk-n2w475r0.js.map → chunk-3tgwrcyh.js.map} +2 -2
- package/dist/{chunk-qv38twt8.js → chunk-52hbv0ak.js} +192 -171
- package/dist/{chunk-qv38twt8.js.map → chunk-52hbv0ak.js.map} +6 -6
- package/dist/{chunk-nf4r78r4.js → chunk-5a4a52tq.js} +4 -4
- package/dist/{chunk-nf4r78r4.js.map → chunk-5a4a52tq.js.map} +2 -2
- package/dist/{chunk-rte5sm3z.js → chunk-5hz0fnca.js} +23 -23
- package/dist/{chunk-rte5sm3z.js.map → chunk-5hz0fnca.js.map} +2 -2
- package/dist/chunk-653vwrzr.js +39 -0
- package/dist/chunk-653vwrzr.js.map +10 -0
- package/dist/{chunk-qw9gvjv5.js → chunk-72w2pxk7.js} +13 -13
- package/dist/{chunk-qw9gvjv5.js.map → chunk-72w2pxk7.js.map} +2 -2
- package/dist/chunk-7apz6hg4.js +50 -0
- package/dist/{chunk-jq43kdvk.js.map → chunk-7apz6hg4.js.map} +2 -2
- package/dist/chunk-7bs40fe1.js +218 -0
- package/dist/{chunk-08twe8m6.js.map → chunk-7bs40fe1.js.map} +3 -3
- package/dist/chunk-7zgecwy1.js +113 -0
- package/dist/chunk-7zgecwy1.js.map +10 -0
- package/dist/{chunk-tn7xcs2n.js → chunk-860dwwy0.js} +93 -30
- package/dist/chunk-860dwwy0.js.map +14 -0
- package/dist/chunk-8vj0rjgs.js +165 -0
- package/dist/chunk-8vj0rjgs.js.map +15 -0
- package/dist/{chunk-7y0f6rf1.js → chunk-92vk7gta.js} +58 -58
- package/dist/chunk-92vk7gta.js.map +10 -0
- package/dist/{chunk-gbrpsx4m.js → chunk-93csa55g.js} +72 -16
- package/dist/chunk-93csa55g.js.map +11 -0
- package/dist/{chunk-d8qkxt2v.js → chunk-98cw09sw.js} +7 -7
- package/dist/chunk-98cw09sw.js.map +10 -0
- package/dist/chunk-9qsh3p5y.js +111 -0
- package/dist/chunk-9qsh3p5y.js.map +11 -0
- package/dist/{chunk-4a849fr1.js → chunk-9tc8dxmn.js} +1 -1
- package/dist/{chunk-z2sery1b.js → chunk-9vx5e9g1.js} +68 -28
- package/dist/chunk-9vx5e9g1.js.map +11 -0
- package/dist/{chunk-9aehf39w.js → chunk-an5tt9y0.js} +353 -353
- package/dist/{chunk-9aehf39w.js.map → chunk-an5tt9y0.js.map} +2 -2
- package/dist/{chunk-x0qhkqje.js → chunk-ap0g1g74.js} +37 -37
- package/dist/{chunk-x0qhkqje.js.map → chunk-ap0g1g74.js.map} +2 -2
- package/dist/chunk-awbhdqyc.js +252 -0
- package/dist/chunk-awbhdqyc.js.map +10 -0
- package/dist/{chunk-ka3a2ft3.js → chunk-b19g04jk.js} +12 -12
- package/dist/{chunk-ka3a2ft3.js.map → chunk-b19g04jk.js.map} +2 -2
- package/dist/chunk-br3k6qbf.js +436 -0
- package/dist/chunk-br3k6qbf.js.map +12 -0
- package/dist/{chunk-dbc80ad7.js → chunk-c5rkjrgp.js} +28 -28
- package/dist/{chunk-dbc80ad7.js.map → chunk-c5rkjrgp.js.map} +2 -2
- package/dist/{chunk-dktq02ne.js → chunk-cqr3acm1.js} +4 -4
- package/dist/{chunk-dktq02ne.js.map → chunk-cqr3acm1.js.map} +2 -2
- package/dist/chunk-d62kjtbg.js +7 -0
- package/dist/{chunk-zcnhxkvd.js.map → chunk-d62kjtbg.js.map} +2 -2
- package/dist/{chunk-74drx9gd.js → chunk-dfm066qg.js} +10 -10
- package/dist/{chunk-74drx9gd.js.map → chunk-dfm066qg.js.map} +2 -2
- package/dist/{chunk-atmkaf60.js → chunk-dmn70ztd.js} +30 -34
- package/dist/chunk-dmn70ztd.js.map +11 -0
- package/dist/chunk-dz5h08xv.js +1887 -0
- package/dist/chunk-dz5h08xv.js.map +25 -0
- package/dist/{chunk-p2vqaxkc.js → chunk-e0d1rzef.js} +27 -22
- package/dist/{chunk-p2vqaxkc.js.map → chunk-e0d1rzef.js.map} +3 -3
- package/dist/{chunk-5sz8ta9r.js → chunk-e1c18xjx.js} +52 -52
- package/dist/{chunk-5sz8ta9r.js.map → chunk-e1c18xjx.js.map} +2 -2
- package/dist/{chunk-ha58tjtt.js → chunk-emyyk7dx.js} +59 -55
- package/dist/{chunk-ha58tjtt.js.map → chunk-emyyk7dx.js.map} +3 -3
- package/dist/{chunk-3kv70xwp.js → chunk-ey1nk510.js} +18 -2
- package/dist/chunk-ey1nk510.js.map +10 -0
- package/dist/chunk-f0rwz2vh.js +152 -0
- package/dist/chunk-f0rwz2vh.js.map +11 -0
- package/dist/{chunk-2xns679x.js → chunk-f4w3yp4f.js} +171 -36
- package/dist/chunk-f4w3yp4f.js.map +12 -0
- package/dist/{chunk-979ww6b3.js → chunk-fb3feg1e.js} +29 -29
- package/dist/{chunk-979ww6b3.js.map → chunk-fb3feg1e.js.map} +2 -2
- package/dist/{chunk-rre42skh.js → chunk-g00bfdq6.js} +729 -296
- package/dist/{chunk-rre42skh.js.map → chunk-g00bfdq6.js.map} +11 -7
- package/dist/{chunk-p03r0h5s.js → chunk-g53f0e4j.js} +76 -202
- package/dist/chunk-g53f0e4j.js.map +15 -0
- package/dist/chunk-g6cke204.js +124 -0
- package/dist/chunk-g6cke204.js.map +10 -0
- package/dist/{chunk-51fjndv0.js → chunk-gfdh9kqa.js} +4 -4
- package/dist/{chunk-51fjndv0.js.map → chunk-gfdh9kqa.js.map} +2 -2
- package/dist/chunk-h1gfhhbh.js +602 -0
- package/dist/chunk-h1gfhhbh.js.map +18 -0
- package/dist/chunk-h3v76ams.js +32 -0
- package/dist/{chunk-08m3b6w8.js.map → chunk-h3v76ams.js.map} +2 -2
- package/dist/chunk-hpr1r6av.js +4006 -0
- package/dist/chunk-hpr1r6av.js.map +44 -0
- package/dist/{chunk-jecn6t54.js → chunk-jgwb25gc.js} +74 -74
- package/dist/{chunk-jecn6t54.js.map → chunk-jgwb25gc.js.map} +2 -2
- package/dist/{chunk-rp1mvzb4.js → chunk-jjy0fhrn.js} +40 -35
- package/dist/{chunk-rp1mvzb4.js.map → chunk-jjy0fhrn.js.map} +3 -3
- package/dist/{chunk-4nxeacx7.js → chunk-jmfet9r4.js} +6 -6
- package/dist/{chunk-4nxeacx7.js.map → chunk-jmfet9r4.js.map} +2 -2
- package/dist/{chunk-64sr682n.js → chunk-k3cqkkn2.js} +61 -55
- package/dist/chunk-k3cqkkn2.js.map +12 -0
- package/dist/{chunk-s5y30bc9.js → chunk-kxwa347f.js} +51 -49
- package/dist/{chunk-s5y30bc9.js.map → chunk-kxwa347f.js.map} +4 -4
- package/dist/{chunk-2ab72m2h.js → chunk-m2ca93my.js} +3 -3
- package/dist/{chunk-2ab72m2h.js.map → chunk-m2ca93my.js.map} +2 -2
- package/dist/{chunk-qjycjdj6.js → chunk-m3z3x9v0.js} +106 -65
- package/dist/{chunk-qjycjdj6.js.map → chunk-m3z3x9v0.js.map} +3 -3
- package/dist/{chunk-6ed5bwnd.js → chunk-mjbk2djy.js} +2092 -1714
- package/dist/chunk-mjbk2djy.js.map +57 -0
- package/dist/{chunk-5jcdmjam.js → chunk-mmagke4x.js} +6 -6
- package/dist/{chunk-5jcdmjam.js.map → chunk-mmagke4x.js.map} +2 -2
- package/dist/chunk-mrp7k0pw.js +147 -0
- package/dist/chunk-mrp7k0pw.js.map +10 -0
- package/dist/{chunk-d63tybny.js → chunk-ms2tmn1k.js} +139 -139
- package/dist/{chunk-d63tybny.js.map → chunk-ms2tmn1k.js.map} +2 -2
- package/dist/{chunk-xdpwpkha.js → chunk-ppytyr6w.js} +156 -179
- package/dist/{chunk-xdpwpkha.js.map → chunk-ppytyr6w.js.map} +3 -5
- package/dist/{chunk-trxxmgnf.js → chunk-pqajwytd.js} +10 -10
- package/dist/{chunk-trxxmgnf.js.map → chunk-pqajwytd.js.map} +3 -3
- package/dist/{chunk-qjzp9xyb.js → chunk-pr2h4bv4.js} +33 -35
- package/dist/chunk-pr2h4bv4.js.map +12 -0
- package/dist/{chunk-xwnf87e1.js → chunk-q5gz3g2j.js} +64 -64
- package/dist/{chunk-xwnf87e1.js.map → chunk-q5gz3g2j.js.map} +2 -2
- package/dist/{chunk-agsvg9ar.js → chunk-qf954wje.js} +6 -6
- package/dist/{chunk-agsvg9ar.js.map → chunk-qf954wje.js.map} +2 -2
- package/dist/{chunk-wjgm6jjt.js → chunk-qhcpj9wc.js} +166 -132
- package/dist/chunk-qhcpj9wc.js.map +14 -0
- package/dist/{chunk-tpnd31c1.js → chunk-r29fxdhn.js} +12 -12
- package/dist/{chunk-tpnd31c1.js.map → chunk-r29fxdhn.js.map} +2 -2
- package/dist/{chunk-b49dgvsj.js → chunk-r2y23egw.js} +3 -3
- package/dist/{chunk-b49dgvsj.js.map → chunk-r2y23egw.js.map} +2 -2
- package/dist/{chunk-2b5qtban.js → chunk-r4tfx1sf.js} +142 -89
- package/dist/chunk-r4tfx1sf.js.map +15 -0
- package/dist/{chunk-4rh2m6zg.js → chunk-rb1xx120.js} +13 -13
- package/dist/{chunk-4rh2m6zg.js.map → chunk-rb1xx120.js.map} +2 -2
- package/dist/chunk-s3csryxe.js +152 -0
- package/dist/chunk-s3csryxe.js.map +11 -0
- package/dist/chunk-s670k14v.js +60 -0
- package/dist/{chunk-407j3msh.js.map → chunk-s670k14v.js.map} +2 -2
- package/dist/chunk-skz0hst3.js +788 -0
- package/dist/chunk-skz0hst3.js.map +19 -0
- package/dist/chunk-v4jbb3rs.js +403 -0
- package/dist/chunk-v4jbb3rs.js.map +10 -0
- package/dist/{chunk-d2ndstdf.js → chunk-vf691g1r.js} +61 -59
- package/dist/{chunk-d2ndstdf.js.map → chunk-vf691g1r.js.map} +2 -2
- package/dist/{chunk-1kamz6j0.js → chunk-vsj3mdfj.js} +8 -8
- package/dist/{chunk-1kamz6j0.js.map → chunk-vsj3mdfj.js.map} +2 -2
- package/dist/{chunk-9dzba0f2.js → chunk-wjasrj67.js} +8 -8
- package/dist/{chunk-9dzba0f2.js.map → chunk-wjasrj67.js.map} +2 -2
- package/dist/{chunk-1evzqhks.js → chunk-wr8qp979.js} +6 -6
- package/dist/{chunk-1evzqhks.js.map → chunk-wr8qp979.js.map} +2 -2
- package/dist/{chunk-n6jxh8sw.js → chunk-wy0qdqfm.js} +18 -18
- package/dist/{chunk-n6jxh8sw.js.map → chunk-wy0qdqfm.js.map} +2 -2
- package/dist/{chunk-8tsf6dmc.js → chunk-x57ycxq0.js} +204 -204
- package/dist/{chunk-8tsf6dmc.js.map → chunk-x57ycxq0.js.map} +2 -2
- package/dist/chunk-x9v4cx1d.js +139 -0
- package/dist/chunk-x9v4cx1d.js.map +10 -0
- package/dist/{chunk-kt81c11h.js → chunk-xfbydgzy.js} +27 -27
- package/dist/{chunk-kt81c11h.js.map → chunk-xfbydgzy.js.map} +2 -2
- package/dist/{chunk-vjjv9mrb.js → chunk-xyr8kppc.js} +22 -22
- package/dist/{chunk-vjjv9mrb.js.map → chunk-xyr8kppc.js.map} +3 -3
- package/dist/chunk-ypbtykv6.js +1537 -0
- package/dist/chunk-ypbtykv6.js.map +19 -0
- package/dist/{chunk-ry24jbr1.js → chunk-yv79ncbv.js} +10 -10
- package/dist/{chunk-ry24jbr1.js.map → chunk-yv79ncbv.js.map} +2 -2
- package/dist/{chunk-xc7hq65b.js → chunk-z30bv4ga.js} +80 -33
- package/dist/chunk-z30bv4ga.js.map +11 -0
- package/dist/{chunk-8ydjhh27.js → chunk-z3y411fq.js} +11 -7
- package/dist/{chunk-8ydjhh27.js.map → chunk-z3y411fq.js.map} +3 -3
- package/dist/{chunk-9t8f5xfx.js → chunk-z5rnrmz1.js} +10 -10
- package/dist/{chunk-9t8f5xfx.js.map → chunk-z5rnrmz1.js.map} +2 -2
- package/dist/{chunk-96swp2wd.js → chunk-z667z3sg.js} +3 -3
- package/dist/{chunk-96swp2wd.js.map → chunk-z667z3sg.js.map} +2 -2
- package/dist/chunk-z8fx5cgb.js +159 -0
- package/dist/chunk-z8fx5cgb.js.map +11 -0
- package/dist/{chunk-xhy826cz.js → chunk-zcnq6105.js} +7 -7
- package/dist/{chunk-xhy826cz.js.map → chunk-zcnq6105.js.map} +2 -2
- package/dist/{chunk-yt8wphsx.js → chunk-zvx7h87b.js} +3 -3
- package/dist/{chunk-yt8wphsx.js.map → chunk-zvx7h87b.js.map} +2 -2
- package/dist/connectors/connections/internal.js +9 -10
- package/dist/connectors/connections/internal.js.map +1 -1
- 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 +13 -0
- package/dist/datasets/write.js.map +9 -0
- package/dist/edits/index.js +7 -8
- package/dist/edits/index.js.map +1 -1
- package/dist/error-reporting/internal.js +22 -24
- package/dist/error-reporting/internal.js.map +1 -1
- package/dist/errors/internal.d.ts +1 -1
- package/dist/errors/internal.d.ts.map +1 -1
- package/dist/errors/internal.js +22 -24
- package/dist/errors/internal.js.map +1 -1
- package/dist/errors/redaction.d.ts +8 -0
- package/dist/errors/redaction.d.ts.map +1 -0
- package/dist/errors/types.d.ts +4 -0
- package/dist/errors/types.d.ts.map +1 -1
- package/dist/events/execution.d.ts.map +1 -1
- package/dist/events/index.js +60 -63
- package/dist/events/index.js.map +1 -1
- package/dist/events/scope.js +4 -5
- package/dist/events/scope.js.map +1 -1
- package/dist/events/selectors/index.js +9 -10
- package/dist/events/selectors/index.js.map +1 -1
- package/dist/events/types/datasets.d.ts +2 -6
- package/dist/events/types/datasets.d.ts.map +1 -1
- package/dist/execution/agent.d.ts +3 -3
- package/dist/execution/agent.d.ts.map +1 -1
- package/dist/execution/agent.js +70 -75
- package/dist/execution/agent.js.map +1 -1
- package/dist/execution/authorization.d.ts +58 -20
- package/dist/execution/authorization.d.ts.map +1 -1
- package/dist/execution/authorized-object-reader.d.ts +69 -0
- package/dist/execution/authorized-object-reader.d.ts.map +1 -0
- package/dist/execution/durable.d.ts +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.d.ts +2 -0
- package/dist/execution/primitive.d.ts.map +1 -1
- package/dist/execution/primitive.js +63 -64
- package/dist/execution/primitive.js.map +3 -3
- package/dist/execution/request.d.ts +12 -0
- package/dist/execution/request.d.ts.map +1 -1
- package/dist/execution/request.js +97 -71
- package/dist/execution/request.js.map +3 -3
- package/dist/execution/scopes.d.ts +16 -0
- package/dist/execution/scopes.d.ts.map +1 -1
- package/dist/execution/types.d.ts +9 -0
- package/dist/execution/types.d.ts.map +1 -1
- package/dist/http/api-routes.d.ts +2 -0
- package/dist/http/api-routes.d.ts.map +1 -1
- package/dist/http/index.js +10 -11
- package/dist/http/index.js.map +1 -1
- package/dist/index.d.ts +21 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +455 -463
- package/dist/index.js.map +1 -1
- package/dist/lake-storage/definition-updates.d.ts.map +1 -1
- package/dist/lake-storage/errors.d.ts +5 -1
- package/dist/lake-storage/errors.d.ts.map +1 -1
- package/dist/lake-storage/in-memory.d.ts +1 -0
- package/dist/lake-storage/in-memory.d.ts.map +1 -1
- package/dist/lake-storage/index.d.ts +6 -1
- package/dist/lake-storage/index.d.ts.map +1 -1
- package/dist/lake-storage/index.js +40 -27
- 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.d.ts +3 -4
- package/dist/logging/index.d.ts.map +1 -1
- package/dist/logging/index.js +18 -40
- package/dist/logging/index.js.map +1 -1
- package/dist/logging/internal.d.ts +5 -0
- package/dist/logging/internal.d.ts.map +1 -0
- package/dist/logging/internal.js +43 -0
- package/dist/logging/internal.js.map +9 -0
- package/dist/materialization/index.js +46 -49
- package/dist/materialization/index.js.map +1 -1
- package/dist/materializer/index.js +137 -142
- package/dist/materializer/index.js.map +1 -1
- package/dist/models/errors.d.ts +4 -0
- package/dist/models/errors.d.ts.map +1 -1
- package/dist/models/execution/binding.d.ts +9 -0
- package/dist/models/execution/binding.d.ts.map +1 -0
- package/dist/models/execution/errors.d.ts +9 -0
- package/dist/models/execution/errors.d.ts.map +1 -0
- package/dist/models/execution/index.d.ts +11 -0
- package/dist/models/execution/index.d.ts.map +1 -0
- package/dist/models/execution/index.js +55 -0
- package/dist/models/execution/index.js.map +9 -0
- package/dist/models/execution/model-call-accounting.d.ts +17 -0
- package/dist/models/execution/model-call-accounting.d.ts.map +1 -0
- package/dist/models/execution/model-call-admission.d.ts +47 -0
- package/dist/models/execution/model-call-admission.d.ts.map +1 -0
- package/dist/models/execution/model-call-limits.d.ts +15 -0
- package/dist/models/execution/model-call-limits.d.ts.map +1 -0
- package/dist/models/execution/model-call-recorder.d.ts +40 -0
- package/dist/models/execution/model-call-recorder.d.ts.map +1 -0
- package/dist/models/execution/model-call-recovery.d.ts +12 -0
- package/dist/models/execution/model-call-recovery.d.ts.map +1 -0
- package/dist/models/execution/recovery-queue.d.ts +5 -0
- package/dist/models/execution/recovery-queue.d.ts.map +1 -0
- package/dist/models/execution/types.d.ts +44 -0
- package/dist/models/execution/types.d.ts.map +1 -0
- package/dist/models/execution/usage.d.ts +5 -0
- package/dist/models/execution/usage.d.ts.map +1 -0
- package/dist/models/execution.d.ts +6 -0
- package/dist/models/execution.d.ts.map +1 -0
- package/dist/models/generation-types.d.ts +40 -0
- package/dist/models/generation-types.d.ts.map +1 -0
- package/dist/models/index.d.ts +1 -0
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/index.js +42 -43
- package/dist/models/index.js.map +1 -1
- package/dist/models/language-model.d.ts +3 -0
- package/dist/models/language-model.d.ts.map +1 -1
- package/dist/models/output.d.ts +5 -0
- package/dist/models/output.d.ts.map +1 -0
- package/dist/models/resolve.d.ts +4 -0
- package/dist/models/resolve.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 +75 -84
- 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 +67 -73
- 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 -2
- package/dist/ontology/index.d.ts.map +1 -1
- package/dist/ontology/index.js +61 -111
- 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 +7 -1
- package/dist/ontology/internal.d.ts.map +1 -1
- package/dist/ontology/internal.js +65 -121
- package/dist/ontology/internal.js.map +3 -4
- 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 +57 -63
- 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 +58 -64
- package/dist/projections/internal.js.map +1 -1
- package/dist/projections/run-dispatch.d.ts.map +1 -1
- package/dist/query.d.ts +0 -1
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +11 -15
- package/dist/query.js.map +1 -1
- package/dist/queues/index.d.ts +2 -1
- package/dist/queues/index.d.ts.map +1 -1
- package/dist/queues/index.js +6 -7
- package/dist/queues/index.js.map +1 -1
- package/dist/queues/types.d.ts +3 -20
- package/dist/queues/types.d.ts.map +1 -1
- package/dist/rules/execution.d.ts.map +1 -1
- package/dist/rules/internal.js +4 -5
- package/dist/rules/internal.js.map +1 -1
- package/dist/runtime/create.d.ts +6 -2
- package/dist/runtime/create.d.ts.map +1 -1
- package/dist/runtime/definitions.d.ts +2 -0
- package/dist/runtime/definitions.d.ts.map +1 -1
- package/dist/runtime/host.d.ts +4 -1
- 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/internal.js +13 -14
- package/dist/runtime/internal.js.map +1 -1
- package/dist/runtime/resolve-definitions.d.ts +2 -0
- package/dist/runtime/resolve-definitions.d.ts.map +1 -1
- package/dist/runtime/sixb.d.ts +6 -0
- package/dist/runtime/sixb.d.ts.map +1 -1
- package/dist/runtime/types.d.ts +3 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/sandboxes/errors.d.ts +4 -0
- package/dist/sandboxes/errors.d.ts.map +1 -1
- package/dist/sandboxes/index.d.ts +2 -2
- package/dist/sandboxes/index.d.ts.map +1 -1
- package/dist/sandboxes/index.js +14 -13
- package/dist/sandboxes/index.js.map +1 -1
- package/dist/sandboxes/sandbox.d.ts +35 -7
- package/dist/sandboxes/sandbox.d.ts.map +1 -1
- package/dist/scheduler/index.js +9 -10
- package/dist/scheduler/index.js.map +1 -1
- package/dist/schedules/execution.d.ts +2 -1
- package/dist/schedules/execution.d.ts.map +1 -1
- package/dist/schedules/index.js +31 -33
- package/dist/schedules/index.js.map +1 -1
- package/dist/security/every.d.ts +4 -1
- package/dist/security/every.d.ts.map +1 -1
- package/dist/security/grants.d.ts +7 -2
- package/dist/security/grants.d.ts.map +1 -1
- package/dist/security/index.d.ts +1 -1
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/registry.d.ts +1 -0
- package/dist/security/registry.d.ts.map +1 -1
- package/dist/security/types.d.ts +7 -1
- package/dist/security/types.d.ts.map +1 -1
- package/dist/security/validation.d.ts +2 -0
- package/dist/security/validation.d.ts.map +1 -1
- package/dist/shares/access-plan.d.ts +22 -0
- package/dist/shares/access-plan.d.ts.map +1 -0
- package/dist/shares/builders.d.ts +14 -0
- package/dist/shares/builders.d.ts.map +1 -0
- package/dist/shares/compiler.d.ts +14 -0
- package/dist/shares/compiler.d.ts.map +1 -0
- package/dist/shares/errors.d.ts +4 -0
- package/dist/shares/errors.d.ts.map +1 -0
- package/dist/shares/execution.d.ts +57 -0
- package/dist/shares/execution.d.ts.map +1 -0
- package/dist/shares/index.d.ts +10 -0
- package/dist/shares/index.d.ts.map +1 -0
- package/dist/shares/internal.d.ts +3 -0
- package/dist/shares/internal.d.ts.map +1 -0
- package/dist/shares/internal.js +231 -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 +7 -9
- package/dist/storage/action-runs/failure.js.map +1 -1
- package/dist/storage/action-runs/provider.js +4 -8
- package/dist/storage/action-runs/provider.js.map +1 -1
- package/dist/storage/agents/in-memory.d.ts.map +1 -1
- package/dist/storage/agents/provider.js +26 -30
- package/dist/storage/agents/provider.js.map +1 -1
- package/dist/storage/agents/types.d.ts +0 -3
- package/dist/storage/agents/types.d.ts.map +1 -1
- package/dist/storage/ai-cost/attribution.d.ts +4 -0
- package/dist/storage/ai-cost/attribution.d.ts.map +1 -0
- package/dist/storage/ai-cost/groups.d.ts +3 -0
- package/dist/storage/ai-cost/groups.d.ts.map +1 -1
- package/dist/storage/ai-cost/provider.d.ts +1 -0
- package/dist/storage/ai-cost/provider.d.ts.map +1 -1
- package/dist/storage/ai-cost/provider.js +30 -143
- package/dist/storage/ai-cost/provider.js.map +3 -4
- package/dist/storage/ai-cost/types.d.ts +15 -0
- package/dist/storage/ai-cost/types.d.ts.map +1 -1
- package/dist/storage/ai-limits/enforcement.js +14 -16
- package/dist/storage/ai-limits/enforcement.js.map +1 -1
- package/dist/storage/ai-limits/provider.js +56 -57
- package/dist/storage/ai-limits/provider.js.map +1 -1
- package/dist/storage/auth/in-memory.d.ts +1 -1
- package/dist/storage/auth/in-memory.d.ts.map +1 -1
- package/dist/storage/connector-connections/provider.js +34 -36
- package/dist/storage/connector-connections/provider.js.map +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 +6 -2
- package/dist/storage/executions/provider.d.ts.map +1 -1
- package/dist/storage/executions/provider.js +35 -12
- package/dist/storage/executions/provider.js.map +3 -3
- package/dist/storage/executions/run-link.d.ts +7 -0
- package/dist/storage/executions/run-link.d.ts.map +1 -1
- package/dist/storage/executions/types.d.ts +6 -2
- package/dist/storage/executions/types.d.ts.map +1 -1
- package/dist/storage/executions/validation.d.ts +8 -0
- package/dist/storage/executions/validation.d.ts.map +1 -1
- package/dist/storage/in-memory/index.d.ts +8 -0
- package/dist/storage/in-memory/index.d.ts.map +1 -1
- package/dist/storage/index.d.ts +14 -9
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +221 -227
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/internal.d.ts +10 -0
- package/dist/storage/internal.d.ts.map +1 -0
- package/dist/storage/internal.js +47 -0
- package/dist/storage/internal.js.map +9 -0
- 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 +105 -109
- package/dist/storage/ontology/provider.js.map +1 -1
- package/dist/storage/operation-scope.d.ts +3 -0
- package/dist/storage/operation-scope.d.ts.map +1 -1
- package/dist/storage/operation-scope.js +18 -17
- package/dist/storage/operation-scope.js.map +1 -1
- package/dist/storage/pipeline-runs/provider.js +4 -6
- package/dist/storage/pipeline-runs/provider.js.map +1 -1
- package/dist/storage/projection-runs/provider.js +66 -70
- package/dist/storage/projection-runs/provider.js.map +1 -1
- 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 +22 -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 +19 -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 +4 -6
- package/dist/storage/sync-runs/provider.js.map +1 -1
- package/dist/storage/transaction.d.ts +2 -1
- package/dist/storage/transaction.d.ts.map +1 -1
- package/dist/storage/types.d.ts +8 -0
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/webhook-runs/provider.js +4 -6
- package/dist/storage/webhook-runs/provider.js.map +1 -1
- package/dist/storage/workflow-runs/in-memory.d.ts.map +1 -1
- package/dist/storage/workflow-runs/provider.js +13 -18
- package/dist/storage/workflow-runs/provider.js.map +1 -1
- package/dist/storage/workflow-runs/types.d.ts +0 -3
- 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 +55 -62
- package/dist/syncs/index.js.map +1 -1
- package/dist/syncs/request.d.ts.map +1 -1
- package/dist/testing/action-execution.d.ts +4 -1
- package/dist/testing/action-execution.d.ts.map +1 -1
- package/dist/testing/agent-execution.d.ts +1 -0
- 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-model-call-groups-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/execution.d.ts +1 -0
- package/dist/testing/execution.d.ts.map +1 -1
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +3087 -1328
- package/dist/testing/index.js.map +17 -13
- package/dist/testing/lake-merge-storage-contract.d.ts +1 -0
- package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -1
- package/dist/testing/lake-storage-contract.d.ts.map +1 -1
- package/dist/testing/object-read-scope-contract.d.ts +22 -0
- package/dist/testing/object-read-scope-contract.d.ts.map +1 -0
- package/dist/testing/share-grant-storage-contract.d.ts +10 -0
- package/dist/testing/share-grant-storage-contract.d.ts.map +1 -0
- package/dist/testing/share-session-storage-contract.d.ts +9 -0
- package/dist/testing/share-session-storage-contract.d.ts.map +1 -0
- package/dist/testing/workflow-execution.d.ts +1 -0
- package/dist/testing/workflow-execution.d.ts.map +1 -1
- package/dist/webhooks/internal.js +51 -56
- package/dist/webhooks/internal.js.map +2 -2
- package/dist/workers/index.js +11 -13
- package/dist/workers/index.js.map +2 -2
- package/dist/workflows/execution.d.ts.map +1 -1
- package/dist/workflows/failure.d.ts +2 -0
- package/dist/workflows/failure.d.ts.map +1 -1
- package/dist/workflows/index.js +135 -140
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/request.d.ts.map +1 -1
- package/dist/workflows/run-dispatch.d.ts +0 -1
- package/dist/workflows/run-dispatch.d.ts.map +1 -1
- package/dist/workflows/types.d.ts +2 -0
- package/dist/workflows/types.d.ts.map +1 -1
- package/package.json +72 -30
- 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 +10 -7
- package/src/actions/types/context.ts +2 -0
- package/src/actions/validation.ts +2 -1
- package/src/agents/adapters.ts +34 -429
- package/src/agents/authority.ts +3 -4
- package/src/agents/{context.ts → context/entries.ts} +4 -4
- package/src/agents/context/index.ts +15 -0
- package/src/agents/context-model.ts +1 -1
- package/src/agents/context-resolution.ts +2 -5
- package/src/agents/errors.ts +0 -10
- package/src/agents/execution.ts +13 -5
- package/src/agents/identity.ts +4 -0
- package/src/agents/index.ts +5 -24
- package/src/agents/message.ts +5 -6
- package/src/agents/model-loop.ts +62 -6
- package/src/agents/request.ts +27 -29
- package/src/agents/streams/index.ts +18 -0
- package/src/agents/streams/internal.ts +19 -0
- package/src/agents/{streams.ts → streams/protocol.ts} +5 -5
- package/src/agents/tool-definition.ts +0 -19
- package/src/agents/types.ts +1 -1
- package/src/agents/validation.ts +9 -72
- package/src/ai-usage/execution.ts +4 -11
- package/src/auth/index.ts +0 -1
- package/src/authorization/decision.ts +29 -14
- package/src/authorization/grant-kinds.ts +10 -0
- package/src/authorization/index.ts +1 -0
- package/src/bootstrap/discovery.ts +84 -24
- package/src/bootstrap/index.ts +8 -1
- 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/errors/internal.ts +90 -10
- package/src/errors/redaction.ts +98 -0
- package/src/errors/types.ts +4 -0
- package/src/events/execution.ts +57 -7
- package/src/events/types/datasets.ts +2 -6
- package/src/execution/agent.ts +6 -7
- package/src/execution/authorization.ts +470 -90
- package/src/execution/authorized-object-reader.ts +695 -0
- package/src/execution/durable.ts +21 -3
- package/src/execution/index.ts +1 -0
- package/src/execution/primitive.ts +5 -1
- package/src/execution/request.ts +66 -13
- package/src/execution/scopes.ts +36 -6
- package/src/execution/types.ts +8 -0
- package/src/http/api-routes.ts +45 -0
- package/src/index.ts +56 -33
- 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/logging/index.ts +2 -33
- package/src/logging/internal.ts +43 -0
- package/src/models/errors.ts +12 -0
- package/src/models/execution/binding.ts +29 -0
- package/src/models/execution/errors.ts +18 -0
- package/src/models/execution/index.ts +26 -0
- package/src/models/execution/model-call-accounting.ts +211 -0
- package/src/models/execution/model-call-admission.ts +127 -0
- package/src/models/execution/model-call-limits.ts +135 -0
- package/src/models/execution/model-call-recorder.ts +235 -0
- package/src/models/execution/model-call-recovery.ts +125 -0
- package/src/models/execution/recovery-queue.ts +31 -0
- package/src/models/execution/types.ts +58 -0
- package/src/models/execution/usage.ts +23 -0
- package/src/models/execution.ts +207 -0
- package/src/models/generation-types.ts +50 -0
- package/src/models/index.ts +8 -0
- package/src/models/language-model.ts +3 -0
- package/src/models/output.ts +45 -0
- package/src/models/resolve.ts +27 -0
- package/src/objects/authorized-ontology-view.ts +512 -0
- package/src/objects/execution.ts +99 -144
- 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 -2
- package/src/ontology/inference/index.ts +4 -1
- package/src/ontology/internal.ts +35 -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 +7 -12
- package/src/query.ts +0 -1
- package/src/queues/index.ts +4 -2
- package/src/queues/types.ts +6 -25
- package/src/rules/execution.ts +20 -8
- package/src/runtime/create.ts +7 -2
- package/src/runtime/definitions.ts +2 -0
- package/src/runtime/host.ts +27 -7
- package/src/runtime/internal.ts +1 -0
- package/src/runtime/resolve-definitions.ts +9 -0
- package/src/runtime/sixb.ts +27 -2
- package/src/runtime/types.ts +3 -0
- package/src/sandboxes/errors.ts +5 -0
- package/src/sandboxes/index.ts +3 -0
- package/src/sandboxes/sandbox.ts +35 -7
- package/src/schedules/execution.ts +24 -2
- package/src/security/every.ts +4 -0
- package/src/security/grants.ts +45 -3
- package/src/security/index.ts +1 -0
- package/src/security/registry.ts +3 -0
- package/src/security/types.ts +8 -0
- package/src/security/validation.ts +3 -0
- package/src/shares/access-plan.ts +225 -0
- package/src/shares/builders.ts +381 -0
- package/src/shares/compiler.ts +359 -0
- package/src/shares/errors.ts +3 -0
- package/src/shares/execution.ts +394 -0
- package/src/shares/index.ts +28 -0
- package/src/shares/internal.ts +9 -0
- package/src/shares/intersection.ts +178 -0
- package/src/shares/session-protocol.ts +258 -0
- package/src/shares/types.ts +76 -0
- package/src/shares/validation.ts +40 -0
- package/src/storage/agents/in-memory.ts +0 -3
- package/src/storage/agents/types.ts +0 -3
- package/src/storage/ai-cost/analytics.ts +1 -1
- package/src/storage/ai-cost/attribution.ts +15 -0
- package/src/storage/ai-cost/groups.ts +5 -1
- package/src/storage/ai-cost/provider.ts +1 -0
- package/src/storage/ai-cost/types.ts +7 -0
- package/src/storage/auth/in-memory.ts +1 -1
- package/src/storage/executions/in-memory.ts +13 -10
- package/src/storage/executions/provider.ts +34 -1
- package/src/storage/executions/run-link.ts +29 -0
- package/src/storage/executions/types.ts +6 -2
- package/src/storage/executions/validation.ts +78 -1
- package/src/storage/in-memory/index.ts +37 -3
- package/src/storage/index.ts +54 -29
- package/src/storage/internal.ts +20 -0
- package/src/storage/objects/execution-limits.ts +283 -0
- package/src/storage/objects/guard.ts +55 -0
- package/src/storage/objects/in-memory/index.ts +2 -0
- package/src/storage/objects/in-memory/keys.ts +46 -0
- package/src/storage/objects/in-memory/query.ts +754 -0
- package/src/storage/objects/in-memory/read-scope.ts +211 -0
- package/src/storage/objects/in-memory/read-source.ts +10 -0
- package/src/storage/objects/in-memory/selected-reader.ts +252 -0
- package/src/storage/objects/in-memory/storage.ts +589 -0
- package/src/storage/objects/index.ts +21 -0
- package/src/storage/objects/keys.ts +1 -1
- package/src/storage/objects/read-scope.ts +672 -0
- package/src/storage/objects/types.ts +123 -19
- package/src/storage/operation-scope.ts +16 -0
- package/src/storage/share-grants/errors.ts +14 -0
- package/src/storage/share-grants/in-memory.ts +107 -0
- package/src/storage/share-grants/index.ts +14 -0
- package/src/storage/share-grants/provider.ts +11 -0
- package/src/storage/share-grants/record.ts +347 -0
- package/src/storage/share-grants/types.ts +112 -0
- package/src/storage/share-sessions/errors.ts +14 -0
- package/src/storage/share-sessions/in-memory.ts +105 -0
- package/src/storage/share-sessions/index.ts +11 -0
- package/src/storage/share-sessions/provider.ts +9 -0
- package/src/storage/share-sessions/record.ts +176 -0
- package/src/storage/share-sessions/types.ts +57 -0
- package/src/storage/transaction.ts +14 -2
- package/src/storage/types.ts +27 -0
- package/src/storage/workflow-runs/in-memory.ts +0 -2
- package/src/storage/workflow-runs/types.ts +0 -3
- package/src/syncs/execution.ts +25 -5
- package/src/syncs/request.ts +5 -0
- package/src/testing/action-execution.ts +9 -2
- package/src/testing/agent-execution.ts +3 -0
- package/src/testing/agent-storage-contract.ts +0 -5
- package/src/testing/ai-model-call-groups-contract.ts +74 -2
- 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 +138 -1
- package/src/testing/execution.ts +6 -0
- package/src/testing/index.ts +16 -0
- package/src/testing/lake-merge-storage-contract.ts +3 -0
- package/src/testing/lake-storage-contract.ts +58 -0
- package/src/testing/object-read-scope-contract.ts +939 -0
- package/src/testing/share-grant-storage-contract.ts +325 -0
- package/src/testing/share-session-storage-contract.ts +235 -0
- package/src/testing/workflow-execution.ts +4 -0
- package/src/workflows/execution.ts +53 -14
- package/src/workflows/failure.ts +62 -1
- package/src/workflows/request.ts +5 -9
- package/src/workflows/run-dispatch.ts +0 -3
- package/src/workflows/types.ts +2 -0
- package/src/workflows/validation.ts +1 -1
- package/dist/agents/context.d.ts.map +0 -1
- package/dist/agents/context.js +0 -23
- package/dist/agents/streams.d.ts.map +0 -1
- package/dist/agents/streams.js +0 -55
- package/dist/chunk-08m3b6w8.js +0 -32
- package/dist/chunk-08twe8m6.js +0 -218
- package/dist/chunk-2b5qtban.js.map +0 -14
- package/dist/chunk-2xns679x.js.map +0 -11
- package/dist/chunk-37wk412q.js +0 -1370
- package/dist/chunk-37wk412q.js.map +0 -23
- package/dist/chunk-3fqt22c4.js.map +0 -14
- package/dist/chunk-3kv70xwp.js.map +0 -10
- package/dist/chunk-407j3msh.js +0 -60
- package/dist/chunk-64sr682n.js.map +0 -12
- package/dist/chunk-6ed5bwnd.js.map +0 -57
- package/dist/chunk-7ds9620f.js.map +0 -10
- package/dist/chunk-7y0f6rf1.js.map +0 -10
- package/dist/chunk-atmkaf60.js.map +0 -11
- package/dist/chunk-c15dr03f.js +0 -43
- package/dist/chunk-d8qkxt2v.js.map +0 -10
- package/dist/chunk-dqn23610.js +0 -72
- package/dist/chunk-dqn23610.js.map +0 -11
- package/dist/chunk-e4rvtvpw.js.map +0 -34
- package/dist/chunk-gbrpsx4m.js.map +0 -11
- package/dist/chunk-h0knpbz5.js +0 -2486
- package/dist/chunk-h0knpbz5.js.map +0 -38
- package/dist/chunk-hdz94br2.js.map +0 -10
- package/dist/chunk-jq43kdvk.js +0 -50
- package/dist/chunk-n2arzn6e.js +0 -1745
- package/dist/chunk-n2arzn6e.js.map +0 -20
- package/dist/chunk-p03r0h5s.js.map +0 -16
- package/dist/chunk-qjzp9xyb.js.map +0 -12
- package/dist/chunk-tn7xcs2n.js.map +0 -13
- package/dist/chunk-wjgm6jjt.js.map +0 -13
- package/dist/chunk-xc7hq65b.js.map +0 -10
- package/dist/chunk-y35ma3mj.js +0 -551
- package/dist/chunk-y35ma3mj.js.map +0 -15
- package/dist/chunk-y64skrwp.js +0 -19
- package/dist/chunk-z2sery1b.js.map +0 -11
- package/dist/chunk-zcnhxkvd.js +0 -7
- package/dist/logging/types.js +0 -27
- package/dist/logging/types.js.map +0 -9
- package/dist/storage/objects/in-memory.d.ts.map +0 -1
- package/src/storage/objects/in-memory.ts +0 -1241
- /package/dist/{chunk-zqqz8052.js → chunk-7n30ybym.js} +0 -0
- /package/dist/{chunk-zqqz8052.js.map → chunk-7n30ybym.js.map} +0 -0
- /package/dist/{chunk-4a849fr1.js.map → chunk-9tc8dxmn.js.map} +0 -0
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
import { createHash, randomBytes, randomUUID, timingSafeEqual } from "node:crypto"
|
|
2
|
+
import { formatSessionCookieValue, parseSessionCookieValue } from "../auth/sessions"
|
|
3
|
+
import type { SixbHostView } from "../runtime"
|
|
4
|
+
import type { ShareGrantRecord, ShareSessionRecord, Storage } from "../storage"
|
|
5
|
+
import { ShareSessionStorageError } from "../storage"
|
|
6
|
+
import { type ShareAccessPlan, snapshotShareAccessPlan } from "./access-plan"
|
|
7
|
+
import { compileShareAccessPlan } from "./compiler"
|
|
8
|
+
import { intersectShareAccessPlans } from "./intersection"
|
|
9
|
+
|
|
10
|
+
export const DEFAULT_SHARED_SESSION_INACTIVITY_TTL_MS = 15 * 60_000
|
|
11
|
+
|
|
12
|
+
const MAX_CREATE_ATTEMPTS = 5
|
|
13
|
+
const SECRET_PATTERN = /^[A-Za-z0-9_-]{43}$/
|
|
14
|
+
|
|
15
|
+
export interface SharedSessionContext {
|
|
16
|
+
readonly grantId: string
|
|
17
|
+
readonly sessionId: string
|
|
18
|
+
readonly destinationPath: string
|
|
19
|
+
readonly access: ShareAccessPlan
|
|
20
|
+
readonly expiresAt: Date
|
|
21
|
+
readonly absoluteExpiresAt: Date
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export interface SharedSessionCredential {
|
|
25
|
+
readonly context: SharedSessionContext
|
|
26
|
+
/** Opaque value for the HttpOnly shared-session cookie. */
|
|
27
|
+
readonly cookieValue: string
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface SharedSessionProtocolOptions {
|
|
31
|
+
readonly host: SixbHostView
|
|
32
|
+
readonly inactivityTtlMs?: number
|
|
33
|
+
readonly now?: () => Date
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Framework-owned shared-session lifecycle.
|
|
38
|
+
*
|
|
39
|
+
* Link and session secrets are verified here. Callers receive only an effective access plan built
|
|
40
|
+
* from the issued snapshot intersected with the Share definition registered now.
|
|
41
|
+
*/
|
|
42
|
+
export class SharedSessionProtocol {
|
|
43
|
+
private readonly host: SixbHostView
|
|
44
|
+
private readonly inactivityTtlMs: number
|
|
45
|
+
private readonly now: () => Date
|
|
46
|
+
|
|
47
|
+
constructor(options: SharedSessionProtocolOptions) {
|
|
48
|
+
if (!options.host.storage.shareGrants || !options.host.storage.shareSessions) {
|
|
49
|
+
throw new Error("[Sixb] Shared sessions require share grant and session storage.")
|
|
50
|
+
}
|
|
51
|
+
const inactivityTtlMs = options.inactivityTtlMs ?? DEFAULT_SHARED_SESSION_INACTIVITY_TTL_MS
|
|
52
|
+
if (!Number.isSafeInteger(inactivityTtlMs) || inactivityTtlMs <= 0) {
|
|
53
|
+
throw new Error("[Sixb] Shared session inactivity TTL must be a positive integer.")
|
|
54
|
+
}
|
|
55
|
+
this.host = options.host
|
|
56
|
+
this.inactivityTtlMs = inactivityTtlMs
|
|
57
|
+
this.now = options.now ?? (() => new Date())
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
async exchange(grantId: string, secret: string): Promise<SharedSessionCredential | null> {
|
|
61
|
+
if (!validIdentifier(grantId) || !validSecret(secret)) return null
|
|
62
|
+
const now = this.currentTime()
|
|
63
|
+
|
|
64
|
+
for (let attempt = 0; attempt < MAX_CREATE_ATTEMPTS; attempt += 1) {
|
|
65
|
+
const sessionSecret = randomBytes(32).toString("base64url")
|
|
66
|
+
const sessionId = `shs_${randomUUID()}`
|
|
67
|
+
try {
|
|
68
|
+
const result = await this.host.storage.transaction(async (tx) => {
|
|
69
|
+
const grant = await activeGrant(tx, this.host.projectId, grantId, now)
|
|
70
|
+
const secretMatches = secretMatchesHash(secret, grant?.tokenHash ?? "")
|
|
71
|
+
if (!grant || !secretMatches) return null
|
|
72
|
+
const sessions = requireSessions(tx)
|
|
73
|
+
const absoluteExpiresAt = new Date(grant.expiresAt)
|
|
74
|
+
const session = await sessions.create({
|
|
75
|
+
id: sessionId,
|
|
76
|
+
projectId: this.host.projectId,
|
|
77
|
+
grantId: grant.id,
|
|
78
|
+
tokenHash: sha256(sessionSecret),
|
|
79
|
+
createdAt: now,
|
|
80
|
+
expiresAt: inactivityDeadline(now, absoluteExpiresAt, this.inactivityTtlMs),
|
|
81
|
+
absoluteExpiresAt,
|
|
82
|
+
})
|
|
83
|
+
return { grant, session }
|
|
84
|
+
})
|
|
85
|
+
if (!result) return null
|
|
86
|
+
return {
|
|
87
|
+
context: this.context(result.grant, result.session),
|
|
88
|
+
cookieValue: formatSessionCookieValue(sessionId, sessionSecret),
|
|
89
|
+
}
|
|
90
|
+
} catch (error) {
|
|
91
|
+
if (
|
|
92
|
+
error instanceof ShareSessionStorageError &&
|
|
93
|
+
error.code === "duplicate" &&
|
|
94
|
+
attempt < MAX_CREATE_ATTEMPTS - 1
|
|
95
|
+
) {
|
|
96
|
+
continue
|
|
97
|
+
}
|
|
98
|
+
throw error
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
return null
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
async resolve(
|
|
106
|
+
grantId: string,
|
|
107
|
+
cookieValue: string | undefined,
|
|
108
|
+
options: { readonly activity?: "background" | "foreground" } = {}
|
|
109
|
+
): Promise<SharedSessionContext | null> {
|
|
110
|
+
if (!validIdentifier(grantId) || !validCookieValue(cookieValue)) return null
|
|
111
|
+
const credential = parseSessionCookieValue(cookieValue)
|
|
112
|
+
if (
|
|
113
|
+
!credential ||
|
|
114
|
+
!validIdentifier(credential.sessionId) ||
|
|
115
|
+
!validSecret(credential.sessionSecret)
|
|
116
|
+
) {
|
|
117
|
+
return null
|
|
118
|
+
}
|
|
119
|
+
const now = this.currentTime()
|
|
120
|
+
const tokenHash = sha256(credential.sessionSecret)
|
|
121
|
+
|
|
122
|
+
const result = await this.host.storage.transaction(async (tx) => {
|
|
123
|
+
const sessions = requireSessions(tx)
|
|
124
|
+
const current = await sessions.getById({
|
|
125
|
+
projectId: this.host.projectId,
|
|
126
|
+
id: credential.sessionId,
|
|
127
|
+
})
|
|
128
|
+
const secretMatches = secretMatchesHash(credential.sessionSecret, current?.tokenHash ?? "")
|
|
129
|
+
if (
|
|
130
|
+
!current ||
|
|
131
|
+
current.grantId !== grantId ||
|
|
132
|
+
current.revokedAt !== undefined ||
|
|
133
|
+
current.expiresAt.getTime() <= now.getTime() ||
|
|
134
|
+
current.absoluteExpiresAt.getTime() <= now.getTime() ||
|
|
135
|
+
!secretMatches
|
|
136
|
+
) {
|
|
137
|
+
return null
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
const grant = await activeGrant(tx, this.host.projectId, grantId, now)
|
|
141
|
+
if (!grant || current.absoluteExpiresAt.getTime() !== grant.expiresAt.getTime()) {
|
|
142
|
+
return null
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
if (options.activity !== "foreground") return { grant, session: current }
|
|
146
|
+
|
|
147
|
+
const renewed = await sessions.renewIfValid({
|
|
148
|
+
projectId: this.host.projectId,
|
|
149
|
+
id: current.id,
|
|
150
|
+
grantId,
|
|
151
|
+
tokenHash,
|
|
152
|
+
now,
|
|
153
|
+
expiresAt: inactivityDeadline(now, current.absoluteExpiresAt, this.inactivityTtlMs),
|
|
154
|
+
})
|
|
155
|
+
return renewed ? { grant, session: renewed } : null
|
|
156
|
+
})
|
|
157
|
+
|
|
158
|
+
return result ? this.context(result.grant, result.session) : null
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
async revoke(context: Pick<SharedSessionContext, "grantId" | "sessionId">): Promise<void> {
|
|
162
|
+
const revokedAt = this.currentTime()
|
|
163
|
+
await this.host.storage.transaction(async (tx) => {
|
|
164
|
+
const session = await requireSessions(tx).getById({
|
|
165
|
+
projectId: this.host.projectId,
|
|
166
|
+
id: context.sessionId,
|
|
167
|
+
})
|
|
168
|
+
if (!session || session.grantId !== context.grantId) return
|
|
169
|
+
await requireSessions(tx).revoke({
|
|
170
|
+
projectId: this.host.projectId,
|
|
171
|
+
id: context.sessionId,
|
|
172
|
+
revokedAt,
|
|
173
|
+
})
|
|
174
|
+
})
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
private context(grant: ShareGrantRecord, session: ShareSessionRecord): SharedSessionContext {
|
|
178
|
+
return {
|
|
179
|
+
grantId: grant.id,
|
|
180
|
+
sessionId: session.id,
|
|
181
|
+
destinationPath: grant.destinationPath,
|
|
182
|
+
access: effectiveAccess(this.host, grant),
|
|
183
|
+
expiresAt: new Date(session.expiresAt),
|
|
184
|
+
absoluteExpiresAt: new Date(session.absoluteExpiresAt),
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
private currentTime(): Date {
|
|
189
|
+
const now = this.now()
|
|
190
|
+
if (!(now instanceof Date) || !Number.isFinite(now.getTime())) {
|
|
191
|
+
throw new Error("[Sixb] Shared session clock returned an invalid date.")
|
|
192
|
+
}
|
|
193
|
+
return new Date(now)
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
function effectiveAccess(host: SixbHostView, grant: ShareGrantRecord): ShareAccessPlan {
|
|
198
|
+
const definition = host.definitions.shares.getById(grant.definitionId)
|
|
199
|
+
if (!definition || definition.target.objectTypeId !== grant.target.objectTypeId) {
|
|
200
|
+
return snapshotShareAccessPlan({ grants: [] })
|
|
201
|
+
}
|
|
202
|
+
const current = compileShareAccessPlan({
|
|
203
|
+
share: definition,
|
|
204
|
+
target: grant.target,
|
|
205
|
+
ontology: host.definitions.ontology,
|
|
206
|
+
actions: host.definitions.actions,
|
|
207
|
+
})
|
|
208
|
+
return intersectShareAccessPlans(grant.authoritySnapshot.access, current)
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
async function activeGrant(
|
|
212
|
+
storage: Storage,
|
|
213
|
+
projectId: string,
|
|
214
|
+
grantId: string,
|
|
215
|
+
now: Date
|
|
216
|
+
): Promise<ShareGrantRecord | null> {
|
|
217
|
+
const grant = await storage.shareGrants?.getById({ projectId, id: grantId })
|
|
218
|
+
return !grant || grant.revokedAt !== undefined || grant.expiresAt.getTime() <= now.getTime()
|
|
219
|
+
? null
|
|
220
|
+
: grant
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
function requireSessions(storage: Storage): NonNullable<Storage["shareSessions"]> {
|
|
224
|
+
if (!storage.shareSessions) {
|
|
225
|
+
throw new Error("[Sixb] Shared session storage is not configured.")
|
|
226
|
+
}
|
|
227
|
+
return storage.shareSessions
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
function inactivityDeadline(now: Date, absolute: Date, ttlMs: number): Date {
|
|
231
|
+
return new Date(Math.min(absolute.getTime(), now.getTime() + ttlMs))
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
function secretMatchesHash(secret: string, expectedHash: string): boolean {
|
|
235
|
+
const actual = createHash("sha256").update(secret).digest()
|
|
236
|
+
const expected = /^[0-9a-f]{64}$/.test(expectedHash)
|
|
237
|
+
? Buffer.from(expectedHash, "hex")
|
|
238
|
+
: Buffer.alloc(actual.length)
|
|
239
|
+
return timingSafeEqual(actual, expected)
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
function sha256(value: string): string {
|
|
243
|
+
return createHash("sha256").update(value).digest("hex")
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
function validIdentifier(value: unknown): value is string {
|
|
247
|
+
return (
|
|
248
|
+
typeof value === "string" && value.length > 0 && value.length <= 128 && value.trim() === value
|
|
249
|
+
)
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
function validSecret(value: unknown): value is string {
|
|
253
|
+
return typeof value === "string" && SECRET_PATTERN.test(value)
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
function validCookieValue(value: unknown): value is string {
|
|
257
|
+
return typeof value === "string" && value.length <= 256
|
|
258
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import type { ObjectActionDefinition } from "../actions"
|
|
2
|
+
import type {
|
|
3
|
+
LinkPathSelectionInput,
|
|
4
|
+
LinkPathSelectionMode,
|
|
5
|
+
ObjectTypeWithPropertyTokens,
|
|
6
|
+
} from "../ontology"
|
|
7
|
+
|
|
8
|
+
declare const shareTargetBrand: unique symbol
|
|
9
|
+
|
|
10
|
+
/** Contextual placeholder for the one exact object supplied when a Share is issued. */
|
|
11
|
+
export interface ShareTarget<TObjectTypeId extends string = string> {
|
|
12
|
+
readonly [shareTargetBrand]: true
|
|
13
|
+
readonly objectTypeId: TObjectTypeId
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface ShareViewGrant<TObjectTypeId extends string = string> {
|
|
17
|
+
readonly kind: "object.view"
|
|
18
|
+
readonly targetObjectTypeId: TObjectTypeId
|
|
19
|
+
readonly links: LinkPathSelectionMode
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface ShareViewGrantBuilder<TObjectTypeId extends string = string>
|
|
23
|
+
extends ShareViewGrant<TObjectTypeId> {
|
|
24
|
+
/** Include every direct link present when a grant is issued. Nested links remain excluded. */
|
|
25
|
+
withLinks(): ShareViewGrant<TObjectTypeId>
|
|
26
|
+
/** Include only these link paths. Use a bare link token when it has no nested links. */
|
|
27
|
+
withLinks<const TLinks extends readonly LinkPathSelectionInput<TObjectTypeId>[]>(
|
|
28
|
+
links: TLinks
|
|
29
|
+
): ShareViewGrant<TObjectTypeId>
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface ShareActionGrant<
|
|
33
|
+
TActionId extends string = string,
|
|
34
|
+
TObjectTypeId extends string = string,
|
|
35
|
+
> {
|
|
36
|
+
readonly kind: "action.apply"
|
|
37
|
+
readonly actionId: TActionId
|
|
38
|
+
readonly subjectObjectTypeId: TObjectTypeId
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export interface ShareActionGrantBuilder<
|
|
42
|
+
TAction extends ObjectActionDefinition = ObjectActionDefinition,
|
|
43
|
+
> {
|
|
44
|
+
on(
|
|
45
|
+
target: ShareTarget<TAction["binding"]["objectType"]["id"]>
|
|
46
|
+
): ShareActionGrant<TAction["id"], TAction["binding"]["objectType"]["id"]>
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export type ShareScopeGrant = ShareViewGrant | ShareActionGrant
|
|
50
|
+
|
|
51
|
+
export interface ShareDefinition<
|
|
52
|
+
TId extends string = string,
|
|
53
|
+
TTargetObjectTypeId extends string = string,
|
|
54
|
+
> {
|
|
55
|
+
readonly kind: "share"
|
|
56
|
+
/**
|
|
57
|
+
* Durable authority identity. Removing a definition suspends its grants; reusing the id can make
|
|
58
|
+
* unexpired grants effective again after intersection. Revoke them before permanent removal.
|
|
59
|
+
*/
|
|
60
|
+
readonly id: TId
|
|
61
|
+
readonly target: {
|
|
62
|
+
readonly kind: "object"
|
|
63
|
+
readonly objectTypeId: TTargetObjectTypeId
|
|
64
|
+
}
|
|
65
|
+
readonly grants: readonly ShareScopeGrant[]
|
|
66
|
+
readonly description?: string
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
export interface DefineShareOptions<
|
|
70
|
+
TTarget extends ObjectTypeWithPropertyTokens,
|
|
71
|
+
TGrants extends readonly ShareScopeGrant[],
|
|
72
|
+
> {
|
|
73
|
+
readonly target: TTarget
|
|
74
|
+
readonly grants: (context: { readonly target: ShareTarget<TTarget["id"]> }) => TGrants
|
|
75
|
+
readonly description?: string
|
|
76
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { ActionDefinitionCatalog } from "../actions"
|
|
2
|
+
import type { OntologyDefinitionCatalog } from "../ontology"
|
|
3
|
+
import { snapshotShareDefinition } from "./builders"
|
|
4
|
+
import { compileShareAccessPlan } from "./compiler"
|
|
5
|
+
import { ShareDefinitionError } from "./errors"
|
|
6
|
+
import type { ShareDefinition } from "./types"
|
|
7
|
+
|
|
8
|
+
/** Cross-validate discovered Share definitions after ontology and Actions are registered. */
|
|
9
|
+
export function validateSharesAtStartup(input: {
|
|
10
|
+
readonly shares: readonly ShareDefinition[]
|
|
11
|
+
readonly ontology: OntologyDefinitionCatalog
|
|
12
|
+
readonly actions: ActionDefinitionCatalog
|
|
13
|
+
}): ReadonlyMap<string, ShareDefinition> {
|
|
14
|
+
const byId = new Map<string, ShareDefinition>()
|
|
15
|
+
for (const authoredShare of input.shares) {
|
|
16
|
+
const share = snapshotShareDefinition(authoredShare)
|
|
17
|
+
if (byId.has(share.id)) {
|
|
18
|
+
throw invalid(`Duplicate Share id: ${share.id}`)
|
|
19
|
+
}
|
|
20
|
+
compileShareAccessPlan({
|
|
21
|
+
share,
|
|
22
|
+
target: {
|
|
23
|
+
objectTypeId: share.target.objectTypeId,
|
|
24
|
+
primaryId: "__sixb_share_definition_validation__",
|
|
25
|
+
},
|
|
26
|
+
ontology: input.ontology,
|
|
27
|
+
actions: input.actions,
|
|
28
|
+
})
|
|
29
|
+
byId.set(share.id, share)
|
|
30
|
+
}
|
|
31
|
+
return byId
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export function assertShareDefinitionEnvelope(value: unknown): asserts value is ShareDefinition {
|
|
35
|
+
snapshotShareDefinition(value)
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function invalid(message: string): ShareDefinitionError {
|
|
39
|
+
return new ShareDefinitionError(`[Sixb] ${message}`)
|
|
40
|
+
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { AGENT_MESSAGE_CONTENT_VERSION } from "../../agents/message"
|
|
2
2
|
import { principalsEqual } from "../../auth"
|
|
3
|
-
import { normalizeRequesterGroupIds } from "../../auth/attribution"
|
|
4
3
|
import { parseSixbFailure } from "../../errors/internal"
|
|
5
4
|
import type { SixbFailure } from "../../errors/types"
|
|
6
5
|
import type { ExecutionStorage } from "../executions"
|
|
@@ -234,7 +233,6 @@ class InMemoryAgentRunStore implements AgentRunStore {
|
|
|
234
233
|
threadId: input.threadId,
|
|
235
234
|
triggerMessageId: input.triggerMessageId,
|
|
236
235
|
spec: clone(input.spec),
|
|
237
|
-
requesterGroupIds: normalizeRequesterGroupIds(input.requesterGroupIds),
|
|
238
236
|
status: "queued",
|
|
239
237
|
attempt: 0,
|
|
240
238
|
createdAt,
|
|
@@ -330,7 +328,6 @@ class InMemoryAgentRunStore implements AgentRunStore {
|
|
|
330
328
|
parentRunId: input.parentRunId,
|
|
331
329
|
spawnKey: input.spawnKey,
|
|
332
330
|
spec: clone(input.spec),
|
|
333
|
-
requesterGroupIds: clone(parent.requesterGroupIds),
|
|
334
331
|
status: "queued",
|
|
335
332
|
attempt: 0,
|
|
336
333
|
createdAt: new Date(input.createdAt ?? new Date()),
|
|
@@ -148,8 +148,6 @@ interface AgentRunRecordBase {
|
|
|
148
148
|
readonly id: string
|
|
149
149
|
readonly projectId: string
|
|
150
150
|
readonly executionId: string
|
|
151
|
-
/** Durable group memberships snapshotted when the run was admitted. */
|
|
152
|
-
readonly requesterGroupIds: readonly string[]
|
|
153
151
|
readonly status: AgentRunStatus
|
|
154
152
|
readonly modelId?: string
|
|
155
153
|
/** Why the run ended (our own SDK-independent enum). */
|
|
@@ -215,7 +213,6 @@ export interface CreateAgentRunInput {
|
|
|
215
213
|
readonly threadId: string
|
|
216
214
|
readonly triggerMessageId: string
|
|
217
215
|
readonly spec: ConversationAgentRunSpec
|
|
218
|
-
readonly requesterGroupIds: readonly string[]
|
|
219
216
|
readonly createdAt?: Date
|
|
220
217
|
}
|
|
221
218
|
|
|
@@ -168,7 +168,7 @@ export function buildAiAccountingOverview(
|
|
|
168
168
|
item
|
|
169
169
|
)
|
|
170
170
|
}
|
|
171
|
-
if (item.attribution?.kind === "workflowAgent") {
|
|
171
|
+
if (item.attribution?.kind === "workflowAgent" || item.attribution?.kind === "workflow") {
|
|
172
172
|
appendGrouped(workflowItems, item.attribution.workflowId, item)
|
|
173
173
|
}
|
|
174
174
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { AiAccountingAttribution } from "./types"
|
|
2
|
+
|
|
3
|
+
/** Direct calls are identified by durable provenance, even when their run has been removed. */
|
|
4
|
+
export function directModelCallAttribution(
|
|
5
|
+
kind: string | null,
|
|
6
|
+
id: string | null,
|
|
7
|
+
primitiveId: string | null
|
|
8
|
+
): AiAccountingAttribution | undefined {
|
|
9
|
+
if (!id) return undefined
|
|
10
|
+
if (kind === "request") return { kind, requestId: id }
|
|
11
|
+
if (kind === "action" && primitiveId) return { kind, actionId: primitiveId, actionRunId: id }
|
|
12
|
+
if (kind === "workflow" && primitiveId)
|
|
13
|
+
return { kind, workflowId: primitiveId, workflowRunId: id }
|
|
14
|
+
return undefined
|
|
15
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { AiAccountingRecordSetItem } from "./analytics"
|
|
2
2
|
import { aiAccountingItemMatchesQuery, normalizeAiModelCallAccountingQuery } from "./analytics"
|
|
3
|
+
import { directModelCallAttribution } from "./attribution"
|
|
3
4
|
import type {
|
|
4
5
|
AiAccountingAttribution,
|
|
5
6
|
AiBillingIdentity,
|
|
@@ -56,12 +57,15 @@ export interface AiModelCallGroupRow {
|
|
|
56
57
|
readonly workflow_node_run_id: string | null
|
|
57
58
|
readonly workflow_id: string | null
|
|
58
59
|
readonly workflow_run_id: string | null
|
|
60
|
+
readonly executor_kind: string | null
|
|
61
|
+
readonly executor_id: string | null
|
|
62
|
+
readonly primitive_id: string | null
|
|
59
63
|
}
|
|
60
64
|
|
|
61
65
|
export function aiModelCallGroupFragmentFromRow(
|
|
62
66
|
row: AiModelCallGroupRow
|
|
63
67
|
): AiModelCallGroupFragment {
|
|
64
|
-
let attribution
|
|
68
|
+
let attribution = directModelCallAttribution(row.executor_kind, row.executor_id, row.primitive_id)
|
|
65
69
|
if (row.root_agent_run_id && row.root_thread_id) {
|
|
66
70
|
attribution = {
|
|
67
71
|
kind: "agent",
|
|
@@ -12,6 +12,7 @@ export {
|
|
|
12
12
|
normalizeAiModelCallAccountingQuery,
|
|
13
13
|
toAccountingItem,
|
|
14
14
|
} from "./analytics"
|
|
15
|
+
export { directModelCallAttribution } from "./attribution"
|
|
15
16
|
export type { AiModelCallCostDetails } from "./codec"
|
|
16
17
|
export { aiModelCallCostDetails, parseAiModelCallCostDetails } from "./codec"
|
|
17
18
|
export type {
|
|
@@ -181,7 +181,14 @@ export interface AiAccountingOverview {
|
|
|
181
181
|
readonly workflows: readonly AiAccountingWorkflowBreakdown[]
|
|
182
182
|
}
|
|
183
183
|
|
|
184
|
+
/**
|
|
185
|
+
* The execution that made the model call, rather than the request that triggered its work.
|
|
186
|
+
* `request` identifies a direct call from a request-bound SDK, outside an action or workflow.
|
|
187
|
+
*/
|
|
184
188
|
export type AiAccountingAttribution =
|
|
189
|
+
| { readonly kind: "request"; readonly requestId: string }
|
|
190
|
+
| { readonly kind: "action"; readonly actionId: string; readonly actionRunId: string }
|
|
191
|
+
| { readonly kind: "workflow"; readonly workflowId: string; readonly workflowRunId: string }
|
|
185
192
|
| {
|
|
186
193
|
readonly kind: "agent"
|
|
187
194
|
readonly agentRunId: string
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { InMemoryAuthStorage } from "./in-memory/
|
|
1
|
+
export { InMemoryAuthStorage } from "./in-memory/auth-storage"
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import type { AuthStorage } from "../auth"
|
|
2
|
+
import type { ShareSessionStorage } from "../share-sessions"
|
|
2
3
|
import { ExecutionStorageError } from "./errors"
|
|
3
4
|
import type { CreateExecutionInput, ExecutionRecord, ExecutionStorage } from "./types"
|
|
4
|
-
import {
|
|
5
|
-
cloneExecutionRecord,
|
|
6
|
-
normalizeExecutionRecord,
|
|
7
|
-
validateExecutionRecordReferences,
|
|
8
|
-
} from "./validation"
|
|
5
|
+
import { cloneExecutionRecord, prepareExecutionRecord } from "./validation"
|
|
9
6
|
|
|
10
7
|
type RunRootOperation = <T>(run: () => Promise<T> | T) => Promise<T>
|
|
11
8
|
|
|
@@ -18,12 +15,17 @@ function executionKey(projectId: string, id: string): string {
|
|
|
18
15
|
export class InMemoryExecutionStorage implements ExecutionStorage {
|
|
19
16
|
private readonly rows = new Map<string, ExecutionRecord>()
|
|
20
17
|
private readonly runRootOperation: RunRootOperation
|
|
18
|
+
private readonly shareSessions?: Pick<ShareSessionStorage, "getById">
|
|
21
19
|
|
|
22
20
|
constructor(
|
|
23
21
|
private readonly auth: AuthStorage,
|
|
24
|
-
input: {
|
|
22
|
+
input: {
|
|
23
|
+
readonly runRootOperation?: RunRootOperation
|
|
24
|
+
readonly shareSessions?: Pick<ShareSessionStorage, "getById">
|
|
25
|
+
} = {}
|
|
25
26
|
) {
|
|
26
27
|
this.runRootOperation = input.runRootOperation ?? runDirectly
|
|
28
|
+
this.shareSessions = input.shareSessions
|
|
27
29
|
}
|
|
28
30
|
|
|
29
31
|
snapshot(): InMemoryExecutionStorageSnapshot {
|
|
@@ -39,21 +41,22 @@ export class InMemoryExecutionStorage implements ExecutionStorage {
|
|
|
39
41
|
|
|
40
42
|
async create(input: CreateExecutionInput): Promise<ExecutionRecord> {
|
|
41
43
|
return this.runRootOperation(async () => {
|
|
42
|
-
const
|
|
43
|
-
const key = executionKey(record.projectId, record.id)
|
|
44
|
+
const key = executionKey(input.projectId, input.id)
|
|
44
45
|
if (this.rows.has(key)) {
|
|
45
46
|
throw new ExecutionStorageError(
|
|
46
47
|
"duplicate_execution",
|
|
47
|
-
`[Sixb] Execution '${
|
|
48
|
+
`[Sixb] Execution '${input.id}' already exists in project '${input.projectId}'.`
|
|
48
49
|
)
|
|
49
50
|
}
|
|
50
51
|
|
|
51
|
-
await
|
|
52
|
+
const record = await prepareExecutionRecord(input, {
|
|
52
53
|
auth: this.auth,
|
|
53
54
|
getExecution: async ({ projectId, id }) => {
|
|
54
55
|
const existing = this.rows.get(executionKey(projectId, id))
|
|
55
56
|
return existing ? cloneExecutionRecord(existing) : null
|
|
56
57
|
},
|
|
58
|
+
getShareSession: async ({ projectId, id }) =>
|
|
59
|
+
(await this.shareSessions?.getById({ projectId, id })) ?? null,
|
|
57
60
|
})
|
|
58
61
|
|
|
59
62
|
this.rows.set(key, cloneExecutionRecord(record))
|
|
@@ -6,6 +6,7 @@ import { normalizeExecutionRecord } from "./validation"
|
|
|
6
6
|
export {
|
|
7
7
|
type ExecutionValidationLookup,
|
|
8
8
|
normalizeExecutionRecord,
|
|
9
|
+
prepareExecutionRecord,
|
|
9
10
|
validateExecutionRecordReferences,
|
|
10
11
|
} from "./validation"
|
|
11
12
|
|
|
@@ -19,10 +20,11 @@ export interface ExecutionStorageRow {
|
|
|
19
20
|
readonly sourceId: string
|
|
20
21
|
readonly requestedByUserId: string | null
|
|
21
22
|
readonly requestedByServiceAccountId: string | null
|
|
23
|
+
readonly requesterGroupIds: readonly string[]
|
|
22
24
|
readonly correlationId: string
|
|
23
25
|
/** SQL-only projection of an execution source, used to enforce the parent foreign key. */
|
|
24
26
|
readonly parentExecutionId: string | null
|
|
25
|
-
readonly authorityKind: "disabled" | "kernel" | "principal" | "trustedPrimitive"
|
|
27
|
+
readonly authorityKind: "delegated" | "disabled" | "kernel" | "principal" | "trustedPrimitive"
|
|
26
28
|
readonly authorityUserId: string | null
|
|
27
29
|
readonly authorityServiceAccountId: string | null
|
|
28
30
|
readonly authoritySessionId: string | null
|
|
@@ -30,6 +32,9 @@ export interface ExecutionStorageRow {
|
|
|
30
32
|
readonly authorityPrimitiveKind: TrustedPrimitiveKind | null
|
|
31
33
|
readonly authorityPrimitiveId: string | null
|
|
32
34
|
readonly authorityKernelOperation: "ontology.recover" | null
|
|
35
|
+
readonly authorityDelegationKind: "share" | null
|
|
36
|
+
readonly authorityDelegationId: string | null
|
|
37
|
+
readonly authorityDelegationSessionId: string | null
|
|
33
38
|
readonly createdAt: Date
|
|
34
39
|
}
|
|
35
40
|
|
|
@@ -40,6 +45,7 @@ export function executionRecordToStorageRow(record: ExecutionRecord): ExecutionS
|
|
|
40
45
|
return {
|
|
41
46
|
projectId: record.projectId,
|
|
42
47
|
id: record.id,
|
|
48
|
+
requesterGroupIds: [...record.requesterGroupIds],
|
|
43
49
|
...executor,
|
|
44
50
|
...source,
|
|
45
51
|
requestedByUserId: record.requestedBy?.type === "user" ? record.requestedBy.id : null,
|
|
@@ -67,6 +73,7 @@ export function executionRecordFromStorageRow(row: ExecutionStorageRow): Executi
|
|
|
67
73
|
{
|
|
68
74
|
id: row.id,
|
|
69
75
|
projectId: row.projectId,
|
|
76
|
+
requesterGroupIds: row.requesterGroupIds,
|
|
70
77
|
...(requestedBy === undefined ? {} : { requestedBy }),
|
|
71
78
|
executor,
|
|
72
79
|
source,
|
|
@@ -132,6 +139,9 @@ function flattenAuthority(
|
|
|
132
139
|
ExecutionStorageRow,
|
|
133
140
|
| "authorityAccessTokenId"
|
|
134
141
|
| "authorityKernelOperation"
|
|
142
|
+
| "authorityDelegationKind"
|
|
143
|
+
| "authorityDelegationId"
|
|
144
|
+
| "authorityDelegationSessionId"
|
|
135
145
|
| "authorityKind"
|
|
136
146
|
| "authorityPrimitiveId"
|
|
137
147
|
| "authorityPrimitiveKind"
|
|
@@ -147,6 +157,9 @@ function flattenAuthority(
|
|
|
147
157
|
authorityPrimitiveKind: null,
|
|
148
158
|
authorityPrimitiveId: null,
|
|
149
159
|
authorityKernelOperation: null,
|
|
160
|
+
authorityDelegationKind: null,
|
|
161
|
+
authorityDelegationId: null,
|
|
162
|
+
authorityDelegationSessionId: null,
|
|
150
163
|
}
|
|
151
164
|
|
|
152
165
|
switch (record.authorizationRef.type) {
|
|
@@ -178,6 +191,14 @@ function flattenAuthority(
|
|
|
178
191
|
authorityPrimitiveKind: record.authorizationRef.primitive.kind,
|
|
179
192
|
authorityPrimitiveId: record.authorizationRef.primitive.id,
|
|
180
193
|
}
|
|
194
|
+
case "delegated":
|
|
195
|
+
return {
|
|
196
|
+
...empty,
|
|
197
|
+
authorityKind: "delegated",
|
|
198
|
+
authorityDelegationKind: record.authorizationRef.delegation.kind,
|
|
199
|
+
authorityDelegationId: record.authorizationRef.delegation.grantId,
|
|
200
|
+
authorityDelegationSessionId: record.authorizationRef.delegation.sessionId,
|
|
201
|
+
}
|
|
181
202
|
case "kernel":
|
|
182
203
|
return {
|
|
183
204
|
...empty,
|
|
@@ -271,6 +292,18 @@ function inflateAuthority(row: ExecutionStorageRow): CreateExecutionInput["autho
|
|
|
271
292
|
runId: row.executorId,
|
|
272
293
|
},
|
|
273
294
|
}
|
|
295
|
+
case "delegated":
|
|
296
|
+
return {
|
|
297
|
+
type: "delegated",
|
|
298
|
+
delegation: {
|
|
299
|
+
kind: requireValue(row.authorityDelegationKind, "authority delegation kind"),
|
|
300
|
+
grantId: requireValue(row.authorityDelegationId, "authority delegation id"),
|
|
301
|
+
sessionId: requireValue(
|
|
302
|
+
row.authorityDelegationSessionId,
|
|
303
|
+
"authority delegation session id"
|
|
304
|
+
),
|
|
305
|
+
},
|
|
306
|
+
}
|
|
274
307
|
case "kernel":
|
|
275
308
|
return {
|
|
276
309
|
type: "kernel",
|