@agentuity/core 1.0.33 → 1.0.35
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/index.d.ts +2 -17
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -15
- package/dist/index.js.map +1 -1
- package/dist/services/adapter.d.ts +57 -22
- package/dist/services/adapter.d.ts.map +1 -1
- package/dist/services/adapter.js +52 -1
- package/dist/services/adapter.js.map +1 -1
- package/dist/services/api.d.ts +222 -0
- package/dist/services/api.d.ts.map +1 -0
- package/dist/services/api.js +662 -0
- package/dist/services/api.js.map +1 -0
- package/dist/services/apikey/create.d.ts +34 -0
- package/dist/services/apikey/create.d.ts.map +1 -0
- package/dist/services/apikey/create.js +29 -0
- package/dist/services/apikey/create.js.map +1 -0
- package/dist/services/apikey/delete.d.ts.map +1 -0
- package/dist/services/apikey/delete.js.map +1 -0
- package/dist/services/apikey/get.d.ts.map +1 -0
- package/dist/services/apikey/get.js.map +1 -0
- package/dist/services/apikey/index.d.ts.map +1 -0
- package/dist/services/apikey/index.js.map +1 -0
- package/dist/services/apikey/list.d.ts +65 -0
- package/dist/services/apikey/list.d.ts.map +1 -0
- package/dist/services/apikey/list.js +50 -0
- package/dist/services/apikey/list.js.map +1 -0
- package/dist/services/apikey/util.d.ts.map +1 -0
- package/dist/services/apikey/util.js.map +1 -0
- package/dist/services/config.d.ts +22 -0
- package/dist/services/config.d.ts.map +1 -0
- package/dist/services/config.js +55 -0
- package/dist/services/config.js.map +1 -0
- package/dist/services/db/index.d.ts +6 -0
- package/dist/services/db/index.d.ts.map +1 -0
- package/dist/services/db/index.js +6 -0
- package/dist/services/db/index.js.map +1 -0
- package/dist/services/db/logs.d.ts.map +1 -0
- package/dist/services/db/logs.js.map +1 -0
- package/dist/services/db/query.d.ts +40 -0
- package/dist/services/db/query.d.ts.map +1 -0
- package/dist/services/db/query.js +55 -0
- package/dist/services/db/query.js.map +1 -0
- package/dist/services/db/stats.d.ts +146 -0
- package/dist/services/db/stats.d.ts.map +1 -0
- package/dist/services/db/stats.js +94 -0
- package/dist/services/db/stats.js.map +1 -0
- package/dist/services/db/tables.d.ts +50 -0
- package/dist/services/db/tables.d.ts.map +1 -0
- package/dist/services/db/tables.js +64 -0
- package/dist/services/db/tables.js.map +1 -0
- package/dist/services/db/util.d.ts.map +1 -0
- package/dist/services/db/util.js.map +1 -0
- package/dist/services/email/index.d.ts +2 -0
- package/dist/services/email/index.d.ts.map +1 -0
- package/dist/services/email/index.js +2 -0
- package/dist/services/email/index.js.map +1 -0
- package/dist/services/email/service.d.ts +742 -0
- package/dist/services/email/service.d.ts.map +1 -0
- package/dist/services/email/service.js +1107 -0
- package/dist/services/email/service.js.map +1 -0
- package/dist/services/env.d.ts.map +1 -0
- package/dist/services/env.js.map +1 -0
- package/dist/services/eval/events.d.ts +93 -0
- package/dist/services/eval/events.d.ts.map +1 -0
- package/dist/services/eval/events.js +24 -0
- package/dist/services/eval/events.js.map +1 -0
- package/dist/services/eval/get.d.ts.map +1 -0
- package/dist/services/eval/get.js.map +1 -0
- package/dist/services/eval/index.d.ts +6 -0
- package/dist/services/eval/index.d.ts.map +1 -0
- package/dist/services/eval/index.js +6 -0
- package/dist/services/eval/index.js.map +1 -0
- package/dist/services/eval/list.d.ts.map +1 -0
- package/dist/services/eval/list.js.map +1 -0
- package/dist/services/eval/run-get.d.ts.map +1 -0
- package/dist/services/eval/run-get.js.map +1 -0
- package/dist/services/eval/run-list.d.ts.map +1 -0
- package/dist/services/eval/run-list.js.map +1 -0
- package/dist/services/exception.d.ts +28 -9
- package/dist/services/exception.d.ts.map +1 -1
- package/dist/services/exception.js +14 -0
- package/dist/services/exception.js.map +1 -1
- package/dist/services/index.d.ts +26 -12
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +26 -11
- package/dist/services/index.js.map +1 -1
- package/dist/services/keyvalue/index.d.ts +2 -0
- package/dist/services/keyvalue/index.d.ts.map +1 -0
- package/dist/services/keyvalue/index.js +2 -0
- package/dist/services/keyvalue/index.js.map +1 -0
- package/dist/services/keyvalue/service.d.ts +261 -0
- package/dist/services/keyvalue/service.d.ts.map +1 -0
- package/dist/services/keyvalue/service.js +475 -0
- package/dist/services/keyvalue/service.js.map +1 -0
- package/dist/services/logger.d.ts.map +1 -0
- package/dist/services/logger.js.map +1 -0
- package/dist/services/machine/index.d.ts.map +1 -0
- package/dist/services/machine/index.js.map +1 -0
- package/dist/services/machine/machine.d.ts.map +1 -0
- package/dist/services/machine/machine.js +177 -0
- package/dist/services/machine/machine.js.map +1 -0
- package/dist/services/machine/util.d.ts.map +1 -0
- package/dist/services/machine/util.js.map +1 -0
- package/dist/services/org/env-delete.d.ts.map +1 -0
- package/dist/services/org/env-delete.js.map +1 -0
- package/dist/services/org/env-get.d.ts +33 -0
- package/dist/services/org/env-get.d.ts.map +1 -0
- package/dist/services/org/env-get.js +33 -0
- package/dist/services/org/env-get.js.map +1 -0
- package/dist/services/org/env-update.d.ts.map +1 -0
- package/dist/services/org/env-update.js.map +1 -0
- package/dist/services/org/index.d.ts.map +1 -0
- package/dist/services/org/index.js.map +1 -0
- package/dist/services/org/list.d.ts.map +1 -0
- package/dist/services/org/list.js.map +1 -0
- package/dist/services/org/resources.d.ts +150 -0
- package/dist/services/org/resources.d.ts.map +1 -0
- package/dist/services/org/resources.js +111 -0
- package/dist/services/org/resources.js.map +1 -0
- package/dist/services/org/util.d.ts.map +1 -0
- package/dist/services/org/util.js.map +1 -0
- package/dist/services/pagination.d.ts +38 -11
- package/dist/services/pagination.d.ts.map +1 -1
- package/dist/services/pagination.js +30 -1
- package/dist/services/pagination.js.map +1 -1
- package/dist/services/project/agent.d.ts.map +1 -0
- package/dist/services/project/agent.js.map +1 -0
- package/dist/services/project/create.d.ts.map +1 -0
- package/dist/services/project/create.js.map +1 -0
- package/dist/services/project/delete.d.ts.map +1 -0
- package/dist/services/project/delete.js +15 -0
- package/dist/services/project/delete.js.map +1 -0
- package/dist/services/project/deploy.d.ts +468 -0
- package/dist/services/project/deploy.d.ts.map +1 -0
- package/dist/services/project/deploy.js.map +1 -0
- package/dist/services/project/deployment.d.ts.map +1 -0
- package/dist/services/project/deployment.js +180 -0
- package/dist/services/project/deployment.js.map +1 -0
- package/dist/services/project/env-delete.d.ts.map +1 -0
- package/dist/services/project/env-delete.js.map +1 -0
- package/dist/services/project/env-update.d.ts.map +1 -0
- package/dist/services/project/env-update.js.map +1 -0
- package/dist/services/project/exists.d.ts.map +1 -0
- package/dist/services/project/exists.js.map +1 -0
- package/dist/services/project/get.d.ts.map +1 -0
- package/dist/services/project/get.js.map +1 -0
- package/dist/services/project/hostname.d.ts.map +1 -0
- package/dist/services/project/hostname.js +43 -0
- package/dist/services/project/hostname.js.map +1 -0
- package/dist/services/project/index.d.ts.map +1 -0
- package/dist/services/project/index.js.map +1 -0
- package/dist/services/project/list.d.ts.map +1 -0
- package/dist/services/project/list.js.map +1 -0
- package/dist/services/project/malware.d.ts.map +1 -0
- package/dist/services/project/malware.js +57 -0
- package/dist/services/project/malware.js.map +1 -0
- package/dist/services/project/update-region.d.ts.map +1 -0
- package/dist/services/project/update-region.js.map +1 -0
- package/dist/services/project/util.d.ts.map +1 -0
- package/dist/services/project/util.js.map +1 -0
- package/dist/services/queue/analytics.d.ts +261 -0
- package/dist/services/queue/analytics.d.ts.map +1 -0
- package/dist/services/queue/analytics.js +254 -0
- package/dist/services/queue/analytics.js.map +1 -0
- package/dist/services/queue/consumers.d.ts +48 -0
- package/dist/services/queue/consumers.d.ts.map +1 -0
- package/dist/services/queue/consumers.js +43 -0
- package/dist/services/queue/consumers.js.map +1 -0
- package/dist/services/queue/destinations.d.ts +269 -0
- package/dist/services/queue/destinations.d.ts.map +1 -0
- package/dist/services/queue/destinations.js +215 -0
- package/dist/services/queue/destinations.js.map +1 -0
- package/dist/services/queue/dlq.d.ts +170 -0
- package/dist/services/queue/dlq.d.ts.map +1 -0
- package/dist/services/queue/dlq.js.map +1 -0
- package/dist/services/queue/index.d.ts +58 -0
- package/dist/services/queue/index.d.ts.map +1 -0
- package/dist/services/queue/index.js +98 -0
- package/dist/services/queue/index.js.map +1 -0
- package/dist/services/queue/messages.d.ts +511 -0
- package/dist/services/queue/messages.d.ts.map +1 -0
- package/dist/services/queue/messages.js.map +1 -0
- package/dist/services/queue/queues.d.ts +228 -0
- package/dist/services/queue/queues.d.ts.map +1 -0
- package/dist/services/queue/queues.js.map +1 -0
- package/dist/services/queue/service.d.ts +309 -0
- package/dist/services/queue/service.d.ts.map +1 -0
- package/dist/services/queue/service.js +456 -0
- package/dist/services/queue/service.js.map +1 -0
- package/dist/services/queue/sources.d.ts +252 -0
- package/dist/services/queue/sources.d.ts.map +1 -0
- package/dist/services/queue/sources.js +249 -0
- package/dist/services/queue/sources.js.map +1 -0
- package/dist/services/queue/types.d.ts +1335 -0
- package/dist/services/queue/types.d.ts.map +1 -0
- package/dist/services/queue/types.js +1382 -0
- package/dist/services/queue/types.js.map +1 -0
- package/dist/services/queue/util.d.ts +278 -0
- package/dist/services/queue/util.d.ts.map +1 -0
- package/dist/services/queue/util.js +233 -0
- package/dist/services/queue/util.js.map +1 -0
- package/dist/services/queue/validation.d.ts +218 -0
- package/dist/services/queue/validation.d.ts.map +1 -0
- package/dist/services/queue/validation.js +498 -0
- package/dist/services/queue/validation.js.map +1 -0
- package/dist/services/queue/websocket.d.ts +154 -0
- package/dist/services/queue/websocket.d.ts.map +1 -0
- package/dist/services/queue/websocket.js +491 -0
- package/dist/services/queue/websocket.js.map +1 -0
- package/dist/services/region/create.d.ts.map +1 -0
- package/dist/services/region/create.js.map +1 -0
- package/dist/services/region/delete.d.ts.map +1 -0
- package/dist/services/region/delete.js.map +1 -0
- package/dist/services/region/index.d.ts.map +1 -0
- package/dist/services/region/index.js.map +1 -0
- package/dist/services/region/list.d.ts.map +1 -0
- package/dist/services/region/list.js.map +1 -0
- package/dist/services/region/resources.d.ts.map +1 -0
- package/dist/services/region/resources.js.map +1 -0
- package/dist/services/region/util.d.ts.map +1 -0
- package/dist/services/region/util.js.map +1 -0
- package/dist/services/sandbox/cli-list.d.ts +103 -0
- package/dist/services/sandbox/cli-list.d.ts.map +1 -0
- package/dist/services/sandbox/cli-list.js +106 -0
- package/dist/services/sandbox/cli-list.js.map +1 -0
- package/dist/services/sandbox/client.d.ts +173 -0
- package/dist/services/sandbox/client.d.ts.map +1 -0
- package/dist/services/sandbox/client.js +302 -0
- package/dist/services/sandbox/client.js.map +1 -0
- package/dist/services/sandbox/create.d.ts +193 -0
- package/dist/services/sandbox/create.d.ts.map +1 -0
- package/dist/services/sandbox/create.js +215 -0
- package/dist/services/sandbox/create.js.map +1 -0
- package/dist/services/sandbox/destroy.d.ts +23 -0
- package/dist/services/sandbox/destroy.d.ts.map +1 -0
- package/dist/services/sandbox/destroy.js +30 -0
- package/dist/services/sandbox/destroy.js.map +1 -0
- package/dist/services/sandbox/disk-checkpoint.d.ts +108 -0
- package/dist/services/sandbox/disk-checkpoint.d.ts.map +1 -0
- package/dist/services/sandbox/disk-checkpoint.js +124 -0
- package/dist/services/sandbox/disk-checkpoint.js.map +1 -0
- package/dist/services/sandbox/execute.d.ts +96 -0
- package/dist/services/sandbox/execute.d.ts.map +1 -0
- package/dist/services/sandbox/execute.js +109 -0
- package/dist/services/sandbox/execute.js.map +1 -0
- package/dist/services/sandbox/execution.d.ts +145 -0
- package/dist/services/sandbox/execution.d.ts.map +1 -0
- package/dist/services/sandbox/execution.js +113 -0
- package/dist/services/sandbox/execution.js.map +1 -0
- package/dist/services/sandbox/files.d.ts +269 -0
- package/dist/services/sandbox/files.d.ts.map +1 -0
- package/dist/services/sandbox/files.js +454 -0
- package/dist/services/sandbox/files.js.map +1 -0
- package/dist/services/sandbox/get.d.ts +284 -0
- package/dist/services/sandbox/get.d.ts.map +1 -0
- package/dist/services/sandbox/get.js +231 -0
- package/dist/services/sandbox/get.js.map +1 -0
- package/dist/services/sandbox/getStatus.d.ts +20 -0
- package/dist/services/sandbox/getStatus.d.ts.map +1 -0
- package/dist/services/sandbox/getStatus.js +36 -0
- package/dist/services/sandbox/getStatus.js.map +1 -0
- package/dist/services/sandbox/index.d.ts +40 -0
- package/dist/services/sandbox/index.d.ts.map +1 -0
- package/dist/services/sandbox/index.js +21 -0
- package/dist/services/sandbox/index.js.map +1 -0
- package/dist/services/sandbox/list.d.ts +327 -0
- package/dist/services/sandbox/list.d.ts.map +1 -0
- package/dist/services/sandbox/list.js +204 -0
- package/dist/services/sandbox/list.js.map +1 -0
- package/dist/services/sandbox/pause.d.ts +23 -0
- package/dist/services/sandbox/pause.d.ts.map +1 -0
- package/dist/services/sandbox/pause.js +30 -0
- package/dist/services/sandbox/pause.js.map +1 -0
- package/dist/services/sandbox/resolve.d.ts +75 -0
- package/dist/services/sandbox/resolve.d.ts.map +1 -0
- package/dist/services/sandbox/resolve.js +76 -0
- package/dist/services/sandbox/resolve.js.map +1 -0
- package/dist/services/sandbox/resume.d.ts +23 -0
- package/dist/services/sandbox/resume.d.ts.map +1 -0
- package/dist/services/sandbox/resume.js +30 -0
- package/dist/services/sandbox/resume.js.map +1 -0
- package/dist/services/sandbox/run.d.ts +71 -0
- package/dist/services/sandbox/run.d.ts.map +1 -0
- package/dist/services/sandbox/run.js +355 -0
- package/dist/services/sandbox/run.js.map +1 -0
- package/dist/services/sandbox/runtime.d.ts +94 -0
- package/dist/services/sandbox/runtime.d.ts.map +1 -0
- package/dist/services/sandbox/runtime.js +82 -0
- package/dist/services/sandbox/runtime.js.map +1 -0
- package/dist/services/sandbox/snapshot-build.d.ts.map +1 -0
- package/dist/services/sandbox/snapshot-build.js.map +1 -0
- package/dist/services/sandbox/snapshot.d.ts +596 -0
- package/dist/services/sandbox/snapshot.d.ts.map +1 -0
- package/dist/services/sandbox/snapshot.js +612 -0
- package/dist/services/sandbox/snapshot.js.map +1 -0
- package/dist/services/sandbox/types.d.ts +851 -0
- package/dist/services/sandbox/types.d.ts.map +1 -0
- package/dist/services/sandbox/types.js +674 -0
- package/dist/services/sandbox/types.js.map +1 -0
- package/dist/services/sandbox/util.d.ts +295 -0
- package/dist/services/sandbox/util.d.ts.map +1 -0
- package/dist/services/sandbox/util.js +233 -0
- package/dist/services/sandbox/util.js.map +1 -0
- package/dist/services/schedule/index.d.ts +2 -0
- package/dist/services/schedule/index.d.ts.map +1 -0
- package/dist/services/schedule/index.js +2 -0
- package/dist/services/schedule/index.js.map +1 -0
- package/dist/services/schedule/service.d.ts +439 -0
- package/dist/services/schedule/service.d.ts.map +1 -0
- package/dist/services/schedule/service.js +701 -0
- package/dist/services/schedule/service.js.map +1 -0
- package/dist/services/session/events.d.ts +127 -0
- package/dist/services/session/events.d.ts.map +1 -0
- package/dist/services/session/events.js +42 -0
- package/dist/services/session/events.js.map +1 -0
- package/dist/services/session/get.d.ts +170 -0
- package/dist/services/session/get.d.ts.map +1 -0
- package/dist/services/session/get.js.map +1 -0
- package/dist/services/session/index.d.ts +5 -0
- package/dist/services/session/index.d.ts.map +1 -0
- package/dist/services/session/index.js +5 -0
- package/dist/services/session/index.js.map +1 -0
- package/dist/services/session/list.d.ts +150 -0
- package/dist/services/session/list.d.ts.map +1 -0
- package/dist/services/session/list.js +117 -0
- package/dist/services/session/list.js.map +1 -0
- package/dist/services/session/logs.d.ts.map +1 -0
- package/dist/services/session/logs.js.map +1 -0
- package/dist/services/session/util.d.ts.map +1 -0
- package/dist/services/session/util.js.map +1 -0
- package/dist/services/stats.d.ts +261 -0
- package/dist/services/stats.d.ts.map +1 -0
- package/dist/services/stats.js +181 -0
- package/dist/services/stats.js.map +1 -0
- package/dist/services/storage/config.d.ts.map +1 -0
- package/dist/services/storage/config.js.map +1 -0
- package/dist/services/storage/index.d.ts.map +1 -0
- package/dist/services/storage/index.js.map +1 -0
- package/dist/services/storage/objects.d.ts +158 -0
- package/dist/services/storage/objects.d.ts.map +1 -0
- package/dist/services/storage/objects.js +161 -0
- package/dist/services/storage/objects.js.map +1 -0
- package/dist/services/storage/types.d.ts.map +1 -0
- package/dist/services/storage/types.js.map +1 -0
- package/dist/services/storage/util.d.ts.map +1 -0
- package/dist/services/storage/util.js.map +1 -0
- package/dist/services/stream/get.d.ts.map +1 -0
- package/dist/services/stream/get.js.map +1 -0
- package/dist/services/stream/index.d.ts +5 -0
- package/dist/services/stream/index.d.ts.map +1 -0
- package/dist/services/stream/index.js +5 -0
- package/dist/services/stream/index.js.map +1 -0
- package/dist/services/stream/list.d.ts +96 -0
- package/dist/services/stream/list.d.ts.map +1 -0
- package/dist/services/stream/list.js +92 -0
- package/dist/services/stream/list.js.map +1 -0
- package/dist/services/stream/service.d.ts +264 -0
- package/dist/services/stream/service.d.ts.map +1 -0
- package/dist/services/stream/service.js +631 -0
- package/dist/services/stream/service.js.map +1 -0
- package/dist/services/stream/util.d.ts.map +1 -0
- package/dist/services/stream/util.js.map +1 -0
- package/dist/services/task/index.d.ts +2 -0
- package/dist/services/task/index.d.ts.map +1 -0
- package/dist/services/task/index.js +2 -0
- package/dist/services/task/index.js.map +1 -0
- package/dist/services/task/service.d.ts +1491 -0
- package/dist/services/task/service.d.ts.map +1 -0
- package/dist/services/task/service.js +1887 -0
- package/dist/services/task/service.js.map +1 -0
- package/dist/services/thread/delete.d.ts.map +1 -0
- package/dist/services/thread/delete.js.map +1 -0
- package/dist/services/thread/get.d.ts.map +1 -0
- package/dist/services/thread/get.js.map +1 -0
- package/dist/services/thread/index.d.ts.map +1 -0
- package/dist/services/thread/index.js.map +1 -0
- package/dist/services/thread/list.d.ts +75 -0
- package/dist/services/thread/list.d.ts.map +1 -0
- package/dist/services/thread/list.js +65 -0
- package/dist/services/thread/list.js.map +1 -0
- package/dist/services/thread/util.d.ts.map +1 -0
- package/dist/services/thread/util.js.map +1 -0
- package/dist/services/user/index.d.ts.map +1 -0
- package/dist/services/user/index.js.map +1 -0
- package/dist/services/user/util.d.ts.map +1 -0
- package/dist/services/user/util.js.map +1 -0
- package/dist/services/user/whoami.d.ts.map +1 -0
- package/dist/services/user/whoami.js.map +1 -0
- package/dist/services/vector/index.d.ts +2 -0
- package/dist/services/vector/index.d.ts.map +1 -0
- package/dist/services/vector/index.js +2 -0
- package/dist/services/vector/index.js.map +1 -0
- package/dist/services/vector/service.d.ts +459 -0
- package/dist/services/vector/service.d.ts.map +1 -0
- package/dist/services/vector/service.js +707 -0
- package/dist/services/vector/service.js.map +1 -0
- package/dist/services/webhook/analytics.d.ts +77 -0
- package/dist/services/webhook/analytics.d.ts.map +1 -0
- package/dist/services/webhook/analytics.js +56 -0
- package/dist/services/webhook/analytics.js.map +1 -0
- package/dist/services/webhook/deliveries.d.ts +94 -0
- package/dist/services/webhook/deliveries.d.ts.map +1 -0
- package/dist/services/webhook/deliveries.js.map +1 -0
- package/dist/services/webhook/destinations.d.ts +140 -0
- package/dist/services/webhook/destinations.d.ts.map +1 -0
- package/dist/services/webhook/destinations.js.map +1 -0
- package/dist/services/webhook/index.d.ts +43 -0
- package/dist/services/webhook/index.d.ts.map +1 -0
- package/dist/services/webhook/index.js +64 -0
- package/dist/services/webhook/index.js.map +1 -0
- package/dist/services/webhook/receipts.d.ts.map +1 -0
- package/dist/services/webhook/receipts.js.map +1 -0
- package/dist/services/webhook/service.d.ts +374 -0
- package/dist/services/webhook/service.d.ts.map +1 -0
- package/dist/services/webhook/service.js +663 -0
- package/dist/services/webhook/service.js.map +1 -0
- package/dist/services/webhook/types.d.ts +182 -0
- package/dist/services/webhook/types.d.ts.map +1 -0
- package/dist/services/webhook/types.js +188 -0
- package/dist/services/webhook/types.js.map +1 -0
- package/dist/services/webhook/util.d.ts.map +1 -0
- package/dist/services/webhook/util.js.map +1 -0
- package/dist/services/webhook/webhooks.d.ts +150 -0
- package/dist/services/webhook/webhooks.d.ts.map +1 -0
- package/dist/services/webhook/webhooks.js.map +1 -0
- package/package.json +59 -7
- package/src/index.ts +6 -247
- package/src/services/adapter.ts +69 -24
- package/src/services/api.ts +951 -0
- package/src/services/apikey/create.ts +48 -0
- package/src/services/apikey/list.ts +66 -0
- package/src/services/config.ts +65 -0
- package/src/services/db/index.ts +42 -0
- package/src/services/db/query.ts +69 -0
- package/src/services/db/stats.ts +121 -0
- package/src/services/db/tables.ts +94 -0
- package/src/services/email/index.ts +1 -0
- package/src/services/email/service.ts +1476 -0
- package/src/services/eval/index.ts +29 -0
- package/src/services/exception.ts +16 -7
- package/src/services/index.ts +29 -28
- package/src/services/keyvalue/index.ts +1 -0
- package/src/services/keyvalue/service.ts +677 -0
- package/src/services/machine/machine.ts +228 -0
- package/src/services/org/env-get.ts +48 -0
- package/src/services/org/resources.ts +140 -0
- package/src/services/pagination.ts +40 -11
- package/src/services/project/delete.ts +27 -0
- package/src/services/project/deploy.ts +433 -0
- package/src/services/project/deployment.ts +250 -0
- package/src/services/project/hostname.ts +79 -0
- package/src/services/project/malware.ts +85 -0
- package/src/services/queue/analytics.ts +343 -0
- package/src/services/queue/consumers.ts +56 -0
- package/src/services/queue/destinations.ts +329 -0
- package/src/services/queue/index.ts +339 -0
- package/src/services/queue/service.ts +634 -0
- package/src/services/queue/sources.ts +364 -0
- package/src/services/queue/types.ts +1666 -0
- package/src/services/queue/util.ts +275 -0
- package/src/services/queue/validation.ts +541 -0
- package/src/services/queue/websocket.ts +578 -0
- package/src/services/sandbox/cli-list.ts +117 -0
- package/src/services/sandbox/client.ts +435 -0
- package/src/services/sandbox/create.ts +249 -0
- package/src/services/sandbox/destroy.ts +43 -0
- package/src/services/sandbox/disk-checkpoint.ts +184 -0
- package/src/services/sandbox/execute.ts +134 -0
- package/src/services/sandbox/execution.ts +144 -0
- package/src/services/sandbox/files.ts +608 -0
- package/src/services/sandbox/get.ts +262 -0
- package/src/services/sandbox/getStatus.ts +51 -0
- package/src/services/sandbox/index.ts +230 -0
- package/src/services/sandbox/list.ts +234 -0
- package/src/services/sandbox/pause.ts +41 -0
- package/src/services/sandbox/resolve.ts +96 -0
- package/src/services/sandbox/resume.ts +41 -0
- package/src/services/sandbox/run.ts +441 -0
- package/src/services/sandbox/runtime.ts +106 -0
- package/src/services/sandbox/snapshot.ts +791 -0
- package/src/services/sandbox/types.ts +798 -0
- package/src/services/sandbox/util.ts +279 -0
- package/src/services/schedule/index.ts +1 -0
- package/src/services/schedule/service.ts +814 -0
- package/src/services/session/get.ts +108 -0
- package/src/services/session/index.ts +4 -0
- package/src/services/session/list.ts +143 -0
- package/src/services/stats.ts +232 -0
- package/src/services/storage/objects.ts +256 -0
- package/src/services/stream/index.ts +14 -0
- package/src/services/stream/list.ts +105 -0
- package/src/services/stream/service.ts +929 -0
- package/src/services/task/index.ts +1 -0
- package/src/services/task/service.ts +2573 -0
- package/src/services/thread/list.ts +81 -0
- package/src/services/vector/index.ts +1 -0
- package/src/services/vector/service.ts +1242 -0
- package/src/services/webhook/analytics.ts +80 -0
- package/src/services/webhook/index.ts +160 -0
- package/src/services/webhook/service.ts +900 -0
- package/src/services/webhook/types.ts +277 -0
- package/dist/api/api.d.ts +0 -226
- package/dist/api/api.d.ts.map +0 -1
- package/dist/api/api.js +0 -635
- package/dist/api/api.js.map +0 -1
- package/dist/api/apikey/create.d.ts +0 -33
- package/dist/api/apikey/create.d.ts.map +0 -1
- package/dist/api/apikey/create.js +0 -23
- package/dist/api/apikey/create.js.map +0 -1
- package/dist/api/apikey/delete.d.ts.map +0 -1
- package/dist/api/apikey/delete.js.map +0 -1
- package/dist/api/apikey/get.d.ts.map +0 -1
- package/dist/api/apikey/get.js.map +0 -1
- package/dist/api/apikey/index.d.ts.map +0 -1
- package/dist/api/apikey/index.js.map +0 -1
- package/dist/api/apikey/list.d.ts +0 -64
- package/dist/api/apikey/list.d.ts.map +0 -1
- package/dist/api/apikey/list.js +0 -46
- package/dist/api/apikey/list.js.map +0 -1
- package/dist/api/apikey/util.d.ts.map +0 -1
- package/dist/api/apikey/util.js.map +0 -1
- package/dist/api/config.d.ts +0 -20
- package/dist/api/config.d.ts.map +0 -1
- package/dist/api/config.js +0 -43
- package/dist/api/config.js.map +0 -1
- package/dist/api/db/index.d.ts +0 -5
- package/dist/api/db/index.d.ts.map +0 -1
- package/dist/api/db/index.js +0 -5
- package/dist/api/db/index.js.map +0 -1
- package/dist/api/db/logs.d.ts.map +0 -1
- package/dist/api/db/logs.js.map +0 -1
- package/dist/api/db/query.d.ts +0 -39
- package/dist/api/db/query.d.ts.map +0 -1
- package/dist/api/db/query.js +0 -49
- package/dist/api/db/query.js.map +0 -1
- package/dist/api/db/tables.d.ts +0 -49
- package/dist/api/db/tables.d.ts.map +0 -1
- package/dist/api/db/tables.js +0 -59
- package/dist/api/db/tables.js.map +0 -1
- package/dist/api/db/util.d.ts.map +0 -1
- package/dist/api/db/util.js.map +0 -1
- package/dist/api/env.d.ts.map +0 -1
- package/dist/api/env.js.map +0 -1
- package/dist/api/eval/get.d.ts.map +0 -1
- package/dist/api/eval/get.js.map +0 -1
- package/dist/api/eval/index.d.ts +0 -5
- package/dist/api/eval/index.d.ts.map +0 -1
- package/dist/api/eval/index.js +0 -5
- package/dist/api/eval/index.js.map +0 -1
- package/dist/api/eval/list.d.ts.map +0 -1
- package/dist/api/eval/list.js.map +0 -1
- package/dist/api/eval/run-get.d.ts.map +0 -1
- package/dist/api/eval/run-get.js.map +0 -1
- package/dist/api/eval/run-list.d.ts.map +0 -1
- package/dist/api/eval/run-list.js.map +0 -1
- package/dist/api/index.d.ts +0 -21
- package/dist/api/index.d.ts.map +0 -1
- package/dist/api/index.js +0 -21
- package/dist/api/index.js.map +0 -1
- package/dist/api/logger.d.ts.map +0 -1
- package/dist/api/logger.js.map +0 -1
- package/dist/api/machine/index.d.ts.map +0 -1
- package/dist/api/machine/index.js.map +0 -1
- package/dist/api/machine/machine.d.ts.map +0 -1
- package/dist/api/machine/machine.js +0 -109
- package/dist/api/machine/machine.js.map +0 -1
- package/dist/api/machine/util.d.ts.map +0 -1
- package/dist/api/machine/util.js.map +0 -1
- package/dist/api/org/env-delete.d.ts.map +0 -1
- package/dist/api/org/env-delete.js.map +0 -1
- package/dist/api/org/env-get.d.ts +0 -33
- package/dist/api/org/env-get.d.ts.map +0 -1
- package/dist/api/org/env-get.js +0 -26
- package/dist/api/org/env-get.js.map +0 -1
- package/dist/api/org/env-update.d.ts.map +0 -1
- package/dist/api/org/env-update.js.map +0 -1
- package/dist/api/org/index.d.ts.map +0 -1
- package/dist/api/org/index.js.map +0 -1
- package/dist/api/org/list.d.ts.map +0 -1
- package/dist/api/org/list.js.map +0 -1
- package/dist/api/org/resources.d.ts +0 -141
- package/dist/api/org/resources.d.ts.map +0 -1
- package/dist/api/org/resources.js +0 -97
- package/dist/api/org/resources.js.map +0 -1
- package/dist/api/org/util.d.ts.map +0 -1
- package/dist/api/org/util.js.map +0 -1
- package/dist/api/project/agent.d.ts.map +0 -1
- package/dist/api/project/agent.js.map +0 -1
- package/dist/api/project/create.d.ts.map +0 -1
- package/dist/api/project/create.js.map +0 -1
- package/dist/api/project/delete.d.ts.map +0 -1
- package/dist/api/project/delete.js +0 -13
- package/dist/api/project/delete.js.map +0 -1
- package/dist/api/project/deploy.d.ts +0 -490
- package/dist/api/project/deploy.d.ts.map +0 -1
- package/dist/api/project/deploy.js.map +0 -1
- package/dist/api/project/deployment.d.ts.map +0 -1
- package/dist/api/project/deployment.js +0 -127
- package/dist/api/project/deployment.js.map +0 -1
- package/dist/api/project/env-delete.d.ts.map +0 -1
- package/dist/api/project/env-delete.js.map +0 -1
- package/dist/api/project/env-update.d.ts.map +0 -1
- package/dist/api/project/env-update.js.map +0 -1
- package/dist/api/project/exists.d.ts.map +0 -1
- package/dist/api/project/exists.js.map +0 -1
- package/dist/api/project/get.d.ts.map +0 -1
- package/dist/api/project/get.js.map +0 -1
- package/dist/api/project/hostname.d.ts.map +0 -1
- package/dist/api/project/hostname.js +0 -37
- package/dist/api/project/hostname.js.map +0 -1
- package/dist/api/project/index.d.ts.map +0 -1
- package/dist/api/project/index.js.map +0 -1
- package/dist/api/project/list.d.ts.map +0 -1
- package/dist/api/project/list.js.map +0 -1
- package/dist/api/project/malware.d.ts.map +0 -1
- package/dist/api/project/malware.js +0 -42
- package/dist/api/project/malware.js.map +0 -1
- package/dist/api/project/update-region.d.ts.map +0 -1
- package/dist/api/project/update-region.js.map +0 -1
- package/dist/api/project/util.d.ts.map +0 -1
- package/dist/api/project/util.js.map +0 -1
- package/dist/api/queue/analytics.d.ts +0 -250
- package/dist/api/queue/analytics.d.ts.map +0 -1
- package/dist/api/queue/analytics.js +0 -233
- package/dist/api/queue/analytics.js.map +0 -1
- package/dist/api/queue/destinations.d.ts +0 -202
- package/dist/api/queue/destinations.d.ts.map +0 -1
- package/dist/api/queue/destinations.js +0 -168
- package/dist/api/queue/destinations.js.map +0 -1
- package/dist/api/queue/dlq.d.ts +0 -168
- package/dist/api/queue/dlq.d.ts.map +0 -1
- package/dist/api/queue/dlq.js.map +0 -1
- package/dist/api/queue/index.d.ts +0 -56
- package/dist/api/queue/index.d.ts.map +0 -1
- package/dist/api/queue/index.js +0 -90
- package/dist/api/queue/index.js.map +0 -1
- package/dist/api/queue/messages.d.ts +0 -503
- package/dist/api/queue/messages.d.ts.map +0 -1
- package/dist/api/queue/messages.js.map +0 -1
- package/dist/api/queue/queues.d.ts +0 -226
- package/dist/api/queue/queues.d.ts.map +0 -1
- package/dist/api/queue/queues.js.map +0 -1
- package/dist/api/queue/sources.d.ts +0 -202
- package/dist/api/queue/sources.d.ts.map +0 -1
- package/dist/api/queue/sources.js +0 -202
- package/dist/api/queue/sources.js.map +0 -1
- package/dist/api/queue/types.d.ts +0 -1218
- package/dist/api/queue/types.d.ts.map +0 -1
- package/dist/api/queue/types.js +0 -1002
- package/dist/api/queue/types.js.map +0 -1
- package/dist/api/queue/util.d.ts +0 -278
- package/dist/api/queue/util.d.ts.map +0 -1
- package/dist/api/queue/util.js +0 -233
- package/dist/api/queue/util.js.map +0 -1
- package/dist/api/queue/validation.d.ts +0 -247
- package/dist/api/queue/validation.d.ts.map +0 -1
- package/dist/api/queue/validation.js +0 -513
- package/dist/api/queue/validation.js.map +0 -1
- package/dist/api/queue/websocket.d.ts +0 -172
- package/dist/api/queue/websocket.d.ts.map +0 -1
- package/dist/api/queue/websocket.js +0 -396
- package/dist/api/queue/websocket.js.map +0 -1
- package/dist/api/region/create.d.ts.map +0 -1
- package/dist/api/region/create.js.map +0 -1
- package/dist/api/region/delete.d.ts.map +0 -1
- package/dist/api/region/delete.js.map +0 -1
- package/dist/api/region/index.d.ts.map +0 -1
- package/dist/api/region/index.js.map +0 -1
- package/dist/api/region/list.d.ts.map +0 -1
- package/dist/api/region/list.js.map +0 -1
- package/dist/api/region/resources.d.ts.map +0 -1
- package/dist/api/region/resources.js.map +0 -1
- package/dist/api/region/util.d.ts.map +0 -1
- package/dist/api/region/util.js.map +0 -1
- package/dist/api/sandbox/cli-list.d.ts +0 -114
- package/dist/api/sandbox/cli-list.d.ts.map +0 -1
- package/dist/api/sandbox/cli-list.js +0 -71
- package/dist/api/sandbox/cli-list.js.map +0 -1
- package/dist/api/sandbox/client.d.ts +0 -192
- package/dist/api/sandbox/client.d.ts.map +0 -1
- package/dist/api/sandbox/client.js +0 -262
- package/dist/api/sandbox/client.js.map +0 -1
- package/dist/api/sandbox/create.d.ts +0 -118
- package/dist/api/sandbox/create.d.ts.map +0 -1
- package/dist/api/sandbox/create.js +0 -211
- package/dist/api/sandbox/create.js.map +0 -1
- package/dist/api/sandbox/destroy.d.ts +0 -22
- package/dist/api/sandbox/destroy.d.ts.map +0 -1
- package/dist/api/sandbox/destroy.js +0 -25
- package/dist/api/sandbox/destroy.js.map +0 -1
- package/dist/api/sandbox/disk-checkpoint.d.ts +0 -104
- package/dist/api/sandbox/disk-checkpoint.d.ts.map +0 -1
- package/dist/api/sandbox/disk-checkpoint.js +0 -104
- package/dist/api/sandbox/disk-checkpoint.js.map +0 -1
- package/dist/api/sandbox/execute.d.ts +0 -69
- package/dist/api/sandbox/execute.d.ts.map +0 -1
- package/dist/api/sandbox/execute.js +0 -103
- package/dist/api/sandbox/execute.js.map +0 -1
- package/dist/api/sandbox/execution.d.ts +0 -169
- package/dist/api/sandbox/execution.d.ts.map +0 -1
- package/dist/api/sandbox/execution.js +0 -118
- package/dist/api/sandbox/execution.js.map +0 -1
- package/dist/api/sandbox/files.d.ts +0 -261
- package/dist/api/sandbox/files.d.ts.map +0 -1
- package/dist/api/sandbox/files.js +0 -386
- package/dist/api/sandbox/files.js.map +0 -1
- package/dist/api/sandbox/get.d.ts +0 -283
- package/dist/api/sandbox/get.d.ts.map +0 -1
- package/dist/api/sandbox/get.js +0 -215
- package/dist/api/sandbox/get.js.map +0 -1
- package/dist/api/sandbox/getStatus.d.ts +0 -16
- package/dist/api/sandbox/getStatus.d.ts.map +0 -1
- package/dist/api/sandbox/getStatus.js +0 -32
- package/dist/api/sandbox/getStatus.js.map +0 -1
- package/dist/api/sandbox/index.d.ts +0 -39
- package/dist/api/sandbox/index.d.ts.map +0 -1
- package/dist/api/sandbox/index.js +0 -20
- package/dist/api/sandbox/index.js.map +0 -1
- package/dist/api/sandbox/list.d.ts +0 -293
- package/dist/api/sandbox/list.d.ts.map +0 -1
- package/dist/api/sandbox/list.js +0 -191
- package/dist/api/sandbox/list.js.map +0 -1
- package/dist/api/sandbox/pause.d.ts +0 -22
- package/dist/api/sandbox/pause.d.ts.map +0 -1
- package/dist/api/sandbox/pause.js +0 -25
- package/dist/api/sandbox/pause.js.map +0 -1
- package/dist/api/sandbox/resolve.d.ts +0 -82
- package/dist/api/sandbox/resolve.d.ts.map +0 -1
- package/dist/api/sandbox/resolve.js +0 -71
- package/dist/api/sandbox/resolve.js.map +0 -1
- package/dist/api/sandbox/resume.d.ts +0 -22
- package/dist/api/sandbox/resume.d.ts.map +0 -1
- package/dist/api/sandbox/resume.js +0 -25
- package/dist/api/sandbox/resume.js.map +0 -1
- package/dist/api/sandbox/run.d.ts +0 -28
- package/dist/api/sandbox/run.d.ts.map +0 -1
- package/dist/api/sandbox/run.js +0 -342
- package/dist/api/sandbox/run.js.map +0 -1
- package/dist/api/sandbox/runtime.d.ts +0 -83
- package/dist/api/sandbox/runtime.d.ts.map +0 -1
- package/dist/api/sandbox/runtime.js +0 -78
- package/dist/api/sandbox/runtime.js.map +0 -1
- package/dist/api/sandbox/snapshot-build.d.ts.map +0 -1
- package/dist/api/sandbox/snapshot-build.js.map +0 -1
- package/dist/api/sandbox/snapshot.d.ts +0 -595
- package/dist/api/sandbox/snapshot.d.ts.map +0 -1
- package/dist/api/sandbox/snapshot.js +0 -598
- package/dist/api/sandbox/snapshot.js.map +0 -1
- package/dist/api/sandbox/util.d.ts +0 -284
- package/dist/api/sandbox/util.d.ts.map +0 -1
- package/dist/api/sandbox/util.js +0 -210
- package/dist/api/sandbox/util.js.map +0 -1
- package/dist/api/services/index.d.ts +0 -2
- package/dist/api/services/index.d.ts.map +0 -1
- package/dist/api/services/index.js +0 -2
- package/dist/api/services/index.js.map +0 -1
- package/dist/api/services/stats.d.ts +0 -263
- package/dist/api/services/stats.d.ts.map +0 -1
- package/dist/api/services/stats.js +0 -144
- package/dist/api/services/stats.js.map +0 -1
- package/dist/api/session/get.d.ts +0 -169
- package/dist/api/session/get.d.ts.map +0 -1
- package/dist/api/session/get.js.map +0 -1
- package/dist/api/session/index.d.ts +0 -4
- package/dist/api/session/index.d.ts.map +0 -1
- package/dist/api/session/index.js +0 -4
- package/dist/api/session/index.js.map +0 -1
- package/dist/api/session/list.d.ts +0 -143
- package/dist/api/session/list.d.ts.map +0 -1
- package/dist/api/session/list.js +0 -91
- package/dist/api/session/list.js.map +0 -1
- package/dist/api/session/logs.d.ts.map +0 -1
- package/dist/api/session/logs.js.map +0 -1
- package/dist/api/session/util.d.ts.map +0 -1
- package/dist/api/session/util.js.map +0 -1
- package/dist/api/storage/config.d.ts.map +0 -1
- package/dist/api/storage/config.js.map +0 -1
- package/dist/api/storage/index.d.ts.map +0 -1
- package/dist/api/storage/index.js.map +0 -1
- package/dist/api/storage/objects.d.ts +0 -155
- package/dist/api/storage/objects.d.ts.map +0 -1
- package/dist/api/storage/objects.js +0 -148
- package/dist/api/storage/objects.js.map +0 -1
- package/dist/api/storage/types.d.ts.map +0 -1
- package/dist/api/storage/types.js.map +0 -1
- package/dist/api/storage/util.d.ts.map +0 -1
- package/dist/api/storage/util.js.map +0 -1
- package/dist/api/stream/get.d.ts.map +0 -1
- package/dist/api/stream/get.js.map +0 -1
- package/dist/api/stream/index.d.ts +0 -4
- package/dist/api/stream/index.d.ts.map +0 -1
- package/dist/api/stream/index.js +0 -4
- package/dist/api/stream/index.js.map +0 -1
- package/dist/api/stream/list.d.ts +0 -120
- package/dist/api/stream/list.d.ts.map +0 -1
- package/dist/api/stream/list.js +0 -77
- package/dist/api/stream/list.js.map +0 -1
- package/dist/api/stream/util.d.ts.map +0 -1
- package/dist/api/stream/util.js.map +0 -1
- package/dist/api/thread/delete.d.ts.map +0 -1
- package/dist/api/thread/delete.js.map +0 -1
- package/dist/api/thread/get.d.ts.map +0 -1
- package/dist/api/thread/get.js.map +0 -1
- package/dist/api/thread/index.d.ts.map +0 -1
- package/dist/api/thread/index.js.map +0 -1
- package/dist/api/thread/list.d.ts +0 -69
- package/dist/api/thread/list.d.ts.map +0 -1
- package/dist/api/thread/list.js +0 -51
- package/dist/api/thread/list.js.map +0 -1
- package/dist/api/thread/util.d.ts.map +0 -1
- package/dist/api/thread/util.js.map +0 -1
- package/dist/api/user/index.d.ts.map +0 -1
- package/dist/api/user/index.js.map +0 -1
- package/dist/api/user/util.d.ts.map +0 -1
- package/dist/api/user/util.js.map +0 -1
- package/dist/api/user/whoami.d.ts.map +0 -1
- package/dist/api/user/whoami.js.map +0 -1
- package/dist/api/webhook/deliveries.d.ts +0 -94
- package/dist/api/webhook/deliveries.d.ts.map +0 -1
- package/dist/api/webhook/deliveries.js.map +0 -1
- package/dist/api/webhook/destinations.d.ts +0 -136
- package/dist/api/webhook/destinations.d.ts.map +0 -1
- package/dist/api/webhook/destinations.js.map +0 -1
- package/dist/api/webhook/index.d.ts +0 -41
- package/dist/api/webhook/index.d.ts.map +0 -1
- package/dist/api/webhook/index.js +0 -59
- package/dist/api/webhook/index.js.map +0 -1
- package/dist/api/webhook/receipts.d.ts.map +0 -1
- package/dist/api/webhook/receipts.js.map +0 -1
- package/dist/api/webhook/types.d.ts +0 -249
- package/dist/api/webhook/types.d.ts.map +0 -1
- package/dist/api/webhook/types.js +0 -221
- package/dist/api/webhook/types.js.map +0 -1
- package/dist/api/webhook/util.d.ts.map +0 -1
- package/dist/api/webhook/util.js.map +0 -1
- package/dist/api/webhook/webhooks.d.ts +0 -146
- package/dist/api/webhook/webhooks.d.ts.map +0 -1
- package/dist/api/webhook/webhooks.js.map +0 -1
- package/dist/services/email.d.ts +0 -901
- package/dist/services/email.d.ts.map +0 -1
- package/dist/services/email.js +0 -722
- package/dist/services/email.js.map +0 -1
- package/dist/services/evalrun.d.ts +0 -93
- package/dist/services/evalrun.d.ts.map +0 -1
- package/dist/services/evalrun.js +0 -24
- package/dist/services/evalrun.js.map +0 -1
- package/dist/services/keyvalue.d.ts +0 -283
- package/dist/services/keyvalue.d.ts.map +0 -1
- package/dist/services/keyvalue.js +0 -305
- package/dist/services/keyvalue.js.map +0 -1
- package/dist/services/queue.d.ts +0 -361
- package/dist/services/queue.d.ts.map +0 -1
- package/dist/services/queue.js +0 -308
- package/dist/services/queue.js.map +0 -1
- package/dist/services/sandbox.d.ts +0 -1241
- package/dist/services/sandbox.d.ts.map +0 -1
- package/dist/services/sandbox.js +0 -6
- package/dist/services/sandbox.js.map +0 -1
- package/dist/services/schedule.d.ts +0 -501
- package/dist/services/schedule.d.ts.map +0 -1
- package/dist/services/schedule.js +0 -425
- package/dist/services/schedule.js.map +0 -1
- package/dist/services/session.d.ts +0 -127
- package/dist/services/session.d.ts.map +0 -1
- package/dist/services/session.js +0 -42
- package/dist/services/session.js.map +0 -1
- package/dist/services/stream.d.ts +0 -293
- package/dist/services/stream.d.ts.map +0 -1
- package/dist/services/stream.js +0 -500
- package/dist/services/stream.js.map +0 -1
- package/dist/services/task.d.ts +0 -1337
- package/dist/services/task.d.ts.map +0 -1
- package/dist/services/task.js +0 -1397
- package/dist/services/task.js.map +0 -1
- package/dist/services/vector.d.ts +0 -498
- package/dist/services/vector.d.ts.map +0 -1
- package/dist/services/vector.js +0 -381
- package/dist/services/vector.js.map +0 -1
- package/dist/services/webhook.d.ts +0 -454
- package/dist/services/webhook.d.ts.map +0 -1
- package/dist/services/webhook.js +0 -589
- package/dist/services/webhook.js.map +0 -1
- package/src/api/api.ts +0 -931
- package/src/api/apikey/create.ts +0 -41
- package/src/api/apikey/list.ts +0 -64
- package/src/api/config.ts +0 -60
- package/src/api/db/index.ts +0 -27
- package/src/api/db/query.ts +0 -67
- package/src/api/db/tables.ts +0 -92
- package/src/api/eval/index.ts +0 -28
- package/src/api/index.ts +0 -20
- package/src/api/machine/machine.ts +0 -160
- package/src/api/org/env-get.ts +0 -43
- package/src/api/org/resources.ts +0 -140
- package/src/api/project/delete.ts +0 -25
- package/src/api/project/deploy.ts +0 -458
- package/src/api/project/deployment.ts +0 -195
- package/src/api/project/hostname.ts +0 -73
- package/src/api/project/malware.ts +0 -68
- package/src/api/queue/analytics.ts +0 -311
- package/src/api/queue/destinations.ts +0 -259
- package/src/api/queue/index.ts +0 -308
- package/src/api/queue/sources.ts +0 -294
- package/src/api/queue/types.ts +0 -1325
- package/src/api/queue/util.ts +0 -275
- package/src/api/queue/validation.ts +0 -560
- package/src/api/queue/websocket.ts +0 -521
- package/src/api/sandbox/cli-list.ts +0 -127
- package/src/api/sandbox/client.ts +0 -460
- package/src/api/sandbox/create.ts +0 -256
- package/src/api/sandbox/destroy.ts +0 -41
- package/src/api/sandbox/disk-checkpoint.ts +0 -179
- package/src/api/sandbox/execute.ts +0 -132
- package/src/api/sandbox/execution.ts +0 -183
- package/src/api/sandbox/files.ts +0 -596
- package/src/api/sandbox/get.ts +0 -249
- package/src/api/sandbox/getStatus.ts +0 -54
- package/src/api/sandbox/index.ts +0 -211
- package/src/api/sandbox/list.ts +0 -224
- package/src/api/sandbox/pause.ts +0 -39
- package/src/api/sandbox/resolve.ts +0 -98
- package/src/api/sandbox/resume.ts +0 -39
- package/src/api/sandbox/run.ts +0 -439
- package/src/api/sandbox/runtime.ts +0 -104
- package/src/api/sandbox/snapshot.ts +0 -781
- package/src/api/sandbox/util.ts +0 -275
- package/src/api/services/index.ts +0 -1
- package/src/api/services/stats.ts +0 -213
- package/src/api/session/get.ts +0 -106
- package/src/api/session/index.ts +0 -3
- package/src/api/session/list.ts +0 -136
- package/src/api/storage/objects.ts +0 -250
- package/src/api/stream/index.ts +0 -3
- package/src/api/stream/list.ts +0 -127
- package/src/api/thread/list.ts +0 -76
- package/src/api/webhook/index.ts +0 -133
- package/src/api/webhook/types.ts +0 -309
- package/src/services/email.ts +0 -1410
- package/src/services/keyvalue.ts +0 -620
- package/src/services/queue.ts +0 -603
- package/src/services/sandbox.ts +0 -1466
- package/src/services/schedule.ts +0 -763
- package/src/services/stream.ts +0 -886
- package/src/services/task.ts +0 -2611
- package/src/services/vector.ts +0 -1119
- package/src/services/webhook.ts +0 -921
- /package/dist/{api → services}/apikey/delete.d.ts +0 -0
- /package/dist/{api → services}/apikey/delete.js +0 -0
- /package/dist/{api → services}/apikey/get.d.ts +0 -0
- /package/dist/{api → services}/apikey/get.js +0 -0
- /package/dist/{api → services}/apikey/index.d.ts +0 -0
- /package/dist/{api → services}/apikey/index.js +0 -0
- /package/dist/{api → services}/apikey/util.d.ts +0 -0
- /package/dist/{api → services}/apikey/util.js +0 -0
- /package/dist/{api → services}/db/logs.d.ts +0 -0
- /package/dist/{api → services}/db/logs.js +0 -0
- /package/dist/{api → services}/db/util.d.ts +0 -0
- /package/dist/{api → services}/db/util.js +0 -0
- /package/dist/{api → services}/env.d.ts +0 -0
- /package/dist/{api → services}/env.js +0 -0
- /package/dist/{api → services}/eval/get.d.ts +0 -0
- /package/dist/{api → services}/eval/get.js +0 -0
- /package/dist/{api → services}/eval/list.d.ts +0 -0
- /package/dist/{api → services}/eval/list.js +0 -0
- /package/dist/{api → services}/eval/run-get.d.ts +0 -0
- /package/dist/{api → services}/eval/run-get.js +0 -0
- /package/dist/{api → services}/eval/run-list.d.ts +0 -0
- /package/dist/{api → services}/eval/run-list.js +0 -0
- /package/dist/{api → services}/logger.d.ts +0 -0
- /package/dist/{api → services}/logger.js +0 -0
- /package/dist/{api → services}/machine/index.d.ts +0 -0
- /package/dist/{api → services}/machine/index.js +0 -0
- /package/dist/{api → services}/machine/machine.d.ts +0 -0
- /package/dist/{api → services}/machine/util.d.ts +0 -0
- /package/dist/{api → services}/machine/util.js +0 -0
- /package/dist/{api → services}/org/env-delete.d.ts +0 -0
- /package/dist/{api → services}/org/env-delete.js +0 -0
- /package/dist/{api → services}/org/env-update.d.ts +0 -0
- /package/dist/{api → services}/org/env-update.js +0 -0
- /package/dist/{api → services}/org/index.d.ts +0 -0
- /package/dist/{api → services}/org/index.js +0 -0
- /package/dist/{api → services}/org/list.d.ts +0 -0
- /package/dist/{api → services}/org/list.js +0 -0
- /package/dist/{api → services}/org/util.d.ts +0 -0
- /package/dist/{api → services}/org/util.js +0 -0
- /package/dist/{api → services}/project/agent.d.ts +0 -0
- /package/dist/{api → services}/project/agent.js +0 -0
- /package/dist/{api → services}/project/create.d.ts +0 -0
- /package/dist/{api → services}/project/create.js +0 -0
- /package/dist/{api → services}/project/delete.d.ts +0 -0
- /package/dist/{api → services}/project/deploy.js +0 -0
- /package/dist/{api → services}/project/deployment.d.ts +0 -0
- /package/dist/{api → services}/project/env-delete.d.ts +0 -0
- /package/dist/{api → services}/project/env-delete.js +0 -0
- /package/dist/{api → services}/project/env-update.d.ts +0 -0
- /package/dist/{api → services}/project/env-update.js +0 -0
- /package/dist/{api → services}/project/exists.d.ts +0 -0
- /package/dist/{api → services}/project/exists.js +0 -0
- /package/dist/{api → services}/project/get.d.ts +0 -0
- /package/dist/{api → services}/project/get.js +0 -0
- /package/dist/{api → services}/project/hostname.d.ts +0 -0
- /package/dist/{api → services}/project/index.d.ts +0 -0
- /package/dist/{api → services}/project/index.js +0 -0
- /package/dist/{api → services}/project/list.d.ts +0 -0
- /package/dist/{api → services}/project/list.js +0 -0
- /package/dist/{api → services}/project/malware.d.ts +0 -0
- /package/dist/{api → services}/project/update-region.d.ts +0 -0
- /package/dist/{api → services}/project/update-region.js +0 -0
- /package/dist/{api → services}/project/util.d.ts +0 -0
- /package/dist/{api → services}/project/util.js +0 -0
- /package/dist/{api → services}/queue/dlq.js +0 -0
- /package/dist/{api → services}/queue/messages.js +0 -0
- /package/dist/{api → services}/queue/queues.js +0 -0
- /package/dist/{api → services}/region/create.d.ts +0 -0
- /package/dist/{api → services}/region/create.js +0 -0
- /package/dist/{api → services}/region/delete.d.ts +0 -0
- /package/dist/{api → services}/region/delete.js +0 -0
- /package/dist/{api → services}/region/index.d.ts +0 -0
- /package/dist/{api → services}/region/index.js +0 -0
- /package/dist/{api → services}/region/list.d.ts +0 -0
- /package/dist/{api → services}/region/list.js +0 -0
- /package/dist/{api → services}/region/resources.d.ts +0 -0
- /package/dist/{api → services}/region/resources.js +0 -0
- /package/dist/{api → services}/region/util.d.ts +0 -0
- /package/dist/{api → services}/region/util.js +0 -0
- /package/dist/{api → services}/sandbox/snapshot-build.d.ts +0 -0
- /package/dist/{api → services}/sandbox/snapshot-build.js +0 -0
- /package/dist/{api → services}/session/get.js +0 -0
- /package/dist/{api → services}/session/logs.d.ts +0 -0
- /package/dist/{api → services}/session/logs.js +0 -0
- /package/dist/{api → services}/session/util.d.ts +0 -0
- /package/dist/{api → services}/session/util.js +0 -0
- /package/dist/{api → services}/storage/config.d.ts +0 -0
- /package/dist/{api → services}/storage/config.js +0 -0
- /package/dist/{api → services}/storage/index.d.ts +0 -0
- /package/dist/{api → services}/storage/index.js +0 -0
- /package/dist/{api → services}/storage/types.d.ts +0 -0
- /package/dist/{api → services}/storage/types.js +0 -0
- /package/dist/{api → services}/storage/util.d.ts +0 -0
- /package/dist/{api → services}/storage/util.js +0 -0
- /package/dist/{api → services}/stream/get.d.ts +0 -0
- /package/dist/{api → services}/stream/get.js +0 -0
- /package/dist/{api → services}/stream/util.d.ts +0 -0
- /package/dist/{api → services}/stream/util.js +0 -0
- /package/dist/{api → services}/thread/delete.d.ts +0 -0
- /package/dist/{api → services}/thread/delete.js +0 -0
- /package/dist/{api → services}/thread/get.d.ts +0 -0
- /package/dist/{api → services}/thread/get.js +0 -0
- /package/dist/{api → services}/thread/index.d.ts +0 -0
- /package/dist/{api → services}/thread/index.js +0 -0
- /package/dist/{api → services}/thread/util.d.ts +0 -0
- /package/dist/{api → services}/thread/util.js +0 -0
- /package/dist/{api → services}/user/index.d.ts +0 -0
- /package/dist/{api → services}/user/index.js +0 -0
- /package/dist/{api → services}/user/util.d.ts +0 -0
- /package/dist/{api → services}/user/util.js +0 -0
- /package/dist/{api → services}/user/whoami.d.ts +0 -0
- /package/dist/{api → services}/user/whoami.js +0 -0
- /package/dist/{api → services}/webhook/deliveries.js +0 -0
- /package/dist/{api → services}/webhook/destinations.js +0 -0
- /package/dist/{api → services}/webhook/receipts.d.ts +0 -0
- /package/dist/{api → services}/webhook/receipts.js +0 -0
- /package/dist/{api → services}/webhook/util.d.ts +0 -0
- /package/dist/{api → services}/webhook/util.js +0 -0
- /package/dist/{api → services}/webhook/webhooks.js +0 -0
- /package/src/{api → services}/api-example.md +0 -0
- /package/src/{api → services}/apikey/delete.ts +0 -0
- /package/src/{api → services}/apikey/get.ts +0 -0
- /package/src/{api → services}/apikey/index.ts +0 -0
- /package/src/{api → services}/apikey/util.ts +0 -0
- /package/src/{api → services}/db/logs.ts +0 -0
- /package/src/{api → services}/db/util.ts +0 -0
- /package/src/{api → services}/env.ts +0 -0
- /package/src/services/{evalrun.ts → eval/events.ts} +0 -0
- /package/src/{api → services}/eval/get.ts +0 -0
- /package/src/{api → services}/eval/list.ts +0 -0
- /package/src/{api → services}/eval/run-get.ts +0 -0
- /package/src/{api → services}/eval/run-list.ts +0 -0
- /package/src/{api → services}/logger.ts +0 -0
- /package/src/{api → services}/machine/index.ts +0 -0
- /package/src/{api → services}/machine/util.ts +0 -0
- /package/src/{api → services}/org/env-delete.ts +0 -0
- /package/src/{api → services}/org/env-update.ts +0 -0
- /package/src/{api → services}/org/index.ts +0 -0
- /package/src/{api → services}/org/list.ts +0 -0
- /package/src/{api → services}/org/util.ts +0 -0
- /package/src/{api → services}/project/agent.ts +0 -0
- /package/src/{api → services}/project/create.ts +0 -0
- /package/src/{api → services}/project/env-delete.ts +0 -0
- /package/src/{api → services}/project/env-update.ts +0 -0
- /package/src/{api → services}/project/exists.ts +0 -0
- /package/src/{api → services}/project/get.ts +0 -0
- /package/src/{api → services}/project/index.ts +0 -0
- /package/src/{api → services}/project/list.ts +0 -0
- /package/src/{api → services}/project/update-region.ts +0 -0
- /package/src/{api → services}/project/util.ts +0 -0
- /package/src/{api → services}/queue/dlq.ts +0 -0
- /package/src/{api → services}/queue/messages.ts +0 -0
- /package/src/{api → services}/queue/queues.ts +0 -0
- /package/src/{api → services}/region/create.ts +0 -0
- /package/src/{api → services}/region/delete.ts +0 -0
- /package/src/{api → services}/region/index.ts +0 -0
- /package/src/{api → services}/region/list.ts +0 -0
- /package/src/{api → services}/region/resources.ts +0 -0
- /package/src/{api → services}/region/util.ts +0 -0
- /package/src/{api → services}/sandbox/snapshot-build.ts +0 -0
- /package/src/services/{session.ts → session/events.ts} +0 -0
- /package/src/{api → services}/session/logs.ts +0 -0
- /package/src/{api → services}/session/util.ts +0 -0
- /package/src/{api → services}/storage/config.ts +0 -0
- /package/src/{api → services}/storage/index.ts +0 -0
- /package/src/{api → services}/storage/types.ts +0 -0
- /package/src/{api → services}/storage/util.ts +0 -0
- /package/src/{api → services}/stream/get.ts +0 -0
- /package/src/{api → services}/stream/util.ts +0 -0
- /package/src/{api → services}/thread/delete.ts +0 -0
- /package/src/{api → services}/thread/get.ts +0 -0
- /package/src/{api → services}/thread/index.ts +0 -0
- /package/src/{api → services}/thread/util.ts +0 -0
- /package/src/{api → services}/user/index.ts +0 -0
- /package/src/{api → services}/user/util.ts +0 -0
- /package/src/{api → services}/user/whoami.ts +0 -0
- /package/src/{api → services}/webhook/deliveries.ts +0 -0
- /package/src/{api → services}/webhook/destinations.ts +0 -0
- /package/src/{api → services}/webhook/receipts.ts +0 -0
- /package/src/{api → services}/webhook/util.ts +0 -0
- /package/src/{api → services}/webhook/webhooks.ts +0 -0
|
@@ -0,0 +1,1242 @@
|
|
|
1
|
+
import { FetchAdapter } from '../adapter.ts';
|
|
2
|
+
import { buildUrl, toServiceException } from '../_util.ts';
|
|
3
|
+
import { ListParamsSchema } from '../pagination.ts';
|
|
4
|
+
import { safeStringify } from '../../json.ts';
|
|
5
|
+
import { StructuredError } from '../../error.ts';
|
|
6
|
+
import { z } from 'zod';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Minimum TTL value in seconds (1 minute)
|
|
10
|
+
*/
|
|
11
|
+
export const VECTOR_MIN_TTL_SECONDS = 60;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Maximum TTL value in seconds (90 days)
|
|
15
|
+
*/
|
|
16
|
+
export const VECTOR_MAX_TTL_SECONDS = 7776000;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Default TTL value in seconds (30 days) - used when no TTL is specified
|
|
20
|
+
*/
|
|
21
|
+
export const VECTOR_DEFAULT_TTL_SECONDS = 2592000;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Base properties shared by all vector upsert operations
|
|
25
|
+
*/
|
|
26
|
+
export const VectorUpsertBaseSchema = z.object({
|
|
27
|
+
/**
|
|
28
|
+
* the key of the vector object which can be used as a reference. the value of this key is opaque to the vector storage.
|
|
29
|
+
*/
|
|
30
|
+
key: z
|
|
31
|
+
.string()
|
|
32
|
+
.describe(
|
|
33
|
+
'the key of the vector object which can be used as a reference. the value of this key is opaque to the vector storage.'
|
|
34
|
+
),
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* the metadata to upsert
|
|
38
|
+
*/
|
|
39
|
+
metadata: z.record(z.string(), z.unknown()).optional().describe('the metadata to upsert'),
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Time-to-live in seconds for the vector. Controls when the vector expires and is automatically deleted.
|
|
43
|
+
* - `undefined` (not provided): Vector expires after 30 days (default)
|
|
44
|
+
* - `null` or `0`: Vector never expires
|
|
45
|
+
* - positive number (≥60): Vector expires after the specified number of seconds (max 90 days)
|
|
46
|
+
*
|
|
47
|
+
* @remarks
|
|
48
|
+
* TTL values below 60 seconds are clamped to 60 seconds by the server.
|
|
49
|
+
* TTL values above 7,776,000 seconds (90 days) are clamped to 90 days.
|
|
50
|
+
*
|
|
51
|
+
* @default 2592000 (30 days)
|
|
52
|
+
*/
|
|
53
|
+
ttl: z
|
|
54
|
+
.number()
|
|
55
|
+
.nullable()
|
|
56
|
+
.optional()
|
|
57
|
+
.describe(
|
|
58
|
+
'Time-to-live in seconds for the vector. Controls when the vector expires and is automatically deleted.'
|
|
59
|
+
),
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
export type VectorUpsertBase = z.infer<typeof VectorUpsertBaseSchema>;
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Upsert using pre-computed embeddings
|
|
66
|
+
*/
|
|
67
|
+
export const VectorUpsertEmbeddingsSchema = VectorUpsertBaseSchema.extend({
|
|
68
|
+
/**
|
|
69
|
+
* the embeddings to upsert
|
|
70
|
+
*/
|
|
71
|
+
embeddings: z.array(z.number()).describe('the embeddings to upsert'),
|
|
72
|
+
document: z.never().optional(),
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
export type VectorUpsertEmbeddings = z.infer<typeof VectorUpsertEmbeddingsSchema>;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Upsert using text that will be converted to embeddings
|
|
79
|
+
*/
|
|
80
|
+
export const VectorUpsertTextSchema = VectorUpsertBaseSchema.extend({
|
|
81
|
+
/**
|
|
82
|
+
* the text to use for the embedding
|
|
83
|
+
*/
|
|
84
|
+
document: z.string().describe('the text to use for the embedding'),
|
|
85
|
+
embeddings: z.never().optional(),
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
export type VectorUpsertText = z.infer<typeof VectorUpsertTextSchema>;
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Parameters for upserting a vector
|
|
92
|
+
*/
|
|
93
|
+
export type VectorUpsertParams = VectorUpsertEmbeddings | VectorUpsertText;
|
|
94
|
+
export const VectorUpsertParamsSchema = z.discriminatedUnion('document', [
|
|
95
|
+
VectorUpsertTextSchema,
|
|
96
|
+
VectorUpsertEmbeddingsSchema.extend({ document: z.undefined().optional() }),
|
|
97
|
+
]);
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Parameters for searching vectors
|
|
101
|
+
*/
|
|
102
|
+
export const VectorSearchParamsSchema = <T extends z.ZodTypeAny>(metadataSchema: T) =>
|
|
103
|
+
z.object({
|
|
104
|
+
/**
|
|
105
|
+
* The text query to search for in the vector storage. This will be converted to embeddings
|
|
106
|
+
* and used to find semantically similar documents.
|
|
107
|
+
*
|
|
108
|
+
* @example "comfortable office chair"
|
|
109
|
+
* @example "machine learning algorithms"
|
|
110
|
+
*/
|
|
111
|
+
query: z
|
|
112
|
+
.string()
|
|
113
|
+
.describe(
|
|
114
|
+
'The text query to search for in the vector storage. This will be converted to embeddings and used to find semantically similar documents.'
|
|
115
|
+
),
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Maximum number of search results to return. If not specified, the server default will be used.
|
|
119
|
+
* Must be a positive integer.
|
|
120
|
+
*
|
|
121
|
+
* @default 10
|
|
122
|
+
* @example 5
|
|
123
|
+
* @example 20
|
|
124
|
+
*/
|
|
125
|
+
limit: z
|
|
126
|
+
.number()
|
|
127
|
+
.optional()
|
|
128
|
+
.describe(
|
|
129
|
+
'Maximum number of search results to return. If not specified, the server default will be used.'
|
|
130
|
+
),
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Minimum similarity threshold for results. Only vectors with similarity scores greater than or equal
|
|
134
|
+
* to this value will be returned. Value must be between 0.0 and 1.0, where 1.0 means exact match
|
|
135
|
+
* and 0.0 means no similarity requirement.
|
|
136
|
+
*
|
|
137
|
+
* @minimum 0.0
|
|
138
|
+
* @maximum 1.0
|
|
139
|
+
* @example 0.7
|
|
140
|
+
* @example 0.5
|
|
141
|
+
*/
|
|
142
|
+
similarity: z
|
|
143
|
+
.number()
|
|
144
|
+
.min(0)
|
|
145
|
+
.max(1)
|
|
146
|
+
.optional()
|
|
147
|
+
.describe(
|
|
148
|
+
'Minimum similarity threshold for results. Only vectors with similarity scores greater than or equal to this value will be returned.'
|
|
149
|
+
),
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* Metadata filters to apply to the search. Only vectors whose metadata matches all specified
|
|
153
|
+
* key-value pairs will be included in results. Must be a valid JSON object if provided.
|
|
154
|
+
*
|
|
155
|
+
* @example { category: "furniture", inStock: true }
|
|
156
|
+
* @example { userId: "123", type: "product" }
|
|
157
|
+
*/
|
|
158
|
+
metadata: metadataSchema
|
|
159
|
+
.optional()
|
|
160
|
+
.describe(
|
|
161
|
+
'Metadata filters to apply to the search. Only vectors whose metadata matches all specified key-value pairs will be included in results.'
|
|
162
|
+
),
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
export type VectorSearchParams<T extends Record<string, unknown> = Record<string, unknown>> = {
|
|
166
|
+
query: string;
|
|
167
|
+
limit?: number;
|
|
168
|
+
similarity?: number;
|
|
169
|
+
metadata?: T;
|
|
170
|
+
};
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* Result of a vector search operation with optional type-safe metadata
|
|
174
|
+
*/
|
|
175
|
+
export const VectorSearchResultSchema = <T extends z.ZodTypeAny>(metadataSchema: T) =>
|
|
176
|
+
z.object({
|
|
177
|
+
/**
|
|
178
|
+
* the unique id of the object in vector storage
|
|
179
|
+
*/
|
|
180
|
+
id: z.string().describe('the unique id of the object in vector storage'),
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* the key used when the vector object was added to vector storage
|
|
184
|
+
*/
|
|
185
|
+
key: z.string().describe('the key used when the vector object was added to vector storage'),
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* the metadata of the vector object when it was stored
|
|
189
|
+
*/
|
|
190
|
+
metadata: metadataSchema
|
|
191
|
+
.optional()
|
|
192
|
+
.describe('the metadata of the vector object when it was stored'),
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* the distance of the vector object from the query from 0-1. The larger the number, the more similar the vector object is to the query.
|
|
196
|
+
*/
|
|
197
|
+
similarity: z
|
|
198
|
+
.number()
|
|
199
|
+
.describe(
|
|
200
|
+
'the distance of the vector object from the query from 0-1. The larger the number, the more similar the vector object is to the query.'
|
|
201
|
+
),
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* the expiration time of the vector as an ISO 8601 timestamp.
|
|
205
|
+
* undefined if the vector does not expire.
|
|
206
|
+
*/
|
|
207
|
+
expiresAt: z
|
|
208
|
+
.string()
|
|
209
|
+
.optional()
|
|
210
|
+
.describe('the expiration time of the vector as an ISO 8601 timestamp.'),
|
|
211
|
+
});
|
|
212
|
+
|
|
213
|
+
export type VectorSearchResult<T extends Record<string, unknown> = Record<string, unknown>> = {
|
|
214
|
+
id: string;
|
|
215
|
+
key: string;
|
|
216
|
+
metadata?: T;
|
|
217
|
+
similarity: number;
|
|
218
|
+
expiresAt?: string;
|
|
219
|
+
};
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* Extended search result that includes the document and embeddings
|
|
223
|
+
*/
|
|
224
|
+
export const VectorSearchResultWithDocumentSchema = <T extends z.ZodTypeAny>(metadataSchema: T) =>
|
|
225
|
+
VectorSearchResultSchema(metadataSchema).extend({
|
|
226
|
+
/**
|
|
227
|
+
* the document that was used to create the vector object
|
|
228
|
+
*/
|
|
229
|
+
document: z
|
|
230
|
+
.string()
|
|
231
|
+
.optional()
|
|
232
|
+
.describe('the document that was used to create the vector object'),
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* the embeddings of the vector object
|
|
236
|
+
*/
|
|
237
|
+
embeddings: z.array(z.number()).optional().describe('the embeddings of the vector object'),
|
|
238
|
+
});
|
|
239
|
+
|
|
240
|
+
export type VectorSearchResultWithDocument<
|
|
241
|
+
T extends Record<string, unknown> = Record<string, unknown>,
|
|
242
|
+
> = VectorSearchResult<T> & {
|
|
243
|
+
document?: string;
|
|
244
|
+
embeddings?: Array<number>;
|
|
245
|
+
};
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Result of a vector upsert operation
|
|
249
|
+
*/
|
|
250
|
+
export const VectorUpsertResultSchema = z.object({
|
|
251
|
+
/**
|
|
252
|
+
* the key from the original upsert document
|
|
253
|
+
*/
|
|
254
|
+
key: z.string().describe('the key from the original upsert document'),
|
|
255
|
+
|
|
256
|
+
/**
|
|
257
|
+
* the generated id for this vector in storage
|
|
258
|
+
*/
|
|
259
|
+
id: z.string().describe('the generated id for this vector in storage'),
|
|
260
|
+
});
|
|
261
|
+
|
|
262
|
+
export type VectorUpsertResult = z.infer<typeof VectorUpsertResultSchema>;
|
|
263
|
+
|
|
264
|
+
/**
|
|
265
|
+
* Result when a vector is found by key
|
|
266
|
+
*/
|
|
267
|
+
export const VectorResultFoundSchema = <T extends z.ZodTypeAny>(metadataSchema: T) =>
|
|
268
|
+
z.object({
|
|
269
|
+
/**
|
|
270
|
+
* the vector data
|
|
271
|
+
*/
|
|
272
|
+
data: VectorSearchResultWithDocumentSchema(metadataSchema).describe('the vector data'),
|
|
273
|
+
|
|
274
|
+
/**
|
|
275
|
+
* the vector was found
|
|
276
|
+
*/
|
|
277
|
+
exists: z.literal(true).describe('the vector was found'),
|
|
278
|
+
});
|
|
279
|
+
|
|
280
|
+
export type VectorResultFound<T extends Record<string, unknown> = Record<string, unknown>> = {
|
|
281
|
+
data: VectorSearchResultWithDocument<T>;
|
|
282
|
+
exists: true;
|
|
283
|
+
};
|
|
284
|
+
|
|
285
|
+
/**
|
|
286
|
+
* Result when a vector is not found by key
|
|
287
|
+
*/
|
|
288
|
+
export const VectorResultNotFoundSchema = z.object({
|
|
289
|
+
/**
|
|
290
|
+
* no data available
|
|
291
|
+
*/
|
|
292
|
+
data: z.never().describe('no data available'),
|
|
293
|
+
|
|
294
|
+
/**
|
|
295
|
+
* the vector was not found
|
|
296
|
+
*/
|
|
297
|
+
exists: z.literal(false).describe('the vector was not found'),
|
|
298
|
+
});
|
|
299
|
+
|
|
300
|
+
export type VectorResultNotFound = z.infer<typeof VectorResultNotFoundSchema>;
|
|
301
|
+
|
|
302
|
+
/**
|
|
303
|
+
* Result of a get operation
|
|
304
|
+
*/
|
|
305
|
+
export type VectorResult<T extends Record<string, unknown> = Record<string, unknown>> =
|
|
306
|
+
| VectorResultFound<T>
|
|
307
|
+
| VectorResultNotFound;
|
|
308
|
+
|
|
309
|
+
export const VectorResultSchema = <T extends z.ZodTypeAny>(metadataSchema: T) =>
|
|
310
|
+
z.discriminatedUnion('exists', [
|
|
311
|
+
VectorResultFoundSchema(metadataSchema),
|
|
312
|
+
VectorResultNotFoundSchema,
|
|
313
|
+
]);
|
|
314
|
+
|
|
315
|
+
/**
|
|
316
|
+
* Statistics for a vector namespace
|
|
317
|
+
*/
|
|
318
|
+
export const VectorNamespaceStatsSchema = z.object({
|
|
319
|
+
/**
|
|
320
|
+
* Total size in bytes
|
|
321
|
+
*/
|
|
322
|
+
sum: z.number().describe('Total size in bytes'),
|
|
323
|
+
|
|
324
|
+
/**
|
|
325
|
+
* Number of vectors in the namespace
|
|
326
|
+
*/
|
|
327
|
+
count: z.number().describe('Number of vectors in the namespace'),
|
|
328
|
+
|
|
329
|
+
/**
|
|
330
|
+
* Unix timestamp (milliseconds) when the namespace was created
|
|
331
|
+
*/
|
|
332
|
+
createdAt: z
|
|
333
|
+
.number()
|
|
334
|
+
.optional()
|
|
335
|
+
.describe('Unix timestamp (milliseconds) when the namespace was created'),
|
|
336
|
+
|
|
337
|
+
/**
|
|
338
|
+
* Unix timestamp (milliseconds) when the namespace was last used
|
|
339
|
+
*/
|
|
340
|
+
lastUsed: z
|
|
341
|
+
.number()
|
|
342
|
+
.optional()
|
|
343
|
+
.describe('Unix timestamp (milliseconds) when the namespace was last used'),
|
|
344
|
+
});
|
|
345
|
+
|
|
346
|
+
export type VectorNamespaceStats = z.infer<typeof VectorNamespaceStatsSchema>;
|
|
347
|
+
|
|
348
|
+
/**
|
|
349
|
+
* Statistics for an individual vector item
|
|
350
|
+
*/
|
|
351
|
+
export const VectorItemStatsSchema = z.object({
|
|
352
|
+
/**
|
|
353
|
+
* The embedding vector
|
|
354
|
+
*/
|
|
355
|
+
embedding: z.array(z.number()).optional().describe('The embedding vector'),
|
|
356
|
+
|
|
357
|
+
/**
|
|
358
|
+
* The original document text
|
|
359
|
+
*/
|
|
360
|
+
document: z.string().optional().describe('The original document text'),
|
|
361
|
+
|
|
362
|
+
/**
|
|
363
|
+
* Size in bytes
|
|
364
|
+
*/
|
|
365
|
+
size: z.number().describe('Size in bytes'),
|
|
366
|
+
|
|
367
|
+
/**
|
|
368
|
+
* Metadata associated with the vector
|
|
369
|
+
*/
|
|
370
|
+
metadata: z
|
|
371
|
+
.record(z.string(), z.unknown())
|
|
372
|
+
.optional()
|
|
373
|
+
.describe('Metadata associated with the vector'),
|
|
374
|
+
|
|
375
|
+
/**
|
|
376
|
+
* Unix timestamp (milliseconds) when the vector was first accessed
|
|
377
|
+
*/
|
|
378
|
+
firstUsed: z
|
|
379
|
+
.number()
|
|
380
|
+
.describe('Unix timestamp (milliseconds) when the vector was first accessed'),
|
|
381
|
+
|
|
382
|
+
/**
|
|
383
|
+
* Unix timestamp (milliseconds) when the vector was last accessed
|
|
384
|
+
*/
|
|
385
|
+
lastUsed: z.number().describe('Unix timestamp (milliseconds) when the vector was last accessed'),
|
|
386
|
+
|
|
387
|
+
/**
|
|
388
|
+
* Number of times the vector was accessed.
|
|
389
|
+
* Note: This is only tracked in cloud storage; local development returns undefined.
|
|
390
|
+
*/
|
|
391
|
+
count: z.number().optional().describe('Number of times the vector was accessed.'),
|
|
392
|
+
|
|
393
|
+
/**
|
|
394
|
+
* the expiration time of the vector as an ISO 8601 timestamp.
|
|
395
|
+
* undefined if the vector does not expire.
|
|
396
|
+
*/
|
|
397
|
+
expiresAt: z
|
|
398
|
+
.string()
|
|
399
|
+
.optional()
|
|
400
|
+
.describe('the expiration time of the vector as an ISO 8601 timestamp.'),
|
|
401
|
+
});
|
|
402
|
+
|
|
403
|
+
export type VectorItemStats = z.infer<typeof VectorItemStatsSchema>;
|
|
404
|
+
|
|
405
|
+
/**
|
|
406
|
+
* Namespace statistics with sampled vector results
|
|
407
|
+
*/
|
|
408
|
+
export const VectorNamespaceStatsWithSamplesSchema = VectorNamespaceStatsSchema.extend({
|
|
409
|
+
/**
|
|
410
|
+
* A sample of vectors in the namespace (up to 20)
|
|
411
|
+
*/
|
|
412
|
+
sampledResults: z
|
|
413
|
+
.record(z.string(), VectorItemStatsSchema)
|
|
414
|
+
.optional()
|
|
415
|
+
.describe('A sample of vectors in the namespace (up to 20)'),
|
|
416
|
+
});
|
|
417
|
+
|
|
418
|
+
export type VectorNamespaceStatsWithSamples = z.infer<typeof VectorNamespaceStatsWithSamplesSchema>;
|
|
419
|
+
|
|
420
|
+
export const VectorSortFieldSchema = z.enum(['name', 'size', 'records', 'created', 'lastUsed']);
|
|
421
|
+
|
|
422
|
+
export type VectorSortField = z.infer<typeof VectorSortFieldSchema>;
|
|
423
|
+
|
|
424
|
+
/**
|
|
425
|
+
* Parameters for getting all namespace statistics with optional pagination
|
|
426
|
+
*/
|
|
427
|
+
export const VectorGetAllStatsParamsSchema = ListParamsSchema(VectorSortFieldSchema).extend({
|
|
428
|
+
/**
|
|
429
|
+
* Filter namespaces by name substring
|
|
430
|
+
*/
|
|
431
|
+
name: z.string().optional().describe('Filter namespaces by name substring'),
|
|
432
|
+
});
|
|
433
|
+
|
|
434
|
+
export type VectorGetAllStatsParams = z.infer<typeof VectorGetAllStatsParamsSchema>;
|
|
435
|
+
|
|
436
|
+
/**
|
|
437
|
+
* Paginated response for vector namespace statistics
|
|
438
|
+
*/
|
|
439
|
+
export const VectorStatsPaginatedSchema = z.object({
|
|
440
|
+
/**
|
|
441
|
+
* Map of namespace names to their statistics
|
|
442
|
+
*/
|
|
443
|
+
namespaces: z
|
|
444
|
+
.record(z.string(), VectorNamespaceStatsSchema)
|
|
445
|
+
.describe('Map of namespace names to their statistics'),
|
|
446
|
+
/**
|
|
447
|
+
* Total number of namespaces across all pages
|
|
448
|
+
*/
|
|
449
|
+
total: z.number().describe('Total number of namespaces across all pages'),
|
|
450
|
+
/**
|
|
451
|
+
* Number of namespaces requested per page
|
|
452
|
+
*/
|
|
453
|
+
limit: z.number().describe('Number of namespaces requested per page'),
|
|
454
|
+
/**
|
|
455
|
+
* Number of namespaces skipped
|
|
456
|
+
*/
|
|
457
|
+
offset: z.number().describe('Number of namespaces skipped'),
|
|
458
|
+
/**
|
|
459
|
+
* Whether there are more namespaces available
|
|
460
|
+
*/
|
|
461
|
+
hasMore: z.boolean().describe('Whether there are more namespaces available'),
|
|
462
|
+
});
|
|
463
|
+
|
|
464
|
+
export type VectorStatsPaginated = z.infer<typeof VectorStatsPaginatedSchema>;
|
|
465
|
+
|
|
466
|
+
/**
|
|
467
|
+
* Vector storage service for managing vector embeddings and semantic search
|
|
468
|
+
*/
|
|
469
|
+
export interface VectorStorage {
|
|
470
|
+
/**
|
|
471
|
+
* Upsert vectors into the vector storage. You can provide either pre-computed embeddings
|
|
472
|
+
* or text documents that will be automatically embedded.
|
|
473
|
+
*
|
|
474
|
+
* @param name - the name of the vector storage namespace
|
|
475
|
+
* @param documents - one or more documents to upsert
|
|
476
|
+
* @returns array of results with key-to-id mappings for the upserted vectors
|
|
477
|
+
*
|
|
478
|
+
* @example
|
|
479
|
+
* ```typescript
|
|
480
|
+
* // Upsert with automatic embedding
|
|
481
|
+
* const results = await vectorStore.upsert('products',
|
|
482
|
+
* {
|
|
483
|
+
* key: 'chair-001',
|
|
484
|
+
* document: 'Comfortable office chair with lumbar support',
|
|
485
|
+
* metadata: { category: 'furniture', price: 299 }
|
|
486
|
+
* },
|
|
487
|
+
* {
|
|
488
|
+
* key: 'desk-001',
|
|
489
|
+
* document: 'Standing desk with adjustable height',
|
|
490
|
+
* metadata: { category: 'furniture', price: 599 }
|
|
491
|
+
* }
|
|
492
|
+
* );
|
|
493
|
+
*
|
|
494
|
+
* // Upsert with pre-computed embeddings
|
|
495
|
+
* await vectorStore.upsert('products', {
|
|
496
|
+
* key: 'lamp-001',
|
|
497
|
+
* embeddings: [0.1, 0.2, 0.3, ...], // Your pre-computed vector
|
|
498
|
+
* metadata: { category: 'lighting', price: 49 }
|
|
499
|
+
* });
|
|
500
|
+
* ```
|
|
501
|
+
*/
|
|
502
|
+
upsert(name: string, ...documents: VectorUpsertParams[]): Promise<VectorUpsertResult[]>;
|
|
503
|
+
|
|
504
|
+
/**
|
|
505
|
+
* Get a single vector by its key
|
|
506
|
+
*
|
|
507
|
+
* @param name - the name of the vector storage namespace
|
|
508
|
+
* @param key - the key of the vector to retrieve
|
|
509
|
+
* @returns VectorResult with exists field for type-safe checking
|
|
510
|
+
*
|
|
511
|
+
* @example
|
|
512
|
+
* ```typescript
|
|
513
|
+
* const result = await vectorStore.get('products', 'chair-001');
|
|
514
|
+
* if (result.exists) {
|
|
515
|
+
* console.log('Found:', result.data.metadata);
|
|
516
|
+
* console.log('Embeddings:', result.data.embeddings);
|
|
517
|
+
* }
|
|
518
|
+
* ```
|
|
519
|
+
*/
|
|
520
|
+
get<T extends Record<string, unknown> = Record<string, unknown>>(
|
|
521
|
+
name: string,
|
|
522
|
+
key: string
|
|
523
|
+
): Promise<VectorResult<T>>;
|
|
524
|
+
|
|
525
|
+
/**
|
|
526
|
+
* Get multiple vectors by their keys in a single request
|
|
527
|
+
*
|
|
528
|
+
* @param name - the name of the vector storage namespace
|
|
529
|
+
* @param keys - the keys of the vectors to retrieve
|
|
530
|
+
* @returns a Map of key to vector data (only includes found vectors)
|
|
531
|
+
*
|
|
532
|
+
* @example
|
|
533
|
+
* ```typescript
|
|
534
|
+
* const vectors = await vectorStore.getMany('products', 'chair-001', 'desk-001', 'lamp-001');
|
|
535
|
+
* for (const [key, data] of vectors) {
|
|
536
|
+
* console.log(`${key}:`, data.metadata);
|
|
537
|
+
* }
|
|
538
|
+
* ```
|
|
539
|
+
*/
|
|
540
|
+
getMany<T extends Record<string, unknown> = Record<string, unknown>>(
|
|
541
|
+
name: string,
|
|
542
|
+
...keys: string[]
|
|
543
|
+
): Promise<Map<string, VectorSearchResultWithDocument<T>>>;
|
|
544
|
+
|
|
545
|
+
/**
|
|
546
|
+
* Search for semantically similar vectors using natural language queries
|
|
547
|
+
*
|
|
548
|
+
* @param name - the name of the vector storage namespace
|
|
549
|
+
* @param params - search parameters including query, filters, and limits
|
|
550
|
+
* @returns array of search results ordered by similarity (highest first)
|
|
551
|
+
*
|
|
552
|
+
* @example
|
|
553
|
+
* ```typescript
|
|
554
|
+
* // Basic semantic search
|
|
555
|
+
* const results = await vectorStore.search('products', {
|
|
556
|
+
* query: 'comfortable seating for office',
|
|
557
|
+
* limit: 5
|
|
558
|
+
* });
|
|
559
|
+
*
|
|
560
|
+
* // Search with metadata filters and similarity threshold
|
|
561
|
+
* const filteredResults = await vectorStore.search('products', {
|
|
562
|
+
* query: 'ergonomic furniture',
|
|
563
|
+
* limit: 10,
|
|
564
|
+
* similarity: 0.7, // Only results with 70%+ similarity
|
|
565
|
+
* metadata: { category: 'furniture', inStock: true }
|
|
566
|
+
* });
|
|
567
|
+
*
|
|
568
|
+
* for (const result of filteredResults) {
|
|
569
|
+
* console.log(`${result.key}: ${result.similarity * 100}% match`);
|
|
570
|
+
* console.log('Metadata:', result.metadata);
|
|
571
|
+
* }
|
|
572
|
+
* ```
|
|
573
|
+
*/
|
|
574
|
+
search<T extends Record<string, unknown> = Record<string, unknown>>(
|
|
575
|
+
name: string,
|
|
576
|
+
params: VectorSearchParams<T>
|
|
577
|
+
): Promise<VectorSearchResult<T>[]>;
|
|
578
|
+
|
|
579
|
+
/**
|
|
580
|
+
* Delete one or more vectors by their keys
|
|
581
|
+
*
|
|
582
|
+
* @param name - the name of the vector storage namespace
|
|
583
|
+
* @param keys - one or more keys of vectors to delete
|
|
584
|
+
* @returns the number of vectors that were deleted
|
|
585
|
+
*
|
|
586
|
+
* @example
|
|
587
|
+
* ```typescript
|
|
588
|
+
* // Delete a single vector
|
|
589
|
+
* const deleted = await vectorStore.delete('products', 'chair-001');
|
|
590
|
+
* console.log(`Deleted ${deleted} vector(s)`);
|
|
591
|
+
*
|
|
592
|
+
* // Delete multiple vectors
|
|
593
|
+
* await vectorStore.delete('products', 'chair-001', 'desk-001', 'lamp-001');
|
|
594
|
+
* ```
|
|
595
|
+
*/
|
|
596
|
+
delete(name: string, ...keys: string[]): Promise<number>;
|
|
597
|
+
|
|
598
|
+
/**
|
|
599
|
+
* Check if a vector storage namespace exists
|
|
600
|
+
*
|
|
601
|
+
* @param name - the name of the vector storage namespace
|
|
602
|
+
* @returns true if the namespace exists, false otherwise
|
|
603
|
+
*
|
|
604
|
+
* @example
|
|
605
|
+
* ```typescript
|
|
606
|
+
* if (await vectorStore.exists('products')) {
|
|
607
|
+
* console.log('Products namespace exists');
|
|
608
|
+
* }
|
|
609
|
+
* ```
|
|
610
|
+
*/
|
|
611
|
+
exists(name: string): Promise<boolean>;
|
|
612
|
+
|
|
613
|
+
/**
|
|
614
|
+
* Get statistics for a specific namespace including sampled results
|
|
615
|
+
*
|
|
616
|
+
* @param name - the name of the vector storage namespace
|
|
617
|
+
* @returns statistics for the namespace with sampled vector results
|
|
618
|
+
*
|
|
619
|
+
* @example
|
|
620
|
+
* ```typescript
|
|
621
|
+
* const stats = await vectorStore.getStats('products');
|
|
622
|
+
* console.log(`Namespace has ${stats.count} vectors (${stats.sum} bytes)`);
|
|
623
|
+
* if (stats.sampledResults) {
|
|
624
|
+
* for (const [key, item] of Object.entries(stats.sampledResults)) {
|
|
625
|
+
* console.log(`${key}: ${item.size} bytes, accessed ${item.count} times`);
|
|
626
|
+
* }
|
|
627
|
+
* }
|
|
628
|
+
* ```
|
|
629
|
+
*/
|
|
630
|
+
getStats(name: string): Promise<VectorNamespaceStatsWithSamples>;
|
|
631
|
+
|
|
632
|
+
/**
|
|
633
|
+
* get statistics for all namespaces with optional pagination
|
|
634
|
+
*
|
|
635
|
+
* @param params - optional pagination parameters (limit, offset)
|
|
636
|
+
* @returns map of namespace names to statistics, or paginated response if params provided
|
|
637
|
+
*
|
|
638
|
+
* @remarks
|
|
639
|
+
* - Without params: returns flat map of all namespaces (backward compatible)
|
|
640
|
+
* - With params: returns paginated response with total count and hasMore flag
|
|
641
|
+
* - Default limit is 100, maximum is 1000
|
|
642
|
+
*/
|
|
643
|
+
getAllStats(
|
|
644
|
+
params?: VectorGetAllStatsParams
|
|
645
|
+
): Promise<Record<string, VectorNamespaceStats> | VectorStatsPaginated>;
|
|
646
|
+
|
|
647
|
+
/**
|
|
648
|
+
* Get all namespace names
|
|
649
|
+
*
|
|
650
|
+
* @returns array of namespace names (up to 1000)
|
|
651
|
+
*
|
|
652
|
+
* @remarks
|
|
653
|
+
* This method returns a maximum of 1000 namespace names.
|
|
654
|
+
* If you have more than 1000 namespaces, only the first 1000
|
|
655
|
+
* (ordered by creation date, most recent first) will be returned.
|
|
656
|
+
*
|
|
657
|
+
* @example
|
|
658
|
+
* ```typescript
|
|
659
|
+
* const namespaces = await vectorStore.getNamespaces();
|
|
660
|
+
* console.log('Namespaces:', namespaces.join(', '));
|
|
661
|
+
* ```
|
|
662
|
+
*/
|
|
663
|
+
getNamespaces(): Promise<string[]>;
|
|
664
|
+
|
|
665
|
+
/**
|
|
666
|
+
* Delete an entire namespace and all its vectors
|
|
667
|
+
*
|
|
668
|
+
* @param name - the name of the vector storage namespace to delete
|
|
669
|
+
*
|
|
670
|
+
* @example
|
|
671
|
+
* ```typescript
|
|
672
|
+
* await vectorStore.deleteNamespace('old-products');
|
|
673
|
+
* console.log('Namespace deleted');
|
|
674
|
+
* ```
|
|
675
|
+
*/
|
|
676
|
+
deleteNamespace(name: string): Promise<void>;
|
|
677
|
+
}
|
|
678
|
+
|
|
679
|
+
interface VectorUpsertSuccessResponse {
|
|
680
|
+
success: true;
|
|
681
|
+
data: Array<{ id: string }>;
|
|
682
|
+
}
|
|
683
|
+
|
|
684
|
+
interface VectorUpsertErrorResponse {
|
|
685
|
+
success: false;
|
|
686
|
+
message: string;
|
|
687
|
+
}
|
|
688
|
+
|
|
689
|
+
type VectorUpsertResponse = VectorUpsertSuccessResponse | VectorUpsertErrorResponse;
|
|
690
|
+
|
|
691
|
+
interface VectorGetSuccessResponse {
|
|
692
|
+
success: true;
|
|
693
|
+
data: VectorSearchResultWithDocument | null;
|
|
694
|
+
}
|
|
695
|
+
|
|
696
|
+
interface VectorGetErrorResponse {
|
|
697
|
+
success: false;
|
|
698
|
+
message: string;
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
type VectorGetResponse = VectorGetSuccessResponse | VectorGetErrorResponse;
|
|
702
|
+
|
|
703
|
+
interface VectorSearchSuccessResponse {
|
|
704
|
+
success: true;
|
|
705
|
+
data: VectorSearchResult[];
|
|
706
|
+
}
|
|
707
|
+
|
|
708
|
+
interface VectorSearchErrorResponse {
|
|
709
|
+
success: false;
|
|
710
|
+
message: string;
|
|
711
|
+
}
|
|
712
|
+
|
|
713
|
+
type VectorSearchResponse = VectorSearchSuccessResponse | VectorSearchErrorResponse;
|
|
714
|
+
|
|
715
|
+
interface VectorDeleteSuccessResponse {
|
|
716
|
+
success: true;
|
|
717
|
+
data: number;
|
|
718
|
+
}
|
|
719
|
+
|
|
720
|
+
interface VectorDeleteErrorResponse {
|
|
721
|
+
success: false;
|
|
722
|
+
message: string;
|
|
723
|
+
}
|
|
724
|
+
|
|
725
|
+
type VectorDeleteResponse = VectorDeleteSuccessResponse | VectorDeleteErrorResponse;
|
|
726
|
+
|
|
727
|
+
type VectorStatsResponse = VectorNamespaceStatsWithSamples;
|
|
728
|
+
|
|
729
|
+
interface VectorDeleteNamespaceSuccessResponse {
|
|
730
|
+
success: true;
|
|
731
|
+
data: number;
|
|
732
|
+
}
|
|
733
|
+
|
|
734
|
+
interface VectorDeleteNamespaceErrorResponse {
|
|
735
|
+
success: false;
|
|
736
|
+
message: string;
|
|
737
|
+
}
|
|
738
|
+
|
|
739
|
+
type VectorDeleteNamespaceResponse =
|
|
740
|
+
| VectorDeleteNamespaceSuccessResponse
|
|
741
|
+
| VectorDeleteNamespaceErrorResponse;
|
|
742
|
+
|
|
743
|
+
const VectorStorageNameRequiredError = StructuredError(
|
|
744
|
+
'VectorStorageNameRequiredError',
|
|
745
|
+
'Vector storage name is required and must be a non-empty string'
|
|
746
|
+
);
|
|
747
|
+
|
|
748
|
+
const VectorStorageKeyRequiredError = StructuredError(
|
|
749
|
+
'VectorStorageKeyRequiredError',
|
|
750
|
+
'Vector storage key is required and must be a non-empty string'
|
|
751
|
+
);
|
|
752
|
+
|
|
753
|
+
const VectorStorageKeysError = StructuredError(
|
|
754
|
+
'VectorStorageKeysError',
|
|
755
|
+
'Vector storage requires all keys to be non-empty strings'
|
|
756
|
+
);
|
|
757
|
+
|
|
758
|
+
const VectorStorageQueryError = StructuredError(
|
|
759
|
+
'VectorStorageQueryError',
|
|
760
|
+
'Vector storage query property is required and must be a non-empty string'
|
|
761
|
+
);
|
|
762
|
+
|
|
763
|
+
const VectorStorageLimitError = StructuredError(
|
|
764
|
+
'VectorStorageLimitError',
|
|
765
|
+
'Vector storage limit property must be positive number'
|
|
766
|
+
);
|
|
767
|
+
|
|
768
|
+
const VectorStorageSimilarityError = StructuredError(
|
|
769
|
+
'VectorStorageSimilarityError',
|
|
770
|
+
'Vector storage similarity property must be a number between 0.0 and 1.0'
|
|
771
|
+
);
|
|
772
|
+
|
|
773
|
+
const VectorStorageMetadataError = StructuredError(
|
|
774
|
+
'VectorStorageMetadataError',
|
|
775
|
+
'Vector storage metadata property must be a valid object'
|
|
776
|
+
);
|
|
777
|
+
|
|
778
|
+
const VectorStorageDocumentRequiredError = StructuredError(
|
|
779
|
+
'VectorStorageDocumentRequiredError',
|
|
780
|
+
'Vector storage requires at least one document for this method'
|
|
781
|
+
);
|
|
782
|
+
|
|
783
|
+
const VectorStorageDocumentKeyMissingError = StructuredError(
|
|
784
|
+
'VectorStorageDocumentKeyMissingError',
|
|
785
|
+
'Vector storage requires each document to have a non-empty key'
|
|
786
|
+
);
|
|
787
|
+
|
|
788
|
+
const VectorStorageInvalidError = StructuredError(
|
|
789
|
+
'VectorStorageInvalidError',
|
|
790
|
+
'Vector storage requires each document to have either embeddings or document property'
|
|
791
|
+
);
|
|
792
|
+
|
|
793
|
+
const VectorStorageEmbeddingInvalidError = StructuredError(
|
|
794
|
+
'VectorStorageEmbeddingInvalidError',
|
|
795
|
+
'Vector storage requires each embeddings property to have a non-empty array of numbers'
|
|
796
|
+
);
|
|
797
|
+
|
|
798
|
+
const VectorStorageDocumentInvalidError = StructuredError(
|
|
799
|
+
'VectorStorageDocumentInvalidError',
|
|
800
|
+
'Vector storage requires each document property to have a non-empty string value'
|
|
801
|
+
);
|
|
802
|
+
|
|
803
|
+
const VectorStorageResponseError = StructuredError('VectorStorageResponseError')<{
|
|
804
|
+
status: number;
|
|
805
|
+
}>();
|
|
806
|
+
|
|
807
|
+
export class VectorStorageService implements VectorStorage {
|
|
808
|
+
#adapter: FetchAdapter;
|
|
809
|
+
#baseUrl: string;
|
|
810
|
+
|
|
811
|
+
constructor(baseUrl: string, adapter: FetchAdapter) {
|
|
812
|
+
this.#adapter = adapter;
|
|
813
|
+
this.#baseUrl = baseUrl;
|
|
814
|
+
}
|
|
815
|
+
|
|
816
|
+
async upsert(name: string, ...documents: VectorUpsertParams[]): Promise<VectorUpsertResult[]> {
|
|
817
|
+
if (!name || typeof name !== 'string' || name.trim().length === 0) {
|
|
818
|
+
throw new VectorStorageNameRequiredError();
|
|
819
|
+
}
|
|
820
|
+
|
|
821
|
+
if (!documents || documents.length === 0) {
|
|
822
|
+
throw new VectorStorageDocumentRequiredError();
|
|
823
|
+
}
|
|
824
|
+
|
|
825
|
+
for (const doc of documents) {
|
|
826
|
+
if (!doc.key || typeof doc.key !== 'string' || doc.key.trim().length === 0) {
|
|
827
|
+
throw new VectorStorageDocumentKeyMissingError();
|
|
828
|
+
}
|
|
829
|
+
|
|
830
|
+
if (!('embeddings' in doc) && !('document' in doc)) {
|
|
831
|
+
throw new VectorStorageInvalidError();
|
|
832
|
+
}
|
|
833
|
+
|
|
834
|
+
if ('embeddings' in doc && doc.embeddings) {
|
|
835
|
+
if (!Array.isArray(doc.embeddings) || doc.embeddings.length === 0) {
|
|
836
|
+
throw new VectorStorageEmbeddingInvalidError();
|
|
837
|
+
}
|
|
838
|
+
}
|
|
839
|
+
|
|
840
|
+
if ('document' in doc && doc.document) {
|
|
841
|
+
if (typeof doc.document !== 'string' || doc.document.trim().length === 0) {
|
|
842
|
+
throw new VectorStorageDocumentInvalidError();
|
|
843
|
+
}
|
|
844
|
+
}
|
|
845
|
+
}
|
|
846
|
+
|
|
847
|
+
const url = buildUrl(this.#baseUrl, `/vector/${encodeURIComponent(name)}`);
|
|
848
|
+
const signal = AbortSignal.timeout(30_000);
|
|
849
|
+
|
|
850
|
+
// Transform documents to handle TTL: null → 0 for "no expiration"
|
|
851
|
+
const requestDocs = documents.map((doc) => ({
|
|
852
|
+
...doc,
|
|
853
|
+
// TTL handling: only include if explicitly provided
|
|
854
|
+
// null or 0 = no expiration (send 0 to server), positive = TTL in seconds
|
|
855
|
+
// undefined = not sent, server uses default (30 days)
|
|
856
|
+
...(doc.ttl !== undefined && { ttl: doc.ttl === null ? 0 : doc.ttl }),
|
|
857
|
+
}));
|
|
858
|
+
|
|
859
|
+
const res = await this.#adapter.invoke<VectorUpsertResponse>(url, {
|
|
860
|
+
method: 'PUT',
|
|
861
|
+
body: safeStringify(requestDocs),
|
|
862
|
+
contentType: 'application/json',
|
|
863
|
+
signal,
|
|
864
|
+
telemetry: {
|
|
865
|
+
name: 'agentuity.vector.upsert',
|
|
866
|
+
attributes: {
|
|
867
|
+
name,
|
|
868
|
+
count: String(documents.length),
|
|
869
|
+
},
|
|
870
|
+
},
|
|
871
|
+
});
|
|
872
|
+
|
|
873
|
+
if (res.ok) {
|
|
874
|
+
if (res.data.success) {
|
|
875
|
+
return res.data.data.map((o, index) => {
|
|
876
|
+
const doc = documents[index];
|
|
877
|
+
return {
|
|
878
|
+
key: doc ? doc.key : '',
|
|
879
|
+
id: o.id,
|
|
880
|
+
};
|
|
881
|
+
});
|
|
882
|
+
}
|
|
883
|
+
throw new VectorStorageResponseError({
|
|
884
|
+
status: res.response.status,
|
|
885
|
+
message: res.data.message,
|
|
886
|
+
});
|
|
887
|
+
}
|
|
888
|
+
|
|
889
|
+
throw await toServiceException('PUT', url, res.response);
|
|
890
|
+
}
|
|
891
|
+
|
|
892
|
+
async get<T extends Record<string, unknown> = Record<string, unknown>>(
|
|
893
|
+
name: string,
|
|
894
|
+
key: string
|
|
895
|
+
): Promise<VectorResult<T>> {
|
|
896
|
+
if (!name || typeof name !== 'string' || name.trim().length === 0) {
|
|
897
|
+
throw new VectorStorageNameRequiredError();
|
|
898
|
+
}
|
|
899
|
+
|
|
900
|
+
if (!key || typeof key !== 'string' || key.trim().length === 0) {
|
|
901
|
+
throw new VectorStorageKeyRequiredError();
|
|
902
|
+
}
|
|
903
|
+
|
|
904
|
+
const url = buildUrl(
|
|
905
|
+
this.#baseUrl,
|
|
906
|
+
`/vector/${encodeURIComponent(name)}/${encodeURIComponent(key)}`
|
|
907
|
+
);
|
|
908
|
+
const signal = AbortSignal.timeout(30_000); // 30s timeout for Neon cold starts
|
|
909
|
+
|
|
910
|
+
const res = await this.#adapter.invoke<VectorGetResponse>(url, {
|
|
911
|
+
method: 'GET',
|
|
912
|
+
signal,
|
|
913
|
+
telemetry: {
|
|
914
|
+
name: 'agentuity.vector.get',
|
|
915
|
+
attributes: {
|
|
916
|
+
name,
|
|
917
|
+
key,
|
|
918
|
+
},
|
|
919
|
+
},
|
|
920
|
+
});
|
|
921
|
+
|
|
922
|
+
if (res.response.status === 404) {
|
|
923
|
+
return { exists: false } as VectorResultNotFound;
|
|
924
|
+
}
|
|
925
|
+
|
|
926
|
+
if (res.ok) {
|
|
927
|
+
if (res.data.success) {
|
|
928
|
+
return {
|
|
929
|
+
data: res.data.data as VectorSearchResultWithDocument<T>,
|
|
930
|
+
exists: true,
|
|
931
|
+
};
|
|
932
|
+
}
|
|
933
|
+
throw new VectorStorageResponseError({
|
|
934
|
+
status: res.response.status,
|
|
935
|
+
message: res.data.message,
|
|
936
|
+
});
|
|
937
|
+
}
|
|
938
|
+
|
|
939
|
+
throw await toServiceException('GET', url, res.response);
|
|
940
|
+
}
|
|
941
|
+
|
|
942
|
+
async getMany<T extends Record<string, unknown> = Record<string, unknown>>(
|
|
943
|
+
name: string,
|
|
944
|
+
...keys: string[]
|
|
945
|
+
): Promise<Map<string, VectorSearchResultWithDocument<T>>> {
|
|
946
|
+
if (!name || typeof name !== 'string' || name.trim().length === 0) {
|
|
947
|
+
throw new VectorStorageNameRequiredError();
|
|
948
|
+
}
|
|
949
|
+
|
|
950
|
+
if (keys.length === 0) {
|
|
951
|
+
return new Map();
|
|
952
|
+
}
|
|
953
|
+
|
|
954
|
+
for (const key of keys) {
|
|
955
|
+
if (!key || typeof key !== 'string' || key.trim().length === 0) {
|
|
956
|
+
throw new VectorStorageKeysError();
|
|
957
|
+
}
|
|
958
|
+
}
|
|
959
|
+
|
|
960
|
+
const results = await Promise.all(keys.map((key) => this.get<T>(name, key)));
|
|
961
|
+
|
|
962
|
+
const resultMap = new Map<string, VectorSearchResultWithDocument<T>>();
|
|
963
|
+
results.forEach((result, index) => {
|
|
964
|
+
const key = keys[index];
|
|
965
|
+
if (result.exists && key) {
|
|
966
|
+
resultMap.set(key, result.data);
|
|
967
|
+
}
|
|
968
|
+
});
|
|
969
|
+
|
|
970
|
+
return resultMap;
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
async search<T extends Record<string, unknown> = Record<string, unknown>>(
|
|
974
|
+
name: string,
|
|
975
|
+
params: VectorSearchParams<T>
|
|
976
|
+
): Promise<VectorSearchResult<T>[]> {
|
|
977
|
+
if (!name || typeof name !== 'string' || name.trim().length === 0) {
|
|
978
|
+
throw new VectorStorageNameRequiredError();
|
|
979
|
+
}
|
|
980
|
+
|
|
981
|
+
if (!params.query || typeof params.query !== 'string' || params.query.trim().length === 0) {
|
|
982
|
+
throw new VectorStorageQueryError();
|
|
983
|
+
}
|
|
984
|
+
|
|
985
|
+
if (params.limit !== undefined) {
|
|
986
|
+
if (typeof params.limit !== 'number' || params.limit <= 0) {
|
|
987
|
+
throw new VectorStorageLimitError();
|
|
988
|
+
}
|
|
989
|
+
}
|
|
990
|
+
|
|
991
|
+
if (params.similarity !== undefined) {
|
|
992
|
+
if (
|
|
993
|
+
typeof params.similarity !== 'number' ||
|
|
994
|
+
params.similarity < 0 ||
|
|
995
|
+
params.similarity > 1
|
|
996
|
+
) {
|
|
997
|
+
throw new VectorStorageSimilarityError();
|
|
998
|
+
}
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
if (params.metadata !== undefined) {
|
|
1002
|
+
if (typeof params.metadata !== 'object' || params.metadata === null) {
|
|
1003
|
+
throw new VectorStorageMetadataError();
|
|
1004
|
+
}
|
|
1005
|
+
}
|
|
1006
|
+
|
|
1007
|
+
const url = buildUrl(this.#baseUrl, `/vector/search/${encodeURIComponent(name)}`);
|
|
1008
|
+
const signal = AbortSignal.timeout(30_000);
|
|
1009
|
+
|
|
1010
|
+
const attributes: Record<string, string> = {
|
|
1011
|
+
name,
|
|
1012
|
+
query: params.query,
|
|
1013
|
+
};
|
|
1014
|
+
if (params.limit !== undefined) {
|
|
1015
|
+
attributes.limit = String(params.limit);
|
|
1016
|
+
}
|
|
1017
|
+
if (params.similarity !== undefined) {
|
|
1018
|
+
attributes.similarity = String(params.similarity);
|
|
1019
|
+
}
|
|
1020
|
+
|
|
1021
|
+
const res = await this.#adapter.invoke<VectorSearchResponse>(url, {
|
|
1022
|
+
method: 'POST',
|
|
1023
|
+
body: safeStringify(params),
|
|
1024
|
+
contentType: 'application/json',
|
|
1025
|
+
signal,
|
|
1026
|
+
telemetry: {
|
|
1027
|
+
name: 'agentuity.vector.search',
|
|
1028
|
+
attributes,
|
|
1029
|
+
},
|
|
1030
|
+
});
|
|
1031
|
+
|
|
1032
|
+
if (res.response.status === 404) {
|
|
1033
|
+
return [];
|
|
1034
|
+
}
|
|
1035
|
+
|
|
1036
|
+
if (res.ok) {
|
|
1037
|
+
if (res.data.success) {
|
|
1038
|
+
return res.data.data as VectorSearchResult<T>[];
|
|
1039
|
+
}
|
|
1040
|
+
throw new VectorStorageResponseError({
|
|
1041
|
+
status: res.response.status,
|
|
1042
|
+
message: res.data.message,
|
|
1043
|
+
});
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
throw await toServiceException('POST', url, res.response);
|
|
1047
|
+
}
|
|
1048
|
+
|
|
1049
|
+
async delete(name: string, ...keys: string[]): Promise<number> {
|
|
1050
|
+
if (!name || typeof name !== 'string' || name.trim().length === 0) {
|
|
1051
|
+
throw new VectorStorageNameRequiredError();
|
|
1052
|
+
}
|
|
1053
|
+
|
|
1054
|
+
if (keys.length === 0) {
|
|
1055
|
+
return 0;
|
|
1056
|
+
}
|
|
1057
|
+
|
|
1058
|
+
for (const key of keys) {
|
|
1059
|
+
if (!key || typeof key !== 'string' || key.trim().length === 0) {
|
|
1060
|
+
throw new VectorStorageKeysError();
|
|
1061
|
+
}
|
|
1062
|
+
}
|
|
1063
|
+
|
|
1064
|
+
const signal = AbortSignal.timeout(30_000);
|
|
1065
|
+
let url: string;
|
|
1066
|
+
let body: string | undefined;
|
|
1067
|
+
|
|
1068
|
+
const firstKey = keys[0];
|
|
1069
|
+
if (keys.length === 1 && firstKey) {
|
|
1070
|
+
url = buildUrl(
|
|
1071
|
+
this.#baseUrl,
|
|
1072
|
+
`/vector/${encodeURIComponent(name)}/${encodeURIComponent(firstKey)}`
|
|
1073
|
+
);
|
|
1074
|
+
} else {
|
|
1075
|
+
url = buildUrl(this.#baseUrl, `/vector/${encodeURIComponent(name)}`);
|
|
1076
|
+
body = safeStringify({ keys });
|
|
1077
|
+
}
|
|
1078
|
+
|
|
1079
|
+
const res = await this.#adapter.invoke<VectorDeleteResponse>(url, {
|
|
1080
|
+
method: 'DELETE',
|
|
1081
|
+
...(body && { body, contentType: 'application/json' }),
|
|
1082
|
+
signal,
|
|
1083
|
+
telemetry: {
|
|
1084
|
+
name: 'agentuity.vector.delete',
|
|
1085
|
+
attributes: {
|
|
1086
|
+
name,
|
|
1087
|
+
count: String(keys.length),
|
|
1088
|
+
},
|
|
1089
|
+
},
|
|
1090
|
+
});
|
|
1091
|
+
|
|
1092
|
+
// Treat missing vectors as non-fatal for idempotency, like get()/search()
|
|
1093
|
+
if (res.response.status === 404) {
|
|
1094
|
+
return 0;
|
|
1095
|
+
}
|
|
1096
|
+
|
|
1097
|
+
if (res.ok) {
|
|
1098
|
+
if (res.data.success) {
|
|
1099
|
+
return res.data.data;
|
|
1100
|
+
}
|
|
1101
|
+
throw new VectorStorageResponseError({
|
|
1102
|
+
status: res.response.status,
|
|
1103
|
+
message: res.data.message,
|
|
1104
|
+
});
|
|
1105
|
+
}
|
|
1106
|
+
|
|
1107
|
+
throw await toServiceException('DELETE', url, res.response);
|
|
1108
|
+
}
|
|
1109
|
+
|
|
1110
|
+
async exists(name: string): Promise<boolean> {
|
|
1111
|
+
if (!name || typeof name !== 'string' || name.trim().length === 0) {
|
|
1112
|
+
throw new VectorStorageNameRequiredError();
|
|
1113
|
+
}
|
|
1114
|
+
|
|
1115
|
+
const stats = await this.getStats(name);
|
|
1116
|
+
return stats.count > 0;
|
|
1117
|
+
}
|
|
1118
|
+
|
|
1119
|
+
async getStats(name: string): Promise<VectorNamespaceStatsWithSamples> {
|
|
1120
|
+
if (!name || typeof name !== 'string' || name.trim().length === 0) {
|
|
1121
|
+
throw new VectorStorageNameRequiredError();
|
|
1122
|
+
}
|
|
1123
|
+
|
|
1124
|
+
const url = buildUrl(this.#baseUrl, `/vector/stats/${encodeURIComponent(name)}`);
|
|
1125
|
+
const signal = AbortSignal.timeout(30_000); // 30s timeout for Neon cold starts
|
|
1126
|
+
|
|
1127
|
+
const res = await this.#adapter.invoke<VectorStatsResponse>(url, {
|
|
1128
|
+
method: 'GET',
|
|
1129
|
+
signal,
|
|
1130
|
+
telemetry: {
|
|
1131
|
+
name: 'agentuity.vector.getStats',
|
|
1132
|
+
attributes: {
|
|
1133
|
+
name,
|
|
1134
|
+
},
|
|
1135
|
+
},
|
|
1136
|
+
});
|
|
1137
|
+
|
|
1138
|
+
if (res.ok) {
|
|
1139
|
+
return res.data;
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
if (res.response.status === 404) {
|
|
1143
|
+
return { sum: 0, count: 0 };
|
|
1144
|
+
}
|
|
1145
|
+
|
|
1146
|
+
throw await toServiceException('GET', url, res.response);
|
|
1147
|
+
}
|
|
1148
|
+
|
|
1149
|
+
async getAllStats(
|
|
1150
|
+
params?: VectorGetAllStatsParams
|
|
1151
|
+
): Promise<Record<string, VectorNamespaceStats> | VectorStatsPaginated> {
|
|
1152
|
+
const queryParams = new URLSearchParams();
|
|
1153
|
+
if (params?.limit !== undefined) {
|
|
1154
|
+
queryParams.set('limit', String(params.limit));
|
|
1155
|
+
}
|
|
1156
|
+
if (params?.offset !== undefined) {
|
|
1157
|
+
queryParams.set('offset', String(params.offset));
|
|
1158
|
+
}
|
|
1159
|
+
if (params?.sort) {
|
|
1160
|
+
queryParams.set('sort', params.sort);
|
|
1161
|
+
}
|
|
1162
|
+
if (params?.direction) {
|
|
1163
|
+
queryParams.set('direction', params.direction);
|
|
1164
|
+
}
|
|
1165
|
+
if (params?.name) {
|
|
1166
|
+
queryParams.set('name', params.name);
|
|
1167
|
+
}
|
|
1168
|
+
const queryString = queryParams.toString();
|
|
1169
|
+
const url = buildUrl(this.#baseUrl, `/vector/stats${queryString ? `?${queryString}` : ''}`);
|
|
1170
|
+
const signal = AbortSignal.timeout(30_000); // 30s timeout for Neon cold starts
|
|
1171
|
+
|
|
1172
|
+
const res = await this.#adapter.invoke<
|
|
1173
|
+
Record<string, VectorNamespaceStats> | VectorStatsPaginated
|
|
1174
|
+
>(url, {
|
|
1175
|
+
method: 'GET',
|
|
1176
|
+
signal,
|
|
1177
|
+
telemetry: {
|
|
1178
|
+
name: 'agentuity.vector.getAllStats',
|
|
1179
|
+
attributes: {},
|
|
1180
|
+
},
|
|
1181
|
+
});
|
|
1182
|
+
|
|
1183
|
+
if (res.ok) {
|
|
1184
|
+
return res.data;
|
|
1185
|
+
}
|
|
1186
|
+
|
|
1187
|
+
throw await toServiceException('GET', url, res.response);
|
|
1188
|
+
}
|
|
1189
|
+
|
|
1190
|
+
async getNamespaces(): Promise<string[]> {
|
|
1191
|
+
const url = buildUrl(this.#baseUrl, '/vector/namespaces');
|
|
1192
|
+
const signal = AbortSignal.timeout(30_000); // 30s timeout for Neon cold starts
|
|
1193
|
+
const res = await this.#adapter.invoke<string[]>(url, {
|
|
1194
|
+
method: 'GET',
|
|
1195
|
+
signal,
|
|
1196
|
+
telemetry: {
|
|
1197
|
+
name: 'agentuity.vector.getNamespaces',
|
|
1198
|
+
attributes: {},
|
|
1199
|
+
},
|
|
1200
|
+
});
|
|
1201
|
+
if (res.ok) {
|
|
1202
|
+
return res.data;
|
|
1203
|
+
}
|
|
1204
|
+
throw await toServiceException('GET', url, res.response);
|
|
1205
|
+
}
|
|
1206
|
+
|
|
1207
|
+
async deleteNamespace(name: string): Promise<void> {
|
|
1208
|
+
if (!name || typeof name !== 'string' || name.trim().length === 0) {
|
|
1209
|
+
throw new VectorStorageNameRequiredError();
|
|
1210
|
+
}
|
|
1211
|
+
|
|
1212
|
+
const url = buildUrl(this.#baseUrl, `/vector/${encodeURIComponent(name)}`);
|
|
1213
|
+
const signal = AbortSignal.timeout(30_000);
|
|
1214
|
+
|
|
1215
|
+
const res = await this.#adapter.invoke<VectorDeleteNamespaceResponse>(url, {
|
|
1216
|
+
method: 'DELETE',
|
|
1217
|
+
signal,
|
|
1218
|
+
telemetry: {
|
|
1219
|
+
name: 'agentuity.vector.deleteNamespace',
|
|
1220
|
+
attributes: {
|
|
1221
|
+
name,
|
|
1222
|
+
},
|
|
1223
|
+
},
|
|
1224
|
+
});
|
|
1225
|
+
|
|
1226
|
+
if (res.response.status === 404) {
|
|
1227
|
+
return;
|
|
1228
|
+
}
|
|
1229
|
+
|
|
1230
|
+
if (res.ok) {
|
|
1231
|
+
if (res.data.success) {
|
|
1232
|
+
return;
|
|
1233
|
+
}
|
|
1234
|
+
throw new VectorStorageResponseError({
|
|
1235
|
+
status: res.response.status,
|
|
1236
|
+
message: res.data.message,
|
|
1237
|
+
});
|
|
1238
|
+
}
|
|
1239
|
+
|
|
1240
|
+
throw await toServiceException('DELETE', url, res.response);
|
|
1241
|
+
}
|
|
1242
|
+
}
|