@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,152 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import {
|
|
3
|
+
validateSchemaValue2,
|
|
4
|
+
isRecord2
|
|
5
|
+
} from "./chunk-ms2tmn1k.js";
|
|
6
|
+
import {
|
|
7
|
+
OntologyValidationError2
|
|
8
|
+
} from "./chunk-cqr3acm1.js";
|
|
9
|
+
|
|
10
|
+
// src/ontology/refs.ts
|
|
11
|
+
function ref2(objectType) {
|
|
12
|
+
return {
|
|
13
|
+
type: "objectRef",
|
|
14
|
+
objectTypeId: objectType.id
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
function objectRef2(objectType, primaryId) {
|
|
18
|
+
if (typeof objectType !== "object" || objectType === null || typeof objectType.id !== "string" || !objectType.id.trim()) {
|
|
19
|
+
throw new OntologyValidationError2("[Sixb] Object reference type must be an object type.");
|
|
20
|
+
}
|
|
21
|
+
if (typeof primaryId !== "string" || !primaryId.trim()) {
|
|
22
|
+
throw new OntologyValidationError2("[Sixb] Object reference primary id must not be empty.");
|
|
23
|
+
}
|
|
24
|
+
return Object.freeze({ objectTypeId: objectType.id, primaryId });
|
|
25
|
+
}
|
|
26
|
+
function isObjectRefSchema2(schema) {
|
|
27
|
+
return typeof schema === "object" && schema !== null && schema.type === "objectRef";
|
|
28
|
+
}
|
|
29
|
+
function validateSchemaOrRefValue2(schema, value, path, valueTypesById) {
|
|
30
|
+
if (isObjectRefSchema2(schema)) {
|
|
31
|
+
validateObjectRefValue(schema, value, path);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
validateSchemaValue2(schema, value, path, valueTypesById);
|
|
35
|
+
}
|
|
36
|
+
function validateObjectRefValue(schema, value, path) {
|
|
37
|
+
if (!isRecord2(value)) {
|
|
38
|
+
throw new OntologyValidationError2(`[Sixb] Property ${path} must be an objectRef`);
|
|
39
|
+
}
|
|
40
|
+
const allowedFields = new Set(["objectTypeId", "primaryId"]);
|
|
41
|
+
for (const fieldId of Object.keys(value)) {
|
|
42
|
+
if (!allowedFields.has(fieldId)) {
|
|
43
|
+
throw new OntologyValidationError2(`[Sixb] Unknown field '${path}.${fieldId}'`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (value.objectTypeId !== schema.objectTypeId) {
|
|
47
|
+
throw new OntologyValidationError2(`[Sixb] Property ${path}.objectTypeId must be "${schema.objectTypeId}"`);
|
|
48
|
+
}
|
|
49
|
+
if (typeof value.primaryId !== "string") {
|
|
50
|
+
throw new OntologyValidationError2(`[Sixb] Property ${path}.primaryId must be a string`);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// src/ontology/link-path-selection.ts
|
|
55
|
+
function snapshotLinkPathSelection(input) {
|
|
56
|
+
return snapshotLinkPathSelectionValue(input, new Set);
|
|
57
|
+
}
|
|
58
|
+
function snapshotLinkPathSelectionValue(input, visiting) {
|
|
59
|
+
if (typeof input !== "object" || input === null || Array.isArray(input)) {
|
|
60
|
+
throw new Error("[Sixb] Link path selection must be a link token or nested link selection.");
|
|
61
|
+
}
|
|
62
|
+
if (visiting.has(input)) {
|
|
63
|
+
throw new Error("[Sixb] Link path selection must not contain a cycle.");
|
|
64
|
+
}
|
|
65
|
+
visiting.add(input);
|
|
66
|
+
try {
|
|
67
|
+
if (isLinkPathSelection(input)) {
|
|
68
|
+
return createLinkPathSelectionFromIds({
|
|
69
|
+
sourceObjectTypeId: input.sourceObjectTypeId,
|
|
70
|
+
linkId: input.linkId,
|
|
71
|
+
targetObjectTypeId: input.targetObjectTypeId,
|
|
72
|
+
selection: input.selection
|
|
73
|
+
}, visiting);
|
|
74
|
+
}
|
|
75
|
+
return createLinkPathSelectionFromIds({
|
|
76
|
+
sourceObjectTypeId: input.objectTypeId,
|
|
77
|
+
linkId: input.id,
|
|
78
|
+
targetObjectTypeId: input.targetObjectTypeId,
|
|
79
|
+
selection: { kind: "none" }
|
|
80
|
+
}, visiting);
|
|
81
|
+
} finally {
|
|
82
|
+
visiting.delete(input);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
function isLinkPathSelection(value) {
|
|
86
|
+
return typeof value === "object" && value !== null && value.kind === "linkPathSelection";
|
|
87
|
+
}
|
|
88
|
+
function createLinkPathSelection(token, links) {
|
|
89
|
+
if (links !== undefined && !Array.isArray(links)) {
|
|
90
|
+
throw new Error(`[Sixb] Link '${token.objectTypeId}.${token.id}' withLinks expects an array.`);
|
|
91
|
+
}
|
|
92
|
+
if (links?.length === 0) {
|
|
93
|
+
throw new Error(`[Sixb] Link '${token.objectTypeId}.${token.id}' withLinks([]) is empty; omit withLinks() when no nested links should be selected.`);
|
|
94
|
+
}
|
|
95
|
+
return createLinkPathSelectionFromIds({
|
|
96
|
+
sourceObjectTypeId: token.objectTypeId,
|
|
97
|
+
linkId: token.id,
|
|
98
|
+
targetObjectTypeId: token.targetObjectTypeId,
|
|
99
|
+
selection: links === undefined ? { kind: "all" } : { kind: "selected", links: links.map(snapshotLinkPathSelection) }
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
function createLinkPathSelectionFromIds(input, visiting = new Set) {
|
|
103
|
+
const sourceObjectTypeId = nonEmptyLinkSelectionId(input.sourceObjectTypeId, "source object type id");
|
|
104
|
+
const linkId = nonEmptyLinkSelectionId(input.linkId, "link id");
|
|
105
|
+
const targetObjectTypeId = snapshotLinkTarget(input.targetObjectTypeId);
|
|
106
|
+
const selection = snapshotLinkSelectionMode(input.selection, visiting);
|
|
107
|
+
return Object.freeze({
|
|
108
|
+
kind: "linkPathSelection",
|
|
109
|
+
sourceObjectTypeId,
|
|
110
|
+
linkId,
|
|
111
|
+
targetObjectTypeId,
|
|
112
|
+
selection
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
function snapshotLinkSelectionMode(value, visiting) {
|
|
116
|
+
if (typeof value !== "object" || value === null) {
|
|
117
|
+
throw new Error("[Sixb] Link path selection must declare nested links.");
|
|
118
|
+
}
|
|
119
|
+
const kind = value.kind;
|
|
120
|
+
if (kind === "none" || kind === "all")
|
|
121
|
+
return Object.freeze({ kind });
|
|
122
|
+
if (kind !== "selected") {
|
|
123
|
+
throw new Error(`[Sixb] Unknown nested link selection '${String(kind)}'.`);
|
|
124
|
+
}
|
|
125
|
+
const links = value.links;
|
|
126
|
+
if (!Array.isArray(links)) {
|
|
127
|
+
throw new Error("[Sixb] Selected nested links must be an array.");
|
|
128
|
+
}
|
|
129
|
+
if (links.length === 0) {
|
|
130
|
+
throw new Error("[Sixb] Selected nested links must not be empty; omit withLinks() when no nested links should be selected.");
|
|
131
|
+
}
|
|
132
|
+
return Object.freeze({
|
|
133
|
+
kind: "selected",
|
|
134
|
+
links: Object.freeze(links.map((link) => snapshotLinkPathSelectionValue(link, visiting)))
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
function snapshotLinkTarget(value) {
|
|
138
|
+
if (Array.isArray(value)) {
|
|
139
|
+
return Object.freeze(value.map((item) => nonEmptyLinkSelectionId(item, "target object type id")));
|
|
140
|
+
}
|
|
141
|
+
return nonEmptyLinkSelectionId(value, "target object type id");
|
|
142
|
+
}
|
|
143
|
+
function nonEmptyLinkSelectionId(value, field) {
|
|
144
|
+
if (typeof value !== "string" || !value.trim()) {
|
|
145
|
+
throw new Error(`[Sixb] Link path ${field} must not be empty.`);
|
|
146
|
+
}
|
|
147
|
+
return value;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export { ref2, objectRef2, isObjectRefSchema2, validateSchemaOrRefValue2, snapshotLinkPathSelection, createLinkPathSelection };
|
|
151
|
+
|
|
152
|
+
//# debugId=830E89BB4560E23064756E2164756E21
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/ontology/refs.ts", "../src/ontology/link-path-selection.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"import { OntologyValidationError } from \"./errors\"\nimport type { InferSchema } from \"./inference\"\nimport type { ObjectType, Schema, ValueType } from \"./types\"\nimport { isRecord, validateSchemaValue } from \"./validation\"\n\nexport type ObjectRef<TObjectTypeId extends string = string> = {\n objectTypeId: TObjectTypeId\n primaryId: string\n}\n\nexport interface ObjectRefSchema<TObjectTypeId extends string = string> {\n readonly type: \"objectRef\"\n readonly objectTypeId: TObjectTypeId\n}\n\nexport type SchemaOrRef = Schema | ObjectRefSchema\n\nexport type InferSchemaOrRef<\n TSchema extends SchemaOrRef,\n TValueTypes extends readonly ValueType[] = [],\n> =\n TSchema extends ObjectRefSchema<infer TObjectTypeId>\n ? ObjectRef<TObjectTypeId>\n : TSchema extends Schema\n ? InferSchema<TSchema, TValueTypes>\n : never\n\nexport function ref<const TObjectType extends ObjectType>(\n objectType: TObjectType\n): ObjectRefSchema<TObjectType[\"id\"]> {\n return {\n type: \"objectRef\",\n objectTypeId: objectType.id,\n }\n}\n\n/** Build an exact, typed reference to one object instance. */\nexport function objectRef<const TObjectType extends ObjectType>(\n objectType: TObjectType,\n primaryId: string\n): ObjectRef<TObjectType[\"id\"]> {\n if (\n typeof objectType !== \"object\" ||\n objectType === null ||\n typeof objectType.id !== \"string\" ||\n !objectType.id.trim()\n ) {\n throw new OntologyValidationError(\"[Sixb] Object reference type must be an object type.\")\n }\n if (typeof primaryId !== \"string\" || !primaryId.trim()) {\n throw new OntologyValidationError(\"[Sixb] Object reference primary id must not be empty.\")\n }\n return Object.freeze({ objectTypeId: objectType.id, primaryId })\n}\n\nexport function isObjectRefSchema(schema: SchemaOrRef): schema is ObjectRefSchema {\n return (\n typeof schema === \"object\" &&\n schema !== null &&\n (schema as { type?: unknown }).type === \"objectRef\"\n )\n}\n\nexport function validateSchemaOrRefValue(\n schema: SchemaOrRef,\n value: unknown,\n path: string,\n valueTypesById: ReadonlyMap<string, ValueType>\n): void {\n if (isObjectRefSchema(schema)) {\n validateObjectRefValue(schema, value, path)\n return\n }\n\n validateSchemaValue(schema, value, path, valueTypesById)\n}\n\nfunction validateObjectRefValue(schema: ObjectRefSchema, value: unknown, path: string): void {\n if (!isRecord(value)) {\n throw new OntologyValidationError(`[Sixb] Property ${path} must be an objectRef`)\n }\n\n const allowedFields = new Set([\"objectTypeId\", \"primaryId\"])\n for (const fieldId of Object.keys(value)) {\n if (!allowedFields.has(fieldId)) {\n throw new OntologyValidationError(`[Sixb] Unknown field '${path}.${fieldId}'`)\n }\n }\n\n if (value.objectTypeId !== schema.objectTypeId) {\n throw new OntologyValidationError(\n `[Sixb] Property ${path}.objectTypeId must be \"${schema.objectTypeId}\"`\n )\n }\n\n if (typeof value.primaryId !== \"string\") {\n throw new OntologyValidationError(`[Sixb] Property ${path}.primaryId must be a string`)\n }\n}\n",
|
|
6
|
+
"import type { LinkToken } from \"./tokens\"\n\ndeclare const linkPathSelectionBrand: unique symbol\n\ntype LinkTargetObjectTypeId<TTarget> = TTarget extends readonly string[]\n ? TTarget[number]\n : TTarget extends \"*\"\n ? string\n : TTarget extends string\n ? TTarget\n : never\n\nexport type LinkPathSelectionMode =\n | { readonly kind: \"none\" }\n | { readonly kind: \"all\" }\n | {\n readonly kind: \"selected\"\n readonly links: readonly LinkPathSelection[]\n }\n\n/**\n * Inert nested selection produced by `ObjectType.l.someLink.withLinks(...)`.\n *\n * It stores ids only. Consumers such as Share definitions resolve those ids against their own\n * current ontology registry instead of trusting the token's embedded metadata.\n */\nexport type LinkPathSelection<\n TSourceObjectTypeId extends string = string,\n TLinkId extends string = string,\n TTargetObjectTypeId extends string | readonly string[] = string | readonly string[],\n> = {\n readonly [linkPathSelectionBrand]?: never\n readonly kind: \"linkPathSelection\"\n readonly sourceObjectTypeId: TSourceObjectTypeId\n readonly linkId: TLinkId\n readonly targetObjectTypeId: TTargetObjectTypeId\n readonly selection: LinkPathSelectionMode\n}\n\nexport type LinkPathSelectionInput<TSourceObjectTypeId extends string = string> =\n | LinkToken<TSourceObjectTypeId>\n | LinkPathSelection<TSourceObjectTypeId>\n\nexport interface LinkPathSelectionBuilder<\n TSourceObjectTypeId extends string,\n TLinkId extends string,\n TTargetObjectTypeId extends string | readonly string[],\n> {\n withLinks(): LinkPathSelection<TSourceObjectTypeId, TLinkId, TTargetObjectTypeId>\n withLinks<\n const TLinks extends readonly LinkPathSelectionInput<\n LinkTargetObjectTypeId<TTargetObjectTypeId>\n >[],\n >(links: TLinks): LinkPathSelection<TSourceObjectTypeId, TLinkId, TTargetObjectTypeId>\n}\n\n/** @internal Snapshot a token/path into the portable ids-only representation. */\nexport function snapshotLinkPathSelection(input: LinkPathSelectionInput): LinkPathSelection {\n return snapshotLinkPathSelectionValue(input, new Set())\n}\n\nfunction snapshotLinkPathSelectionValue(input: unknown, visiting: Set<object>): LinkPathSelection {\n if (typeof input !== \"object\" || input === null || Array.isArray(input)) {\n throw new Error(\"[Sixb] Link path selection must be a link token or nested link selection.\")\n }\n if (visiting.has(input)) {\n throw new Error(\"[Sixb] Link path selection must not contain a cycle.\")\n }\n visiting.add(input)\n try {\n if (isLinkPathSelection(input)) {\n return createLinkPathSelectionFromIds(\n {\n sourceObjectTypeId: input.sourceObjectTypeId,\n linkId: input.linkId,\n targetObjectTypeId: input.targetObjectTypeId,\n selection: input.selection,\n },\n visiting\n )\n }\n\n return createLinkPathSelectionFromIds(\n {\n sourceObjectTypeId: (input as { readonly objectTypeId?: unknown }).objectTypeId,\n linkId: (input as { readonly id?: unknown }).id,\n targetObjectTypeId: (input as { readonly targetObjectTypeId?: unknown }).targetObjectTypeId,\n selection: { kind: \"none\" },\n },\n visiting\n )\n } finally {\n visiting.delete(input)\n }\n}\n\n/** @internal */\nfunction isLinkPathSelection(value: unknown): value is LinkPathSelection {\n return (\n typeof value === \"object\" &&\n value !== null &&\n (value as { readonly kind?: unknown }).kind === \"linkPathSelection\"\n )\n}\n\nexport function createLinkPathSelection(\n token: LinkToken,\n links: readonly LinkPathSelectionInput[] | undefined\n): LinkPathSelection {\n if (links !== undefined && !Array.isArray(links)) {\n throw new Error(`[Sixb] Link '${token.objectTypeId}.${token.id}' withLinks expects an array.`)\n }\n if (links?.length === 0) {\n throw new Error(\n `[Sixb] Link '${token.objectTypeId}.${token.id}' withLinks([]) is empty; omit withLinks() when no nested links should be selected.`\n )\n }\n\n return createLinkPathSelectionFromIds({\n sourceObjectTypeId: token.objectTypeId,\n linkId: token.id,\n targetObjectTypeId: token.targetObjectTypeId,\n selection:\n links === undefined\n ? { kind: \"all\" }\n : { kind: \"selected\", links: links.map(snapshotLinkPathSelection) },\n })\n}\n\nfunction createLinkPathSelectionFromIds(\n input: {\n readonly sourceObjectTypeId: unknown\n readonly linkId: unknown\n readonly targetObjectTypeId: unknown\n readonly selection: unknown\n },\n visiting: Set<object> = new Set()\n): LinkPathSelection {\n const sourceObjectTypeId = nonEmptyLinkSelectionId(\n input.sourceObjectTypeId,\n \"source object type id\"\n )\n const linkId = nonEmptyLinkSelectionId(input.linkId, \"link id\")\n const targetObjectTypeId = snapshotLinkTarget(input.targetObjectTypeId)\n const selection = snapshotLinkSelectionMode(input.selection, visiting)\n return Object.freeze({\n kind: \"linkPathSelection\" as const,\n sourceObjectTypeId,\n linkId,\n targetObjectTypeId,\n selection,\n })\n}\n\nfunction snapshotLinkSelectionMode(value: unknown, visiting: Set<object>): LinkPathSelectionMode {\n if (typeof value !== \"object\" || value === null) {\n throw new Error(\"[Sixb] Link path selection must declare nested links.\")\n }\n const kind = (value as { readonly kind?: unknown }).kind\n if (kind === \"none\" || kind === \"all\") return Object.freeze({ kind })\n if (kind !== \"selected\") {\n throw new Error(`[Sixb] Unknown nested link selection '${String(kind)}'.`)\n }\n const links = (value as { readonly links?: unknown }).links\n if (!Array.isArray(links)) {\n throw new Error(\"[Sixb] Selected nested links must be an array.\")\n }\n if (links.length === 0) {\n throw new Error(\n \"[Sixb] Selected nested links must not be empty; omit withLinks() when no nested links should be selected.\"\n )\n }\n return Object.freeze({\n kind: \"selected\" as const,\n links: Object.freeze(links.map((link) => snapshotLinkPathSelectionValue(link, visiting))),\n })\n}\n\nfunction snapshotLinkTarget(value: unknown): string | readonly string[] {\n if (Array.isArray(value)) {\n return Object.freeze(\n value.map((item) => nonEmptyLinkSelectionId(item, \"target object type id\"))\n )\n }\n return nonEmptyLinkSelectionId(value, \"target object type id\")\n}\n\nfunction nonEmptyLinkSelectionId(value: unknown, field: string): string {\n if (typeof value !== \"string\" || !value.trim()) {\n throw new Error(`[Sixb] Link path ${field} must not be empty.`)\n }\n return value\n}\n"
|
|
7
|
+
],
|
|
8
|
+
"mappings": "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",
|
|
9
|
+
"debugId": "830E89BB4560E23064756E2164756E21",
|
|
10
|
+
"names": []
|
|
11
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
isJsonValue2,
|
|
4
|
+
cloneJsonValue2,
|
|
5
5
|
isPlainRecord
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-wy0qdqfm.js";
|
|
7
7
|
|
|
8
8
|
// src/errors/catalog.ts
|
|
9
9
|
var SIXB_ERROR_DEFINITIONS = {
|
|
@@ -144,13 +144,84 @@ var SIXB_ERROR_DEFINITIONS = {
|
|
|
144
144
|
retryable: false
|
|
145
145
|
}
|
|
146
146
|
};
|
|
147
|
-
var
|
|
147
|
+
var SIXB_ERROR_CODES2 = Object.freeze(Object.keys(SIXB_ERROR_DEFINITIONS));
|
|
148
|
+
|
|
149
|
+
// src/errors/redaction.ts
|
|
150
|
+
var REDACTED = "[REDACTED]";
|
|
151
|
+
var MAX_CONTEXT_DEPTH = 12;
|
|
152
|
+
var MAX_CONTEXT_ENTRIES = 1024;
|
|
153
|
+
var SENSITIVE_KEY = /password|passwd|passphrase|secret|token|credential|authorization|cookie|privatekey|apikey|accesskey|connectionstring|databaseurl|clientassertion|signature/i;
|
|
154
|
+
var PRIVATE_CONTAINER = /^(?:request|response)(?:body|headers)?$|^(?:headers|body|payload|env|environment)$/i;
|
|
155
|
+
function isSensitiveKey(key) {
|
|
156
|
+
const normalized = key.replace(/[^a-z0-9]/gi, "");
|
|
157
|
+
return SENSITIVE_KEY.test(normalized) || PRIVATE_CONTAINER.test(normalized);
|
|
158
|
+
}
|
|
159
|
+
function environmentSecrets() {
|
|
160
|
+
return Object.entries(process.env).filter(([key, value]) => isSensitiveKey(key) && value !== undefined && value.length >= 4).map(([, value]) => value).sort((a, b) => b.length - a.length);
|
|
161
|
+
}
|
|
162
|
+
function createFailureRedactor() {
|
|
163
|
+
const secrets = environmentSecrets();
|
|
164
|
+
let redacted = false;
|
|
165
|
+
let truncated = false;
|
|
166
|
+
let entries = 0;
|
|
167
|
+
const text = (input) => {
|
|
168
|
+
let value = input;
|
|
169
|
+
for (const secret of secrets) {
|
|
170
|
+
value = value.split(REDACTED).map((part) => part.split(secret).join(REDACTED)).join(REDACTED);
|
|
171
|
+
}
|
|
172
|
+
value = value.replace(/-----BEGIN [^-]*PRIVATE KEY-----[\s\S]*?(?:-----END [^-]*PRIVATE KEY-----|$)/g, REDACTED).replace(/\b(?:Bearer|Basic)\s+[A-Za-z0-9+/_.~=-]+/gi, REDACTED).replace(/\beyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\b/g, REDACTED).replace(/\b(?:sk[-_](?:live[-_]|test[-_]|proj[-_])?[A-Za-z0-9_-]{12,}|gh[pousr]_[A-Za-z0-9_]{20,}|github_pat_[A-Za-z0-9_]+|AKIA[A-Z0-9]{16})\b/g, REDACTED).replace(/\b[a-z][a-z0-9+.-]*:\/\/[^\s<>"']+/gi, REDACTED).replace(/["']?\b(?:password|passwd|passphrase|[a-z_-]*secret|[a-z_-]*token|api[-_]?key|authorization|cookie|credential|signature)["']?\s*[=:]\s*(?:"[^"\r\n]*"|'[^'\r\n]*'|[^\s,;]+)/gi, REDACTED);
|
|
173
|
+
if (value !== input)
|
|
174
|
+
redacted = true;
|
|
175
|
+
return value;
|
|
176
|
+
};
|
|
177
|
+
const context = (value, depth = 0) => {
|
|
178
|
+
if (depth > MAX_CONTEXT_DEPTH || entries++ >= MAX_CONTEXT_ENTRIES) {
|
|
179
|
+
truncated = true;
|
|
180
|
+
return "[TRUNCATED]";
|
|
181
|
+
}
|
|
182
|
+
if (typeof value === "string")
|
|
183
|
+
return text(value);
|
|
184
|
+
if (value === null || typeof value !== "object")
|
|
185
|
+
return value;
|
|
186
|
+
if (Array.isArray(value)) {
|
|
187
|
+
const available = Math.max(0, MAX_CONTEXT_ENTRIES - entries);
|
|
188
|
+
if (value.length > available)
|
|
189
|
+
truncated = true;
|
|
190
|
+
return value.slice(0, available).map((entry) => context(entry, depth + 1));
|
|
191
|
+
}
|
|
192
|
+
const result = Object.create(null);
|
|
193
|
+
for (const [key, entry] of Object.entries(value)) {
|
|
194
|
+
if (entries >= MAX_CONTEXT_ENTRIES) {
|
|
195
|
+
truncated = true;
|
|
196
|
+
break;
|
|
197
|
+
}
|
|
198
|
+
if (isSensitiveKey(key)) {
|
|
199
|
+
redacted = true;
|
|
200
|
+
entries++;
|
|
201
|
+
result[text(key)] = REDACTED;
|
|
202
|
+
} else {
|
|
203
|
+
result[text(key)] = context(entry, depth + 1);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
return result;
|
|
207
|
+
};
|
|
208
|
+
return {
|
|
209
|
+
text,
|
|
210
|
+
context,
|
|
211
|
+
get redacted() {
|
|
212
|
+
return redacted;
|
|
213
|
+
},
|
|
214
|
+
get truncated() {
|
|
215
|
+
return truncated;
|
|
216
|
+
}
|
|
217
|
+
};
|
|
218
|
+
}
|
|
148
219
|
|
|
149
220
|
// src/errors/internal.ts
|
|
150
|
-
var
|
|
151
|
-
var
|
|
221
|
+
var SIXB_FAILURE_MAX_MESSAGE_BYTES2 = 4 * 1024;
|
|
222
|
+
var SIXB_FAILURE_MAX_SERIALIZED_BYTES2 = 32 * 1024;
|
|
152
223
|
var TRUNCATION_SUFFIX = "\u2026 [truncated]";
|
|
153
|
-
var SIXB_ERROR_CODE_SET = new Set(
|
|
224
|
+
var SIXB_ERROR_CODE_SET = new Set(SIXB_ERROR_CODES2);
|
|
154
225
|
class SixbError extends Error {
|
|
155
226
|
code;
|
|
156
227
|
name = "SixbError";
|
|
@@ -161,29 +232,33 @@ class SixbError extends Error {
|
|
|
161
232
|
this.code = code;
|
|
162
233
|
this.retryable = SIXB_ERROR_DEFINITIONS[code].retryable;
|
|
163
234
|
if (options.details !== undefined) {
|
|
164
|
-
this.details =
|
|
235
|
+
this.details = cloneJsonValue2(options.details, "Sixb error details");
|
|
165
236
|
}
|
|
166
237
|
}
|
|
167
238
|
}
|
|
168
|
-
function
|
|
239
|
+
function createSixbError2(code, message, options = {}) {
|
|
169
240
|
return new SixbError(code, message, options);
|
|
170
241
|
}
|
|
171
|
-
function
|
|
242
|
+
function captureSixbFailure2(error, options) {
|
|
172
243
|
const allowedCodes = new Set(options.allowedCodes);
|
|
173
|
-
const codedError =
|
|
244
|
+
const codedError = isSixbError2(error) && allowedCodes.has(error.code) ? error : createSixbError2(options.defaultCode, summarizeErrorMessage2(error), {
|
|
174
245
|
cause: error,
|
|
175
246
|
...options.details === undefined ? {} : { details: options.details }
|
|
176
247
|
});
|
|
177
|
-
return
|
|
248
|
+
return toSixbFailure2(codedError, {
|
|
178
249
|
allowedCodes: options.allowedCodes,
|
|
179
250
|
...options.at === undefined ? {} : { at: options.at }
|
|
180
251
|
});
|
|
181
252
|
}
|
|
182
|
-
function
|
|
183
|
-
|
|
253
|
+
function isSixbError2(error) {
|
|
254
|
+
try {
|
|
255
|
+
return error instanceof SixbError;
|
|
256
|
+
} catch {
|
|
257
|
+
return false;
|
|
258
|
+
}
|
|
184
259
|
}
|
|
185
|
-
function
|
|
186
|
-
if (!
|
|
260
|
+
function toSixbFailure2(error, options = {}) {
|
|
261
|
+
if (!isSixbError2(error)) {
|
|
187
262
|
throw new Error("[Sixb] A durable failure can only be created from a coded Sixb error.");
|
|
188
263
|
}
|
|
189
264
|
const allowedCodes = "allowedCodes" in options ? new Set(options.allowedCodes) : undefined;
|
|
@@ -191,36 +266,85 @@ function toSixbFailure(error, options = {}) {
|
|
|
191
266
|
throw new Error(`[Sixb] Error code '${error.code}' is not allowed by this failure contract.`);
|
|
192
267
|
}
|
|
193
268
|
const code = error.code;
|
|
194
|
-
const
|
|
195
|
-
const
|
|
269
|
+
const redactor = createFailureRedactor();
|
|
270
|
+
const details = error.details === undefined ? undefined : redactor.context(error.details);
|
|
271
|
+
const { detail, truncated } = findFailureDetail(error, code);
|
|
272
|
+
const summary = SIXB_ERROR_DEFINITIONS[code].publicMessage;
|
|
273
|
+
const message = truncateUtf8(redactor.text(detail && detail.message !== summary ? `${summary} ${detail.message}` : summary), SIXB_FAILURE_MAX_MESSAGE_BYTES2);
|
|
196
274
|
const failure = {
|
|
197
275
|
code,
|
|
198
276
|
message: message.value,
|
|
199
277
|
retryable: SIXB_ERROR_DEFINITIONS[code].retryable,
|
|
200
278
|
at: failureTimestamp(options.at),
|
|
201
|
-
...details === undefined ? {} : { details:
|
|
202
|
-
...
|
|
279
|
+
...details === undefined ? {} : { details: cloneJsonValue2(details, "Sixb failure details") },
|
|
280
|
+
...detail?.httpStatus === undefined ? {} : { httpStatus: detail.httpStatus },
|
|
281
|
+
...redactor.redacted ? { redacted: true } : {},
|
|
282
|
+
...message.truncated || truncated || redactor.truncated ? { truncated: true } : {}
|
|
203
283
|
};
|
|
204
|
-
if (serializedByteLength(failure) <=
|
|
284
|
+
if (serializedByteLength(failure) <= SIXB_FAILURE_MAX_SERIALIZED_BYTES2)
|
|
205
285
|
return failure;
|
|
206
286
|
return {
|
|
207
287
|
code: failure.code,
|
|
208
288
|
message: failure.message,
|
|
209
289
|
retryable: failure.retryable,
|
|
210
290
|
at: failure.at,
|
|
291
|
+
...failure.httpStatus === undefined ? {} : { httpStatus: failure.httpStatus },
|
|
292
|
+
...failure.redacted ? { redacted: true } : {},
|
|
211
293
|
truncated: true
|
|
212
294
|
};
|
|
213
295
|
}
|
|
214
|
-
|
|
215
|
-
|
|
296
|
+
var NETWORK_MESSAGES = {
|
|
297
|
+
ECONNREFUSED: "The remote service refused the connection.",
|
|
298
|
+
ECONNRESET: "The remote service reset the connection.",
|
|
299
|
+
ENOTFOUND: "The remote host could not be resolved.",
|
|
300
|
+
EAI_AGAIN: "DNS resolution temporarily failed.",
|
|
301
|
+
ETIMEDOUT: "The connection timed out."
|
|
302
|
+
};
|
|
303
|
+
function isHttpStatus(value) {
|
|
304
|
+
return typeof value === "number" && Number.isInteger(value) && value >= 100 && value <= 599;
|
|
305
|
+
}
|
|
306
|
+
function findFailureDetail(error, boundaryCode) {
|
|
307
|
+
const seen = new Set;
|
|
308
|
+
let current = error;
|
|
309
|
+
while (typeof current === "object" && current !== null && !seen.has(current)) {
|
|
310
|
+
if (seen.size === 8)
|
|
311
|
+
return { truncated: true };
|
|
312
|
+
seen.add(current);
|
|
313
|
+
if (isSixbError2(current) && current.code !== boundaryCode && current.code !== "internal.unexpected") {
|
|
314
|
+
return {
|
|
315
|
+
detail: { message: SIXB_ERROR_DEFINITIONS[current.code].publicMessage },
|
|
316
|
+
truncated: false
|
|
317
|
+
};
|
|
318
|
+
}
|
|
319
|
+
try {
|
|
320
|
+
const status = Object.getOwnPropertyDescriptor(current, "status")?.value ?? Object.getOwnPropertyDescriptor(current, "statusCode")?.value;
|
|
321
|
+
if (isHttpStatus(status)) {
|
|
322
|
+
return {
|
|
323
|
+
detail: { message: `Upstream request returned HTTP ${status}.`, httpStatus: status },
|
|
324
|
+
truncated: false
|
|
325
|
+
};
|
|
326
|
+
}
|
|
327
|
+
const code = Object.getOwnPropertyDescriptor(current, "code")?.value;
|
|
328
|
+
if (typeof code === "string" && Object.hasOwn(NETWORK_MESSAGES, code)) {
|
|
329
|
+
return { detail: { message: NETWORK_MESSAGES[code] }, truncated: false };
|
|
330
|
+
}
|
|
331
|
+
current = Object.getOwnPropertyDescriptor(current, "cause")?.value;
|
|
332
|
+
} catch {
|
|
333
|
+
break;
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
return { truncated: false };
|
|
337
|
+
}
|
|
338
|
+
function serializeSixbFailure2(failure, allowedCodes) {
|
|
339
|
+
const parsed = allowedCodes ? parseSixbFailure2(failure, allowedCodes) : parseSixbFailure2(failure);
|
|
216
340
|
return JSON.stringify(parsed);
|
|
217
341
|
}
|
|
218
|
-
function
|
|
342
|
+
function parseSixbFailure2(value, allowedCodes = SIXB_ERROR_CODES2) {
|
|
219
343
|
const candidate = parseStoredFailureValue(value);
|
|
220
344
|
if (!isPlainRecord(candidate)) {
|
|
221
345
|
throw invalidStoredFailure("expected a JSON object");
|
|
222
346
|
}
|
|
223
|
-
const { code, message, retryable, at, details, truncated } = candidate;
|
|
347
|
+
const { code, message, retryable, at, details, httpStatus, redacted, truncated } = candidate;
|
|
224
348
|
if (typeof code !== "string" || !SIXB_ERROR_CODE_SET.has(code)) {
|
|
225
349
|
throw invalidStoredFailure("code is not a known Sixb error code");
|
|
226
350
|
}
|
|
@@ -230,8 +354,8 @@ function parseSixbFailure(value, allowedCodes = SIXB_ERROR_CODES) {
|
|
|
230
354
|
if (typeof message !== "string") {
|
|
231
355
|
throw invalidStoredFailure("message is not a string");
|
|
232
356
|
}
|
|
233
|
-
if (utf8ByteLength(message) >
|
|
234
|
-
throw invalidStoredFailure(`message exceeds ${
|
|
357
|
+
if (utf8ByteLength(message) > SIXB_FAILURE_MAX_MESSAGE_BYTES2) {
|
|
358
|
+
throw invalidStoredFailure(`message exceeds ${SIXB_FAILURE_MAX_MESSAGE_BYTES2} UTF-8 bytes`);
|
|
235
359
|
}
|
|
236
360
|
if (typeof retryable !== "boolean") {
|
|
237
361
|
throw invalidStoredFailure("retryable is not a boolean");
|
|
@@ -242,22 +366,33 @@ function parseSixbFailure(value, allowedCodes = SIXB_ERROR_CODES) {
|
|
|
242
366
|
if (typeof at !== "string" || !isCanonicalIsoTimestamp(at)) {
|
|
243
367
|
throw invalidStoredFailure("at is not a canonical ISO-8601 timestamp");
|
|
244
368
|
}
|
|
245
|
-
if (details !== undefined && !
|
|
369
|
+
if (details !== undefined && !isJsonValue2(details)) {
|
|
246
370
|
throw invalidStoredFailure("details is not a JSON value");
|
|
247
371
|
}
|
|
248
372
|
if (truncated !== undefined && truncated !== true) {
|
|
249
373
|
throw invalidStoredFailure("truncated must be true when present");
|
|
250
374
|
}
|
|
375
|
+
if (redacted !== undefined && redacted !== true) {
|
|
376
|
+
throw invalidStoredFailure("redacted must be true when present");
|
|
377
|
+
}
|
|
378
|
+
if (httpStatus !== undefined && !isHttpStatus(httpStatus)) {
|
|
379
|
+
throw invalidStoredFailure("httpStatus must be an integer HTTP status");
|
|
380
|
+
}
|
|
381
|
+
const redactor = createFailureRedactor();
|
|
382
|
+
const safeMessage = truncateUtf8(redactor.text(message), SIXB_FAILURE_MAX_MESSAGE_BYTES2);
|
|
383
|
+
const safeDetails = details === undefined ? undefined : redactor.context(details);
|
|
251
384
|
const failure = {
|
|
252
385
|
code,
|
|
253
|
-
message,
|
|
386
|
+
message: safeMessage.value,
|
|
254
387
|
retryable,
|
|
255
388
|
at,
|
|
256
|
-
...
|
|
257
|
-
...
|
|
389
|
+
...safeDetails === undefined ? {} : { details: cloneJsonValue2(safeDetails, "Stored Sixb failure details") },
|
|
390
|
+
...httpStatus === undefined ? {} : { httpStatus },
|
|
391
|
+
...redacted || redactor.redacted ? { redacted: true } : {},
|
|
392
|
+
...truncated || redactor.truncated || safeMessage.truncated ? { truncated: true } : {}
|
|
258
393
|
};
|
|
259
|
-
if (serializedByteLength(failure) >
|
|
260
|
-
throw invalidStoredFailure(`record exceeds ${
|
|
394
|
+
if (serializedByteLength(failure) > SIXB_FAILURE_MAX_SERIALIZED_BYTES2) {
|
|
395
|
+
throw invalidStoredFailure(`record exceeds ${SIXB_FAILURE_MAX_SERIALIZED_BYTES2} serialized UTF-8 bytes`);
|
|
261
396
|
}
|
|
262
397
|
return failure;
|
|
263
398
|
}
|
|
@@ -277,7 +412,7 @@ function isCanonicalIsoTimestamp(value) {
|
|
|
277
412
|
function invalidStoredFailure(reason) {
|
|
278
413
|
return new Error(`[Sixb] Stored failure is invalid: ${reason}.`);
|
|
279
414
|
}
|
|
280
|
-
function
|
|
415
|
+
function summarizeErrorMessage2(value, fallback) {
|
|
281
416
|
const message = readStringProperty(value, "message");
|
|
282
417
|
if (message !== undefined)
|
|
283
418
|
return message;
|
|
@@ -336,6 +471,6 @@ function truncateUtf8(value, maxBytes) {
|
|
|
336
471
|
return { value: `${characters.slice(0, low).join("")}${TRUNCATION_SUFFIX}`, truncated: true };
|
|
337
472
|
}
|
|
338
473
|
|
|
339
|
-
export {
|
|
474
|
+
export { SIXB_ERROR_CODES2, SIXB_FAILURE_MAX_MESSAGE_BYTES2, SIXB_FAILURE_MAX_SERIALIZED_BYTES2, createSixbError2, captureSixbFailure2, isSixbError2, toSixbFailure2, serializeSixbFailure2, parseSixbFailure2, summarizeErrorMessage2 };
|
|
340
475
|
|
|
341
|
-
//# debugId=
|
|
476
|
+
//# debugId=38D8AA61D12F60A664756E2164756E21
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/errors/catalog.ts", "../src/errors/redaction.ts", "../src/errors/internal.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"interface SixbErrorDefinition {\n readonly publicMessage: string\n readonly retryable: boolean\n}\n\n/**\n * Source of truth for stable Sixb error codes and their framework-level policy.\n *\n * Keep this catalog internal. Consumers receive the `SixbErrorCode` union and persisted\n * `SixbFailure` values, not a mutable registry.\n */\nexport const SIXB_ERROR_DEFINITIONS = {\n \"action.phase_failed\": {\n publicMessage: \"Action execution failed.\",\n retryable: false,\n },\n \"agent.execution_failed\": {\n publicMessage: \"Agent execution failed.\",\n retryable: false,\n },\n \"ai.usage_limit_exceeded\": {\n publicMessage: \"AI usage limit exceeded.\",\n retryable: false,\n },\n \"ai.usage_limit_unavailable\": {\n publicMessage: \"AI usage limit could not be evaluated.\",\n retryable: true,\n },\n \"connector.adapter_invalid\": {\n publicMessage: \"Connector adapter returned an invalid result.\",\n retryable: false,\n },\n \"connector.authorization_invalid\": {\n publicMessage: \"Connector authorization is invalid.\",\n retryable: false,\n },\n \"connector.authorization_required\": {\n publicMessage: \"Connector authorization is required.\",\n retryable: false,\n },\n \"connector.configuration_invalid\": {\n publicMessage: \"Connector configuration is invalid.\",\n retryable: false,\n },\n \"connector.credentials_unavailable\": {\n publicMessage: \"Connector credentials are unavailable.\",\n retryable: false,\n },\n \"connector.not_found\": {\n publicMessage: \"Connector resource not found.\",\n retryable: false,\n },\n \"connector.operation_conflict\": {\n publicMessage: \"Connector operation conflicts with the current state.\",\n retryable: false,\n },\n \"connector.operation_in_progress\": {\n publicMessage: \"Another connector credential operation is in progress.\",\n retryable: true,\n },\n \"connector.provider_failed\": {\n publicMessage: \"Connector provider operation failed.\",\n retryable: false,\n },\n \"connector.provider_unavailable\": {\n publicMessage: \"Connector provider is temporarily unavailable.\",\n retryable: true,\n },\n \"connector.replacement_required\": {\n publicMessage: \"Connector selection requires explicit replacement.\",\n retryable: false,\n },\n \"connector.revocation_pending\": {\n publicMessage: \"Connector revocation is pending.\",\n retryable: true,\n },\n \"dataset.not_found\": {\n publicMessage: \"Dataset not found.\",\n retryable: false,\n },\n \"dataset.version_incompatible\": {\n publicMessage: \"Dataset version is incompatible.\",\n retryable: false,\n },\n \"dataset.version_not_found\": {\n publicMessage: \"Dataset version not found.\",\n retryable: false,\n },\n \"dataset.version_read_inconsistent\": {\n publicMessage: \"Dataset version could not be read consistently.\",\n retryable: true,\n },\n \"event.delivery_failed\": {\n publicMessage: \"Event delivery failed.\",\n retryable: true,\n },\n \"internal.unexpected\": {\n publicMessage: \"An unexpected internal error occurred.\",\n retryable: false,\n },\n \"queue.enqueue_failed\": {\n publicMessage: \"The job could not be enqueued.\",\n retryable: true,\n },\n \"pipeline.step_failed\": {\n publicMessage: \"Pipeline step execution failed.\",\n retryable: false,\n },\n \"projection.definition_invalid\": {\n publicMessage: \"Projection definition is invalid.\",\n retryable: false,\n },\n \"projection.execution_failed\": {\n publicMessage: \"Projection execution failed.\",\n retryable: false,\n },\n \"projection.not_found\": {\n publicMessage: \"Projection not found.\",\n retryable: false,\n },\n \"projection.run_already_terminal\": {\n publicMessage: \"Projection run is already terminal.\",\n retryable: false,\n },\n \"projection.run_identity_mismatch\": {\n publicMessage: \"Projection run identity does not match the queued job.\",\n retryable: false,\n },\n \"runtime.cancelled\": {\n publicMessage: \"Execution was cancelled.\",\n retryable: false,\n },\n \"sync.execution_failed\": {\n publicMessage: \"Sync execution failed.\",\n retryable: false,\n },\n \"webhook.delivery_failed\": {\n publicMessage: \"Webhook delivery failed.\",\n retryable: true,\n },\n \"webhook.delivery_rejected\": {\n publicMessage: \"Webhook delivery was rejected.\",\n retryable: false,\n },\n \"workflow.node_failed\": {\n publicMessage: \"Workflow node execution failed.\",\n retryable: false,\n },\n} as const satisfies Readonly<Record<string, SixbErrorDefinition>>\n\ntype CatalogErrorCode = keyof typeof SIXB_ERROR_DEFINITIONS\n\n/** Runtime counterpart of `SixbErrorCode` for internal schema boundaries. */\nexport const SIXB_ERROR_CODES = Object.freeze(Object.keys(SIXB_ERROR_DEFINITIONS)) as readonly [\n CatalogErrorCode,\n ...CatalogErrorCode[],\n]\n",
|
|
6
|
+
"import type { ReadonlyJsonValue } from \"../json\"\n\nconst REDACTED = \"[REDACTED]\"\nconst MAX_CONTEXT_DEPTH = 12\nconst MAX_CONTEXT_ENTRIES = 1024\nconst SENSITIVE_KEY =\n /password|passwd|passphrase|secret|token|credential|authorization|cookie|privatekey|apikey|accesskey|connectionstring|databaseurl|clientassertion|signature/i\nconst PRIVATE_CONTAINER =\n /^(?:request|response)(?:body|headers)?$|^(?:headers|body|payload|env|environment)$/i\n\nfunction isSensitiveKey(key: string): boolean {\n const normalized = key.replace(/[^a-z0-9]/gi, \"\")\n return SENSITIVE_KEY.test(normalized) || PRIVATE_CONTAINER.test(normalized)\n}\n\n/** Runtime credentials are additional protection for context; never a license to copy errors. */\nfunction environmentSecrets(): string[] {\n return Object.entries(process.env)\n .filter(([key, value]) => isSensitiveKey(key) && value !== undefined && value.length >= 4)\n .map(([, value]) => value as string)\n .sort((a, b) => b.length - a.length)\n}\n\nexport function createFailureRedactor() {\n const secrets = environmentSecrets()\n let redacted = false\n let truncated = false\n let entries = 0\n\n const text = (input: string): string => {\n let value = input\n for (const secret of secrets) {\n value = value\n .split(REDACTED)\n .map((part) => part.split(secret).join(REDACTED))\n .join(REDACTED)\n }\n value = value\n .replace(\n /-----BEGIN [^-]*PRIVATE KEY-----[\\s\\S]*?(?:-----END [^-]*PRIVATE KEY-----|$)/g,\n REDACTED\n )\n .replace(/\\b(?:Bearer|Basic)\\s+[A-Za-z0-9+/_.~=-]+/gi, REDACTED)\n .replace(/\\beyJ[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+\\b/g, REDACTED)\n .replace(\n /\\b(?:sk[-_](?:live[-_]|test[-_]|proj[-_])?[A-Za-z0-9_-]{12,}|gh[pousr]_[A-Za-z0-9_]{20,}|github_pat_[A-Za-z0-9_]+|AKIA[A-Z0-9]{16})\\b/g,\n REDACTED\n )\n // URLs may carry userinfo, signed query parameters, or credentials in the path.\n .replace(/\\b[a-z][a-z0-9+.-]*:\\/\\/[^\\s<>\"']+/gi, REDACTED)\n .replace(\n /[\"']?\\b(?:password|passwd|passphrase|[a-z_-]*secret|[a-z_-]*token|api[-_]?key|authorization|cookie|credential|signature)[\"']?\\s*[=:]\\s*(?:\"[^\"\\r\\n]*\"|'[^'\\r\\n]*'|[^\\s,;]+)/gi,\n REDACTED\n )\n if (value !== input) redacted = true\n return value\n }\n\n const context = (value: ReadonlyJsonValue, depth = 0): ReadonlyJsonValue => {\n if (depth > MAX_CONTEXT_DEPTH || entries++ >= MAX_CONTEXT_ENTRIES) {\n truncated = true\n return \"[TRUNCATED]\"\n }\n if (typeof value === \"string\") return text(value)\n if (value === null || typeof value !== \"object\") return value\n if (Array.isArray(value)) {\n const available = Math.max(0, MAX_CONTEXT_ENTRIES - entries)\n if (value.length > available) truncated = true\n return value.slice(0, available).map((entry) => context(entry, depth + 1))\n }\n const result: Record<string, ReadonlyJsonValue> = Object.create(null)\n for (const [key, entry] of Object.entries(value)) {\n if (entries >= MAX_CONTEXT_ENTRIES) {\n truncated = true\n break\n }\n if (isSensitiveKey(key)) {\n redacted = true\n entries++\n result[text(key)] = REDACTED\n } else {\n result[text(key)] = context(entry, depth + 1)\n }\n }\n return result\n }\n\n return {\n text,\n context,\n get redacted() {\n return redacted\n },\n get truncated() {\n return truncated\n },\n }\n}\n",
|
|
7
|
+
"import { cloneJsonValue, isJsonValue, isPlainRecord, type ReadonlyJsonValue } from \"../json\"\nimport { SIXB_ERROR_CODES, SIXB_ERROR_DEFINITIONS } from \"./catalog\"\nimport { createFailureRedactor } from \"./redaction\"\nimport type { SixbErrorCode, SixbFailure } from \"./types\"\n\nexport const SIXB_FAILURE_MAX_MESSAGE_BYTES = 4 * 1024\nexport const SIXB_FAILURE_MAX_SERIALIZED_BYTES = 32 * 1024\nconst TRUNCATION_SUFFIX = \"… [truncated]\"\nconst SIXB_ERROR_CODE_SET: ReadonlySet<string> = new Set(SIXB_ERROR_CODES)\n\ntype SixbErrorCodeTuple = readonly [SixbErrorCode, ...SixbErrorCode[]]\n\nexport { SIXB_ERROR_CODES }\n\nexport interface SixbErrorOptions {\n readonly cause?: unknown\n readonly details?: ReadonlyJsonValue\n}\n\n/** Internal structural view returned by the factory. The implementing class stays private. */\nexport interface SixbCodedError extends Error {\n readonly code: SixbErrorCode\n readonly retryable: boolean\n readonly details?: ReadonlyJsonValue\n readonly cause?: unknown\n}\n\nexport interface ToSixbFailureOptions {\n /** Timestamp for deterministic persistence. Defaults to the current time. */\n readonly at?: Date\n}\n\nexport interface ToScopedSixbFailureOptions<TCodes extends SixbErrorCodeTuple>\n extends ToSixbFailureOptions {\n /** Codes this boundary is allowed to expose. */\n readonly allowedCodes: TCodes\n}\n\nexport interface CaptureSixbFailureOptions<TCodes extends SixbErrorCodeTuple>\n extends ToScopedSixbFailureOptions<TCodes> {\n /** Code assigned when the captured value is uncoded or outside this boundary's contract. */\n readonly defaultCode: TCodes[number]\n /** Context attached only to the boundary error created for such a captured value. */\n readonly details?: ReadonlyJsonValue\n}\n\n/**\n * The canonical exception used inside Sixb.\n *\n * The class is deliberately not exported: repo-internal callers use the factory and consumers only\n * ever observe serializable `SixbFailure` values.\n */\nclass SixbError extends Error implements SixbCodedError {\n override readonly name = \"SixbError\"\n readonly retryable: boolean\n readonly details?: ReadonlyJsonValue\n\n constructor(\n readonly code: SixbErrorCode,\n message: string,\n options: SixbErrorOptions = {}\n ) {\n super(message, options.cause === undefined ? undefined : { cause: options.cause })\n this.retryable = SIXB_ERROR_DEFINITIONS[code].retryable\n if (options.details !== undefined) {\n this.details = cloneJsonValue(options.details, \"Sixb error details\")\n }\n }\n}\n\n/** Creates a coded internal error without exposing its runtime class. */\nexport function createSixbError(\n code: SixbErrorCode,\n message: string,\n options: SixbErrorOptions = {}\n): SixbCodedError {\n return new SixbError(code, message, options)\n}\n\n/**\n * Captures an unknown terminal error as a scoped durable failure.\n *\n * An already-coded error is preserved only when its code belongs to this boundary. Every other\n * value is wrapped once with the boundary's default code and context before serialization.\n */\nexport function captureSixbFailure<const TCodes extends SixbErrorCodeTuple>(\n error: unknown,\n options: CaptureSixbFailureOptions<TCodes>\n): SixbFailure<TCodes[number]> {\n const allowedCodes = new Set<SixbErrorCode>(options.allowedCodes)\n const codedError =\n isSixbError(error) && allowedCodes.has(error.code)\n ? error\n : createSixbError(options.defaultCode, summarizeErrorMessage(error), {\n cause: error,\n ...(options.details === undefined ? {} : { details: options.details }),\n })\n\n return toSixbFailure(codedError, {\n allowedCodes: options.allowedCodes,\n ...(options.at === undefined ? {} : { at: options.at }),\n })\n}\n\n/** Identifies errors created by Sixb without making their class part of the contract. */\nexport function isSixbError(error: unknown): error is SixbCodedError {\n try {\n return error instanceof SixbError\n } catch {\n return false\n }\n}\n\n/**\n * Takes a detached, serializable snapshot of a coded internal error.\n *\n * Use `captureSixbFailure()` instead when a terminal boundary receives an unknown thrown value.\n */\nexport function toSixbFailure<const TCodes extends SixbErrorCodeTuple>(\n error: SixbCodedError,\n options: ToScopedSixbFailureOptions<TCodes>\n): SixbFailure<TCodes[number]>\nexport function toSixbFailure(error: SixbCodedError, options?: ToSixbFailureOptions): SixbFailure\nexport function toSixbFailure(\n error: SixbCodedError,\n options: ToSixbFailureOptions | ToScopedSixbFailureOptions<SixbErrorCodeTuple> = {}\n): SixbFailure {\n if (!isSixbError(error)) {\n throw new Error(\"[Sixb] A durable failure can only be created from a coded Sixb error.\")\n }\n const allowedCodes = \"allowedCodes\" in options ? new Set(options.allowedCodes) : undefined\n if (allowedCodes && !allowedCodes.has(error.code)) {\n throw new Error(`[Sixb] Error code '${error.code}' is not allowed by this failure contract.`)\n }\n const code = error.code\n const redactor = createFailureRedactor()\n const details = error.details === undefined ? undefined : redactor.context(error.details)\n const { detail, truncated } = findFailureDetail(error, code)\n const summary = SIXB_ERROR_DEFINITIONS[code].publicMessage\n const message = truncateUtf8(\n redactor.text(detail && detail.message !== summary ? `${summary} ${detail.message}` : summary),\n SIXB_FAILURE_MAX_MESSAGE_BYTES\n )\n const failure: SixbFailure = {\n code,\n message: message.value,\n retryable: SIXB_ERROR_DEFINITIONS[code].retryable,\n at: failureTimestamp(options.at),\n ...(details === undefined ? {} : { details: cloneJsonValue(details, \"Sixb failure details\") }),\n ...(detail?.httpStatus === undefined ? {} : { httpStatus: detail.httpStatus }),\n ...(redactor.redacted ? { redacted: true } : {}),\n ...(message.truncated || truncated || redactor.truncated ? { truncated: true } : {}),\n }\n\n if (serializedByteLength(failure) <= SIXB_FAILURE_MAX_SERIALIZED_BYTES) return failure\n\n return {\n code: failure.code,\n message: failure.message,\n retryable: failure.retryable,\n at: failure.at,\n ...(failure.httpStatus === undefined ? {} : { httpStatus: failure.httpStatus }),\n ...(failure.redacted ? { redacted: true } : {}),\n truncated: true,\n }\n}\n\nconst NETWORK_MESSAGES: Readonly<Record<string, string>> = {\n ECONNREFUSED: \"The remote service refused the connection.\",\n ECONNRESET: \"The remote service reset the connection.\",\n ENOTFOUND: \"The remote host could not be resolved.\",\n EAI_AGAIN: \"DNS resolution temporarily failed.\",\n ETIMEDOUT: \"The connection timed out.\",\n}\n\nfunction isHttpStatus(value: unknown): value is number {\n return typeof value === \"number\" && Number.isInteger(value) && value >= 100 && value <= 599\n}\n\n/** Select one explanation along the causal chain; unrelated aggregate errors stay separate. */\nfunction findFailureDetail(\n error: SixbCodedError,\n boundaryCode: SixbErrorCode\n): { detail?: { message: string; httpStatus?: number }; truncated: boolean } {\n const seen = new Set<object>()\n let current: unknown = error\n while (typeof current === \"object\" && current !== null && !seen.has(current)) {\n if (seen.size === 8) return { truncated: true }\n seen.add(current)\n if (\n isSixbError(current) &&\n current.code !== boundaryCode &&\n current.code !== \"internal.unexpected\"\n ) {\n return {\n detail: { message: SIXB_ERROR_DEFINITIONS[current.code].publicMessage },\n truncated: false,\n }\n }\n try {\n // Read only data properties: arbitrary messages and getters remain private.\n const status =\n Object.getOwnPropertyDescriptor(current, \"status\")?.value ??\n Object.getOwnPropertyDescriptor(current, \"statusCode\")?.value\n if (isHttpStatus(status)) {\n return {\n detail: { message: `Upstream request returned HTTP ${status}.`, httpStatus: status },\n truncated: false,\n }\n }\n const code = Object.getOwnPropertyDescriptor(current, \"code\")?.value\n if (typeof code === \"string\" && Object.hasOwn(NETWORK_MESSAGES, code)) {\n return { detail: { message: NETWORK_MESSAGES[code] }, truncated: false }\n }\n current = Object.getOwnPropertyDescriptor(current, \"cause\")?.value\n } catch {\n break\n }\n }\n return { truncated: false }\n}\n\n/** Serializes a validated failure for durable storage. */\nexport function serializeSixbFailure<const TCodes extends SixbErrorCodeTuple>(\n failure: SixbFailure<TCodes[number]>,\n allowedCodes: TCodes\n): string\nexport function serializeSixbFailure(failure: SixbFailure): string\nexport function serializeSixbFailure(\n failure: SixbFailure,\n allowedCodes?: SixbErrorCodeTuple\n): string {\n const parsed = allowedCodes ? parseSixbFailure(failure, allowedCodes) : parseSixbFailure(failure)\n return JSON.stringify(parsed)\n}\n\n/**\n * Validates and detaches a failure read from a storage boundary.\n *\n * Strings are accepted for SQLite; PostgreSQL adapters can pass their decoded JSON value directly.\n */\nexport function parseSixbFailure<const TCodes extends SixbErrorCodeTuple>(\n value: unknown,\n allowedCodes: TCodes\n): SixbFailure<TCodes[number]>\nexport function parseSixbFailure(value: unknown): SixbFailure\nexport function parseSixbFailure(\n value: unknown,\n allowedCodes: SixbErrorCodeTuple = SIXB_ERROR_CODES\n): SixbFailure {\n const candidate = parseStoredFailureValue(value)\n if (!isPlainRecord(candidate)) {\n throw invalidStoredFailure(\"expected a JSON object\")\n }\n\n const { code, message, retryable, at, details, httpStatus, redacted, truncated } = candidate\n if (typeof code !== \"string\" || !SIXB_ERROR_CODE_SET.has(code)) {\n throw invalidStoredFailure(\"code is not a known Sixb error code\")\n }\n if (!(allowedCodes as readonly string[]).includes(code)) {\n throw invalidStoredFailure(\"code is not allowed by this failure contract\")\n }\n if (typeof message !== \"string\") {\n throw invalidStoredFailure(\"message is not a string\")\n }\n if (utf8ByteLength(message) > SIXB_FAILURE_MAX_MESSAGE_BYTES) {\n throw invalidStoredFailure(`message exceeds ${SIXB_FAILURE_MAX_MESSAGE_BYTES} UTF-8 bytes`)\n }\n if (typeof retryable !== \"boolean\") {\n throw invalidStoredFailure(\"retryable is not a boolean\")\n }\n if (retryable !== SIXB_ERROR_DEFINITIONS[code as SixbErrorCode].retryable) {\n throw invalidStoredFailure(\"retryable does not match the error code policy\")\n }\n if (typeof at !== \"string\" || !isCanonicalIsoTimestamp(at)) {\n throw invalidStoredFailure(\"at is not a canonical ISO-8601 timestamp\")\n }\n if (details !== undefined && !isJsonValue(details)) {\n throw invalidStoredFailure(\"details is not a JSON value\")\n }\n if (truncated !== undefined && truncated !== true) {\n throw invalidStoredFailure(\"truncated must be true when present\")\n }\n\n if (redacted !== undefined && redacted !== true) {\n throw invalidStoredFailure(\"redacted must be true when present\")\n }\n if (httpStatus !== undefined && !isHttpStatus(httpStatus)) {\n throw invalidStoredFailure(\"httpStatus must be an integer HTTP status\")\n }\n const redactor = createFailureRedactor()\n const safeMessage = truncateUtf8(redactor.text(message), SIXB_FAILURE_MAX_MESSAGE_BYTES)\n const safeDetails =\n details === undefined ? undefined : redactor.context(details as ReadonlyJsonValue)\n\n const failure: SixbFailure = {\n code: code as SixbErrorCode,\n message: safeMessage.value,\n retryable,\n at,\n ...(safeDetails === undefined\n ? {}\n : { details: cloneJsonValue(safeDetails, \"Stored Sixb failure details\") }),\n ...(httpStatus === undefined ? {} : { httpStatus: httpStatus as number }),\n ...(redacted || redactor.redacted ? { redacted: true } : {}),\n ...(truncated || redactor.truncated || safeMessage.truncated ? { truncated: true } : {}),\n }\n if (serializedByteLength(failure) > SIXB_FAILURE_MAX_SERIALIZED_BYTES) {\n throw invalidStoredFailure(\n `record exceeds ${SIXB_FAILURE_MAX_SERIALIZED_BYTES} serialized UTF-8 bytes`\n )\n }\n return failure\n}\n\nfunction parseStoredFailureValue(value: unknown): unknown {\n if (typeof value !== \"string\") return value\n try {\n return JSON.parse(value) as unknown\n } catch {\n throw invalidStoredFailure(\"value is not valid JSON\")\n }\n}\n\nfunction isCanonicalIsoTimestamp(value: string): boolean {\n const timestamp = new Date(value)\n return Number.isFinite(timestamp.getTime()) && timestamp.toISOString() === value\n}\n\nfunction invalidStoredFailure(reason: string): Error {\n return new Error(`[Sixb] Stored failure is invalid: ${reason}.`)\n}\n\n/**\n * Extracts a diagnostic message for an internal error or log entry.\n *\n * The result can contain provider data and must not be persisted or returned by an API.\n * `toSixbFailure()` constructs a message from recognized HTTP, network, or Sixb information instead.\n */\nexport function summarizeErrorMessage(value: unknown, fallback?: string): string {\n const message = readStringProperty(value, \"message\")\n if (message !== undefined) return message\n if (typeof value === \"string\") return value\n return fallback ?? safeString(value)\n}\n\nfunction readStringProperty(value: unknown, property: \"message\"): string | undefined {\n if (!isObjectLike(value)) return undefined\n try {\n const result = Reflect.get(value, property)\n return typeof result === \"string\" ? result : undefined\n } catch {\n return undefined\n }\n}\n\nfunction isObjectLike(value: unknown): value is object {\n return (typeof value === \"object\" && value !== null) || typeof value === \"function\"\n}\n\nfunction safeString(value: unknown): string {\n try {\n return String(value)\n } catch {\n return \"Unknown thrown value\"\n }\n}\n\nfunction failureTimestamp(at: Date | undefined): string {\n const timestamp = at ?? new Date()\n if (!Number.isFinite(timestamp.getTime())) {\n throw new Error(\"[Sixb] Failure timestamp must be a valid Date.\")\n }\n return timestamp.toISOString()\n}\n\nfunction serializedByteLength(value: SixbFailure): number {\n return utf8ByteLength(JSON.stringify(value))\n}\n\nfunction utf8ByteLength(value: string): number {\n return new TextEncoder().encode(value).byteLength\n}\n\nfunction truncateUtf8(value: string, maxBytes: number): { value: string; truncated: boolean } {\n if (utf8ByteLength(value) <= maxBytes) return { value, truncated: false }\n\n const suffixBytes = utf8ByteLength(TRUNCATION_SUFFIX)\n const characters = Array.from(value)\n let low = 0\n let high = characters.length\n while (low < high) {\n const middle = Math.ceil((low + high) / 2)\n if (utf8ByteLength(characters.slice(0, middle).join(\"\")) + suffixBytes <= maxBytes) {\n low = middle\n } else {\n high = middle - 1\n }\n }\n\n return { value: `${characters.slice(0, low).join(\"\")}${TRUNCATION_SUFFIX}`, truncated: true }\n}\n"
|
|
8
|
+
],
|
|
9
|
+
"mappings": "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",
|
|
10
|
+
"debugId": "38D8AA61D12F60A664756E2164756E21",
|
|
11
|
+
"names": []
|
|
12
|
+
}
|