@vellumai/assistant 0.10.9 → 0.10.10-dev.202607162206.d08e98e
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/ARCHITECTURE.md +1 -1
- package/Dockerfile +8 -0
- package/docs/activation-funnel-telemetry.md +13 -7
- package/node_modules/@vellumai/ces-client/node_modules/@vellumai/service-contracts/package.json +1 -0
- package/node_modules/@vellumai/ces-client/node_modules/@vellumai/service-contracts/src/__tests__/redacted-credential.test.ts +200 -0
- package/node_modules/@vellumai/ces-client/node_modules/@vellumai/service-contracts/src/redacted-credential.ts +226 -0
- package/node_modules/@vellumai/gateway-client/node_modules/@vellumai/service-contracts/package.json +1 -0
- package/node_modules/@vellumai/gateway-client/node_modules/@vellumai/service-contracts/src/__tests__/redacted-credential.test.ts +200 -0
- package/node_modules/@vellumai/gateway-client/node_modules/@vellumai/service-contracts/src/redacted-credential.ts +226 -0
- package/node_modules/@vellumai/service-contracts/package.json +1 -0
- package/node_modules/@vellumai/service-contracts/src/__tests__/redacted-credential.test.ts +200 -0
- package/node_modules/@vellumai/service-contracts/src/redacted-credential.ts +226 -0
- package/openapi.yaml +530 -107
- package/package.json +1 -1
- package/scripts/generate-openapi.ts +8 -0
- package/src/__tests__/activation-early-marking.test.ts +6 -5
- package/src/__tests__/agent-loop-override-profile.test.ts +22 -25
- package/src/__tests__/agent-wake-override-profile.test.ts +21 -48
- package/src/__tests__/app-builder-tool-scripts.test.ts +0 -1
- package/src/__tests__/app-bundler.test.ts +4 -12
- package/src/__tests__/app-executors.test.ts +2 -49
- package/src/__tests__/app-routes-csp.test.ts +114 -146
- package/src/__tests__/auth-fallback-events-store.test.ts +8 -1
- package/src/__tests__/build-persisted-content.test.ts +96 -0
- package/src/__tests__/bundle-scanner.test.ts +27 -1
- package/src/__tests__/call-controller.test.ts +291 -0
- package/src/__tests__/call-site-routing-connection-auto-resolve.test.ts +165 -0
- package/src/__tests__/chat-credential-redaction.test.ts +1395 -0
- package/src/__tests__/chat-reveal-guard-priming.test.ts +791 -0
- package/src/__tests__/compaction.benchmark.test.ts +2 -1
- package/src/__tests__/compactor-image-manifest-trust.test.ts +50 -0
- package/src/__tests__/config-loader-backfill.test.ts +9 -4
- package/src/__tests__/config-schema-cmd.test.ts +10 -11
- package/src/__tests__/config-schema.test.ts +190 -257
- package/src/__tests__/conversation-agent-loop-fatal-cleanup.test.ts +208 -0
- package/src/__tests__/conversation-agent-loop-overflow.test.ts +5 -19
- package/src/__tests__/conversation-agent-loop.test.ts +22 -9
- package/src/__tests__/conversation-error.test.ts +31 -0
- package/src/__tests__/conversation-load-history-repair.test.ts +110 -0
- package/src/__tests__/conversation-process-callsite.test.ts +12 -19
- package/src/__tests__/conversation-routes-slash-commands.test.ts +7 -21
- package/src/__tests__/conversation-summarize-route.test.ts +36 -44
- package/src/__tests__/conversation-surfaces-action-delivery.test.ts +1 -0
- package/src/__tests__/conversation-surfaces-activation-emit.test.ts +7 -7
- package/src/__tests__/conversation-tool-setup-app-refresh.test.ts +0 -1
- package/src/__tests__/conversation-tool-setup-attribution.test.ts +0 -1
- package/src/__tests__/conversation-usage.test.ts +4 -12
- package/src/__tests__/credential-routes.test.ts +250 -0
- package/src/__tests__/credential-security-invariants.test.ts +3 -0
- package/src/__tests__/db-migration-rollback.test.ts +22 -0
- package/src/__tests__/empty-response-hook.test.ts +186 -1
- package/src/__tests__/external-plugin-loader.test.ts +11 -5
- package/src/__tests__/heartbeat-service.test.ts +0 -28
- package/src/__tests__/host-shell-tool.test.ts +2 -0
- package/src/__tests__/inactive-tool-error-messages.test.ts +2 -2
- package/src/__tests__/inference-no-mode-boot-e2e.test.ts +52 -8
- package/src/__tests__/internal-telemetry-routes.test.ts +23 -4
- package/src/__tests__/invite-routes-http.test.ts +12 -16
- package/src/__tests__/list-all-apps.test.ts +0 -4
- package/src/__tests__/llm-context-resolution.test.ts +32 -56
- package/src/__tests__/llm-request-log-turn-query.test.ts +109 -0
- package/src/__tests__/llm-resolver-override-or-default.test.ts +3 -52
- package/src/__tests__/llm-resolver.test.ts +342 -602
- package/src/__tests__/llm-schema.test.ts +79 -37
- package/src/__tests__/max-tokens-continue-hook.test.ts +19 -0
- package/src/__tests__/media-stream-output.test.ts +259 -3
- package/src/__tests__/media-stream-server-integration.test.ts +22 -1
- package/src/__tests__/media-stream-stt-session.test.ts +47 -0
- package/src/__tests__/memory-jobs-worker-cleanup-cadence.test.ts +33 -0
- package/src/__tests__/memory-recall-log-store.test.ts +47 -13
- package/src/__tests__/mock-gateway-ipc.ts +46 -1
- package/src/__tests__/mtime-cache.test.ts +61 -0
- package/src/__tests__/navigate-settings-tab.test.ts +2 -0
- package/src/__tests__/normalize-onboarding.test.ts +33 -0
- package/src/__tests__/onboarding-persona-write.test.ts +26 -0
- package/src/__tests__/plugin-api-resolve-credential.test.ts +140 -0
- package/src/__tests__/plugin-app-serve-routes.test.ts +166 -14
- package/src/__tests__/plugin-import-boundary-reverse-guard.test.ts +2 -0
- package/src/__tests__/post-turn-tool-result-truncation.test.ts +38 -0
- package/src/__tests__/provider-commit-message-generator.test.ts +27 -20
- package/src/__tests__/provider-connections-backfill.test.ts +138 -0
- package/src/__tests__/provider-platform-proxy-integration.test.ts +10 -31
- package/src/__tests__/provider-registry-ollama.test.ts +8 -18
- package/src/__tests__/provider-send-message-override-profile.test.ts +23 -23
- package/src/__tests__/provider-usage-tracking.test.ts +9 -19
- package/src/__tests__/prune-old-conversations-job.test.ts +12 -0
- package/src/__tests__/published-app-updater.test.ts +22 -16
- package/src/__tests__/registry.test.ts +5 -16
- package/src/__tests__/retry-openrouter-only-normalization.test.ts +22 -23
- package/src/__tests__/retry-thinking-adaptive-only.test.ts +43 -48
- package/src/__tests__/retry-thinking-tool-choice.test.ts +57 -66
- package/src/__tests__/retry-verbosity-normalization.test.ts +24 -23
- package/src/__tests__/reveal-success-registry.test.ts +123 -0
- package/src/__tests__/run-conversation-turn-persistence.test.ts +130 -0
- package/src/__tests__/secret-fixtures.ts +9 -0
- package/src/__tests__/server-history-render.test.ts +28 -0
- package/src/__tests__/skills.test.ts +9 -4
- package/src/__tests__/slack-share-routes.test.ts +0 -1
- package/src/__tests__/stt-stream-session.test.ts +6 -5
- package/src/__tests__/subagent-call-site-routing.test.ts +69 -95
- package/src/__tests__/subagent-disposal.test.ts +2 -0
- package/src/__tests__/subagent-fork-notifications.test.ts +2 -0
- package/src/__tests__/subagent-fork-spawn.test.ts +2 -0
- package/src/__tests__/subagent-manager-notify.test.ts +2 -0
- package/src/__tests__/subagent-role-registry.test.ts +37 -0
- package/src/__tests__/subagent-spawn-and-await.test.ts +1 -0
- package/src/__tests__/subagent-terminal-message.test.ts +50 -0
- package/src/__tests__/subagent-tool-gate-mode.test.ts +78 -5
- package/src/__tests__/surface-completion-nudge-hook.test.ts +19 -0
- package/src/__tests__/telemetry-routes.test.ts +99 -19
- package/src/__tests__/tool-audit.test.ts +34 -4
- package/src/__tests__/tool-executor-lifecycle-events.test.ts +1 -1
- package/src/__tests__/tool-profiler.test.ts +72 -1
- package/src/__tests__/tool-result-spool.test.ts +49 -4
- package/src/__tests__/tool-side-effects-slack-dm.test.ts +0 -1
- package/src/__tests__/ui-channel-variants.test.ts +108 -0
- package/src/__tests__/ui-shape-teaching.test.ts +255 -0
- package/src/__tests__/usage-attribution.test.ts +18 -41
- package/src/__tests__/user-plugin-loader.test.ts +4 -4
- package/src/__tests__/voice-config-update.test.ts +46 -0
- package/src/__tests__/voice-session-bridge.test.ts +216 -84
- package/src/__tests__/workspace-migration-131-drop-web-fetch-mode.test.ts +120 -0
- package/src/agent/loop.ts +4 -3
- package/src/api/events/open-conversation.test.ts +64 -0
- package/src/api/events/open-conversation.ts +33 -0
- package/src/api/index.ts +6 -0
- package/src/api/responses/conversation-message.ts +5 -0
- package/src/apps/app-store.ts +25 -35
- package/src/bundler/app-bundler.ts +34 -48
- package/src/bundler/app-compiler.ts +39 -4
- package/src/bundler/bundle-scanner.ts +13 -0
- package/src/bundler/manifest.ts +1 -1
- package/src/calls/__tests__/voice-session-bridge.test.ts +47 -0
- package/src/calls/call-constants.ts +5 -0
- package/src/calls/call-controller.ts +100 -32
- package/src/calls/call-transport.ts +9 -0
- package/src/calls/media-stream-output.ts +107 -4
- package/src/calls/media-stream-server.ts +29 -9
- package/src/calls/media-stream-stt-session.ts +7 -1
- package/src/calls/media-turn-detector.ts +11 -1
- package/src/calls/voice-session-bridge.ts +84 -63
- package/src/cli/commands/__tests__/inference-providers.test.ts +270 -33
- package/src/cli/commands/__tests__/notifications.test.ts +24 -3
- package/src/cli/commands/config.help.ts +6 -6
- package/src/cli/commands/credentials.help.ts +13 -0
- package/src/cli/commands/credentials.ts +6 -1
- package/src/cli/commands/email.help.ts +7 -0
- package/src/cli/commands/email.ts +35 -1
- package/src/cli/commands/inference-providers.ts +168 -107
- package/src/cli/commands/inference.help.ts +118 -46
- package/src/cli/commands/memory/index.help.ts +23 -0
- package/src/cli/commands/memory/nodes.ts +146 -0
- package/src/cli/commands/notifications.help.ts +10 -10
- package/src/cli/commands/oauth/connect-surface-guidance.test.ts +40 -0
- package/src/cli/commands/oauth/connect-surface-guidance.ts +54 -0
- package/src/cli/commands/oauth/connect.test.ts +126 -0
- package/src/cli/commands/oauth/connect.ts +29 -6
- package/src/cli/commands/oauth/index.help.ts +7 -1
- package/src/cli/commands/oauth/status.test.ts +69 -3
- package/src/cli/commands/oauth/status.ts +50 -12
- package/src/cli/commands/plugins.help.ts +13 -2
- package/src/cli/commands/plugins.ts +61 -7
- package/src/cli/commands/telemetry.help.ts +13 -0
- package/src/cli/commands/telemetry.ts +45 -5
- package/src/cli/lib/__tests__/plugin-catalog-local.test.ts +8 -2
- package/src/cli/lib/__tests__/upgrade-plugin.test.ts +213 -9
- package/src/cli/lib/bundled-marketplace.json +93 -36
- package/src/cli/lib/inspect-plugin.ts +5 -1
- package/src/cli/lib/install-from-github.ts +68 -4
- package/src/cli/lib/plugin-catalog-local.ts +6 -2
- package/src/cli/lib/plugin-fingerprint.ts +3 -3
- package/src/cli/lib/upgrade-plugin.ts +236 -35
- package/src/config/__tests__/default-profile-catalog.test.ts +8 -12
- package/src/config/__tests__/plugin-resident-skill-discovery.test.ts +137 -0
- package/src/config/__tests__/profile-materialization.test.ts +1 -88
- package/src/config/bundled-skills/AGENTS.md +3 -30
- package/src/config/bundled-skills/app-builder/SKILL.md +5 -3
- package/src/config/bundled-skills/app-builder/TOOLS.json +23 -0
- package/src/config/bundled-skills/app-builder/tools/app-open.ts +32 -0
- package/src/config/bundled-skills/messaging/tools/messaging-send.ts +1 -1
- package/src/config/bundled-skills/phone-calls/references/CONFIG.md +7 -7
- package/src/config/bundled-skills/schedule/SKILL.md +1 -1
- package/src/config/bundled-skills/schedule/TOOLS.json +1 -1
- package/src/config/bundled-skills/settings/TOOLS.json +3 -1
- package/src/config/bundled-skills/settings/tools/navigate-settings-tab.ts +2 -0
- package/src/config/bundled-skills/settings/tools/voice-config-update.ts +18 -10
- package/src/config/bundled-skills/subagent/SKILL.md +2 -0
- package/src/config/bundled-skills/subagent/TOOLS.json +1 -1
- package/src/config/call-site-defaults.ts +3 -3
- package/src/config/feature-flag-registry.json +24 -39
- package/src/config/llm-resolver.ts +88 -475
- package/src/config/profile-materialization.ts +11 -11
- package/src/config/schema.ts +93 -127
- package/src/config/schemas/__tests__/live-voice.test.ts +24 -6
- package/src/config/schemas/__tests__/stt.test.ts +31 -3
- package/src/config/schemas/live-voice.ts +10 -4
- package/src/config/schemas/llm.ts +52 -15
- package/src/config/schemas/memory-lifecycle.ts +1 -1
- package/src/config/schemas/memory-retrospective.ts +8 -0
- package/src/config/schemas/memory-v2.ts +2 -2
- package/src/config/schemas/memory-v3.ts +1 -1
- package/src/config/schemas/services.ts +6 -3
- package/src/config/schemas/stt.ts +38 -21
- package/src/config/schemas/tts.ts +13 -18
- package/src/config/skills.ts +31 -21
- package/src/context/compactor.ts +44 -7
- package/src/context/post-turn-tool-result-truncation.ts +4 -2
- package/src/context/tool-result-spool.ts +26 -5
- package/src/conversations/__tests__/message-consolidation.test.ts +48 -0
- package/src/conversations/message-consolidation.ts +22 -2
- package/src/daemon/__tests__/conversation-tool-setup.test.ts +5 -12
- package/src/daemon/app-source-watcher.ts +17 -23
- package/src/daemon/chat-credential-redaction.ts +1365 -0
- package/src/daemon/conversation-agent-loop-handlers.ts +627 -34
- package/src/daemon/conversation-agent-loop.ts +71 -31
- package/src/daemon/conversation-error.ts +36 -14
- package/src/daemon/conversation-process.ts +22 -0
- package/src/daemon/conversation-store.ts +35 -0
- package/src/daemon/conversation-surfaces.ts +25 -25
- package/src/daemon/conversation-tool-setup.ts +33 -7
- package/src/daemon/conversation.ts +55 -5
- package/src/daemon/handlers/shared.ts +33 -2
- package/src/daemon/lifecycle.ts +4 -4
- package/src/daemon/message-types/conversations.ts +6 -17
- package/src/daemon/providers-setup.ts +8 -0
- package/src/daemon/tool-setup-types.ts +7 -1
- package/src/daemon/wake-conversation-ops.ts +10 -1
- package/src/hooks/types.ts +9 -0
- package/src/ipc/__tests__/email-ipc.test.ts +90 -0
- package/src/ipc/gateway-client.test.ts +59 -0
- package/src/ipc/gateway-client.ts +70 -27
- package/src/live-voice/__tests__/live-voice-events.test.ts +14 -2
- package/src/live-voice/__tests__/live-voice-integration.test.ts +116 -2
- package/src/live-voice/__tests__/live-voice-vad.test.ts +804 -13
- package/src/live-voice/__tests__/protocol.test.ts +122 -0
- package/src/live-voice/live-voice-session.ts +443 -40
- package/src/live-voice/protocol.ts +143 -1
- package/src/monitoring/__tests__/plugin-source-watch.test.ts +3 -1
- package/src/monitoring/plugin-source-watch.ts +3 -62
- package/src/notifications/README.md +1 -1
- package/src/permissions/checker.ts +8 -4
- package/src/persistence/__tests__/db-init-migrations-ok.test.ts +26 -0
- package/src/persistence/conversation-crud.ts +104 -2
- package/src/persistence/db-init.ts +14 -3
- package/src/persistence/job-handlers/cleanup.ts +15 -7
- package/src/persistence/llm-request-log-store.ts +88 -52
- package/src/persistence/migrations/298-move-memory-jobs-to-memory-db.ts +7 -31
- package/src/persistence/migrations/305-drop-contact-acl-columns.ts +3 -2
- package/src/persistence/migrations/326-move-injection-events-to-memory-db.ts +8 -34
- package/src/persistence/migrations/336-move-memory-v2-activation-logs-to-memory-db.ts +90 -0
- package/src/persistence/migrations/337-move-memory-recall-logs-to-memory-db.ts +114 -0
- package/src/persistence/migrations/338-move-memory-v3-selections-to-memory-db.ts +84 -0
- package/src/persistence/migrations/339-move-activation-sessions-to-memory-db.ts +52 -0
- package/src/persistence/migrations/__tests__/run-migrations.test.ts +155 -0
- package/src/persistence/migrations/helpers/relocation.ts +44 -1
- package/src/persistence/migrations/run-migrations.ts +25 -1
- package/src/persistence/schema/infrastructure.ts +9 -0
- package/src/persistence/schema/memory-core.ts +3 -0
- package/src/persistence/schema/memory-injection.ts +2 -0
- package/src/persistence/steps.ts +36 -0
- package/src/platform/client.test.ts +1 -44
- package/src/platform/client.ts +10 -20
- package/src/platform/consent-cache.test.ts +89 -23
- package/src/platform/consent-cache.ts +71 -33
- package/src/plugin-api/constants.ts +12 -0
- package/src/plugin-api/conversation-turn.ts +37 -14
- package/src/plugin-api/index.ts +11 -1
- package/src/plugin-api/resolve-credential.ts +75 -0
- package/src/plugin-api/vision-support.test.ts +8 -19
- package/src/plugin-api/vision-support.ts +26 -17
- package/src/plugins/collect-source-versions.ts +77 -0
- package/src/plugins/defaults/compaction/compact.ts +6 -0
- package/src/plugins/defaults/compaction/window-manager.ts +9 -0
- package/src/plugins/defaults/empty-response/hooks/post-model-call.ts +18 -24
- package/src/plugins/defaults/empty-response/hooks/user-prompt-submit.ts +38 -0
- package/src/plugins/defaults/empty-response/refusal-quarantine.ts +99 -0
- package/src/plugins/defaults/image-fallback/__tests__/caption-cache-persistence.test.ts +7 -3
- package/src/plugins/defaults/index.ts +8 -1
- package/src/plugins/defaults/max-tokens-continue/hooks/post-model-call.ts +4 -1
- package/src/plugins/defaults/memory/__tests__/activation-session-store.test.ts +48 -6
- package/src/plugins/defaults/memory/__tests__/db-memory-attach.test.ts +28 -22
- package/src/plugins/defaults/memory/__tests__/memory-log-stores-degraded.test.ts +148 -0
- package/src/plugins/defaults/memory/__tests__/memory-retrospective-job.test.ts +80 -8
- package/src/plugins/defaults/memory/__tests__/memory-retrospective-prompt.test.ts +202 -0
- package/src/plugins/defaults/memory/__tests__/memory-v2-activation-log-store.test.ts +64 -25
- package/src/plugins/defaults/memory/__tests__/memory-v2-concept-frequency.test.ts +24 -11
- package/src/plugins/defaults/memory/__tests__/prompt-override.test.ts +70 -6
- package/src/plugins/defaults/memory/__tests__/table-relocation.test.ts +278 -0
- package/src/plugins/defaults/memory/activation-session-store.ts +27 -20
- package/src/plugins/defaults/memory/context-search/sources/memory-v2.ts +2 -9
- package/src/plugins/defaults/memory/context-search/sources/workspace.ts +1 -8
- package/src/plugins/defaults/memory/graph/retriever.test.ts +6 -6
- package/src/plugins/defaults/memory/graph/store.ts +114 -0
- package/src/plugins/defaults/memory/graph/tool-handlers.ts +36 -1
- package/src/plugins/defaults/memory/graph/tools.ts +47 -13
- package/src/plugins/defaults/memory/graph-topology/build-memory-graph.ts +16 -35
- package/src/plugins/defaults/memory/jobs-worker.ts +10 -1
- package/src/plugins/defaults/memory/memory-db.ts +3 -2
- package/src/plugins/defaults/memory/memory-recall-log-store.ts +129 -66
- package/src/plugins/defaults/memory/memory-retrospective-constants.ts +8 -0
- package/src/plugins/defaults/memory/memory-retrospective-job.ts +11 -122
- package/src/plugins/defaults/memory/memory-retrospective-prompt.ts +216 -0
- package/src/plugins/defaults/memory/memory-v2-activation-log-store.ts +84 -46
- package/src/plugins/defaults/memory/memory-v2-concept-frequency.ts +42 -32
- package/src/plugins/defaults/memory/path-containment.ts +21 -0
- package/src/plugins/defaults/memory/prompt-override.ts +51 -13
- package/src/plugins/defaults/memory/tools.test.ts +34 -0
- package/src/plugins/defaults/memory/tools.ts +12 -2
- package/src/plugins/defaults/memory/v2/__tests__/harness-compare.test.ts +19 -15
- package/src/plugins/defaults/memory/v2/__tests__/harness-oracle.test.ts +24 -19
- package/src/plugins/defaults/memory/v2/__tests__/harness-replay-input.test.ts +19 -15
- package/src/plugins/defaults/memory/v2/__tests__/injection.test.ts +22 -2
- package/src/plugins/defaults/memory/v2/__tests__/prompts-consolidation.test.ts +5 -3
- package/src/plugins/defaults/memory/v2/harness/oracle.ts +59 -41
- package/src/plugins/defaults/memory/v2/harness/replay-input.ts +29 -25
- package/src/plugins/defaults/memory/v2/migration.ts +46 -16
- package/src/plugins/defaults/memory/v2/prompts/consolidation.ts +4 -0
- package/src/plugins/defaults/memory/v3/__tests__/carry-integration.test.ts +17 -15
- package/src/plugins/defaults/memory/v3/__tests__/gate.test.ts +24 -22
- package/src/plugins/defaults/memory/v3/__tests__/injection.test.ts +9 -5
- package/src/plugins/defaults/memory/v3/__tests__/orchestrate.test.ts +277 -10
- package/src/plugins/defaults/memory/v3/__tests__/selection-log-store.test.ts +57 -5
- package/src/plugins/defaults/memory/v3/__tests__/shadow-integration.test.ts +9 -7
- package/src/plugins/defaults/memory/v3/__tests__/shadow-plugin.test.ts +38 -7
- package/src/plugins/defaults/memory/v3/hot-set.test.ts +36 -18
- package/src/plugins/defaults/memory/v3/hot-set.ts +12 -14
- package/src/plugins/defaults/memory/v3/learned-edges.test.ts +47 -27
- package/src/plugins/defaults/memory/v3/learned-edges.ts +12 -14
- package/src/plugins/defaults/memory/v3/orchestrate.ts +139 -22
- package/src/plugins/defaults/memory/v3/prune.test.ts +10 -3
- package/src/plugins/defaults/memory/v3/prune.ts +17 -11
- package/src/plugins/defaults/memory/v3/selection-log-store.ts +23 -11
- package/src/plugins/defaults/memory/v3/shadow-plugin.ts +70 -53
- package/src/plugins/defaults/surface-completion-nudge/hooks/post-model-call.ts +9 -6
- package/src/plugins/external-plugin-loader.ts +15 -15
- package/src/plugins/mtime-cache.ts +47 -0
- package/src/plugins/pipeline.ts +9 -1
- package/src/plugins/plugin-execution-context.ts +44 -0
- package/src/plugins/plugin-tree-walk.ts +31 -24
- package/src/plugins/source-fingerprint.ts +3 -4
- package/src/prompts/normalize-onboarding.ts +12 -0
- package/src/prompts/persona-resolver.ts +8 -0
- package/src/prompts/templates/BOOTSTRAP-ACTIVATION-RAIL.md +1 -1
- package/src/providers/__tests__/dispatch-connection-routing.test.ts +6 -9
- package/src/providers/__tests__/registry-native-web-search.test.ts +4 -10
- package/src/providers/__tests__/retry-callsite.test.ts +235 -215
- package/src/providers/__tests__/satellite-connection-routing.test.ts +8 -16
- package/src/providers/atlascloud/client.ts +10 -49
- package/src/providers/baseten/client.ts +43 -0
- package/src/providers/call-site-routing.ts +26 -13
- package/src/providers/connection-resolution.ts +9 -11
- package/src/providers/fetch-provider-catalog.ts +4 -2
- package/src/providers/inference/__tests__/adapter-factory-openai-compatible.test.ts +29 -4
- package/src/providers/inference/__tests__/connection-availability-keyless.test.ts +78 -0
- package/src/providers/inference/adapter-factory.ts +27 -6
- package/src/providers/inference/auth.ts +29 -1
- package/src/providers/inference/backfill.ts +61 -10
- package/src/providers/inference/connection-availability.ts +3 -2
- package/src/providers/inference/resolve-auth.ts +9 -1
- package/src/providers/model-catalog.ts +37 -0
- package/src/providers/openai/__tests__/api-error-normalization.test.ts +24 -2
- package/src/providers/openai/api-key-validation.ts +70 -0
- package/src/providers/retry.ts +2 -0
- package/src/providers/types.ts +11 -4
- package/src/providers/vellum-model-routing.test.ts +26 -0
- package/src/providers/vellum-model-routing.ts +30 -0
- package/src/providers/voice-error-copy.ts +47 -0
- package/src/runtime/agent-wake.ts +40 -24
- package/src/runtime/for-chat-mint-registry.ts +118 -0
- package/src/runtime/reveal-nonce.ts +49 -0
- package/src/runtime/reveal-success-registry.ts +306 -0
- package/src/runtime/routes/__tests__/conversation-query-routes.test.ts +88 -3
- package/src/runtime/routes/__tests__/inference-provider-connection-routes.test.ts +161 -30
- package/src/runtime/routes/__tests__/migration-vellum-metadata-reconcile.test.ts +7 -0
- package/src/runtime/routes/__tests__/schedule-worker-routes.test.ts +15 -0
- package/src/runtime/routes/app-management-routes.ts +152 -45
- package/src/runtime/routes/app-routes.ts +16 -77
- package/src/runtime/routes/canned-message-complete.ts +16 -16
- package/src/runtime/routes/conversation-management-routes.ts +17 -14
- package/src/runtime/routes/conversation-query-routes.ts +54 -6
- package/src/runtime/routes/conversation-routes.ts +48 -2
- package/src/runtime/routes/credential-routes.ts +116 -3
- package/src/runtime/routes/email-routes.ts +17 -1
- package/src/runtime/routes/inbound-stages/transcribe-audio.test.ts +33 -5
- package/src/runtime/routes/inbound-stages/transcribe-audio.ts +6 -5
- package/src/runtime/routes/inference-provider-connection-routes.ts +77 -28
- package/src/runtime/routes/inference-send-routes.ts +1 -1
- package/src/runtime/routes/internal-telemetry-routes.ts +7 -6
- package/src/runtime/routes/plugins-routes.ts +37 -6
- package/src/runtime/routes/publish-routes.ts +15 -18
- package/src/runtime/routes/schedule-worker-routes.ts +9 -0
- package/src/runtime/routes/secret-routes.ts +10 -0
- package/src/runtime/routes/telemetry-routes.ts +149 -45
- package/src/schedule/__tests__/schedule-timezone.test.ts +101 -0
- package/src/schedule/__tests__/worker-watchdog.test.ts +209 -0
- package/src/schedule/schedule-store.ts +12 -1
- package/src/schedule/schedule-timezone.ts +63 -0
- package/src/schedule/scheduler.ts +100 -6
- package/src/schedule/worker-control.ts +19 -0
- package/src/security/auth-fallback-events-store.ts +7 -6
- package/src/security/secret-scanner.ts +26 -1
- package/src/services/published-app-updater.ts +6 -11
- package/src/stt/stt-stream-session.ts +36 -16
- package/src/subagent/manager.ts +34 -8
- package/src/telemetry/AGENTS.md +30 -1
- package/src/telemetry/__tests__/config-setting-snapshot.test.ts +18 -0
- package/src/telemetry/__tests__/outbox-test-harness.ts +5 -3
- package/src/telemetry/config-setting-snapshot.ts +44 -10
- package/src/telemetry/telemetry-event-sources.test.ts +124 -30
- package/src/telemetry/telemetry-event-sources.ts +137 -83
- package/src/telemetry/telemetry-events-outbox.test.ts +46 -1
- package/src/telemetry/telemetry-events-outbox.ts +60 -9
- package/src/telemetry/telemetry-wire-source.json +1 -1
- package/src/telemetry/telemetry-wire-validation.ts +39 -2
- package/src/telemetry/telemetry-wire.generated.ts +8 -0
- package/src/telemetry/tool-audit.ts +15 -9
- package/src/telemetry/tool-executed-events-store.test.ts +1 -1
- package/src/telemetry/turn-events-store.ts +20 -0
- package/src/telemetry/types.ts +45 -12
- package/src/telemetry/usage-telemetry-reporter.test.ts +294 -25
- package/src/telemetry/usage-telemetry-reporter.ts +117 -18
- package/src/telemetry/watchdog-direct-emit.test.ts +11 -3
- package/src/telemetry/watchdog-direct-emit.ts +11 -6
- package/src/tools/apps/executors.ts +11 -36
- package/src/tools/executor.ts +14 -1
- package/src/tools/host-terminal/host-shell.ts +6 -2
- package/src/tools/network/__tests__/web-fetch-firecrawl.test.ts +1 -1
- package/src/tools/network/__tests__/web-fetch-metadata.test.ts +25 -0
- package/src/tools/network/web-fetch.ts +6 -2
- package/src/tools/skills/sandbox-runner.ts +5 -2
- package/src/tools/subagent/spawn.ts +7 -11
- package/src/tools/terminal/shell.ts +5 -2
- package/src/tools/tool-manifest.ts +0 -2
- package/src/tools/tool-profiler.ts +37 -6
- package/src/tools/ui-surface/channel-variants.ts +101 -0
- package/src/tools/ui-surface/definitions.ts +23 -67
- package/src/tools/ui-surface/surface-shape-docs.ts +229 -0
- package/src/tts/__tests__/provider-adapters.test.ts +18 -0
- package/src/tts/provider-catalog.ts +2 -4
- package/src/tts/providers/deepgram-provider.ts +10 -1
- package/src/types/onboarding-context.ts +8 -0
- package/src/usage/attribution.ts +18 -112
- package/src/{config/bundled-skills/messaging/tools/gmail-mime-helpers.ts → util/mime-type.ts} +4 -1
- package/src/util/provider-error-patterns.ts +7 -1
- package/src/util/worker-process.ts +105 -0
- package/src/watcher/__tests__/telemetry.test.ts +17 -4
- package/src/watcher/telemetry.ts +5 -5
- package/src/workspace/migrations/131-drop-web-fetch-mode.ts +61 -0
- package/src/workspace/migrations/registry.ts +2 -0
- package/src/workspace/provider-commit-message-generator.ts +6 -4
- package/src/__tests__/app-open-proxy.test.ts +0 -67
- package/src/onboarding/onboarding-research-events-store.test.ts +0 -230
- package/src/onboarding/onboarding-research-events-store.ts +0 -104
- package/src/runtime/routes/assets/vellum-design-system.css +0 -2236
- package/src/tools/apps/definitions.ts +0 -73
- package/src/tools/apps/open-proxy.ts +0 -43
package/openapi.yaml
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
openapi: 3.1.0
|
|
4
4
|
info:
|
|
5
5
|
title: Vellum Assistant API
|
|
6
|
-
version: 0.10.
|
|
6
|
+
version: 0.10.10
|
|
7
7
|
description: Auto-generated OpenAPI specification for the Vellum Assistant runtime HTTP server.
|
|
8
8
|
servers:
|
|
9
9
|
- url: http://127.0.0.1:7821
|
|
@@ -834,11 +834,14 @@ paths:
|
|
|
834
834
|
type: string
|
|
835
835
|
html:
|
|
836
836
|
type: string
|
|
837
|
+
origin:
|
|
838
|
+
type: string
|
|
837
839
|
required:
|
|
838
840
|
- appId
|
|
839
841
|
- dirName
|
|
840
842
|
- name
|
|
841
843
|
- html
|
|
844
|
+
- origin
|
|
842
845
|
additionalProperties: false
|
|
843
846
|
/v1/apps/{id}/preview:
|
|
844
847
|
get:
|
|
@@ -9543,7 +9546,9 @@ paths:
|
|
|
9543
9546
|
post:
|
|
9544
9547
|
operationId: credentials_reveal_post
|
|
9545
9548
|
summary: Reveal a credential's plaintext value
|
|
9546
|
-
description:
|
|
9549
|
+
description:
|
|
9550
|
+
Return the raw plaintext value of a stored credential. Blocked in untrusted shell mode. With forChat,
|
|
9551
|
+
returns a chat-safe redaction sentinel instead of the plaintext.
|
|
9547
9552
|
tags:
|
|
9548
9553
|
- credentials
|
|
9549
9554
|
requestBody:
|
|
@@ -9562,6 +9567,17 @@ paths:
|
|
|
9562
9567
|
id:
|
|
9563
9568
|
description: Credential UUID for lookup by ID
|
|
9564
9569
|
type: string
|
|
9570
|
+
forChat:
|
|
9571
|
+
description:
|
|
9572
|
+
Return the credential's redaction sentinel (renders as a click-to-reveal chip in chat) instead of the
|
|
9573
|
+
plaintext. Requires the chat-credential-reveal feature flag.
|
|
9574
|
+
type: boolean
|
|
9575
|
+
revealNonce:
|
|
9576
|
+
description:
|
|
9577
|
+
Conversation-bound reveal nonce from the tool-shell environment. Scopes any recorded chat-redaction
|
|
9578
|
+
authority (plaintext proof or forChat mint) to the conversation whose tool executed this reveal;
|
|
9579
|
+
without it the reveal succeeds but records no authority.
|
|
9580
|
+
type: string
|
|
9565
9581
|
responses:
|
|
9566
9582
|
"200":
|
|
9567
9583
|
description: Successful response
|
|
@@ -9572,7 +9588,7 @@ paths:
|
|
|
9572
9588
|
properties:
|
|
9573
9589
|
value:
|
|
9574
9590
|
type: string
|
|
9575
|
-
description: The plaintext credential value
|
|
9591
|
+
description: The plaintext credential value (or its redaction sentinel when forChat is set)
|
|
9576
9592
|
required:
|
|
9577
9593
|
- value
|
|
9578
9594
|
additionalProperties: false
|
|
@@ -11173,6 +11189,23 @@ paths:
|
|
|
11173
11189
|
type: array
|
|
11174
11190
|
items:
|
|
11175
11191
|
type: string
|
|
11192
|
+
attachments:
|
|
11193
|
+
description: File attachments
|
|
11194
|
+
type: array
|
|
11195
|
+
items:
|
|
11196
|
+
type: object
|
|
11197
|
+
properties:
|
|
11198
|
+
filename:
|
|
11199
|
+
type: string
|
|
11200
|
+
content_type:
|
|
11201
|
+
type: string
|
|
11202
|
+
content:
|
|
11203
|
+
type: string
|
|
11204
|
+
description: Base64-encoded file content
|
|
11205
|
+
required:
|
|
11206
|
+
- filename
|
|
11207
|
+
- content_type
|
|
11208
|
+
- content
|
|
11176
11209
|
reply_to:
|
|
11177
11210
|
description: Reply-to email ID
|
|
11178
11211
|
type: string
|
|
@@ -14058,7 +14091,7 @@ paths:
|
|
|
14058
14091
|
type: string
|
|
14059
14092
|
description:
|
|
14060
14093
|
"Filter by provider id. One of: anthropic, openai, gemini, ollama, fireworks, together, openrouter,
|
|
14061
|
-
vercel-ai-gateway, openai-compatible, minimax, atlascloud"
|
|
14094
|
+
vercel-ai-gateway, openai-compatible, minimax, atlascloud, baseten"
|
|
14062
14095
|
responses:
|
|
14063
14096
|
"200":
|
|
14064
14097
|
description: Successful response
|
|
@@ -14289,7 +14322,7 @@ paths:
|
|
|
14289
14322
|
type: string
|
|
14290
14323
|
description:
|
|
14291
14324
|
"Filter by provider. One of: anthropic, openai, gemini, ollama, fireworks, together, openrouter,
|
|
14292
|
-
vercel-ai-gateway, openai-compatible, minimax, atlascloud, vellum"
|
|
14325
|
+
vercel-ai-gateway, openai-compatible, minimax, atlascloud, baseten, vellum"
|
|
14293
14326
|
responses:
|
|
14294
14327
|
"200":
|
|
14295
14328
|
description: Successful response
|
|
@@ -14308,7 +14341,10 @@ paths:
|
|
|
14308
14341
|
post:
|
|
14309
14342
|
operationId: inference_providerconnections_post
|
|
14310
14343
|
summary: Create a provider connection
|
|
14311
|
-
description:
|
|
14344
|
+
description:
|
|
14345
|
+
Create a new named provider connection. When auth is omitted it is derived from the provider (keyless
|
|
14346
|
+
providers get none, vellum gets platform, everything else needs credential for api_key auth). Fails with 409 if
|
|
14347
|
+
a connection with this name already exists.
|
|
14312
14348
|
tags:
|
|
14313
14349
|
- inference
|
|
14314
14350
|
requestBody:
|
|
@@ -14325,6 +14361,9 @@ paths:
|
|
|
14325
14361
|
$ref: "#/components/schemas/ConnectionProvider"
|
|
14326
14362
|
auth:
|
|
14327
14363
|
$ref: "#/components/schemas/Auth"
|
|
14364
|
+
credential:
|
|
14365
|
+
type: string
|
|
14366
|
+
minLength: 1
|
|
14328
14367
|
label:
|
|
14329
14368
|
type: string
|
|
14330
14369
|
minLength: 1
|
|
@@ -14342,7 +14381,6 @@ paths:
|
|
|
14342
14381
|
required:
|
|
14343
14382
|
- name
|
|
14344
14383
|
- provider
|
|
14345
|
-
- auth
|
|
14346
14384
|
responses:
|
|
14347
14385
|
"201":
|
|
14348
14386
|
description: Successful response
|
|
@@ -14414,7 +14452,8 @@ paths:
|
|
|
14414
14452
|
operationId: inference_providerconnections_by_name_patch
|
|
14415
14453
|
summary: Update a provider connection
|
|
14416
14454
|
description:
|
|
14417
|
-
Update an existing connection. Cannot rename or change the provider.
|
|
14455
|
+
Update an existing connection. Cannot rename or change the provider. Omitting auth keeps the stored auth;
|
|
14456
|
+
passing credential alone rotates the key via provider-derived api_key auth. For the Vellum-managed connection
|
|
14418
14457
|
(vellum) the auth is locked to platform; label remains editable.
|
|
14419
14458
|
tags:
|
|
14420
14459
|
- inference
|
|
@@ -14433,6 +14472,9 @@ paths:
|
|
|
14433
14472
|
properties:
|
|
14434
14473
|
auth:
|
|
14435
14474
|
$ref: "#/components/schemas/Auth"
|
|
14475
|
+
credential:
|
|
14476
|
+
type: string
|
|
14477
|
+
minLength: 1
|
|
14436
14478
|
label:
|
|
14437
14479
|
anyOf:
|
|
14438
14480
|
- type: string
|
|
@@ -14449,8 +14491,6 @@ paths:
|
|
|
14449
14491
|
items:
|
|
14450
14492
|
$ref: "#/components/schemas/ConnectionModel"
|
|
14451
14493
|
- type: "null"
|
|
14452
|
-
required:
|
|
14453
|
-
- auth
|
|
14454
14494
|
responses:
|
|
14455
14495
|
"200":
|
|
14456
14496
|
description: Successful response
|
|
@@ -18759,6 +18799,8 @@ paths:
|
|
|
18759
18799
|
- output
|
|
18760
18800
|
- completedAt
|
|
18761
18801
|
additionalProperties: false
|
|
18802
|
+
systemCard:
|
|
18803
|
+
type: boolean
|
|
18762
18804
|
slackMessage:
|
|
18763
18805
|
type: object
|
|
18764
18806
|
properties:
|
|
@@ -18962,6 +19004,13 @@ paths:
|
|
|
18962
19004
|
snapshots, emits no echo, and does not supersede pending interactions. Honored on the standard send
|
|
18963
19005
|
path only — slash-command content bypasses it."
|
|
18964
19006
|
type: boolean
|
|
19007
|
+
source:
|
|
19008
|
+
description:
|
|
19009
|
+
'How the send was initiated when the message was sent on the user''s behalf by the UI rather than typed by
|
|
19010
|
+
hand. Current value: "nav_redirect" (a navigation shortcut redirected the user into chat with a
|
|
19011
|
+
pre-filled message). Persisted onto the message metadata for analytics attribution and used to steer
|
|
19012
|
+
the assistant toward a brief, concrete reply. Omit for messages the user typed.'
|
|
19013
|
+
type: string
|
|
18965
19014
|
onboarding:
|
|
18966
19015
|
type: object
|
|
18967
19016
|
properties:
|
|
@@ -19005,6 +19054,13 @@ paths:
|
|
|
19005
19054
|
type: array
|
|
19006
19055
|
items:
|
|
19007
19056
|
type: string
|
|
19057
|
+
researchFindings:
|
|
19058
|
+
description:
|
|
19059
|
+
Findings from pre-chat onboarding research that the user explicitly kept on the results screen. Written
|
|
19060
|
+
into the persona's onboarding section so the first turn can reference them.
|
|
19061
|
+
type: array
|
|
19062
|
+
items:
|
|
19063
|
+
type: string
|
|
19008
19064
|
title:
|
|
19009
19065
|
description:
|
|
19010
19066
|
Explicit title for the conversation minted on this first message. Persisted as a user-set title (never
|
|
@@ -22817,20 +22873,24 @@ paths:
|
|
|
22817
22873
|
/v1/plugins/{name}/upgrade:
|
|
22818
22874
|
post:
|
|
22819
22875
|
operationId: plugins_by_name_upgrade_post
|
|
22820
|
-
summary: Upgrade a plugin to
|
|
22876
|
+
summary: Upgrade a plugin to its source's current revision
|
|
22821
22877
|
description:
|
|
22822
|
-
'Move an installed plugin to
|
|
22823
|
-
`<workspaceDir>/plugins/<name>/`.
|
|
22824
|
-
|
|
22825
|
-
|
|
22826
|
-
|
|
22827
|
-
|
|
22828
|
-
|
|
22829
|
-
|
|
22830
|
-
|
|
22831
|
-
|
|
22832
|
-
|
|
22833
|
-
|
|
22878
|
+
'Move an installed plugin to its source''s current revision, re-materializing it under
|
|
22879
|
+
`<workspaceDir>/plugins/<name>/`. A marketplace plugin advances to the curated pin; a plugin installed directly
|
|
22880
|
+
from a GitHub URL (untrusted, not in the marketplace) advances to whatever its recorded ref now resolves to — a
|
|
22881
|
+
pinned SHA is immutable (a no-op), a branch/tag/HEAD moves as upstream does — re-materialized verbatim with no
|
|
22882
|
+
curated adapter overlay, exactly as the original untrusted install was. The target ref is never taken from the
|
|
22883
|
+
request (no caller-supplied ref), mirroring `plugins install`''s curation boundary. A no-op (`outcome:
|
|
22884
|
+
"already-up-to-date"`) when the installed commit already equals the target; pass `dryRun` to preview the move
|
|
22885
|
+
(`outcome: "would-upgrade"`) without touching the install. Installs lacking provenance are re-pinned to the
|
|
22886
|
+
current SHA. The upgraded code is picked up live on the next read (no restart required). `strategy` controls how
|
|
22887
|
+
local edits are reconciled: `overwrite` (default) discards them and re-installs the target wholesale;
|
|
22888
|
+
`ours`/`theirs`/`assistant` perform a three-way merge against the re-materialized install commit, carrying
|
|
22889
|
+
non-conflicting edits from both sides forward and resolving conflicting hunks toward the local edit (`ours`) or
|
|
22890
|
+
the target (`theirs`), or writing git conflict markers into the file and reporting them in
|
|
22891
|
+
`conflicts`/`binaryConflicts` for the assistant to resolve (`assistant`). A merge strategy whose install-time
|
|
22892
|
+
baseline cannot be reconstructed returns 409. Mirrors the CLI''s `assistant plugins upgrade <name> [--strategy
|
|
22893
|
+
<s>]`.'
|
|
22834
22894
|
tags:
|
|
22835
22895
|
- plugins
|
|
22836
22896
|
parameters:
|
|
@@ -22959,8 +23019,8 @@ paths:
|
|
|
22959
23019
|
description: No copy of the plugin is installed, or its source resolves to nothing.
|
|
22960
23020
|
"409":
|
|
22961
23021
|
description:
|
|
22962
|
-
The install
|
|
22963
|
-
install-time baseline cannot be reconstructed.
|
|
23022
|
+
The install has neither a marketplace entry nor a recorded GitHub source to advance to, or a merge strategy
|
|
23023
|
+
was requested whose install-time baseline cannot be reconstructed.
|
|
22964
23024
|
"503":
|
|
22965
23025
|
description: The plugin source (GitHub) was temporarily unavailable; the upgrade is retryable.
|
|
22966
23026
|
/v1/plugins/{name}/versions:
|
|
@@ -29006,8 +29066,20 @@ paths:
|
|
|
29006
29066
|
flushed:
|
|
29007
29067
|
type: boolean
|
|
29008
29068
|
const: true
|
|
29069
|
+
sent:
|
|
29070
|
+
type: number
|
|
29071
|
+
description: Events POSTed to the platform
|
|
29072
|
+
persisted:
|
|
29073
|
+
type: number
|
|
29074
|
+
description: Events the platform confirmed written
|
|
29075
|
+
dropped:
|
|
29076
|
+
type: number
|
|
29077
|
+
description: Events that did not land (sent - persisted)
|
|
29009
29078
|
required:
|
|
29010
29079
|
- flushed
|
|
29080
|
+
- sent
|
|
29081
|
+
- persisted
|
|
29082
|
+
- dropped
|
|
29011
29083
|
additionalProperties: false
|
|
29012
29084
|
- type: object
|
|
29013
29085
|
properties:
|
|
@@ -29020,11 +29092,16 @@ paths:
|
|
|
29020
29092
|
- flushed
|
|
29021
29093
|
- reason
|
|
29022
29094
|
additionalProperties: false
|
|
29023
|
-
/v1/telemetry/
|
|
29095
|
+
/v1/telemetry/ingest:
|
|
29024
29096
|
post:
|
|
29025
|
-
operationId:
|
|
29026
|
-
summary: Record
|
|
29027
|
-
description:
|
|
29097
|
+
operationId: telemetry_ingest_post
|
|
29098
|
+
summary: Record an outbox-backed telemetry event
|
|
29099
|
+
description:
|
|
29100
|
+
Record any outbox-backed telemetry event by its wire `type` + `fields`. For events a client observes and
|
|
29101
|
+
the daemon can't detect on its own (e.g. onboarding_research). The type must be an outbox-backed event — the
|
|
29102
|
+
watermark types (turn, llm_usage, tool_executed) have no variant — and the payload must pass the platform wire
|
|
29103
|
+
schema. Gated on share_analytics consent like every other outbox-backed event; the platform re-checks the
|
|
29104
|
+
owner's consent server-side at ingest.
|
|
29028
29105
|
tags:
|
|
29029
29106
|
- telemetry
|
|
29030
29107
|
requestBody:
|
|
@@ -29032,13 +29109,403 @@ paths:
|
|
|
29032
29109
|
content:
|
|
29033
29110
|
application/json:
|
|
29034
29111
|
schema:
|
|
29112
|
+
oneOf:
|
|
29113
|
+
- type: object
|
|
29114
|
+
properties:
|
|
29115
|
+
type:
|
|
29116
|
+
type: string
|
|
29117
|
+
const: lifecycle
|
|
29118
|
+
fields:
|
|
29119
|
+
type: object
|
|
29120
|
+
properties:
|
|
29121
|
+
event_name:
|
|
29122
|
+
type: string
|
|
29123
|
+
minLength: 1
|
|
29124
|
+
maxLength: 64
|
|
29125
|
+
required:
|
|
29126
|
+
- event_name
|
|
29127
|
+
description:
|
|
29128
|
+
Wire event fields, excluding the daemon-stamped base fields (type, daemon_event_id, recorded_at,
|
|
29129
|
+
assistant_version).
|
|
29130
|
+
daemon_event_id:
|
|
29131
|
+
description:
|
|
29132
|
+
"Optional collapse key: rows sharing an id collapse downstream (e.g. a retried report). Defaults to a fresh
|
|
29133
|
+
per-row id."
|
|
29134
|
+
type: string
|
|
29135
|
+
minLength: 1
|
|
29136
|
+
maxLength: 128
|
|
29137
|
+
required:
|
|
29138
|
+
- type
|
|
29139
|
+
- fields
|
|
29140
|
+
- type: object
|
|
29141
|
+
properties:
|
|
29142
|
+
type:
|
|
29143
|
+
type: string
|
|
29144
|
+
const: onboarding
|
|
29145
|
+
fields:
|
|
29146
|
+
type: object
|
|
29147
|
+
properties:
|
|
29148
|
+
screen:
|
|
29149
|
+
type: string
|
|
29150
|
+
minLength: 1
|
|
29151
|
+
maxLength: 64
|
|
29152
|
+
tools:
|
|
29153
|
+
type: array
|
|
29154
|
+
items:
|
|
29155
|
+
type: string
|
|
29156
|
+
minLength: 1
|
|
29157
|
+
maxLength: 128
|
|
29158
|
+
tasks:
|
|
29159
|
+
type: array
|
|
29160
|
+
items:
|
|
29161
|
+
type: string
|
|
29162
|
+
minLength: 1
|
|
29163
|
+
maxLength: 128
|
|
29164
|
+
tone:
|
|
29165
|
+
type: string
|
|
29166
|
+
minLength: 1
|
|
29167
|
+
maxLength: 64
|
|
29168
|
+
google_connected:
|
|
29169
|
+
type: boolean
|
|
29170
|
+
google_scopes:
|
|
29171
|
+
type: array
|
|
29172
|
+
items:
|
|
29173
|
+
type: string
|
|
29174
|
+
minLength: 1
|
|
29175
|
+
maxLength: 256
|
|
29176
|
+
ab_variant:
|
|
29177
|
+
type: string
|
|
29178
|
+
minLength: 1
|
|
29179
|
+
maxLength: 64
|
|
29180
|
+
session_id:
|
|
29181
|
+
type: string
|
|
29182
|
+
minLength: 1
|
|
29183
|
+
maxLength: 128
|
|
29184
|
+
step_name:
|
|
29185
|
+
type: string
|
|
29186
|
+
minLength: 1
|
|
29187
|
+
maxLength: 128
|
|
29188
|
+
step_index:
|
|
29189
|
+
type: integer
|
|
29190
|
+
minimum: 0
|
|
29191
|
+
maximum: 9007199254740991
|
|
29192
|
+
completed_at:
|
|
29193
|
+
type: string
|
|
29194
|
+
minLength: 1
|
|
29195
|
+
maxLength: 64
|
|
29196
|
+
funnel_version:
|
|
29197
|
+
type: string
|
|
29198
|
+
minLength: 1
|
|
29199
|
+
maxLength: 128
|
|
29200
|
+
user_id:
|
|
29201
|
+
anyOf:
|
|
29202
|
+
- type: string
|
|
29203
|
+
minLength: 1
|
|
29204
|
+
maxLength: 64
|
|
29205
|
+
- type: "null"
|
|
29206
|
+
outcome:
|
|
29207
|
+
type: string
|
|
29208
|
+
minLength: 1
|
|
29209
|
+
maxLength: 32
|
|
29210
|
+
description:
|
|
29211
|
+
Wire event fields, excluding the daemon-stamped base fields (type, daemon_event_id, recorded_at,
|
|
29212
|
+
assistant_version).
|
|
29213
|
+
daemon_event_id:
|
|
29214
|
+
description:
|
|
29215
|
+
"Optional collapse key: rows sharing an id collapse downstream (e.g. a retried report). Defaults to a fresh
|
|
29216
|
+
per-row id."
|
|
29217
|
+
type: string
|
|
29218
|
+
minLength: 1
|
|
29219
|
+
maxLength: 128
|
|
29220
|
+
required:
|
|
29221
|
+
- type
|
|
29222
|
+
- fields
|
|
29223
|
+
- type: object
|
|
29224
|
+
properties:
|
|
29225
|
+
type:
|
|
29226
|
+
type: string
|
|
29227
|
+
const: auth_fallback
|
|
29228
|
+
fields:
|
|
29229
|
+
type: object
|
|
29230
|
+
properties:
|
|
29231
|
+
guard:
|
|
29232
|
+
type: string
|
|
29233
|
+
minLength: 1
|
|
29234
|
+
maxLength: 64
|
|
29235
|
+
failure_kind:
|
|
29236
|
+
type: string
|
|
29237
|
+
minLength: 1
|
|
29238
|
+
maxLength: 64
|
|
29239
|
+
path:
|
|
29240
|
+
type: string
|
|
29241
|
+
minLength: 1
|
|
29242
|
+
maxLength: 2048
|
|
29243
|
+
count:
|
|
29244
|
+
type: integer
|
|
29245
|
+
minimum: 0
|
|
29246
|
+
maximum: 9007199254740991
|
|
29247
|
+
window_start:
|
|
29248
|
+
type: integer
|
|
29249
|
+
minimum: 0
|
|
29250
|
+
maximum: 9007199254740991
|
|
29251
|
+
window_end:
|
|
29252
|
+
type: integer
|
|
29253
|
+
minimum: 0
|
|
29254
|
+
maximum: 9007199254740991
|
|
29255
|
+
required:
|
|
29256
|
+
- guard
|
|
29257
|
+
- failure_kind
|
|
29258
|
+
- path
|
|
29259
|
+
- count
|
|
29260
|
+
- window_start
|
|
29261
|
+
- window_end
|
|
29262
|
+
description:
|
|
29263
|
+
Wire event fields, excluding the daemon-stamped base fields (type, daemon_event_id, recorded_at,
|
|
29264
|
+
assistant_version).
|
|
29265
|
+
daemon_event_id:
|
|
29266
|
+
description:
|
|
29267
|
+
"Optional collapse key: rows sharing an id collapse downstream (e.g. a retried report). Defaults to a fresh
|
|
29268
|
+
per-row id."
|
|
29269
|
+
type: string
|
|
29270
|
+
minLength: 1
|
|
29271
|
+
maxLength: 128
|
|
29272
|
+
required:
|
|
29273
|
+
- type
|
|
29274
|
+
- fields
|
|
29275
|
+
- type: object
|
|
29276
|
+
properties:
|
|
29277
|
+
type:
|
|
29278
|
+
type: string
|
|
29279
|
+
const: skill_loaded
|
|
29280
|
+
fields:
|
|
29281
|
+
type: object
|
|
29282
|
+
properties:
|
|
29283
|
+
provider:
|
|
29284
|
+
anyOf:
|
|
29285
|
+
- type: string
|
|
29286
|
+
minLength: 1
|
|
29287
|
+
maxLength: 64
|
|
29288
|
+
- type: "null"
|
|
29289
|
+
model:
|
|
29290
|
+
anyOf:
|
|
29291
|
+
- type: string
|
|
29292
|
+
minLength: 1
|
|
29293
|
+
maxLength: 128
|
|
29294
|
+
- type: "null"
|
|
29295
|
+
inference_profile:
|
|
29296
|
+
anyOf:
|
|
29297
|
+
- type: string
|
|
29298
|
+
minLength: 1
|
|
29299
|
+
maxLength: 255
|
|
29300
|
+
- type: "null"
|
|
29301
|
+
inference_profile_source:
|
|
29302
|
+
anyOf:
|
|
29303
|
+
- type: string
|
|
29304
|
+
minLength: 1
|
|
29305
|
+
maxLength: 255
|
|
29306
|
+
- type: "null"
|
|
29307
|
+
skill_name:
|
|
29308
|
+
type: string
|
|
29309
|
+
minLength: 1
|
|
29310
|
+
maxLength: 255
|
|
29311
|
+
skill_updated_at:
|
|
29312
|
+
anyOf:
|
|
29313
|
+
- type: string
|
|
29314
|
+
minLength: 1
|
|
29315
|
+
maxLength: 64
|
|
29316
|
+
- type: "null"
|
|
29317
|
+
conversation_id:
|
|
29318
|
+
anyOf:
|
|
29319
|
+
- type: string
|
|
29320
|
+
minLength: 1
|
|
29321
|
+
maxLength: 128
|
|
29322
|
+
- type: "null"
|
|
29323
|
+
required:
|
|
29324
|
+
- skill_name
|
|
29325
|
+
description:
|
|
29326
|
+
Wire event fields, excluding the daemon-stamped base fields (type, daemon_event_id, recorded_at,
|
|
29327
|
+
assistant_version).
|
|
29328
|
+
daemon_event_id:
|
|
29329
|
+
description:
|
|
29330
|
+
"Optional collapse key: rows sharing an id collapse downstream (e.g. a retried report). Defaults to a fresh
|
|
29331
|
+
per-row id."
|
|
29332
|
+
type: string
|
|
29333
|
+
minLength: 1
|
|
29334
|
+
maxLength: 128
|
|
29335
|
+
required:
|
|
29336
|
+
- type
|
|
29337
|
+
- fields
|
|
29338
|
+
- type: object
|
|
29339
|
+
properties:
|
|
29340
|
+
type:
|
|
29341
|
+
type: string
|
|
29342
|
+
const: watchdog
|
|
29343
|
+
fields:
|
|
29344
|
+
type: object
|
|
29345
|
+
properties:
|
|
29346
|
+
check_name:
|
|
29347
|
+
type: string
|
|
29348
|
+
minLength: 1
|
|
29349
|
+
maxLength: 128
|
|
29350
|
+
value:
|
|
29351
|
+
anyOf:
|
|
29352
|
+
- type: number
|
|
29353
|
+
- type: "null"
|
|
29354
|
+
detail:
|
|
29355
|
+
anyOf:
|
|
29356
|
+
- $ref: "#/components/schemas/TelemetryJsonValue"
|
|
29357
|
+
- type: "null"
|
|
29358
|
+
required:
|
|
29359
|
+
- check_name
|
|
29360
|
+
description:
|
|
29361
|
+
Wire event fields, excluding the daemon-stamped base fields (type, daemon_event_id, recorded_at,
|
|
29362
|
+
assistant_version).
|
|
29363
|
+
daemon_event_id:
|
|
29364
|
+
description:
|
|
29365
|
+
"Optional collapse key: rows sharing an id collapse downstream (e.g. a retried report). Defaults to a fresh
|
|
29366
|
+
per-row id."
|
|
29367
|
+
type: string
|
|
29368
|
+
minLength: 1
|
|
29369
|
+
maxLength: 128
|
|
29370
|
+
required:
|
|
29371
|
+
- type
|
|
29372
|
+
- fields
|
|
29373
|
+
- type: object
|
|
29374
|
+
properties:
|
|
29375
|
+
type:
|
|
29376
|
+
type: string
|
|
29377
|
+
const: config_setting
|
|
29378
|
+
fields:
|
|
29379
|
+
type: object
|
|
29380
|
+
properties:
|
|
29381
|
+
config_key:
|
|
29382
|
+
type: string
|
|
29383
|
+
minLength: 1
|
|
29384
|
+
maxLength: 128
|
|
29385
|
+
config_value:
|
|
29386
|
+
type: string
|
|
29387
|
+
minLength: 1
|
|
29388
|
+
maxLength: 256
|
|
29389
|
+
required:
|
|
29390
|
+
- config_key
|
|
29391
|
+
- config_value
|
|
29392
|
+
description:
|
|
29393
|
+
Wire event fields, excluding the daemon-stamped base fields (type, daemon_event_id, recorded_at,
|
|
29394
|
+
assistant_version).
|
|
29395
|
+
daemon_event_id:
|
|
29396
|
+
description:
|
|
29397
|
+
"Optional collapse key: rows sharing an id collapse downstream (e.g. a retried report). Defaults to a fresh
|
|
29398
|
+
per-row id."
|
|
29399
|
+
type: string
|
|
29400
|
+
minLength: 1
|
|
29401
|
+
maxLength: 128
|
|
29402
|
+
required:
|
|
29403
|
+
- type
|
|
29404
|
+
- fields
|
|
29405
|
+
- type: object
|
|
29406
|
+
properties:
|
|
29407
|
+
type:
|
|
29408
|
+
type: string
|
|
29409
|
+
const: onboarding_research
|
|
29410
|
+
fields:
|
|
29411
|
+
type: object
|
|
29412
|
+
properties:
|
|
29413
|
+
conversation_id:
|
|
29414
|
+
anyOf:
|
|
29415
|
+
- type: string
|
|
29416
|
+
minLength: 1
|
|
29417
|
+
maxLength: 64
|
|
29418
|
+
- type: "null"
|
|
29419
|
+
status:
|
|
29420
|
+
type: string
|
|
29421
|
+
minLength: 1
|
|
29422
|
+
maxLength: 32
|
|
29423
|
+
self_reported_occupation:
|
|
29424
|
+
anyOf:
|
|
29425
|
+
- type: string
|
|
29426
|
+
maxLength: 256
|
|
29427
|
+
- type: "null"
|
|
29428
|
+
self_reported_hobbies:
|
|
29429
|
+
maxItems: 32
|
|
29430
|
+
type: array
|
|
29431
|
+
items:
|
|
29432
|
+
type: string
|
|
29433
|
+
minLength: 1
|
|
29434
|
+
maxLength: 128
|
|
29435
|
+
self_reported_timezone:
|
|
29436
|
+
anyOf:
|
|
29437
|
+
- type: string
|
|
29438
|
+
maxLength: 64
|
|
29439
|
+
- type: "null"
|
|
29440
|
+
claims:
|
|
29441
|
+
maxItems: 20
|
|
29442
|
+
type: array
|
|
29443
|
+
items:
|
|
29444
|
+
$ref: "#/components/schemas/TelemetryJsonValue"
|
|
29445
|
+
claim_count:
|
|
29446
|
+
type: integer
|
|
29447
|
+
minimum: 0
|
|
29448
|
+
maximum: 9007199254740991
|
|
29449
|
+
claims_confident:
|
|
29450
|
+
type: integer
|
|
29451
|
+
minimum: 0
|
|
29452
|
+
maximum: 9007199254740991
|
|
29453
|
+
claims_maybe:
|
|
29454
|
+
type: integer
|
|
29455
|
+
minimum: 0
|
|
29456
|
+
maximum: 9007199254740991
|
|
29457
|
+
claims_guessing:
|
|
29458
|
+
type: integer
|
|
29459
|
+
minimum: 0
|
|
29460
|
+
maximum: 9007199254740991
|
|
29461
|
+
suggestions:
|
|
29462
|
+
maxItems: 20
|
|
29463
|
+
type: array
|
|
29464
|
+
items:
|
|
29465
|
+
$ref: "#/components/schemas/TelemetryJsonValue"
|
|
29466
|
+
suggestion_count:
|
|
29467
|
+
type: integer
|
|
29468
|
+
minimum: 0
|
|
29469
|
+
maximum: 9007199254740991
|
|
29470
|
+
plugins:
|
|
29471
|
+
maxItems: 20
|
|
29472
|
+
type: array
|
|
29473
|
+
items:
|
|
29474
|
+
type: string
|
|
29475
|
+
minLength: 1
|
|
29476
|
+
maxLength: 128
|
|
29477
|
+
installed_plugins:
|
|
29478
|
+
maxItems: 20
|
|
29479
|
+
type: array
|
|
29480
|
+
items:
|
|
29481
|
+
type: string
|
|
29482
|
+
minLength: 1
|
|
29483
|
+
maxLength: 128
|
|
29484
|
+
required:
|
|
29485
|
+
- status
|
|
29486
|
+
- claims
|
|
29487
|
+
- claim_count
|
|
29488
|
+
- claims_confident
|
|
29489
|
+
- claims_maybe
|
|
29490
|
+
- claims_guessing
|
|
29491
|
+
- suggestions
|
|
29492
|
+
- suggestion_count
|
|
29493
|
+
- plugins
|
|
29494
|
+
- installed_plugins
|
|
29495
|
+
description:
|
|
29496
|
+
Wire event fields, excluding the daemon-stamped base fields (type, daemon_event_id, recorded_at,
|
|
29497
|
+
assistant_version).
|
|
29498
|
+
daemon_event_id:
|
|
29499
|
+
description:
|
|
29500
|
+
"Optional collapse key: rows sharing an id collapse downstream (e.g. a retried report). Defaults to a fresh
|
|
29501
|
+
per-row id."
|
|
29502
|
+
type: string
|
|
29503
|
+
minLength: 1
|
|
29504
|
+
maxLength: 128
|
|
29505
|
+
required:
|
|
29506
|
+
- type
|
|
29507
|
+
- fields
|
|
29035
29508
|
type: object
|
|
29036
|
-
properties:
|
|
29037
|
-
event_name:
|
|
29038
|
-
type: string
|
|
29039
|
-
description: "Event name: app_open or hatch"
|
|
29040
|
-
required:
|
|
29041
|
-
- event_name
|
|
29042
29509
|
responses:
|
|
29043
29510
|
"200":
|
|
29044
29511
|
description: Successful response
|
|
@@ -29051,30 +29518,23 @@ paths:
|
|
|
29051
29518
|
id:
|
|
29052
29519
|
type: string
|
|
29053
29520
|
description: Event ID
|
|
29054
|
-
event_name:
|
|
29055
|
-
type: string
|
|
29056
29521
|
required:
|
|
29057
29522
|
- id
|
|
29058
|
-
- event_name
|
|
29059
29523
|
additionalProperties: false
|
|
29060
29524
|
- type: object
|
|
29061
29525
|
properties:
|
|
29062
29526
|
skipped:
|
|
29063
29527
|
type: boolean
|
|
29064
29528
|
const: true
|
|
29065
|
-
description: Event skipped
|
|
29529
|
+
description: "Event skipped: usage data collection is disabled or the telemetry database is unavailable"
|
|
29066
29530
|
required:
|
|
29067
29531
|
- skipped
|
|
29068
29532
|
additionalProperties: false
|
|
29069
|
-
/v1/telemetry/
|
|
29533
|
+
/v1/telemetry/lifecycle:
|
|
29070
29534
|
post:
|
|
29071
|
-
operationId:
|
|
29072
|
-
summary: Record
|
|
29073
|
-
description:
|
|
29074
|
-
'Record the settled result of an onboarding "research me" web-search turn (claims, suggestions, and
|
|
29075
|
-
plugin picks). Client-orchestrated: the web client reports this once it has observed the turn complete. Gated on
|
|
29076
|
-
share_diagnostics consent (in addition to share_analytics) since the payload carries the model''s raw inferred
|
|
29077
|
-
claims about the user.'
|
|
29535
|
+
operationId: telemetry_lifecycle_post
|
|
29536
|
+
summary: Record lifecycle event
|
|
29537
|
+
description: Record a telemetry lifecycle event (app_open, hatch).
|
|
29078
29538
|
tags:
|
|
29079
29539
|
- telemetry
|
|
29080
29540
|
requestBody:
|
|
@@ -29084,63 +29544,11 @@ paths:
|
|
|
29084
29544
|
schema:
|
|
29085
29545
|
type: object
|
|
29086
29546
|
properties:
|
|
29087
|
-
|
|
29088
|
-
anyOf:
|
|
29089
|
-
- type: string
|
|
29090
|
-
- type: "null"
|
|
29091
|
-
status:
|
|
29547
|
+
event_name:
|
|
29092
29548
|
type: string
|
|
29093
|
-
|
|
29094
|
-
- done
|
|
29095
|
-
- error
|
|
29096
|
-
claims:
|
|
29097
|
-
type: array
|
|
29098
|
-
items:
|
|
29099
|
-
type: object
|
|
29100
|
-
properties:
|
|
29101
|
-
claim:
|
|
29102
|
-
type: string
|
|
29103
|
-
confidence:
|
|
29104
|
-
type: string
|
|
29105
|
-
enum:
|
|
29106
|
-
- confident
|
|
29107
|
-
- maybe
|
|
29108
|
-
- guessing
|
|
29109
|
-
sources:
|
|
29110
|
-
type: array
|
|
29111
|
-
items:
|
|
29112
|
-
type: string
|
|
29113
|
-
required:
|
|
29114
|
-
- claim
|
|
29115
|
-
- confidence
|
|
29116
|
-
- sources
|
|
29117
|
-
suggestions:
|
|
29118
|
-
type: array
|
|
29119
|
-
items:
|
|
29120
|
-
type: object
|
|
29121
|
-
properties:
|
|
29122
|
-
suggestion:
|
|
29123
|
-
type: string
|
|
29124
|
-
prompt:
|
|
29125
|
-
type: string
|
|
29126
|
-
required:
|
|
29127
|
-
- suggestion
|
|
29128
|
-
- prompt
|
|
29129
|
-
plugins:
|
|
29130
|
-
type: array
|
|
29131
|
-
items:
|
|
29132
|
-
type: string
|
|
29133
|
-
installed_plugins:
|
|
29134
|
-
type: array
|
|
29135
|
-
items:
|
|
29136
|
-
type: string
|
|
29549
|
+
description: "Event name: app_open or hatch"
|
|
29137
29550
|
required:
|
|
29138
|
-
-
|
|
29139
|
-
- status
|
|
29140
|
-
- claims
|
|
29141
|
-
- suggestions
|
|
29142
|
-
- plugins
|
|
29143
|
-
- installed_plugins
|
|
29551
|
+
- event_name
|
|
29144
29552
|
responses:
|
|
29145
29553
|
"200":
|
|
29146
29554
|
description: Successful response
|
|
@@ -29153,15 +29561,18 @@ paths:
|
|
|
29153
29561
|
id:
|
|
29154
29562
|
type: string
|
|
29155
29563
|
description: Event ID
|
|
29564
|
+
event_name:
|
|
29565
|
+
type: string
|
|
29156
29566
|
required:
|
|
29157
29567
|
- id
|
|
29568
|
+
- event_name
|
|
29158
29569
|
additionalProperties: false
|
|
29159
29570
|
- type: object
|
|
29160
29571
|
properties:
|
|
29161
29572
|
skipped:
|
|
29162
29573
|
type: boolean
|
|
29163
29574
|
const: true
|
|
29164
|
-
description:
|
|
29575
|
+
description: Event skipped due to usage data collection being disabled
|
|
29165
29576
|
required:
|
|
29166
29577
|
- skipped
|
|
29167
29578
|
additionalProperties: false
|
|
@@ -31540,8 +31951,6 @@ components:
|
|
|
31540
31951
|
anyOf:
|
|
31541
31952
|
- type: object
|
|
31542
31953
|
properties:
|
|
31543
|
-
mode:
|
|
31544
|
-
$ref: "#/components/schemas/ServiceMode"
|
|
31545
31954
|
provider:
|
|
31546
31955
|
type: string
|
|
31547
31956
|
additionalProperties: {}
|
|
@@ -31578,6 +31987,7 @@ components:
|
|
|
31578
31987
|
- minimax
|
|
31579
31988
|
- atlascloud
|
|
31580
31989
|
- together
|
|
31990
|
+
- baseten
|
|
31581
31991
|
ProfilePatchEntry:
|
|
31582
31992
|
type: object
|
|
31583
31993
|
properties:
|
|
@@ -31954,6 +32364,7 @@ components:
|
|
|
31954
32364
|
- openai-compatible
|
|
31955
32365
|
- minimax
|
|
31956
32366
|
- atlascloud
|
|
32367
|
+
- baseten
|
|
31957
32368
|
- vellum
|
|
31958
32369
|
Auth:
|
|
31959
32370
|
oneOf:
|
|
@@ -32016,6 +32427,20 @@ components:
|
|
|
32016
32427
|
minLength: 1
|
|
32017
32428
|
required:
|
|
32018
32429
|
- id
|
|
32430
|
+
TelemetryJsonValue:
|
|
32431
|
+
anyOf:
|
|
32432
|
+
- type: string
|
|
32433
|
+
- type: number
|
|
32434
|
+
- type: boolean
|
|
32435
|
+
- type: "null"
|
|
32436
|
+
- type: array
|
|
32437
|
+
items:
|
|
32438
|
+
$ref: "#/components/schemas/TelemetryJsonValue"
|
|
32439
|
+
- type: object
|
|
32440
|
+
propertyNames:
|
|
32441
|
+
type: string
|
|
32442
|
+
additionalProperties:
|
|
32443
|
+
$ref: "#/components/schemas/TelemetryJsonValue"
|
|
32019
32444
|
ConfigGetResponse:
|
|
32020
32445
|
type: object
|
|
32021
32446
|
properties:
|
|
@@ -32338,8 +32763,6 @@ components:
|
|
|
32338
32763
|
web-fetch:
|
|
32339
32764
|
type: object
|
|
32340
32765
|
properties:
|
|
32341
|
-
mode:
|
|
32342
|
-
$ref: "#/components/schemas/ServiceMode"
|
|
32343
32766
|
provider:
|
|
32344
32767
|
type: string
|
|
32345
32768
|
additionalProperties: {}
|