@sixb/core 0.1.21 → 0.1.22
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/commit-edits.d.ts +3 -1
- package/dist/actions/commit-edits.d.ts.map +1 -1
- package/dist/actions/execution.d.ts.map +1 -1
- package/dist/actions/index.js +63 -59
- package/dist/actions/index.js.map +1 -1
- package/dist/actions/read-facade.d.ts +9 -1
- package/dist/actions/read-facade.d.ts.map +1 -1
- package/dist/actions/request.d.ts +15 -1
- package/dist/actions/request.d.ts.map +1 -1
- package/dist/actions/run/context.d.ts +1 -0
- package/dist/actions/run/context.d.ts.map +1 -1
- package/dist/actions/run/execute.d.ts +2 -3
- package/dist/actions/run/execute.d.ts.map +1 -1
- package/dist/actions/run/executor.d.ts +3 -0
- package/dist/actions/run/executor.d.ts.map +1 -1
- package/dist/actions/run/normalize.d.ts +2 -1
- package/dist/actions/run/normalize.d.ts.map +1 -1
- package/dist/actions/run/signals.d.ts +1 -3
- package/dist/actions/run/signals.d.ts.map +1 -1
- package/dist/actions/run/types.d.ts +16 -1
- package/dist/actions/run/types.d.ts.map +1 -1
- package/dist/actions/run-authorization.d.ts +14 -0
- package/dist/actions/run-authorization.d.ts.map +1 -1
- package/dist/actions/types/context.d.ts +17 -1
- package/dist/actions/types/context.d.ts.map +1 -1
- package/dist/actions/validators.d.ts.map +1 -1
- package/dist/activity/timeline.d.ts +8 -1
- package/dist/activity/timeline.d.ts.map +1 -1
- package/dist/agents/accounting.d.ts +15 -0
- package/dist/agents/accounting.d.ts.map +1 -0
- package/dist/agents/adapters.d.ts.map +1 -1
- package/dist/agents/agent-mail.d.ts +9 -0
- package/dist/agents/agent-mail.d.ts.map +1 -0
- package/dist/agents/api-gateway.d.ts +5 -0
- package/dist/agents/api-gateway.d.ts.map +1 -1
- package/dist/agents/approval-continuation.d.ts +23 -0
- package/dist/agents/approval-continuation.d.ts.map +1 -0
- package/dist/agents/approval-executor.d.ts +56 -0
- package/dist/agents/approval-executor.d.ts.map +1 -0
- package/dist/agents/approval-outcome.d.ts +8 -0
- package/dist/agents/approval-outcome.d.ts.map +1 -0
- package/dist/agents/approvals.d.ts +210 -0
- package/dist/agents/approvals.d.ts.map +1 -0
- package/dist/agents/authority.d.ts +10 -0
- package/dist/agents/authority.d.ts.map +1 -1
- package/dist/agents/builders.d.ts.map +1 -1
- package/dist/agents/cancel.d.ts +23 -0
- package/dist/agents/cancel.d.ts.map +1 -0
- package/dist/agents/child-question.d.ts +18 -0
- package/dist/agents/child-question.d.ts.map +1 -0
- package/dist/agents/children.d.ts +99 -0
- package/dist/agents/children.d.ts.map +1 -0
- package/dist/agents/context/index.js +1 -1
- package/dist/agents/context-compaction.d.ts.map +1 -1
- package/dist/agents/errors.d.ts +13 -1
- package/dist/agents/errors.d.ts.map +1 -1
- package/dist/agents/execution.d.ts +180 -14
- package/dist/agents/execution.d.ts.map +1 -1
- package/dist/agents/fork.d.ts +16 -0
- package/dist/agents/fork.d.ts.map +1 -0
- package/dist/agents/ids.d.ts +7 -0
- package/dist/agents/ids.d.ts.map +1 -1
- package/dist/agents/index.d.ts +19 -8
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +159 -86
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/memory-execution.d.ts +57 -0
- package/dist/agents/memory-execution.d.ts.map +1 -0
- package/dist/agents/memory.d.ts +49 -0
- package/dist/agents/memory.d.ts.map +1 -0
- package/dist/agents/message.d.ts +50 -1
- package/dist/agents/message.d.ts.map +1 -1
- package/dist/agents/model-loop.d.ts +19 -0
- package/dist/agents/model-loop.d.ts.map +1 -1
- package/dist/agents/model-routing.d.ts +19 -0
- package/dist/agents/model-routing.d.ts.map +1 -0
- package/dist/agents/participants.d.ts +18 -0
- package/dist/agents/participants.d.ts.map +1 -0
- package/dist/agents/reference.d.ts.map +1 -1
- package/dist/agents/request.d.ts +36 -2
- package/dist/agents/request.d.ts.map +1 -1
- package/dist/agents/run-scope.d.ts +51 -0
- package/dist/agents/run-scope.d.ts.map +1 -0
- package/dist/agents/streams/index.d.ts +3 -2
- package/dist/agents/streams/index.d.ts.map +1 -1
- package/dist/agents/streams/index.js +7 -3
- package/dist/agents/streams/index.js.map +1 -1
- package/dist/agents/streams/internal.d.ts +1 -1
- package/dist/agents/streams/internal.d.ts.map +1 -1
- package/dist/agents/streams/internal.js +5 -3
- package/dist/agents/streams/internal.js.map +1 -1
- package/dist/agents/streams/protocol.d.ts +122 -3
- package/dist/agents/streams/protocol.d.ts.map +1 -1
- package/dist/agents/subagent-runs.d.ts +12 -0
- package/dist/agents/subagent-runs.d.ts.map +1 -0
- package/dist/agents/thread-access.d.ts +53 -0
- package/dist/agents/thread-access.d.ts.map +1 -0
- package/dist/agents/tool-definition.d.ts +5 -4
- package/dist/agents/tool-definition.d.ts.map +1 -1
- package/dist/agents/types.d.ts +23 -4
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/agents/validation.d.ts +1 -1
- package/dist/agents/validation.d.ts.map +1 -1
- package/dist/artifacts/access.d.ts +52 -0
- package/dist/artifacts/access.d.ts.map +1 -0
- package/dist/artifacts/canvas.d.ts +92 -0
- package/dist/artifacts/canvas.d.ts.map +1 -0
- package/dist/artifacts/csv.d.ts +5 -0
- package/dist/artifacts/csv.d.ts.map +1 -1
- package/dist/artifacts/errors.d.ts +7 -2
- package/dist/artifacts/errors.d.ts.map +1 -1
- package/dist/artifacts/execution.d.ts +102 -7
- package/dist/artifacts/execution.d.ts.map +1 -1
- package/dist/artifacts/formula/check.d.ts +24 -0
- package/dist/artifacts/formula/check.d.ts.map +1 -0
- package/dist/artifacts/formula/evaluate.d.ts +32 -0
- package/dist/artifacts/formula/evaluate.d.ts.map +1 -0
- package/dist/artifacts/formula/index.d.ts +38 -0
- package/dist/artifacts/formula/index.d.ts.map +1 -0
- package/dist/artifacts/formula/parser.d.ts +67 -0
- package/dist/artifacts/formula/parser.d.ts.map +1 -0
- package/dist/artifacts/frames/assets.d.ts +11 -9
- package/dist/artifacts/frames/assets.d.ts.map +1 -1
- package/dist/artifacts/frames/entries.d.ts +19 -0
- package/dist/artifacts/frames/entries.d.ts.map +1 -0
- package/dist/artifacts/frames/grants.d.ts +6 -6
- package/dist/artifacts/frames/grants.d.ts.map +1 -1
- package/dist/artifacts/frames/index.d.ts +4 -2
- package/dist/artifacts/frames/index.d.ts.map +1 -1
- package/dist/artifacts/frames/index.js +444 -51
- package/dist/artifacts/frames/index.js.map +10 -8
- package/dist/artifacts/frames/kit.d.ts +10 -5
- package/dist/artifacts/frames/kit.d.ts.map +1 -1
- package/dist/artifacts/frames/probe.d.ts +16 -12
- package/dist/artifacts/frames/probe.d.ts.map +1 -1
- package/dist/artifacts/frames/protocol.d.ts +79 -10
- package/dist/artifacts/frames/protocol.d.ts.map +1 -1
- package/dist/artifacts/frames/runtime.d.ts +27 -9
- package/dist/artifacts/frames/runtime.d.ts.map +1 -1
- package/dist/artifacts/index.d.ts +11 -5
- package/dist/artifacts/index.d.ts.map +1 -1
- package/dist/artifacts/index.js +128 -6
- package/dist/artifacts/index.js.map +3 -3
- package/dist/artifacts/kinds.d.ts +1 -1
- package/dist/artifacts/kinds.d.ts.map +1 -1
- package/dist/artifacts/limits.d.ts +30 -0
- package/dist/artifacts/limits.d.ts.map +1 -1
- package/dist/artifacts/live-sheet.d.ts +65 -0
- package/dist/artifacts/live-sheet.d.ts.map +1 -0
- package/dist/artifacts/outline.d.ts +27 -1
- package/dist/artifacts/outline.d.ts.map +1 -1
- package/dist/artifacts/publish/index.d.ts +2 -0
- package/dist/artifacts/publish/index.d.ts.map +1 -1
- package/dist/artifacts/publish/index.js +59 -19
- package/dist/artifacts/publish/index.js.map +1 -1
- package/dist/artifacts/publish/publish.d.ts +43 -11
- package/dist/artifacts/publish/publish.d.ts.map +1 -1
- package/dist/artifacts/publish/queries.d.ts +33 -0
- package/dist/artifacts/publish/queries.d.ts.map +1 -0
- package/dist/artifacts/publish/references.d.ts +6 -3
- package/dist/artifacts/publish/references.d.ts.map +1 -1
- package/dist/artifacts/publish/validate/canvas.d.ts +18 -0
- package/dist/artifacts/publish/validate/canvas.d.ts.map +1 -0
- package/dist/artifacts/publish/validate/html.d.ts +20 -0
- package/dist/artifacts/publish/validate/html.d.ts.map +1 -0
- package/dist/artifacts/publish/validate/page.d.ts +15 -0
- package/dist/artifacts/publish/validate/page.d.ts.map +1 -0
- package/dist/artifacts/publish/validate/sheet.d.ts +11 -3
- package/dist/artifacts/publish/validate/sheet.d.ts.map +1 -1
- package/dist/artifacts/publish/validate/slides.d.ts +1 -7
- package/dist/artifacts/publish/validate/slides.d.ts.map +1 -1
- package/dist/artifacts/queries.d.ts +95 -0
- package/dist/artifacts/queries.d.ts.map +1 -0
- package/dist/artifacts/resolve.d.ts +6 -0
- package/dist/artifacts/resolve.d.ts.map +1 -1
- package/dist/artifacts/run-query.d.ts +26 -0
- package/dist/artifacts/run-query.d.ts.map +1 -0
- package/dist/artifacts/serialize-query.d.ts +12 -0
- package/dist/artifacts/serialize-query.d.ts.map +1 -0
- package/dist/artifacts/sheet-rules.d.ts +26 -0
- package/dist/artifacts/sheet-rules.d.ts.map +1 -0
- package/dist/artifacts/tones.d.ts +8 -0
- package/dist/artifacts/tones.d.ts.map +1 -0
- package/dist/artifacts/workbook.d.ts +76 -5
- package/dist/artifacts/workbook.d.ts.map +1 -1
- package/dist/auth/index.d.ts +1 -1
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +14 -11
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/member-events.d.ts +13 -0
- package/dist/auth/member-events.d.ts.map +1 -0
- package/dist/auth/profile.d.ts +11 -0
- package/dist/auth/profile.d.ts.map +1 -0
- package/dist/auth/runtime.d.ts +31 -3
- package/dist/auth/runtime.d.ts.map +1 -1
- package/dist/auth/strategy.d.ts +3 -1
- package/dist/auth/strategy.d.ts.map +1 -1
- package/dist/auth/strategy.js +7 -3
- package/dist/auth/strategy.js.map +1 -1
- package/dist/auth/types.d.ts +30 -1
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/authorization/decision.d.ts +15 -0
- package/dist/authorization/decision.d.ts.map +1 -1
- package/dist/authorization/event-visibility.d.ts +5 -1
- package/dist/authorization/event-visibility.d.ts.map +1 -1
- package/dist/authorization/grant-kinds.d.ts +2 -2
- package/dist/authorization/grant-kinds.d.ts.map +1 -1
- package/dist/authorization/index.d.ts +2 -2
- package/dist/authorization/index.d.ts.map +1 -1
- package/dist/authorization/index.js +12 -7
- package/dist/authorization/index.js.map +1 -1
- package/dist/authorization/resolve.d.ts +19 -1
- package/dist/authorization/resolve.d.ts.map +1 -1
- package/dist/authorization/run-visibility.d.ts +8 -1
- package/dist/authorization/run-visibility.d.ts.map +1 -1
- package/dist/authorization/types.d.ts +14 -0
- package/dist/authorization/types.d.ts.map +1 -1
- package/dist/bootstrap/index.js +69 -65
- package/dist/bootstrap/index.js.map +2 -2
- package/dist/{chunk-ky3j490c.js → chunk-02bzjgnt.js} +6 -6
- package/dist/{chunk-ky3j490c.js.map → chunk-02bzjgnt.js.map} +1 -1
- package/dist/{chunk-mfs23znk.js → chunk-07kkp2e1.js} +1 -1
- package/dist/{chunk-c1rxbz5y.js → chunk-098anw4f.js} +21 -19
- package/dist/chunk-098anw4f.js.map +12 -0
- package/dist/{chunk-z58tm0hm.js → chunk-0phpbbvm.js} +3 -3
- package/dist/{chunk-ere85b8y.js → chunk-0xmt5p5y.js} +116 -27
- package/dist/chunk-0xmt5p5y.js.map +14 -0
- package/dist/{chunk-t6f3tdnr.js → chunk-16a9dmfy.js} +33 -2
- package/dist/{chunk-t6f3tdnr.js.map → chunk-16a9dmfy.js.map} +5 -4
- package/dist/chunk-18sk89cg.js +47 -0
- package/dist/chunk-18sk89cg.js.map +10 -0
- package/dist/{chunk-e17zdm62.js → chunk-1t6k1avb.js} +1 -1
- package/dist/chunk-2626mh4m.js +693 -0
- package/dist/chunk-2626mh4m.js.map +19 -0
- package/dist/{chunk-qczk96d9.js → chunk-2adz0h75.js} +13 -4
- package/dist/chunk-2adz0h75.js.map +11 -0
- package/dist/{chunk-kge7k6ey.js → chunk-2fn60nvs.js} +2 -2
- package/dist/{chunk-99nd4rc1.js → chunk-2gjj5dx3.js} +5 -4
- package/dist/{chunk-99nd4rc1.js.map → chunk-2gjj5dx3.js.map} +3 -3
- package/dist/{chunk-mjddfa7k.js → chunk-3fqxbn31.js} +2 -24
- package/dist/{chunk-mjddfa7k.js.map → chunk-3fqxbn31.js.map} +3 -4
- package/dist/{chunk-y0c4e6ex.js → chunk-3gbefjg5.js} +1 -1
- package/dist/{chunk-5hx48dnn.js → chunk-45ngkxkp.js} +52 -31
- package/dist/chunk-45ngkxkp.js.map +13 -0
- package/dist/{chunk-cy4mbddw.js → chunk-48jezz3j.js} +1 -1
- package/dist/{chunk-561r0yc9.js → chunk-4b26qwbg.js} +13 -13
- package/dist/{chunk-561r0yc9.js.map → chunk-4b26qwbg.js.map} +1 -1
- package/dist/{chunk-9k93ah50.js → chunk-4f3ydv7t.js} +33 -69
- package/dist/chunk-4f3ydv7t.js.map +10 -0
- package/dist/chunk-4y26vs3v.js +97 -0
- package/dist/chunk-4y26vs3v.js.map +10 -0
- package/dist/{chunk-4as3wt1c.js → chunk-4ymrcdbm.js} +7 -3
- package/dist/chunk-4ymrcdbm.js.map +12 -0
- package/dist/{chunk-hcbyfxbe.js → chunk-5grk14e5.js} +76 -2
- package/dist/{chunk-hcbyfxbe.js.map → chunk-5grk14e5.js.map} +4 -3
- package/dist/{chunk-8frc8a4j.js → chunk-65pyhyas.js} +90 -83
- package/dist/chunk-65pyhyas.js.map +20 -0
- package/dist/{chunk-hwksyjks.js → chunk-661ezhks.js} +182 -6
- package/dist/chunk-661ezhks.js.map +11 -0
- package/dist/{chunk-447a5c0p.js → chunk-6n69k945.js} +2 -2
- package/dist/{chunk-0bphap9y.js → chunk-6p0pastb.js} +5 -5
- package/dist/{chunk-9j4jw7as.js → chunk-6rrtzea3.js} +18 -5
- package/dist/chunk-6rrtzea3.js.map +14 -0
- package/dist/{chunk-431pyp2c.js → chunk-6y0mkhex.js} +2 -2
- package/dist/{chunk-f4pamkt9.js → chunk-73v685wb.js} +10 -10
- package/dist/{chunk-f4pamkt9.js.map → chunk-73v685wb.js.map} +3 -3
- package/dist/{chunk-akzryx9h.js → chunk-7gr4j2eq.js} +7836 -5047
- package/dist/chunk-7gr4j2eq.js.map +120 -0
- package/dist/{chunk-bk9svbcq.js → chunk-7mc2wkre.js} +386 -86
- package/dist/chunk-7mc2wkre.js.map +50 -0
- package/dist/{chunk-6rqgmkde.js → chunk-7z5p905k.js} +335 -703
- package/dist/chunk-7z5p905k.js.map +22 -0
- package/dist/{chunk-yxd3nnqt.js → chunk-9mab3dvg.js} +26 -2
- package/dist/chunk-9mab3dvg.js.map +11 -0
- package/dist/chunk-9wr3yajk.js +42 -0
- package/dist/chunk-9wr3yajk.js.map +10 -0
- package/dist/chunk-az47zep4.js +41 -0
- package/dist/chunk-az47zep4.js.map +10 -0
- package/dist/{chunk-s7jg7pmn.js → chunk-bab05bhg.js} +1 -1
- package/dist/{chunk-858emn8m.js → chunk-bktev1ds.js} +14 -11
- package/dist/{chunk-858emn8m.js.map → chunk-bktev1ds.js.map} +3 -3
- package/dist/{chunk-dhcv7yxc.js → chunk-c0vk1djt.js} +5 -3
- package/dist/chunk-c0vk1djt.js.map +11 -0
- package/dist/chunk-c69nj7se.js +3 -0
- package/dist/{chunk-7n30ybym.js.map → chunk-c69nj7se.js.map} +1 -1
- package/dist/{chunk-q5e5tv4b.js → chunk-c844dkwd.js} +1 -1
- package/dist/{chunk-g257jwnc.js → chunk-cdk3egjj.js} +17 -4
- package/dist/chunk-cdk3egjj.js.map +12 -0
- package/dist/chunk-cswhawa2.js +113 -0
- package/dist/chunk-cswhawa2.js.map +10 -0
- package/dist/{chunk-cfj9dfbb.js → chunk-d2m879s4.js} +2 -2
- package/dist/{chunk-arns890k.js → chunk-d7vyc7k6.js} +2 -2
- package/dist/chunk-d7vyc7k6.js.map +10 -0
- package/dist/{chunk-q7gn29y3.js → chunk-dp0cdtj2.js} +2 -2
- package/dist/{chunk-6x0pqh32.js → chunk-e5wf5vz0.js} +3 -1
- package/dist/chunk-e5wf5vz0.js.map +10 -0
- package/dist/{chunk-cn0fwwhy.js → chunk-efmm01gj.js} +108 -1045
- package/dist/chunk-efmm01gj.js.map +18 -0
- package/dist/{chunk-918wwnaa.js → chunk-ezne9wc9.js} +1224 -430
- package/dist/chunk-ezne9wc9.js.map +71 -0
- package/dist/{chunk-tbc1ngpd.js → chunk-fe8zwt8b.js} +58 -12
- package/dist/{chunk-tbc1ngpd.js.map → chunk-fe8zwt8b.js.map} +5 -4
- package/dist/{chunk-br3k6qbf.js → chunk-fm62y49k.js} +1 -1
- package/dist/{chunk-nq6gpjt7.js → chunk-fntqb7qy.js} +30 -4
- package/dist/{chunk-nq6gpjt7.js.map → chunk-fntqb7qy.js.map} +5 -5
- package/dist/{chunk-1cc1xaf3.js → chunk-fp2kq35z.js} +26 -10
- package/dist/{chunk-1cc1xaf3.js.map → chunk-fp2kq35z.js.map} +5 -5
- package/dist/{chunk-vvxtn22d.js → chunk-g663fahq.js} +2 -2
- package/dist/{chunk-k43ct2ke.js → chunk-gvj5cd3b.js} +16 -9
- package/dist/chunk-gvj5cd3b.js.map +12 -0
- package/dist/{chunk-rmakanzx.js → chunk-h33shhq6.js} +5 -5
- package/dist/{chunk-nn5xnx3s.js → chunk-h3pbv7n8.js} +1738 -38
- package/dist/chunk-h3pbv7n8.js.map +48 -0
- package/dist/chunk-hn2r7z41.js.map +1 -1
- package/dist/{chunk-pbcbn83d.js → chunk-hqsp2sx4.js} +54 -8
- package/dist/chunk-hqsp2sx4.js.map +14 -0
- package/dist/{chunk-d09e3rax.js → chunk-hwarjrgf.js} +1 -1
- package/dist/{chunk-vf57cr4t.js → chunk-hyesv9dv.js} +1 -1
- package/dist/chunk-hz5d43gn.js +45 -0
- package/dist/chunk-hz5d43gn.js.map +10 -0
- package/dist/{chunk-91mg3nj9.js → chunk-j936th07.js} +86 -41
- package/dist/chunk-j936th07.js.map +12 -0
- package/dist/chunk-kcqpk9w1.js +75 -0
- package/dist/chunk-kcqpk9w1.js.map +10 -0
- package/dist/{chunk-5vems3nx.js → chunk-m2nevja0.js} +2 -2
- package/dist/{chunk-x9v4cx1d.js → chunk-m36fw8ft.js} +1 -1
- package/dist/{chunk-a40ad1ft.js → chunk-mbsbxarb.js} +1 -1
- package/dist/chunk-mzx71snp.js +129 -0
- package/dist/chunk-mzx71snp.js.map +10 -0
- package/dist/{chunk-6aawea28.js → chunk-n8q5j6y5.js} +1 -1
- package/dist/{chunk-d7dnxdep.js → chunk-n9zpx9c6.js} +4 -4
- package/dist/{chunk-xvsc5m8n.js → chunk-npcr0228.js} +1 -1
- package/dist/chunk-nydf3dbe.js +663 -0
- package/dist/chunk-nydf3dbe.js.map +13 -0
- package/dist/chunk-pdt5cw8z.js +233 -0
- package/dist/chunk-pdt5cw8z.js.map +11 -0
- package/dist/{chunk-rj69qcrd.js → chunk-pgrf64hp.js} +55 -7
- package/dist/chunk-pgrf64hp.js.map +12 -0
- package/dist/{chunk-y5tah2kf.js → chunk-q4pmvkg0.js} +1 -1
- package/dist/chunk-qhqgp4jf.js +1418 -0
- package/dist/chunk-qhqgp4jf.js.map +22 -0
- package/dist/{chunk-48qjhh6v.js → chunk-qx00vjrj.js} +19 -60
- package/dist/chunk-qx00vjrj.js.map +13 -0
- package/dist/{chunk-5948n82c.js → chunk-r6szek0x.js} +184 -7
- package/dist/chunk-r6szek0x.js.map +10 -0
- package/dist/{chunk-v4jbb3rs.js → chunk-rap5w0x0.js} +156 -2
- package/dist/chunk-rap5w0x0.js.map +10 -0
- package/dist/{chunk-pfp1txq2.js → chunk-sgx82nnt.js} +5 -31
- package/dist/{chunk-pfp1txq2.js.map → chunk-sgx82nnt.js.map} +3 -4
- package/dist/{chunk-bkpke1sg.js → chunk-t5608tkq.js} +3 -1
- package/dist/{chunk-bkpke1sg.js.map → chunk-t5608tkq.js.map} +3 -3
- package/dist/{chunk-29yx306f.js → chunk-tdxfsg1c.js} +507 -265
- package/dist/chunk-tdxfsg1c.js.map +23 -0
- package/dist/{chunk-d5rjr8c0.js → chunk-vabga7fk.js} +1 -1
- package/dist/{chunk-dhdha526.js → chunk-vhbw5sqm.js} +26 -2
- package/dist/chunk-vhbw5sqm.js.map +10 -0
- package/dist/{chunk-e6k4thh5.js → chunk-vpgwq5nf.js} +98 -12
- package/dist/chunk-vpgwq5nf.js.map +21 -0
- package/dist/{chunk-61y5xs4p.js → chunk-vyt322b6.js} +69 -50
- package/dist/{chunk-61y5xs4p.js.map → chunk-vyt322b6.js.map} +4 -4
- package/dist/chunk-waqk73p1.js +2380 -0
- package/dist/chunk-waqk73p1.js.map +23 -0
- package/dist/chunk-wsc1brye.js +27 -0
- package/dist/chunk-wsc1brye.js.map +10 -0
- package/dist/{chunk-96yw3pwd.js → chunk-y7dbmaqh.js} +28 -2
- package/dist/chunk-y7dbmaqh.js.map +10 -0
- package/dist/{chunk-6vb4st8k.js → chunk-yc9ners4.js} +120 -19
- package/dist/{chunk-6vb4st8k.js.map → chunk-yc9ners4.js.map} +8 -8
- package/dist/{chunk-dvd2fp9q.js → chunk-zbc929zg.js} +28 -4
- package/dist/chunk-zbc929zg.js.map +13 -0
- package/dist/chunk-zrvhsq7f.js +37 -0
- package/dist/chunk-zrvhsq7f.js.map +10 -0
- package/dist/datasets/write.js +5 -5
- package/dist/error-reporting/internal.js +3 -3
- package/dist/errors/catalog.d.ts +26 -0
- package/dist/errors/catalog.d.ts.map +1 -1
- package/dist/errors/internal.d.ts.map +1 -1
- package/dist/errors/internal.js +1 -1
- package/dist/events/definitions.d.ts +7 -0
- package/dist/events/definitions.d.ts.map +1 -1
- package/dist/events/execution.d.ts.map +1 -1
- package/dist/events/index.d.ts +2 -3
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/index.js +8 -10
- package/dist/events/index.js.map +1 -1
- package/dist/events/scope.d.ts.map +1 -1
- package/dist/events/scope.js +1 -1
- package/dist/events/selectors/builder.d.ts +12 -1
- package/dist/events/selectors/builder.d.ts.map +1 -1
- package/dist/events/selectors/index.d.ts +2 -2
- package/dist/events/selectors/index.d.ts.map +1 -1
- package/dist/events/selectors/index.js +2 -2
- package/dist/events/selectors/types.d.ts +19 -3
- package/dist/events/selectors/types.d.ts.map +1 -1
- package/dist/events/service.d.ts +17 -2
- package/dist/events/service.d.ts.map +1 -1
- package/dist/events/types/index.d.ts +3 -1
- package/dist/events/types/index.d.ts.map +1 -1
- package/dist/events/types/users.d.ts +63 -0
- package/dist/events/types/users.d.ts.map +1 -0
- package/dist/events/view-conditions.d.ts +34 -0
- package/dist/events/view-conditions.d.ts.map +1 -0
- package/dist/execution/agent.d.ts +15 -0
- package/dist/execution/agent.d.ts.map +1 -1
- package/dist/execution/agent.js +63 -57
- package/dist/execution/agent.js.map +1 -1
- package/dist/execution/authorization.d.ts.map +1 -1
- package/dist/execution/authorized-object-reader.d.ts +51 -2
- package/dist/execution/authorized-object-reader.d.ts.map +1 -1
- package/dist/execution/lineage.d.ts +7 -0
- package/dist/execution/lineage.d.ts.map +1 -0
- package/dist/execution/object-reader-ontology.d.ts +2 -2
- package/dist/execution/object-reader-ontology.d.ts.map +1 -1
- package/dist/execution/object-reader-security.d.ts +24 -3
- package/dist/execution/object-reader-security.d.ts.map +1 -1
- package/dist/execution/object-reader-users.d.ts +20 -0
- package/dist/execution/object-reader-users.d.ts.map +1 -0
- package/dist/execution/preparation.d.ts +23 -0
- package/dist/execution/preparation.d.ts.map +1 -0
- package/dist/execution/primitive.js +61 -57
- package/dist/execution/primitive.js.map +1 -1
- package/dist/execution/request.d.ts +2 -1
- package/dist/execution/request.d.ts.map +1 -1
- package/dist/execution/request.js +64 -56
- package/dist/execution/request.js.map +3 -3
- package/dist/execution/unique-lookup.d.ts +14 -0
- package/dist/execution/unique-lookup.d.ts.map +1 -0
- package/dist/execution/visible-objects.d.ts +12 -0
- package/dist/execution/visible-objects.d.ts.map +1 -0
- package/dist/http/api-routes.d.ts +17 -0
- package/dist/http/api-routes.d.ts.map +1 -1
- package/dist/http/index.js +1 -1
- package/dist/index.d.ts +32 -15
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +137 -126
- package/dist/index.js.map +1 -1
- package/dist/lake-storage/index.js +5 -5
- package/dist/materialization/errors.d.ts +25 -0
- package/dist/materialization/errors.d.ts.map +1 -1
- package/dist/materialization/event-envelopes.d.ts +5 -0
- package/dist/materialization/event-envelopes.d.ts.map +1 -1
- package/dist/materialization/index.d.ts +1 -1
- package/dist/materialization/index.d.ts.map +1 -1
- package/dist/materialization/index.js +14 -8
- package/dist/materialization/index.js.map +1 -1
- package/dist/materialization/model.d.ts +20 -2
- package/dist/materialization/model.d.ts.map +1 -1
- package/dist/materializer/edits/commit.d.ts.map +1 -1
- package/dist/materializer/edits/load-state.d.ts +5 -1
- package/dist/materializer/edits/load-state.d.ts.map +1 -1
- package/dist/materializer/edits/plan.d.ts.map +1 -1
- package/dist/materializer/edits/unique-values.d.ts +47 -0
- package/dist/materializer/edits/unique-values.d.ts.map +1 -0
- package/dist/materializer/edits/working-state.d.ts +6 -1
- package/dist/materializer/edits/working-state.d.ts.map +1 -1
- package/dist/materializer/execution/work-records.d.ts +7 -1
- package/dist/materializer/execution/work-records.d.ts.map +1 -1
- package/dist/materializer/index.js +45 -41
- package/dist/materializer/index.js.map +1 -1
- package/dist/materializer/projections/replacement-plan.d.ts.map +1 -1
- package/dist/materializer/projections/source-materialization.d.ts +1 -0
- package/dist/materializer/projections/source-materialization.d.ts.map +1 -1
- package/dist/materializer/shared/normalize.d.ts.map +1 -1
- package/dist/materializer/shared/projection-run.d.ts +0 -1
- package/dist/materializer/shared/projection-run.d.ts.map +1 -1
- package/dist/materializer/telemetry/plan.d.ts.map +1 -1
- package/dist/models/audio/catalog.d.ts +13 -1
- package/dist/models/audio/catalog.d.ts.map +1 -1
- package/dist/models/audio/errors.d.ts +6 -1
- package/dist/models/audio/errors.d.ts.map +1 -1
- package/dist/models/audio/runtime.d.ts.map +1 -1
- package/dist/models/audio/speech.d.ts +8 -0
- package/dist/models/audio/speech.d.ts.map +1 -0
- package/dist/models/audio/types.d.ts +93 -0
- package/dist/models/audio/types.d.ts.map +1 -1
- package/dist/models/calls.d.ts +27 -0
- package/dist/models/calls.d.ts.map +1 -0
- package/dist/models/catalog-index.d.ts +7 -4
- package/dist/models/catalog-index.d.ts.map +1 -1
- package/dist/models/catalog.d.ts +55 -3
- package/dist/models/catalog.d.ts.map +1 -1
- package/dist/models/decision/runtime.d.ts +6 -1
- package/dist/models/decision/runtime.d.ts.map +1 -1
- package/dist/models/decision/validation.d.ts +4 -1
- package/dist/models/decision/validation.d.ts.map +1 -1
- package/dist/models/definitions.d.ts +23 -1
- package/dist/models/definitions.d.ts.map +1 -1
- package/dist/models/events.d.ts +12 -1
- package/dist/models/events.d.ts.map +1 -1
- package/dist/models/execution/binding.d.ts +3 -1
- package/dist/models/execution/binding.d.ts.map +1 -1
- package/dist/models/execution/index.d.ts +1 -0
- package/dist/models/execution/index.d.ts.map +1 -1
- package/dist/models/execution/index.js +44 -34
- package/dist/models/execution/index.js.map +1 -1
- package/dist/models/execution/model-call-accounting.d.ts.map +1 -1
- package/dist/models/execution/model-call-recorder.d.ts +3 -0
- package/dist/models/execution/model-call-recorder.d.ts.map +1 -1
- package/dist/models/execution/usage.d.ts.map +1 -1
- package/dist/models/execution.d.ts +4 -2
- package/dist/models/execution.d.ts.map +1 -1
- package/dist/models/generation-types.d.ts +8 -1
- package/dist/models/generation-types.d.ts.map +1 -1
- package/dist/models/image/catalog.d.ts +13 -0
- package/dist/models/image/catalog.d.ts.map +1 -0
- package/dist/models/image/errors.d.ts +8 -0
- package/dist/models/image/errors.d.ts.map +1 -0
- package/dist/models/image/runtime.d.ts +8 -0
- package/dist/models/image/runtime.d.ts.map +1 -0
- package/dist/models/image/types.d.ts +103 -0
- package/dist/models/image/types.d.ts.map +1 -0
- package/dist/models/index.d.ts +12 -8
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/index.js +17 -7
- package/dist/models/index.js.map +1 -1
- package/dist/models/input-file.d.ts +9 -0
- package/dist/models/input-file.d.ts.map +1 -0
- package/dist/models/language-model.d.ts +13 -0
- package/dist/models/language-model.d.ts.map +1 -1
- package/dist/models/pricing.d.ts +25 -10
- package/dist/models/pricing.d.ts.map +1 -1
- package/dist/models/rate-card.d.ts +44 -6
- package/dist/models/rate-card.d.ts.map +1 -1
- package/dist/objects/conditional-writes.d.ts +37 -0
- package/dist/objects/conditional-writes.d.ts.map +1 -0
- package/dist/objects/execution.d.ts +2 -0
- package/dist/objects/execution.d.ts.map +1 -1
- package/dist/objects/index.d.ts +1 -0
- package/dist/objects/index.d.ts.map +1 -1
- package/dist/objects/index.js +68 -58
- package/dist/objects/index.js.map +1 -1
- package/dist/objects/link/authorization.d.ts +3 -0
- package/dist/objects/link/authorization.d.ts.map +1 -1
- package/dist/objects/link/endpoints.d.ts +21 -2
- package/dist/objects/link/endpoints.d.ts.map +1 -1
- package/dist/objects/link/remove.d.ts.map +1 -1
- package/dist/objects/link/upsert-batch.d.ts.map +1 -1
- package/dist/objects/link/upsert.d.ts.map +1 -1
- package/dist/objects/materializer-adapter.d.ts +13 -4
- package/dist/objects/materializer-adapter.d.ts.map +1 -1
- package/dist/objects/object/delete.d.ts +3 -0
- package/dist/objects/object/delete.d.ts.map +1 -1
- package/dist/objects/object/upsert-batch.d.ts.map +1 -1
- package/dist/objects/object/upsert.d.ts.map +1 -1
- package/dist/objects/query/current-user.d.ts +17 -0
- package/dist/objects/query/current-user.d.ts.map +1 -0
- package/dist/objects/query/executor.d.ts +14 -0
- package/dist/objects/query/executor.d.ts.map +1 -1
- package/dist/objects/query/index.d.ts +2 -2
- package/dist/objects/query/index.d.ts.map +1 -1
- package/dist/objects/query/index.js +49 -44
- package/dist/objects/query/index.js.map +1 -1
- package/dist/objects/query/ir.d.ts +19 -1
- package/dist/objects/query/ir.d.ts.map +1 -1
- package/dist/objects/query/matches-predicate.d.ts +9 -0
- package/dist/objects/query/matches-predicate.d.ts.map +1 -0
- package/dist/objects/query/normalize.d.ts.map +1 -1
- package/dist/objects/query/user-expansions.d.ts +27 -0
- package/dist/objects/query/user-expansions.d.ts.map +1 -0
- package/dist/objects/query/validate.d.ts.map +1 -1
- package/dist/objects/runtime-batch.d.ts +3 -1
- package/dist/objects/runtime-batch.d.ts.map +1 -1
- package/dist/objects/sdk/object-set.d.ts.map +1 -1
- package/dist/objects/sdk/query-executor.d.ts +6 -0
- package/dist/objects/sdk/query-executor.d.ts.map +1 -1
- package/dist/objects/serialize.d.ts +39 -0
- package/dist/objects/serialize.d.ts.map +1 -0
- package/dist/objects/unique-violation.d.ts +22 -0
- package/dist/objects/unique-violation.d.ts.map +1 -0
- package/dist/ontology/builders.d.ts +3 -1
- package/dist/ontology/builders.d.ts.map +1 -1
- package/dist/ontology/index.d.ts +2 -2
- package/dist/ontology/index.d.ts.map +1 -1
- package/dist/ontology/index.js +11 -7
- package/dist/ontology/index.js.map +1 -1
- package/dist/ontology/internal.js +7 -5
- package/dist/ontology/internal.js.map +3 -3
- package/dist/ontology/json-schema.d.ts.map +1 -1
- package/dist/ontology/primitives.d.ts +3 -0
- package/dist/ontology/primitives.d.ts.map +1 -1
- package/dist/ontology/registry.d.ts +6 -0
- package/dist/ontology/registry.d.ts.map +1 -1
- package/dist/ontology/types.d.ts +9 -0
- package/dist/ontology/types.d.ts.map +1 -1
- package/dist/ontology/unique-values.d.ts +26 -0
- package/dist/ontology/unique-values.d.ts.map +1 -0
- package/dist/ontology/user-ref.d.ts +23 -0
- package/dist/ontology/user-ref.d.ts.map +1 -1
- package/dist/ontology/validation/properties.d.ts.map +1 -1
- package/dist/ontology/validation/schema.d.ts.map +1 -1
- package/dist/pipelines/index.js +43 -40
- package/dist/pipelines/index.js.map +1 -1
- package/dist/projections/internal.js +36 -33
- package/dist/projections/internal.js.map +1 -1
- package/dist/projections/registry.d.ts +4 -0
- package/dist/projections/registry.d.ts.map +1 -1
- package/dist/projections/revision.d.ts +15 -0
- package/dist/projections/revision.d.ts.map +1 -1
- package/dist/projections/run-dispatch.d.ts.map +1 -1
- package/dist/projections/types.d.ts +2 -0
- package/dist/projections/types.d.ts.map +1 -1
- package/dist/query.d.ts +4 -2
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +2 -2
- package/dist/rules/execution.d.ts.map +1 -1
- package/dist/runtime/ai-cost.d.ts +2 -0
- package/dist/runtime/ai-cost.d.ts.map +1 -1
- package/dist/runtime/ai-usage.d.ts +7 -0
- package/dist/runtime/ai-usage.d.ts.map +1 -1
- package/dist/runtime/host.d.ts.map +1 -1
- package/dist/runtime/index.d.ts +1 -1
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/internal.js +42 -38
- package/dist/runtime/internal.js.map +1 -1
- package/dist/runtime/resolve-definitions.d.ts.map +1 -1
- package/dist/runtime/sixb.d.ts +2 -0
- package/dist/runtime/sixb.d.ts.map +1 -1
- package/dist/runtime/types.d.ts +66 -8
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/sandboxes/index.js +7 -6
- package/dist/sandboxes/index.js.map +1 -1
- package/dist/schedules/builders.d.ts.map +1 -1
- package/dist/schedules/index.js +3 -3
- package/dist/schedules/runtime.d.ts.map +1 -1
- package/dist/schedules/validation.d.ts.map +1 -1
- package/dist/security/grants.d.ts +12 -4
- 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/internal.js +1 -1
- package/dist/security/project.d.ts +4 -1
- package/dist/security/project.d.ts.map +1 -1
- package/dist/security/public.js +2 -2
- package/dist/security/registry.d.ts +6 -0
- package/dist/security/registry.d.ts.map +1 -1
- package/dist/security/types.d.ts +47 -9
- package/dist/security/types.d.ts.map +1 -1
- package/dist/security/validation.d.ts.map +1 -1
- package/dist/security/view-conditions.d.ts +37 -0
- package/dist/security/view-conditions.d.ts.map +1 -0
- package/dist/shares/execution.d.ts.map +1 -1
- package/dist/shares/internal.js +34 -31
- package/dist/shares/internal.js.map +2 -2
- package/dist/storage/action-runs/failure.js +2 -2
- package/dist/storage/action-runs/provider.js +1 -1
- package/dist/storage/action-runs/types.d.ts +1 -1
- package/dist/storage/action-runs/types.d.ts.map +1 -1
- package/dist/storage/agents/errors.d.ts +3 -1
- package/dist/storage/agents/errors.d.ts.map +1 -1
- package/dist/storage/agents/in-memory.d.ts +120 -3
- package/dist/storage/agents/in-memory.d.ts.map +1 -1
- package/dist/storage/agents/index.d.ts +2 -2
- package/dist/storage/agents/index.d.ts.map +1 -1
- package/dist/storage/agents/provider.d.ts +154 -4
- package/dist/storage/agents/provider.d.ts.map +1 -1
- package/dist/storage/agents/provider.js +60 -5
- package/dist/storage/agents/provider.js.map +1 -1
- package/dist/storage/agents/types.d.ts +565 -13
- package/dist/storage/agents/types.d.ts.map +1 -1
- package/dist/storage/ai-cost/analytics.d.ts +10 -1
- package/dist/storage/ai-cost/analytics.d.ts.map +1 -1
- package/dist/storage/ai-cost/groups.d.ts +9 -0
- package/dist/storage/ai-cost/groups.d.ts.map +1 -1
- package/dist/storage/ai-cost/index.d.ts +1 -1
- package/dist/storage/ai-cost/index.d.ts.map +1 -1
- package/dist/storage/ai-cost/provider.d.ts +2 -1
- package/dist/storage/ai-cost/provider.d.ts.map +1 -1
- package/dist/storage/ai-cost/provider.js +11 -5
- package/dist/storage/ai-cost/provider.js.map +1 -1
- package/dist/storage/ai-cost/types.d.ts +14 -2
- package/dist/storage/ai-cost/types.d.ts.map +1 -1
- package/dist/storage/ai-cost/validation.d.ts.map +1 -1
- package/dist/storage/ai-limits/enforcement.js +5 -4
- package/dist/storage/ai-limits/enforcement.js.map +1 -1
- package/dist/storage/ai-limits/provider.d.ts +1 -1
- package/dist/storage/ai-limits/provider.d.ts.map +1 -1
- package/dist/storage/ai-limits/provider.js +3 -2
- package/dist/storage/ai-limits/provider.js.map +1 -1
- package/dist/storage/ai-usage/in-memory.d.ts +5 -1
- package/dist/storage/ai-usage/in-memory.d.ts.map +1 -1
- package/dist/storage/ai-usage/index.d.ts +2 -2
- package/dist/storage/ai-usage/index.d.ts.map +1 -1
- package/dist/storage/ai-usage/record.d.ts +5 -1
- package/dist/storage/ai-usage/record.d.ts.map +1 -1
- package/dist/storage/ai-usage/types.d.ts +33 -0
- package/dist/storage/ai-usage/types.d.ts.map +1 -1
- package/dist/storage/ai-usage/usage.d.ts +2 -0
- package/dist/storage/ai-usage/usage.d.ts.map +1 -1
- package/dist/storage/artifacts/errors.d.ts +12 -2
- package/dist/storage/artifacts/errors.d.ts.map +1 -1
- package/dist/storage/artifacts/in-memory.d.ts +23 -2
- package/dist/storage/artifacts/in-memory.d.ts.map +1 -1
- package/dist/storage/artifacts/index.d.ts +2 -2
- package/dist/storage/artifacts/index.d.ts.map +1 -1
- package/dist/storage/artifacts/record.d.ts +19 -2
- package/dist/storage/artifacts/record.d.ts.map +1 -1
- package/dist/storage/artifacts/types.d.ts +87 -8
- package/dist/storage/artifacts/types.d.ts.map +1 -1
- package/dist/storage/auth/in-memory/auth-storage.d.ts +3 -2
- package/dist/storage/auth/in-memory/auth-storage.d.ts.map +1 -1
- package/dist/storage/auth/in-memory/users.d.ts +7 -3
- package/dist/storage/auth/in-memory/users.d.ts.map +1 -1
- package/dist/storage/auth/index.d.ts +1 -1
- package/dist/storage/auth/index.d.ts.map +1 -1
- package/dist/storage/auth/types.d.ts +40 -9
- package/dist/storage/auth/types.d.ts.map +1 -1
- package/dist/storage/connector-connections/provider.js +1 -1
- package/dist/storage/executions/in-memory.d.ts +2 -1
- package/dist/storage/executions/in-memory.d.ts.map +1 -1
- package/dist/storage/executions/index.d.ts +1 -1
- package/dist/storage/executions/index.d.ts.map +1 -1
- package/dist/storage/executions/types.d.ts +15 -0
- package/dist/storage/executions/types.d.ts.map +1 -1
- package/dist/storage/file-upload-sessions/provider.js +15 -12
- package/dist/storage/file-upload-sessions/provider.js.map +1 -1
- package/dist/storage/index.d.ts +13 -11
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +50 -39
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/internal.d.ts +2 -2
- package/dist/storage/internal.d.ts.map +1 -1
- package/dist/storage/internal.js +19 -8
- package/dist/storage/internal.js.map +1 -1
- package/dist/storage/migrations/migrate-storage.d.ts +4 -1
- package/dist/storage/migrations/migrate-storage.d.ts.map +1 -1
- package/dist/storage/migrations/prepare-unique-properties.d.ts +18 -0
- package/dist/storage/migrations/prepare-unique-properties.d.ts.map +1 -0
- package/dist/storage/objects/guard.d.ts +1 -1
- package/dist/storage/objects/guard.d.ts.map +1 -1
- package/dist/storage/objects/in-memory/conditional-reader.d.ts +5 -0
- package/dist/storage/objects/in-memory/conditional-reader.d.ts.map +1 -0
- package/dist/storage/objects/in-memory/query.d.ts.map +1 -1
- package/dist/storage/objects/in-memory/read-scope.d.ts +3 -9
- package/dist/storage/objects/in-memory/read-scope.d.ts.map +1 -1
- package/dist/storage/objects/in-memory/read-source.d.ts +10 -1
- package/dist/storage/objects/in-memory/read-source.d.ts.map +1 -1
- package/dist/storage/objects/in-memory/scoped-reader.d.ts +14 -0
- package/dist/storage/objects/in-memory/scoped-reader.d.ts.map +1 -0
- package/dist/storage/objects/in-memory/selected-reader.d.ts.map +1 -1
- package/dist/storage/objects/in-memory/storage.d.ts +36 -1
- package/dist/storage/objects/in-memory/storage.d.ts.map +1 -1
- package/dist/storage/objects/index.d.ts +2 -2
- package/dist/storage/objects/index.d.ts.map +1 -1
- package/dist/storage/objects/read-scope.d.ts +9 -1
- package/dist/storage/objects/read-scope.d.ts.map +1 -1
- package/dist/storage/objects/types.d.ts +64 -1
- package/dist/storage/objects/types.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/index.d.ts +2 -0
- package/dist/storage/ontology/in-memory/index.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/materializations.d.ts +1 -0
- package/dist/storage/ontology/in-memory/materializations.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/replacement-plans.d.ts.map +1 -1
- package/dist/storage/ontology/in-memory/unique-values.d.ts +32 -0
- package/dist/storage/ontology/in-memory/unique-values.d.ts.map +1 -0
- package/dist/storage/ontology/index.d.ts +4 -1
- package/dist/storage/ontology/index.d.ts.map +1 -1
- package/dist/storage/ontology/materializations.d.ts +34 -1
- package/dist/storage/ontology/materializations.d.ts.map +1 -1
- package/dist/storage/ontology/provider-work.d.ts +15 -2
- package/dist/storage/ontology/provider-work.d.ts.map +1 -1
- package/dist/storage/ontology/provider.d.ts +1 -1
- package/dist/storage/ontology/provider.d.ts.map +1 -1
- package/dist/storage/ontology/provider.js +9 -4
- package/dist/storage/ontology/provider.js.map +1 -1
- package/dist/storage/ontology/unique-values.d.ts +54 -0
- package/dist/storage/ontology/unique-values.d.ts.map +1 -0
- package/dist/storage/operation-scope.d.ts +1 -1
- package/dist/storage/operation-scope.d.ts.map +1 -1
- package/dist/storage/operation-scope.js +1 -1
- package/dist/storage/projection-runs/in-memory.d.ts +0 -6
- package/dist/storage/projection-runs/in-memory.d.ts.map +1 -1
- package/dist/storage/projection-runs/provider.js +2 -2
- package/dist/storage/share-grants/provider.js +4 -3
- package/dist/storage/share-grants/provider.js.map +1 -1
- package/dist/storage/types.d.ts +2 -2
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/workflow-runs/provider.js +15 -12
- package/dist/storage/workflow-runs/provider.js.map +1 -1
- package/dist/syncs/index.js +42 -39
- package/dist/syncs/index.js.map +1 -1
- package/dist/testing/agent-approval-storage-contract.d.ts +17 -0
- package/dist/testing/agent-approval-storage-contract.d.ts.map +1 -0
- package/dist/testing/agent-memory-storage-contract.d.ts +12 -0
- package/dist/testing/agent-memory-storage-contract.d.ts.map +1 -0
- package/dist/testing/agent-storage-contract.d.ts.map +1 -1
- package/dist/testing/ai-cost-storage-contract.d.ts.map +1 -1
- package/dist/testing/ai-limit-storage-contract.d.ts +0 -1
- package/dist/testing/ai-limit-storage-contract.d.ts.map +1 -1
- package/dist/testing/ai-model-call-groups-contract.d.ts.map +1 -1
- package/dist/testing/ai-usage-storage-contract.d.ts.map +1 -1
- package/dist/testing/artifact-storage-contract.d.ts.map +1 -1
- package/dist/testing/auth-storage-contract.d.ts +13 -0
- package/dist/testing/auth-storage-contract.d.ts.map +1 -1
- package/dist/testing/broker-contract.d.ts +5 -0
- package/dist/testing/broker-contract.d.ts.map +1 -1
- package/dist/testing/effective-storage-contract.d.ts.map +1 -1
- package/dist/testing/execution-storage-contract.d.ts.map +1 -1
- package/dist/testing/file-upload-session-storage-contract.d.ts.map +1 -1
- package/dist/testing/index.d.ts +9 -5
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +7938 -3743
- package/dist/testing/index.js.map +29 -25
- package/dist/testing/lake-storage-contract.d.ts.map +1 -1
- package/dist/testing/materializer-storage-contract.d.ts.map +1 -1
- package/dist/testing/object-conditional-read-scope-contract.d.ts +11 -0
- package/dist/testing/object-conditional-read-scope-contract.d.ts.map +1 -0
- package/dist/testing/object-query-contract.d.ts +0 -2
- package/dist/testing/object-query-contract.d.ts.map +1 -1
- package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
- package/dist/testing/projection-run-storage-contract.d.ts.map +1 -1
- package/dist/testing/queues-contract.d.ts +5 -0
- package/dist/testing/queues-contract.d.ts.map +1 -1
- package/dist/testing/sandboxes-contract.d.ts.map +1 -1
- package/dist/testing/share-grant-storage-contract.d.ts.map +1 -1
- package/dist/testing/share-session-storage-contract.d.ts.map +1 -1
- package/dist/testing/unique-values-contract.d.ts +21 -0
- package/dist/testing/unique-values-contract.d.ts.map +1 -0
- package/dist/testing/webhook-execution.d.ts +0 -8
- package/dist/testing/webhook-execution.d.ts.map +1 -1
- package/dist/testing/webhook-run-storage-contract.d.ts.map +1 -1
- package/dist/users/execution.d.ts +40 -0
- package/dist/users/execution.d.ts.map +1 -0
- package/dist/users/index.d.ts +3 -0
- package/dist/users/index.d.ts.map +1 -0
- package/dist/webhooks/internal.js +34 -31
- package/dist/webhooks/internal.js.map +2 -2
- package/dist/workers/index.js +4 -6
- package/dist/workers/index.js.map +4 -4
- package/dist/workers/queue-worker.d.ts +0 -2
- package/dist/workers/queue-worker.d.ts.map +1 -1
- package/dist/workers/worker.d.ts +0 -2
- package/dist/workers/worker.d.ts.map +1 -1
- package/dist/workflows/builders.d.ts.map +1 -1
- package/dist/workflows/index.js +67 -63
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/request.d.ts +12 -1
- package/dist/workflows/request.d.ts.map +1 -1
- package/dist/workflows/types.d.ts +6 -2
- package/dist/workflows/types.d.ts.map +1 -1
- package/dist/workflows/validation.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/actions/commit-edits.ts +6 -1
- package/src/actions/execution.ts +42 -15
- package/src/actions/read-facade.ts +33 -0
- package/src/actions/request.ts +224 -71
- package/src/actions/run/context.ts +47 -1
- package/src/actions/run/execute.ts +13 -6
- package/src/actions/run/executor.ts +11 -2
- package/src/actions/run/normalize.ts +12 -2
- package/src/actions/run/phases.ts +2 -0
- package/src/actions/run/run-action.ts +12 -3
- package/src/actions/run/signals.ts +3 -9
- package/src/actions/run/types.ts +17 -1
- package/src/actions/run-authorization.ts +72 -0
- package/src/actions/types/context.ts +20 -3
- package/src/actions/validators.ts +19 -8
- package/src/activity/README.md +5 -2
- package/src/activity/timeline.ts +39 -78
- package/src/agents/accounting.ts +59 -0
- package/src/agents/adapters.ts +10 -0
- package/src/agents/agent-mail.ts +29 -0
- package/src/agents/api-gateway.ts +14 -3
- package/src/agents/approval-continuation.ts +48 -0
- package/src/agents/approval-executor.ts +318 -0
- package/src/agents/approval-outcome.ts +59 -0
- package/src/agents/approvals.ts +566 -0
- package/src/agents/authority.ts +24 -1
- package/src/agents/builders.ts +5 -3
- package/src/agents/cancel.ts +103 -0
- package/src/agents/child-question.ts +46 -0
- package/src/agents/children.ts +404 -0
- package/src/agents/context-compaction.ts +12 -0
- package/src/agents/errors.ts +31 -0
- package/src/agents/execution.ts +788 -90
- package/src/agents/fork.ts +158 -0
- package/src/agents/ids.ts +18 -6
- package/src/agents/index.ts +55 -0
- package/src/agents/memory-execution.ts +186 -0
- package/src/agents/memory.ts +178 -0
- package/src/agents/message.ts +57 -0
- package/src/agents/model-loop.ts +93 -6
- package/src/agents/model-routing.ts +193 -0
- package/src/agents/participants.ts +213 -0
- package/src/agents/reference.ts +2 -0
- package/src/agents/request.ts +398 -69
- package/src/agents/run-scope.ts +134 -0
- package/src/agents/streams/index.ts +5 -0
- package/src/agents/streams/internal.ts +1 -0
- package/src/agents/streams/protocol.ts +385 -7
- package/src/agents/subagent-runs.ts +41 -0
- package/src/agents/thread-access.ts +137 -0
- package/src/agents/tool-definition.ts +5 -3
- package/src/agents/types.ts +35 -10
- package/src/agents/validation.ts +2 -0
- package/src/artifacts/access.ts +125 -0
- package/src/artifacts/canvas.ts +369 -0
- package/src/artifacts/csv.ts +10 -0
- package/src/artifacts/errors.ts +12 -1
- package/src/artifacts/execution.ts +436 -36
- package/src/artifacts/formula/check.ts +171 -0
- package/src/artifacts/formula/evaluate.ts +288 -0
- package/src/artifacts/formula/index.ts +199 -0
- package/src/artifacts/formula/parser.ts +357 -0
- package/src/artifacts/frames/assets.ts +35 -19
- package/src/artifacts/frames/entries.ts +35 -0
- package/src/artifacts/frames/grants.ts +10 -9
- package/src/artifacts/frames/index.ts +8 -2
- package/src/artifacts/frames/kit.ts +191 -14
- package/src/artifacts/frames/probe.ts +66 -18
- package/src/artifacts/frames/protocol.ts +164 -10
- package/src/artifacts/frames/runtime.ts +273 -28
- package/src/artifacts/index.ts +66 -2
- package/src/artifacts/kinds.ts +1 -1
- package/src/artifacts/limits.ts +31 -0
- package/src/artifacts/live-sheet.ts +345 -0
- package/src/artifacts/outline.ts +34 -1
- package/src/artifacts/publish/index.ts +2 -0
- package/src/artifacts/publish/publish.ts +120 -34
- package/src/artifacts/publish/queries.ts +336 -0
- package/src/artifacts/publish/references.ts +18 -13
- package/src/artifacts/publish/validate/canvas.ts +118 -0
- package/src/artifacts/publish/validate/html.ts +78 -0
- package/src/artifacts/publish/validate/page.ts +65 -0
- package/src/artifacts/publish/validate/sheet.ts +115 -69
- package/src/artifacts/publish/validate/slides.ts +11 -63
- package/src/artifacts/queries.ts +512 -0
- package/src/artifacts/resolve.ts +20 -5
- package/src/artifacts/run-query.ts +212 -0
- package/src/artifacts/serialize-query.ts +25 -0
- package/src/artifacts/sheet-rules.ts +180 -0
- package/src/artifacts/tones.ts +20 -0
- package/src/artifacts/workbook.ts +374 -15
- package/src/auth/index.ts +4 -0
- package/src/auth/member-events.ts +114 -0
- package/src/auth/profile.ts +118 -0
- package/src/auth/runtime.ts +190 -9
- package/src/auth/strategy.ts +3 -0
- package/src/auth/types.ts +32 -0
- package/src/authorization/decision.ts +47 -0
- package/src/authorization/event-visibility.ts +17 -16
- package/src/authorization/grant-kinds.ts +32 -0
- package/src/authorization/index.ts +6 -1
- package/src/authorization/resolve.ts +58 -1
- package/src/authorization/run-visibility.ts +8 -1
- package/src/authorization/types.ts +14 -0
- package/src/errors/catalog.ts +26 -1
- package/src/errors/internal.ts +17 -8
- package/src/events/definitions.ts +26 -0
- package/src/events/execution.ts +43 -6
- package/src/events/index.ts +10 -1
- package/src/events/scope.ts +2 -0
- package/src/events/selectors/builder.ts +50 -0
- package/src/events/selectors/index.ts +4 -0
- package/src/events/selectors/types.ts +32 -1
- package/src/events/service.ts +55 -2
- package/src/events/types/index.ts +10 -0
- package/src/events/types/users.ts +73 -0
- package/src/events/view-conditions.ts +241 -0
- package/src/execution/agent.ts +25 -0
- package/src/execution/authorization.ts +70 -0
- package/src/execution/authorized-object-reader.ts +238 -32
- package/src/execution/lineage.ts +14 -0
- package/src/execution/object-reader-ontology.ts +11 -14
- package/src/execution/object-reader-security.ts +134 -10
- package/src/execution/object-reader-users.ts +122 -0
- package/src/execution/preparation.ts +78 -0
- package/src/execution/request.ts +2 -0
- package/src/execution/unique-lookup.ts +55 -0
- package/src/execution/visible-objects.ts +26 -0
- package/src/http/api-routes.ts +206 -7
- package/src/index.ts +99 -2
- package/src/materialization/errors.ts +37 -0
- package/src/materialization/event-envelopes.ts +11 -3
- package/src/materialization/index.ts +1 -0
- package/src/materialization/model.ts +24 -4
- package/src/materializer/README.md +7 -1
- package/src/materializer/edits/commit.ts +56 -12
- package/src/materializer/edits/load-state.ts +15 -7
- package/src/materializer/edits/operations.ts +12 -0
- package/src/materializer/edits/plan.ts +2 -0
- package/src/materializer/edits/unique-values.ts +255 -0
- package/src/materializer/edits/working-state.ts +8 -1
- package/src/materializer/execution/work-records.ts +47 -0
- package/src/materializer/projections/finish-run.ts +0 -1
- package/src/materializer/projections/replace.ts +1 -1
- package/src/materializer/projections/replacement-plan.ts +4 -1
- package/src/materializer/projections/source-materialization.ts +2 -1
- package/src/materializer/shared/normalize.ts +37 -6
- package/src/materializer/shared/projection-run.ts +1 -2
- package/src/materializer/telemetry/append.ts +14 -17
- package/src/materializer/telemetry/plan.ts +2 -0
- package/src/models/audio/catalog.ts +89 -10
- package/src/models/audio/errors.ts +18 -1
- package/src/models/audio/runtime.ts +10 -13
- package/src/models/audio/speech.ts +261 -0
- package/src/models/audio/types.ts +97 -0
- package/src/models/calls.ts +100 -0
- package/src/models/catalog-index.ts +21 -2
- package/src/models/catalog.ts +211 -35
- package/src/models/decision/runtime.ts +21 -22
- package/src/models/decision/validation.ts +4 -1
- package/src/models/definitions.ts +57 -8
- package/src/models/events.ts +72 -1
- package/src/models/execution/README.md +34 -5
- package/src/models/execution/binding.ts +3 -1
- package/src/models/execution/embedding.ts +1 -0
- package/src/models/execution/index.ts +5 -0
- package/src/models/execution/model-call-accounting.ts +3 -1
- package/src/models/execution/model-call-recorder.ts +29 -1
- package/src/models/execution/usage.ts +8 -0
- package/src/models/execution.ts +20 -22
- package/src/models/generation-types.ts +8 -1
- package/src/models/image/catalog.ts +89 -0
- package/src/models/image/errors.ts +19 -0
- package/src/models/image/runtime.ts +335 -0
- package/src/models/image/types.ts +111 -0
- package/src/models/index.ts +38 -4
- package/src/models/{audio/file.ts → input-file.ts} +22 -13
- package/src/models/language-model.ts +13 -0
- package/src/models/pricing.ts +263 -42
- package/src/models/rate-card.ts +161 -12
- package/src/objects/authorized-ontology-view.ts +1 -0
- package/src/objects/conditional-writes.ts +109 -0
- package/src/objects/execution.ts +4 -0
- package/src/objects/index.ts +8 -0
- package/src/objects/link/authorization.ts +12 -3
- package/src/objects/link/endpoints.ts +42 -11
- package/src/objects/link/remove.ts +25 -10
- package/src/objects/link/upsert-batch.ts +2 -0
- package/src/objects/link/upsert.ts +18 -12
- package/src/objects/materializer-adapter.ts +55 -18
- package/src/objects/object/delete.ts +24 -7
- package/src/objects/object/upsert-batch.ts +44 -14
- package/src/objects/object/upsert.ts +23 -5
- package/src/objects/query/current-user.ts +76 -0
- package/src/objects/query/executor.ts +39 -103
- package/src/objects/query/explain.ts +20 -7
- package/src/objects/query/index.ts +2 -0
- package/src/objects/query/ir.ts +20 -0
- package/src/objects/query/links.ts +8 -0
- package/src/objects/query/matches-predicate.ts +108 -0
- package/src/objects/query/normalize.ts +50 -19
- package/src/objects/query/scalar-values.ts +19 -3
- package/src/objects/query/user-expansions.ts +65 -0
- package/src/objects/query/validate.ts +248 -10
- package/src/objects/runtime-batch.ts +8 -2
- package/src/objects/sdk/object-set.ts +12 -1
- package/src/objects/sdk/query-builder.ts +39 -8
- package/src/objects/sdk/query-executor.ts +6 -0
- package/src/objects/serialize.ts +79 -0
- package/src/objects/unique-violation.ts +59 -0
- package/src/objects/vectors/handle.ts +3 -3
- package/src/ontology/builders.ts +3 -0
- package/src/ontology/docs-markdown.ts +1 -0
- package/src/ontology/index.ts +2 -2
- package/src/ontology/json-schema.ts +4 -0
- package/src/ontology/primitives.ts +21 -8
- package/src/ontology/registry.ts +16 -0
- package/src/ontology/types.ts +9 -0
- package/src/ontology/unique-values.ts +84 -0
- package/src/ontology/user-ref.ts +39 -0
- package/src/ontology/validation/properties.ts +43 -0
- package/src/ontology/validation/schema.ts +9 -1
- package/src/projections/registry.ts +16 -10
- package/src/projections/revision.ts +112 -45
- package/src/projections/run-dispatch.ts +38 -25
- package/src/projections/types.ts +2 -0
- package/src/query.ts +5 -0
- package/src/rules/execution.ts +43 -11
- package/src/runtime/ai-cost.ts +30 -0
- package/src/runtime/ai-usage.ts +32 -1
- package/src/runtime/host.ts +18 -1
- package/src/runtime/index.ts +2 -0
- package/src/runtime/resolve-definitions.ts +3 -0
- package/src/runtime/sixb.ts +35 -8
- package/src/runtime/types.ts +99 -9
- package/src/schedules/builders.ts +3 -1
- package/src/schedules/runtime.ts +6 -0
- package/src/schedules/validation.ts +23 -1
- package/src/security/README.md +62 -0
- package/src/security/grants.ts +155 -10
- package/src/security/index.ts +3 -1
- package/src/security/project.ts +6 -1
- package/src/security/registry.ts +32 -7
- package/src/security/types.ts +54 -9
- package/src/security/validation.ts +27 -11
- package/src/security/view-conditions.ts +215 -0
- package/src/shares/execution.ts +43 -10
- package/src/storage/action-runs/types.ts +2 -0
- package/src/storage/agents/errors.ts +3 -0
- package/src/storage/agents/in-memory.ts +779 -32
- package/src/storage/agents/index.ts +42 -0
- package/src/storage/agents/provider.ts +733 -8
- package/src/storage/agents/types.ts +620 -12
- package/src/storage/ai-cost/analytics.ts +60 -7
- package/src/storage/ai-cost/codec.ts +6 -1
- package/src/storage/ai-cost/groups.ts +44 -1
- package/src/storage/ai-cost/index.ts +1 -0
- package/src/storage/ai-cost/provider.ts +2 -0
- package/src/storage/ai-cost/types.ts +18 -1
- package/src/storage/ai-cost/validation.ts +39 -12
- package/src/storage/ai-limits/provider.ts +4 -7
- package/src/storage/ai-usage/in-memory.ts +28 -1
- package/src/storage/ai-usage/index.ts +9 -1
- package/src/storage/ai-usage/record.ts +44 -7
- package/src/storage/ai-usage/types.ts +38 -0
- package/src/storage/ai-usage/usage.ts +15 -1
- package/src/storage/artifacts/errors.ts +13 -1
- package/src/storage/artifacts/in-memory.ts +156 -8
- package/src/storage/artifacts/index.ts +6 -1
- package/src/storage/artifacts/record.ts +61 -1
- package/src/storage/artifacts/types.ts +92 -8
- package/src/storage/auth/in-memory/auth-storage.ts +27 -2
- package/src/storage/auth/in-memory/users.ts +40 -6
- package/src/storage/auth/index.ts +1 -0
- package/src/storage/auth/types.ts +43 -7
- package/src/storage/executions/in-memory.ts +32 -0
- package/src/storage/executions/index.ts +2 -0
- package/src/storage/executions/types.ts +17 -0
- package/src/storage/index.ts +69 -1
- package/src/storage/internal.ts +9 -1
- package/src/storage/migrations/migrate-storage.ts +8 -1
- package/src/storage/migrations/prepare-unique-properties.ts +161 -0
- package/src/storage/objects/guard.ts +7 -3
- package/src/storage/objects/in-memory/conditional-reader.ts +72 -0
- package/src/storage/objects/in-memory/query.ts +4 -105
- package/src/storage/objects/in-memory/read-scope.ts +15 -14
- package/src/storage/objects/in-memory/read-source.ts +11 -1
- package/src/storage/objects/in-memory/scoped-reader.ts +243 -0
- package/src/storage/objects/in-memory/selected-reader.ts +6 -231
- package/src/storage/objects/in-memory/storage.ts +183 -1
- package/src/storage/objects/index.ts +9 -1
- package/src/storage/objects/read-scope.ts +191 -0
- package/src/storage/objects/types.ts +68 -1
- package/src/storage/ontology/in-memory/index.ts +3 -0
- package/src/storage/ontology/in-memory/materializations.ts +35 -0
- package/src/storage/ontology/in-memory/replacement-plans.ts +4 -0
- package/src/storage/ontology/in-memory/unique-values.ts +62 -0
- package/src/storage/ontology/index.ts +10 -0
- package/src/storage/ontology/materializations.ts +35 -1
- package/src/storage/ontology/provider-work.ts +76 -0
- package/src/storage/ontology/provider.ts +3 -0
- package/src/storage/ontology/unique-values.ts +56 -0
- package/src/storage/operation-scope.ts +9 -1
- package/src/storage/projection-runs/in-memory.ts +3 -35
- package/src/storage/types.ts +2 -0
- package/src/testing/agent-approval-storage-contract.ts +1117 -0
- package/src/testing/agent-memory-storage-contract.ts +400 -0
- package/src/testing/agent-storage-contract.ts +1188 -33
- package/src/testing/ai-cost-storage-contract.ts +31 -1
- package/src/testing/ai-limit-storage-contract.ts +9 -7
- package/src/testing/ai-model-call-groups-contract.ts +76 -0
- package/src/testing/ai-usage-storage-contract.ts +120 -13
- package/src/testing/artifact-storage-contract.ts +338 -4
- package/src/testing/auth-storage-contract.ts +550 -73
- package/src/testing/broker-contract.ts +28 -23
- package/src/testing/effective-storage-contract.ts +3 -8
- package/src/testing/execution-storage-contract.ts +53 -0
- package/src/testing/file-upload-session-storage-contract.ts +12 -24
- package/src/testing/index.ts +17 -4
- package/src/testing/lake-storage-contract.ts +22 -28
- package/src/testing/materializer-storage-contract.ts +36 -9
- package/src/testing/object-conditional-read-scope-contract.ts +634 -0
- package/src/testing/object-query-contract.ts +386 -186
- package/src/testing/ontology-storage-contract.ts +230 -21
- package/src/testing/projection-run-storage-contract.ts +8 -18
- package/src/testing/queues-contract.ts +39 -70
- package/src/testing/sandboxes-contract.ts +3 -14
- package/src/testing/share-grant-storage-contract.ts +13 -16
- package/src/testing/share-session-storage-contract.ts +4 -14
- package/src/testing/unique-values-contract.ts +907 -0
- package/src/testing/webhook-execution.ts +1 -1
- package/src/testing/webhook-run-storage-contract.ts +6 -9
- package/src/users/execution.ts +131 -0
- package/src/users/index.ts +2 -0
- package/src/workers/queue-worker.ts +1 -3
- package/src/workers/worker.ts +1 -3
- package/src/workflows/builders.ts +6 -0
- package/src/workflows/request.ts +46 -8
- package/src/workflows/types.ts +6 -2
- package/src/workflows/validation.ts +23 -9
- package/dist/chunk-29yx306f.js.map +0 -22
- package/dist/chunk-3jms7je7.js +0 -14
- package/dist/chunk-3jms7je7.js.map +0 -10
- package/dist/chunk-3qct2mdc.js +0 -297
- package/dist/chunk-3qct2mdc.js.map +0 -12
- package/dist/chunk-48qjhh6v.js.map +0 -13
- package/dist/chunk-4as3wt1c.js.map +0 -12
- package/dist/chunk-5948n82c.js.map +0 -10
- package/dist/chunk-5hx48dnn.js.map +0 -14
- package/dist/chunk-6rqgmkde.js.map +0 -29
- package/dist/chunk-6x0pqh32.js.map +0 -10
- package/dist/chunk-7n30ybym.js +0 -3
- package/dist/chunk-7n440zgt.js +0 -261
- package/dist/chunk-7n440zgt.js.map +0 -12
- package/dist/chunk-7q8t23v4.js +0 -467
- package/dist/chunk-7q8t23v4.js.map +0 -14
- package/dist/chunk-8frc8a4j.js.map +0 -20
- package/dist/chunk-918wwnaa.js.map +0 -68
- package/dist/chunk-91mg3nj9.js.map +0 -12
- package/dist/chunk-96yw3pwd.js.map +0 -10
- package/dist/chunk-9j4jw7as.js.map +0 -14
- package/dist/chunk-9k93ah50.js.map +0 -11
- package/dist/chunk-9kgkfg6v.js +0 -502
- package/dist/chunk-9kgkfg6v.js.map +0 -14
- package/dist/chunk-akzryx9h.js.map +0 -100
- package/dist/chunk-arns890k.js.map +0 -10
- package/dist/chunk-bk9svbcq.js.map +0 -49
- package/dist/chunk-c06hmxyy.js +0 -31
- package/dist/chunk-c06hmxyy.js.map +0 -10
- package/dist/chunk-c1rxbz5y.js.map +0 -12
- package/dist/chunk-cn0fwwhy.js.map +0 -19
- package/dist/chunk-dhcv7yxc.js.map +0 -11
- package/dist/chunk-dhdha526.js.map +0 -10
- package/dist/chunk-dvd2fp9q.js.map +0 -13
- package/dist/chunk-e6k4thh5.js.map +0 -19
- package/dist/chunk-ere85b8y.js.map +0 -15
- package/dist/chunk-g257jwnc.js.map +0 -12
- package/dist/chunk-hwksyjks.js.map +0 -11
- package/dist/chunk-k43ct2ke.js.map +0 -12
- package/dist/chunk-nn5xnx3s.js.map +0 -40
- package/dist/chunk-pbcbn83d.js.map +0 -14
- package/dist/chunk-pqajwytd.js +0 -68
- package/dist/chunk-pqajwytd.js.map +0 -11
- package/dist/chunk-qczk96d9.js.map +0 -11
- package/dist/chunk-rdghfsss.js +0 -39
- package/dist/chunk-rdghfsss.js.map +0 -10
- package/dist/chunk-rj69qcrd.js.map +0 -11
- package/dist/chunk-v4jbb3rs.js.map +0 -10
- package/dist/chunk-yxd3nnqt.js.map +0 -11
- package/dist/events/toStoredEvent.d.ts +0 -9
- package/dist/events/toStoredEvent.d.ts.map +0 -1
- package/dist/models/audio/file.d.ts +0 -9
- package/dist/models/audio/file.d.ts.map +0 -1
- package/src/events/toStoredEvent.ts +0 -33
- /package/dist/{chunk-mfs23znk.js.map → chunk-07kkp2e1.js.map} +0 -0
- /package/dist/{chunk-z58tm0hm.js.map → chunk-0phpbbvm.js.map} +0 -0
- /package/dist/{chunk-e17zdm62.js.map → chunk-1t6k1avb.js.map} +0 -0
- /package/dist/{chunk-kge7k6ey.js.map → chunk-2fn60nvs.js.map} +0 -0
- /package/dist/{chunk-y0c4e6ex.js.map → chunk-3gbefjg5.js.map} +0 -0
- /package/dist/{chunk-cy4mbddw.js.map → chunk-48jezz3j.js.map} +0 -0
- /package/dist/{chunk-twe4dx8p.js → chunk-5tfev0fv.js} +0 -0
- /package/dist/{chunk-twe4dx8p.js.map → chunk-5tfev0fv.js.map} +0 -0
- /package/dist/{chunk-447a5c0p.js.map → chunk-6n69k945.js.map} +0 -0
- /package/dist/{chunk-0bphap9y.js.map → chunk-6p0pastb.js.map} +0 -0
- /package/dist/{chunk-431pyp2c.js.map → chunk-6y0mkhex.js.map} +0 -0
- /package/dist/{chunk-s7jg7pmn.js.map → chunk-bab05bhg.js.map} +0 -0
- /package/dist/{chunk-q5e5tv4b.js.map → chunk-c844dkwd.js.map} +0 -0
- /package/dist/{chunk-cfj9dfbb.js.map → chunk-d2m879s4.js.map} +0 -0
- /package/dist/{chunk-q7gn29y3.js.map → chunk-dp0cdtj2.js.map} +0 -0
- /package/dist/{chunk-br3k6qbf.js.map → chunk-fm62y49k.js.map} +0 -0
- /package/dist/{chunk-vvxtn22d.js.map → chunk-g663fahq.js.map} +0 -0
- /package/dist/{chunk-rmakanzx.js.map → chunk-h33shhq6.js.map} +0 -0
- /package/dist/{chunk-d09e3rax.js.map → chunk-hwarjrgf.js.map} +0 -0
- /package/dist/{chunk-vf57cr4t.js.map → chunk-hyesv9dv.js.map} +0 -0
- /package/dist/{chunk-5vems3nx.js.map → chunk-m2nevja0.js.map} +0 -0
- /package/dist/{chunk-x9v4cx1d.js.map → chunk-m36fw8ft.js.map} +0 -0
- /package/dist/{chunk-a40ad1ft.js.map → chunk-mbsbxarb.js.map} +0 -0
- /package/dist/{chunk-6aawea28.js.map → chunk-n8q5j6y5.js.map} +0 -0
- /package/dist/{chunk-d7dnxdep.js.map → chunk-n9zpx9c6.js.map} +0 -0
- /package/dist/{chunk-xvsc5m8n.js.map → chunk-npcr0228.js.map} +0 -0
- /package/dist/{chunk-y5tah2kf.js.map → chunk-q4pmvkg0.js.map} +0 -0
- /package/dist/{chunk-d5rjr8c0.js.map → chunk-vabga7fk.js.map} +0 -0
|
@@ -9,35 +9,36 @@
|
|
|
9
9
|
* topic we don't yet model may carry a subject the principal is not allowed to
|
|
10
10
|
* see. Adding an event topic therefore requires an explicit visibility decision
|
|
11
11
|
* here, never a silent default.
|
|
12
|
+
*
|
|
13
|
+
* A type the principal views only under a condition holds no view grant, so it is hidden here
|
|
14
|
+
* unless the caller names it in `conditioned`: it then passes, and the caller decides on the
|
|
15
|
+
* objects the event names.
|
|
12
16
|
*/
|
|
13
17
|
|
|
14
18
|
import type { StoredDomainEvent } from "../events"
|
|
15
19
|
import { isAllowed } from "./decision"
|
|
16
20
|
import type { AuthorizationContext } from "./types"
|
|
17
21
|
|
|
22
|
+
const NO_CONDITIONS: ReadonlySet<string> = new Set()
|
|
23
|
+
|
|
18
24
|
export function canViewEvent(
|
|
19
25
|
authorization: AuthorizationContext | null | undefined,
|
|
20
|
-
event: StoredDomainEvent
|
|
26
|
+
event: StoredDomainEvent,
|
|
27
|
+
conditioned: Pick<ReadonlySet<string>, "has"> = NO_CONDITIONS
|
|
21
28
|
): boolean {
|
|
22
29
|
if (!authorization) {
|
|
23
30
|
return true
|
|
24
31
|
}
|
|
25
32
|
|
|
33
|
+
const viewsObjects = (objectTypeId: string) =>
|
|
34
|
+
conditioned.has(objectTypeId) || isAllowed(authorization, { kind: "object.view", objectTypeId })
|
|
35
|
+
|
|
26
36
|
switch (event.topic) {
|
|
27
37
|
case "objects":
|
|
28
38
|
case "telemetry":
|
|
29
|
-
return
|
|
30
|
-
kind: "object.view",
|
|
31
|
-
objectTypeId: event.payload.objectTypeId,
|
|
32
|
-
})
|
|
39
|
+
return viewsObjects(event.payload.objectTypeId)
|
|
33
40
|
case "links":
|
|
34
|
-
return (
|
|
35
|
-
isAllowed(authorization, {
|
|
36
|
-
kind: "object.view",
|
|
37
|
-
objectTypeId: event.payload.sourceTypeId,
|
|
38
|
-
}) &&
|
|
39
|
-
isAllowed(authorization, { kind: "object.view", objectTypeId: event.payload.targetTypeId })
|
|
40
|
-
)
|
|
41
|
+
return viewsObjects(event.payload.sourceTypeId) && viewsObjects(event.payload.targetTypeId)
|
|
41
42
|
case "workflows":
|
|
42
43
|
return isAllowed(authorization, {
|
|
43
44
|
kind: "workflow.run",
|
|
@@ -46,10 +47,7 @@ export function canViewEvent(
|
|
|
46
47
|
case "rules":
|
|
47
48
|
// Rule events carry the object they fired on, so gate on viewing it —
|
|
48
49
|
// otherwise they leak the existence and id of hidden-type objects.
|
|
49
|
-
return
|
|
50
|
-
kind: "object.view",
|
|
51
|
-
objectTypeId: event.payload.subject.objectTypeId,
|
|
52
|
-
})
|
|
50
|
+
return viewsObjects(event.payload.subject.objectTypeId)
|
|
53
51
|
// Run grant gates the operational stream. These payloads may also carry the
|
|
54
52
|
// produced datasetId/versionId; that target is already visible to a runner
|
|
55
53
|
// through the sync/pipeline catalog (`sync.target.dataset`), so surfacing it
|
|
@@ -80,6 +78,9 @@ export function canViewEvent(
|
|
|
80
78
|
kind: "dataset.view",
|
|
81
79
|
datasetId: event.payload.datasetId,
|
|
82
80
|
})
|
|
81
|
+
case "users":
|
|
82
|
+
// Member events carry profiles and invitee emails: the member directory's grant.
|
|
83
|
+
return isAllowed(authorization, { kind: "users.view" })
|
|
83
84
|
default:
|
|
84
85
|
// Fail closed: an unmodeled topic may carry a subject we don't yet gate.
|
|
85
86
|
return false
|
|
@@ -13,6 +13,7 @@ import type { GrantDefinition } from "../security/types"
|
|
|
13
13
|
export type GrantKind =
|
|
14
14
|
| "view:object"
|
|
15
15
|
| "view:dataset"
|
|
16
|
+
| "view:users"
|
|
16
17
|
| "edit:object"
|
|
17
18
|
| "append:telemetry"
|
|
18
19
|
| "apply:action"
|
|
@@ -21,19 +22,26 @@ export type GrantKind =
|
|
|
21
22
|
| "run:sync"
|
|
22
23
|
| "run:pipeline"
|
|
23
24
|
| "run:agent"
|
|
25
|
+
| "run:models"
|
|
24
26
|
| "observe:logs"
|
|
25
27
|
| "observe:aiUsage"
|
|
26
28
|
| "observe:activity"
|
|
29
|
+
| "observe:agentThreads"
|
|
27
30
|
| "manage:connector"
|
|
28
31
|
| "manage:aiUsage"
|
|
32
|
+
| "manage:agentMemory"
|
|
29
33
|
|
|
30
34
|
/** Capabilities over one project-wide surface: held or not, with no ids to select. */
|
|
31
35
|
export type SingletonGrantKind =
|
|
36
|
+
| "view:users"
|
|
32
37
|
| "run:agent"
|
|
38
|
+
| "run:models"
|
|
33
39
|
| "observe:logs"
|
|
34
40
|
| "observe:aiUsage"
|
|
35
41
|
| "observe:activity"
|
|
42
|
+
| "observe:agentThreads"
|
|
36
43
|
| "manage:aiUsage"
|
|
44
|
+
| "manage:agentMemory"
|
|
37
45
|
export type TargetedGrantKind = Exclude<GrantKind, SingletonGrantKind>
|
|
38
46
|
|
|
39
47
|
/** Registered id universes a grant kind ranges over, plus subtype expansion. */
|
|
@@ -90,6 +98,11 @@ export const GRANT_KINDS: {
|
|
|
90
98
|
subject: "dataset",
|
|
91
99
|
fix: "Add it to 'datasets/' or pass it to createSixb({ datasets }).",
|
|
92
100
|
},
|
|
101
|
+
"view:users": {
|
|
102
|
+
singleton: true,
|
|
103
|
+
subject: "member directory",
|
|
104
|
+
fix: "Use can.view(project.users).",
|
|
105
|
+
},
|
|
93
106
|
// Deliberately no `expandsSubtypes`: granting writes on a parent type must not
|
|
94
107
|
// silently extend to types added under it later. `view:object` expands because
|
|
95
108
|
// a read of a subtype reveals nothing the parent's grant did not already cover.
|
|
@@ -133,6 +146,11 @@ export const GRANT_KINDS: {
|
|
|
133
146
|
subject: "agent",
|
|
134
147
|
fix: "Configure models.language and use the exported agent reference in can.run(agent).",
|
|
135
148
|
},
|
|
149
|
+
"run:models": {
|
|
150
|
+
singleton: true,
|
|
151
|
+
subject: "models",
|
|
152
|
+
fix: "Use can.run(project.models).",
|
|
153
|
+
},
|
|
136
154
|
"observe:logs": {
|
|
137
155
|
singleton: true,
|
|
138
156
|
subject: "logs",
|
|
@@ -148,6 +166,11 @@ export const GRANT_KINDS: {
|
|
|
148
166
|
subject: "activity",
|
|
149
167
|
fix: "Use can.observe(project.activity).",
|
|
150
168
|
},
|
|
169
|
+
"observe:agentThreads": {
|
|
170
|
+
singleton: true,
|
|
171
|
+
subject: "Agent conversations",
|
|
172
|
+
fix: "Use can.observe(agent.threads).",
|
|
173
|
+
},
|
|
151
174
|
"manage:connector": {
|
|
152
175
|
universeKey: "connectorIds",
|
|
153
176
|
subject: "connector",
|
|
@@ -158,6 +181,11 @@ export const GRANT_KINDS: {
|
|
|
158
181
|
subject: "AI usage",
|
|
159
182
|
fix: "Use can.manage(agent.usage).",
|
|
160
183
|
},
|
|
184
|
+
"manage:agentMemory": {
|
|
185
|
+
singleton: true,
|
|
186
|
+
subject: "Agent memory",
|
|
187
|
+
fix: "Use can.manage(agent.memory).",
|
|
188
|
+
},
|
|
161
189
|
}
|
|
162
190
|
|
|
163
191
|
export const GRANT_KIND_KEYS = Object.keys(GRANT_KINDS) as readonly GrantKind[]
|
|
@@ -203,6 +231,7 @@ export function emptyGrantSets(): MutableGrantIndex {
|
|
|
203
231
|
return {
|
|
204
232
|
"view:object": new Set(),
|
|
205
233
|
"view:dataset": new Set(),
|
|
234
|
+
"view:users": false,
|
|
206
235
|
"edit:object": new Set(),
|
|
207
236
|
"append:telemetry": new Set(),
|
|
208
237
|
"apply:action": new Set(),
|
|
@@ -211,10 +240,13 @@ export function emptyGrantSets(): MutableGrantIndex {
|
|
|
211
240
|
"run:sync": new Set(),
|
|
212
241
|
"run:pipeline": new Set(),
|
|
213
242
|
"run:agent": false,
|
|
243
|
+
"run:models": false,
|
|
214
244
|
"observe:logs": false,
|
|
215
245
|
"observe:aiUsage": false,
|
|
216
246
|
"observe:activity": false,
|
|
247
|
+
"observe:agentThreads": false,
|
|
217
248
|
"manage:connector": new Set(),
|
|
218
249
|
"manage:aiUsage": false,
|
|
250
|
+
"manage:agentMemory": false,
|
|
219
251
|
}
|
|
220
252
|
}
|
|
@@ -4,6 +4,7 @@ export {
|
|
|
4
4
|
assertCanAppendTelemetry,
|
|
5
5
|
assertCanEdit,
|
|
6
6
|
assertCanManageConnector,
|
|
7
|
+
assertModelAccess,
|
|
7
8
|
assertPrivileged,
|
|
8
9
|
assertProviderAccess,
|
|
9
10
|
assertRuntimeAuthorizationBound,
|
|
@@ -14,7 +15,11 @@ export {
|
|
|
14
15
|
export { AuthorizationError } from "./errors"
|
|
15
16
|
export { canViewEvent } from "./event-visibility"
|
|
16
17
|
export type { GrantKind, GrantUniverse } from "./grant-kinds"
|
|
17
|
-
export {
|
|
18
|
+
export {
|
|
19
|
+
resolveAuthorizationContext,
|
|
20
|
+
resolveRoleGrants,
|
|
21
|
+
resolveRoleViewConditions,
|
|
22
|
+
} from "./resolve"
|
|
18
23
|
export {
|
|
19
24
|
canViewActionRun,
|
|
20
25
|
canViewPipelineRun,
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Principal } from "../auth/types"
|
|
2
|
+
import type { ObjectQueryPredicate } from "../objects/query/ir"
|
|
2
3
|
import type { RoleDefinition, Selection } from "../security"
|
|
3
4
|
import {
|
|
4
5
|
emptyGrantSets,
|
|
@@ -16,14 +17,19 @@ import type { AuthorizationContext, GrantIndex, ResolvedRole } from "./types"
|
|
|
16
17
|
*
|
|
17
18
|
* Broad grants (`every.object().except([...])`) expand against the registered
|
|
18
19
|
* universe; object-type grants also expand to subtypes. Resource grants become
|
|
19
|
-
* id sets; grants on one project-wide surface (the Agent, logs, AI usage)
|
|
20
|
+
* id sets; grants on one project-wide surface (the member directory, the Agent, logs, AI usage)
|
|
21
|
+
* become booleans.
|
|
20
22
|
* The per-kind universe and subtype rules come from the `GRANT_KINDS` table, so
|
|
21
23
|
* this loop never enumerates targets by hand.
|
|
24
|
+
*
|
|
25
|
+
* A view grant with a condition grants no type here: see {@link resolveRoleViewConditions}.
|
|
22
26
|
*/
|
|
23
27
|
export function resolveRoleGrants(role: RoleDefinition, universe: GrantUniverse): GrantIndex {
|
|
24
28
|
const grants = emptyGrantSets()
|
|
25
29
|
|
|
26
30
|
for (const grant of role.grants) {
|
|
31
|
+
if ("condition" in grant && grant.condition !== undefined) continue
|
|
32
|
+
|
|
27
33
|
const kind = grantKindOf(grant)
|
|
28
34
|
if (isSingletonGrantKind(kind)) {
|
|
29
35
|
grants[kind] = true
|
|
@@ -43,6 +49,45 @@ export function resolveRoleGrants(role: RoleDefinition, universe: GrantUniverse)
|
|
|
43
49
|
return grants
|
|
44
50
|
}
|
|
45
51
|
|
|
52
|
+
/**
|
|
53
|
+
* Resolve a role's conditional view grants once at startup, from their validated conditions.
|
|
54
|
+
*
|
|
55
|
+
* A condition applies to the type its grant names and to each subtype, as a view grant does.
|
|
56
|
+
* Several conditions on one type combine with `or`, and a type the role also views without a
|
|
57
|
+
* condition drops them: the role shows every object of it.
|
|
58
|
+
*/
|
|
59
|
+
export function resolveRoleViewConditions(
|
|
60
|
+
conditions: readonly {
|
|
61
|
+
readonly objectTypeId: string
|
|
62
|
+
readonly predicate: ObjectQueryPredicate
|
|
63
|
+
}[],
|
|
64
|
+
grants: GrantIndex,
|
|
65
|
+
universe: GrantUniverse
|
|
66
|
+
): ReadonlyMap<string, ObjectQueryPredicate> {
|
|
67
|
+
const byType = new Map<string, ObjectQueryPredicate[]>()
|
|
68
|
+
|
|
69
|
+
for (const condition of conditions) {
|
|
70
|
+
const objectTypeIds = [condition.objectTypeId, ...universe.getSubTypes(condition.objectTypeId)]
|
|
71
|
+
|
|
72
|
+
for (const objectTypeId of objectTypeIds) {
|
|
73
|
+
if (grants["view:object"].has(objectTypeId)) continue
|
|
74
|
+
|
|
75
|
+
const predicates = byType.get(objectTypeId) ?? []
|
|
76
|
+
predicates.push(condition.predicate)
|
|
77
|
+
byType.set(objectTypeId, predicates)
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
return new Map(
|
|
82
|
+
[...byType].map(([objectTypeId, predicates]) => [objectTypeId, anyOf(predicates)] as const)
|
|
83
|
+
)
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
function anyOf(predicates: readonly ObjectQueryPredicate[]): ObjectQueryPredicate {
|
|
87
|
+
if (predicates.length === 1) return predicates[0]!
|
|
88
|
+
return Object.freeze({ op: "or", items: Object.freeze([...predicates]) })
|
|
89
|
+
}
|
|
90
|
+
|
|
46
91
|
function expandSelection(
|
|
47
92
|
selection: Selection,
|
|
48
93
|
universe: ReadonlySet<string>,
|
|
@@ -75,6 +120,9 @@ function expandSelection(
|
|
|
75
120
|
* Pure set-union over pre-resolved roles: roles match when their grantedTo
|
|
76
121
|
* groups intersect the principal's memberships, and their concrete id sets
|
|
77
122
|
* and clearances union into the principal's context.
|
|
123
|
+
*
|
|
124
|
+
* View conditions union too: the principal sees an object any of them matches. A type one role
|
|
125
|
+
* views without a condition is viewed whole, whatever conditions the others put on it.
|
|
78
126
|
*/
|
|
79
127
|
export function resolveAuthorizationContext(input: {
|
|
80
128
|
readonly principal: Principal
|
|
@@ -86,6 +134,7 @@ export function resolveAuthorizationContext(input: {
|
|
|
86
134
|
const roleIds: string[] = []
|
|
87
135
|
const grants = emptyGrantSets()
|
|
88
136
|
const clearances = new Set<string>()
|
|
137
|
+
const viewConditions = new Map<string, ObjectQueryPredicate[]>()
|
|
89
138
|
|
|
90
139
|
for (const role of input.roles) {
|
|
91
140
|
if (!role.grantedToGroupIds.some((groupId) => memberGroupIds.has(groupId))) {
|
|
@@ -104,6 +153,13 @@ export function resolveAuthorizationContext(input: {
|
|
|
104
153
|
for (const markingId of role.clearances ?? []) {
|
|
105
154
|
clearances.add(markingId)
|
|
106
155
|
}
|
|
156
|
+
for (const [objectTypeId, predicate] of role.viewConditions ?? []) {
|
|
157
|
+
viewConditions.set(objectTypeId, [...(viewConditions.get(objectTypeId) ?? []), predicate])
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
for (const objectTypeId of grants["view:object"]) {
|
|
162
|
+
viewConditions.delete(objectTypeId)
|
|
107
163
|
}
|
|
108
164
|
|
|
109
165
|
return {
|
|
@@ -112,6 +168,7 @@ export function resolveAuthorizationContext(input: {
|
|
|
112
168
|
groupIds: input.groupIds,
|
|
113
169
|
roleIds,
|
|
114
170
|
grants,
|
|
171
|
+
...(viewConditions.size > 0 ? { viewConditions } : {}),
|
|
115
172
|
clearances,
|
|
116
173
|
}
|
|
117
174
|
}
|
|
@@ -7,6 +7,10 @@ import type { WorkflowRunRecord } from "../storage/workflow-runs"
|
|
|
7
7
|
import { isAllowed } from "./decision"
|
|
8
8
|
import type { AuthorizationContext } from "./types"
|
|
9
9
|
|
|
10
|
+
/**
|
|
11
|
+
* Whether a principal may view a run, by its action and its subject's type. A type the principal
|
|
12
|
+
* views only through a condition fails here: the subject decides, which `viewableActionRuns` reads.
|
|
13
|
+
*/
|
|
10
14
|
export function canViewActionRun(
|
|
11
15
|
authorization: AuthorizationContext | null | undefined,
|
|
12
16
|
run: Pick<ActionRunRecord, "actionId" | "subject">
|
|
@@ -55,7 +59,10 @@ export function canViewPipelineRun(
|
|
|
55
59
|
)
|
|
56
60
|
}
|
|
57
61
|
|
|
58
|
-
/**
|
|
62
|
+
/**
|
|
63
|
+
* A projection run is viewable when its target object type(s) are viewable. A run, like its
|
|
64
|
+
* definition, describes every object of the type, so a type viewed through a condition stays closed.
|
|
65
|
+
*/
|
|
59
66
|
export function canViewProjectionRun(
|
|
60
67
|
authorization: AuthorizationContext | null | undefined,
|
|
61
68
|
target: ProjectionTarget
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import type { Principal } from "../auth/types"
|
|
11
|
+
import type { ObjectQueryPredicate } from "../objects/query/ir"
|
|
11
12
|
import { emptyGrantSets, type GrantKind, type SingletonGrantKind } from "./grant-kinds"
|
|
12
13
|
|
|
13
14
|
/**
|
|
@@ -42,6 +43,12 @@ export interface ResolvedRole {
|
|
|
42
43
|
readonly id: string
|
|
43
44
|
readonly grantedToGroupIds: readonly string[]
|
|
44
45
|
readonly grants: GrantIndex
|
|
46
|
+
/**
|
|
47
|
+
* What the role's `can.view(Type).where(...)` grants show, per concrete type: the type's
|
|
48
|
+
* conditions, combined with `or`. A type the role also views without a condition is in
|
|
49
|
+
* `grants["view:object"]` and not here. Absent means none.
|
|
50
|
+
*/
|
|
51
|
+
readonly viewConditions?: ReadonlyMap<string, ObjectQueryPredicate>
|
|
45
52
|
/** Marking ids this role clears. Absent means none. */
|
|
46
53
|
readonly clearances?: ReadonlySet<string>
|
|
47
54
|
}
|
|
@@ -53,6 +60,13 @@ export interface AuthorizationContext {
|
|
|
53
60
|
/** Roles whose grantedTo groups intersect the principal's memberships. */
|
|
54
61
|
readonly roleIds: readonly string[]
|
|
55
62
|
readonly grants: GrantIndex
|
|
63
|
+
/**
|
|
64
|
+
* The object types the principal views only where a condition matches, with one condition per
|
|
65
|
+
* role that grants it. A type in `grants["view:object"]` is never here, so a check on that grant
|
|
66
|
+
* denies these types; only the authorized object reader reads them, through these conditions.
|
|
67
|
+
* Absent means none.
|
|
68
|
+
*/
|
|
69
|
+
readonly viewConditions?: ReadonlyMap<string, readonly ObjectQueryPredicate[]>
|
|
56
70
|
/**
|
|
57
71
|
* Marking ids the principal may read, unioned from its roles. Absent means none: a context built
|
|
58
72
|
* without clearances reads no marked property.
|
package/src/errors/catalog.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
interface SixbErrorDefinition {
|
|
1
|
+
export interface SixbErrorDefinition {
|
|
2
2
|
readonly publicMessage: string
|
|
3
3
|
readonly retryable: boolean
|
|
4
|
+
/**
|
|
5
|
+
* A failure's explanation, when it has one, is its whole durable message instead of following
|
|
6
|
+
* `publicMessage`. Only for codes whose explanation is written for the caller on purpose.
|
|
7
|
+
*/
|
|
8
|
+
readonly explanationIsMessage?: true
|
|
4
9
|
}
|
|
5
10
|
|
|
6
11
|
/**
|
|
@@ -18,6 +23,12 @@ export const SIXB_ERROR_DEFINITIONS = {
|
|
|
18
23
|
publicMessage: "Data the Action read changed before its commit.",
|
|
19
24
|
retryable: true,
|
|
20
25
|
},
|
|
26
|
+
// Not a crash: a validator declined the request, with a message written for the caller.
|
|
27
|
+
"action.rejected": {
|
|
28
|
+
publicMessage: "The Action rejected the request.",
|
|
29
|
+
retryable: false,
|
|
30
|
+
explanationIsMessage: true,
|
|
31
|
+
},
|
|
21
32
|
"action.run_in_progress": {
|
|
22
33
|
publicMessage: "The Action run is already in progress.",
|
|
23
34
|
retryable: true,
|
|
@@ -27,6 +38,12 @@ export const SIXB_ERROR_DEFINITIONS = {
|
|
|
27
38
|
publicMessage: "The Action exceeded its 30-second time limit.",
|
|
28
39
|
retryable: false,
|
|
29
40
|
},
|
|
41
|
+
// The requester signed out, their session expired, or they lost access before the call ran.
|
|
42
|
+
"agent.approval_authority_lost": {
|
|
43
|
+
publicMessage:
|
|
44
|
+
"The approved call did not run: the sign-in of whoever asked for it ended first. Ask the Agent again.",
|
|
45
|
+
retryable: false,
|
|
46
|
+
},
|
|
30
47
|
"agent.execution_failed": {
|
|
31
48
|
publicMessage: "Agent execution failed.",
|
|
32
49
|
retryable: false,
|
|
@@ -115,6 +132,14 @@ export const SIXB_ERROR_DEFINITIONS = {
|
|
|
115
132
|
publicMessage: "The job could not be enqueued.",
|
|
116
133
|
retryable: true,
|
|
117
134
|
},
|
|
135
|
+
"object.not_found": {
|
|
136
|
+
publicMessage: "Object not found.",
|
|
137
|
+
retryable: false,
|
|
138
|
+
},
|
|
139
|
+
"object.unique_violation": {
|
|
140
|
+
publicMessage: "Another object already has this unique value.",
|
|
141
|
+
retryable: false,
|
|
142
|
+
},
|
|
118
143
|
"pipeline.step_failed": {
|
|
119
144
|
publicMessage: "Pipeline step execution failed.",
|
|
120
145
|
retryable: false,
|
package/src/errors/internal.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { cloneJsonValue, isJsonValue, isPlainRecord, type ReadonlyJsonValue } from "../json"
|
|
2
2
|
import { ActionRunFailedError } from "../objects/action/errors"
|
|
3
|
-
import { SIXB_ERROR_CODES, SIXB_ERROR_DEFINITIONS } from "./catalog"
|
|
3
|
+
import { SIXB_ERROR_CODES, SIXB_ERROR_DEFINITIONS, type SixbErrorDefinition } from "./catalog"
|
|
4
4
|
import { failureMessage } from "./failure-message"
|
|
5
5
|
import { createFailureRedactor } from "./redaction"
|
|
6
6
|
import type { SixbErrorCode, SixbFailure } from "./types"
|
|
@@ -139,14 +139,8 @@ export function toSixbFailure(
|
|
|
139
139
|
const redactor = createFailureRedactor()
|
|
140
140
|
const details = error.details === undefined ? undefined : redactor.context(error.details)
|
|
141
141
|
const { detail, truncated, redacted } = findFailureDetail(error, code)
|
|
142
|
-
const summary = SIXB_ERROR_DEFINITIONS[code].publicMessage
|
|
143
|
-
const explanation = detail?.message ?? summary
|
|
144
142
|
const message = truncateUtf8(
|
|
145
|
-
redactor.text(
|
|
146
|
-
explanation === summary || explanation.startsWith(`${summary} `)
|
|
147
|
-
? explanation
|
|
148
|
-
: `${summary} ${explanation}`
|
|
149
|
-
),
|
|
143
|
+
redactor.text(durableFailureMessage(code, detail?.message)),
|
|
150
144
|
SIXB_FAILURE_MAX_MESSAGE_BYTES
|
|
151
145
|
)
|
|
152
146
|
const failure: SixbFailure = {
|
|
@@ -173,6 +167,21 @@ export function toSixbFailure(
|
|
|
173
167
|
}
|
|
174
168
|
}
|
|
175
169
|
|
|
170
|
+
/**
|
|
171
|
+
* The code's public message, followed by the failure's explanation when it has one. A code whose
|
|
172
|
+
* explanation is written for the caller, such as an Action's rejection, states it alone.
|
|
173
|
+
*/
|
|
174
|
+
function durableFailureMessage(code: SixbErrorCode, explanation: string | undefined): string {
|
|
175
|
+
const definition: SixbErrorDefinition = SIXB_ERROR_DEFINITIONS[code]
|
|
176
|
+
const summary = definition.publicMessage
|
|
177
|
+
if (explanation === undefined) return summary
|
|
178
|
+
if (definition.explanationIsMessage) return explanation
|
|
179
|
+
|
|
180
|
+
return explanation === summary || explanation.startsWith(`${summary} `)
|
|
181
|
+
? explanation
|
|
182
|
+
: `${summary} ${explanation}`
|
|
183
|
+
}
|
|
184
|
+
|
|
176
185
|
const NETWORK_MESSAGES: Readonly<Record<string, string>> = {
|
|
177
186
|
ECONNREFUSED: "The remote service refused the connection.",
|
|
178
187
|
ECONNRESET: "The remote service reset the connection.",
|
|
@@ -8,6 +8,7 @@ import type { RuleEvent } from "./types/rules"
|
|
|
8
8
|
import type { ScheduleEvent } from "./types/schedules"
|
|
9
9
|
import type { SyncEvent } from "./types/syncs"
|
|
10
10
|
import type { TelemetryEvent } from "./types/telemetry"
|
|
11
|
+
import type { UserEvent } from "./types/users"
|
|
11
12
|
import type { WorkflowEvent } from "./types/workflows"
|
|
12
13
|
|
|
13
14
|
export type EventDefinition<Event extends DomainEvent = DomainEvent> = {
|
|
@@ -170,6 +171,30 @@ export const DATASET_EVENT_DEFINITIONS = defineEventGroup<DatasetEvent>({
|
|
|
170
171
|
},
|
|
171
172
|
})
|
|
172
173
|
|
|
174
|
+
// One stream per member, so their events stay in order. An invitation has no member yet.
|
|
175
|
+
export const USER_EVENT_DEFINITIONS = defineEventGroup<UserEvent>({
|
|
176
|
+
"user.joined": {
|
|
177
|
+
topic: "users",
|
|
178
|
+
partitionKey: (payload) => payload.user.id,
|
|
179
|
+
},
|
|
180
|
+
"user.suspended": {
|
|
181
|
+
topic: "users",
|
|
182
|
+
partitionKey: (payload) => payload.user.id,
|
|
183
|
+
},
|
|
184
|
+
"user.reactivated": {
|
|
185
|
+
topic: "users",
|
|
186
|
+
partitionKey: (payload) => payload.user.id,
|
|
187
|
+
},
|
|
188
|
+
"user.invited": {
|
|
189
|
+
topic: "users",
|
|
190
|
+
partitionKey: (payload) => `invitation:${payload.email}`,
|
|
191
|
+
},
|
|
192
|
+
"user.profile.updated": {
|
|
193
|
+
topic: "users",
|
|
194
|
+
partitionKey: (payload) => payload.user.id,
|
|
195
|
+
},
|
|
196
|
+
})
|
|
197
|
+
|
|
173
198
|
export const EVENT_DEFINITIONS = {
|
|
174
199
|
...OBJECT_EVENT_DEFINITIONS,
|
|
175
200
|
...TELEMETRY_EVENT_DEFINITIONS,
|
|
@@ -180,6 +205,7 @@ export const EVENT_DEFINITIONS = {
|
|
|
180
205
|
...WORKFLOW_EVENT_DEFINITIONS,
|
|
181
206
|
...DATASET_EVENT_DEFINITIONS,
|
|
182
207
|
...RULE_EVENT_DEFINITIONS,
|
|
208
|
+
...USER_EVENT_DEFINITIONS,
|
|
183
209
|
} as const satisfies EventDefinitionMap
|
|
184
210
|
|
|
185
211
|
export const EVENT_TYPES = Object.keys(EVENT_DEFINITIONS) as readonly DomainEvent["type"][]
|
package/src/events/execution.ts
CHANGED
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
type AuthorizedObjectReader,
|
|
5
5
|
readerClearance,
|
|
6
6
|
readerEventClearance,
|
|
7
|
+
readerViewConditions,
|
|
7
8
|
} from "../execution/authorized-object-reader"
|
|
8
9
|
import type { EventSources } from "../execution/object-reader-clearance"
|
|
9
10
|
import { redactDomainEvent } from "../objects/clearance-redaction"
|
|
@@ -16,6 +17,11 @@ import type {
|
|
|
16
17
|
EventsSubscribeInput,
|
|
17
18
|
} from "./service"
|
|
18
19
|
import type { StoredDomainEvent } from "./types"
|
|
20
|
+
import {
|
|
21
|
+
type ObjectHistory,
|
|
22
|
+
visibleUnderConditions,
|
|
23
|
+
withoutHiddenPriorState,
|
|
24
|
+
} from "./view-conditions"
|
|
19
25
|
|
|
20
26
|
export interface EventsRuntime {
|
|
21
27
|
/**
|
|
@@ -42,6 +48,21 @@ export interface EventsRuntime {
|
|
|
42
48
|
|
|
43
49
|
export function createEventsRuntime(runtime: SixbRuntimeContext): EventsRuntime {
|
|
44
50
|
const authority = resolveRuntimeAuthorizationForProject(runtime)
|
|
51
|
+
|
|
52
|
+
// Objects an event names that the reader cannot read: storage tells which still exist, and the
|
|
53
|
+
// log what the others held. Neither answer is shown.
|
|
54
|
+
const history: ObjectHistory = {
|
|
55
|
+
existing: async (objects) => {
|
|
56
|
+
const rows = await runtime.storage.objects.getByPrimaryIdBatch({
|
|
57
|
+
projectId: runtime.projectId,
|
|
58
|
+
items: objects,
|
|
59
|
+
})
|
|
60
|
+
return new Set(rows.keys())
|
|
61
|
+
},
|
|
62
|
+
lastEventBefore: (event, object) =>
|
|
63
|
+
runtime.events.lastObjectEventBefore({ cursor: event.cursor, ...object }),
|
|
64
|
+
}
|
|
65
|
+
|
|
45
66
|
const visible = async (
|
|
46
67
|
events: readonly StoredDomainEvent[]
|
|
47
68
|
): Promise<readonly StoredDomainEvent[]> => {
|
|
@@ -52,17 +73,31 @@ export function createEventsRuntime(runtime: SixbRuntimeContext): EventsRuntime
|
|
|
52
73
|
case "unrestricted":
|
|
53
74
|
return events
|
|
54
75
|
case "principal": {
|
|
55
|
-
const
|
|
76
|
+
const reader = runtime.objectReader
|
|
77
|
+
const conditions = readerViewConditions(reader)
|
|
78
|
+
const viewable = events.filter((event) =>
|
|
79
|
+
canViewEvent(authority.context, event, conditions)
|
|
80
|
+
)
|
|
56
81
|
if (viewable.length === 0) return viewable
|
|
57
82
|
|
|
58
|
-
const clearance = await readerClearance(
|
|
59
|
-
const clearanceFor = await eventClearances(
|
|
83
|
+
const clearance = await readerClearance(reader)
|
|
84
|
+
const clearanceFor = await eventClearances(reader, viewable, clearance)
|
|
60
85
|
|
|
61
|
-
|
|
62
|
-
|
|
86
|
+
const readable = clearance
|
|
87
|
+
? viewable.filter((event) => !readsUnreadable(event, clearance))
|
|
88
|
+
: viewable
|
|
89
|
+
const shown = await visibleUnderConditions(
|
|
90
|
+
reader,
|
|
91
|
+
readable,
|
|
92
|
+
conditions,
|
|
93
|
+
clearanceFor,
|
|
94
|
+
history
|
|
95
|
+
)
|
|
63
96
|
|
|
97
|
+
return shown.map((event) => {
|
|
64
98
|
const redacting = clearanceFor(event)
|
|
65
|
-
|
|
99
|
+
const redacted = redacting ? redactDomainEvent(event, redacting) : event
|
|
100
|
+
return withoutHiddenPriorState(event, redacted, conditions)
|
|
66
101
|
})
|
|
67
102
|
}
|
|
68
103
|
}
|
|
@@ -195,6 +230,8 @@ function readsUnreadable(event: StoredDomainEvent, clearance: PropertyClearance)
|
|
|
195
230
|
case "objects":
|
|
196
231
|
case "telemetry":
|
|
197
232
|
return clearance.unreadableType(event.payload.objectTypeId) !== undefined
|
|
233
|
+
case "rules":
|
|
234
|
+
return clearance.unreadableType(event.payload.subject.objectTypeId) !== undefined
|
|
198
235
|
case "links":
|
|
199
236
|
return (
|
|
200
237
|
clearance.unreadableType(event.payload.sourceTypeId) !== undefined ||
|
package/src/events/index.ts
CHANGED
|
@@ -58,6 +58,10 @@ export {
|
|
|
58
58
|
type SyncEventSelectorContext,
|
|
59
59
|
type SyncEventSelectorEvent,
|
|
60
60
|
type SyncEventToken,
|
|
61
|
+
type UserEventSelectorBuilder,
|
|
62
|
+
type UserEventSelectorContext,
|
|
63
|
+
type UserEventSelectorEvent,
|
|
64
|
+
type UserEventSelectorOperation,
|
|
61
65
|
} from "./selectors"
|
|
62
66
|
export {
|
|
63
67
|
createDomainEventService,
|
|
@@ -73,7 +77,6 @@ export {
|
|
|
73
77
|
type StableEventEnvelope,
|
|
74
78
|
type StableEventPublisher,
|
|
75
79
|
} from "./service"
|
|
76
|
-
export { toStoredEvent } from "./toStoredEvent"
|
|
77
80
|
export type {
|
|
78
81
|
ActionEventOrigin,
|
|
79
82
|
AuthorableDomainEvent,
|
|
@@ -145,6 +148,12 @@ export type {
|
|
|
145
148
|
TelemetryEvent,
|
|
146
149
|
TelemetryEventOrigin,
|
|
147
150
|
TelemetryEventSource,
|
|
151
|
+
UserEvent,
|
|
152
|
+
UserInvitedEvent,
|
|
153
|
+
UserJoinedEvent,
|
|
154
|
+
UserProfileUpdatedEvent,
|
|
155
|
+
UserReactivatedEvent,
|
|
156
|
+
UserSuspendedEvent,
|
|
148
157
|
WorkflowEvent,
|
|
149
158
|
WorkflowRunFinishedEvent,
|
|
150
159
|
WorkflowRunNodeFinishedEvent,
|
package/src/events/scope.ts
CHANGED
|
@@ -50,6 +50,8 @@ export function scopeKeysForEvent(event: DomainEvent): EventScopeKeys {
|
|
|
50
50
|
return {}
|
|
51
51
|
case "datasets":
|
|
52
52
|
return { datasetId: event.payload.datasetId }
|
|
53
|
+
case "users":
|
|
54
|
+
return {}
|
|
53
55
|
default: {
|
|
54
56
|
// Exhaustiveness guard: a new topic must extend the switch above.
|
|
55
57
|
const _exhaustive: never = event
|