@opengeni/api-router 3.0.1 → 3.1.2
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/access-grant-rls.d.ts +8 -1
- package/dist/admission-trace.d.ts +8 -0
- package/dist/app.d.ts +50 -3
- package/dist/app.js +10 -1
- package/dist/artifact-catalog-cursor.d.ts +1 -0
- package/dist/attached-browser-viewer.d.ts +11 -0
- package/dist/auth/managed-auth-attempt-context.d.ts +2 -0
- package/dist/auth/managed-auth-rate-limits.d.ts +167 -0
- package/dist/auth/managed-auth-session-adapter.d.ts +9 -1
- package/dist/auth/managed-auth.d.ts +72 -5
- package/dist/auth/managed-sign-in-notifications.d.ts +4 -0
- package/dist/auth/new-signups-gate.d.ts +23 -0
- package/dist/auth/signup-funnel-metrics.d.ts +44 -0
- package/dist/azure-live.d.ts +28 -0
- package/dist/browser-action-fences.d.ts +13 -0
- package/dist/browser-controller-authority.d.ts +1 -61
- package/dist/browser-ephemeral.d.ts +5 -0
- package/dist/browser-lost-runtime-end.d.ts +24 -0
- package/dist/browser-state-authority.d.ts +1 -27
- package/dist/chunk-OGQDXVXY.js +18 -0
- package/dist/chunk-OGQDXVXY.js.map +1 -0
- package/dist/{chunk-AJ62T5QN.js → chunk-OT56OY4V.js} +80503 -39869
- package/dist/chunk-OT56OY4V.js.map +1 -0
- package/dist/claude-default-models.d.ts +19 -0
- package/dist/claude-subscription-core.d.ts +50 -0
- package/dist/claude-subscription-oauth.d.ts +36 -0
- package/dist/claude-subscription-profile.d.ts +9 -0
- package/dist/claude-subscription-usage.d.ts +6 -0
- package/dist/claude-workspace-connection.d.ts +15 -0
- package/dist/codemode.d.ts +40 -5
- package/dist/codex-realtime.d.ts +29 -3
- package/dist/codex-session-pointers.d.ts +19 -0
- package/dist/connection-ownership.d.ts +6 -3
- package/dist/controller-data-plane.d.ts +16 -0
- package/dist/credit-promotion-snapshot.d.ts +6 -0
- package/dist/editable-artifact-source-session.d.ts +3 -0
- package/dist/editable-artifact-websocket.d.ts +5 -3
- package/dist/fatal-process-boundary.d.ts +9 -1
- package/dist/github-access.d.ts +7 -1
- package/dist/github-browser-flow.d.ts +1 -1
- package/dist/http/acting-person.d.ts +36 -0
- package/dist/http/api-contract-compat.d.ts +19 -0
- package/dist/http/api-error.d.ts +50 -1
- package/dist/http/auth.d.ts +8 -1
- package/dist/http/cors.d.ts +12 -0
- package/dist/http/deprecation.d.ts +42 -0
- package/dist/http/keyed-admission.d.ts +12 -0
- package/dist/http/local-browser-boundary.d.ts +72 -0
- package/dist/http/metrics-listener.d.ts +22 -0
- package/dist/http/path-identifier.d.ts +17 -0
- package/dist/http/registered-route-label.d.ts +16 -0
- package/dist/http/rejection-telemetry.d.ts +34 -0
- package/dist/http/request-body.d.ts +27 -0
- package/dist/http/request-source.d.ts +41 -3
- package/dist/http/sse.d.ts +12 -1
- package/dist/http/unmatched-route.d.ts +18 -0
- package/dist/http/user-content.d.ts +36 -0
- package/dist/http/variable-sets-removed.d.ts +41 -0
- package/dist/http/websocket-upgrade-dispatch.d.ts +18 -0
- package/dist/index.js +1279 -108
- package/dist/index.js.map +1 -1
- package/dist/integration-connect-metrics.d.ts +35 -0
- package/dist/integration-endpoint-test.d.ts +20 -0
- package/dist/integrations/api-integrations.d.ts +2 -2
- package/dist/integrations/atlassian.d.ts +8 -3
- package/dist/integrations/fiken.d.ts +3 -1
- package/dist/integrations/github-lens-connect.d.ts +37 -66
- package/dist/integrations/google-drive.d.ts +2 -0
- package/dist/integrations/integration-commit-authority.d.ts +13 -0
- package/dist/integrations/marketplace-plugin.d.ts +43 -43
- package/dist/integrations/oauth-client.d.ts +171 -12
- package/dist/integrations/oauth-profiles.d.ts +42 -13
- package/dist/integrations/onepassword-vault-provider.d.ts +9 -0
- package/dist/integrations/slack-bot.d.ts +285 -7
- package/dist/integrations/slack-file-upload-flow.d.ts +62 -0
- package/dist/integrations/slack-interactions.d.ts +89 -10
- package/dist/integrations/slack-mrkdwn.d.ts +41 -0
- package/dist/integrations/slack-routing.d.ts +1 -1
- package/dist/integrations/slack-session-defaults.d.ts +58 -0
- package/dist/integrations/slack-task-file-upload.d.ts +36 -0
- package/dist/integrations/slack-tool-review.d.ts +5 -0
- package/dist/interaction-agent-access.d.ts +13 -8
- package/dist/interaction-agent-version.d.ts +21 -0
- package/dist/interaction-holder-heartbeat.d.ts +5 -0
- package/dist/interaction-metrics.d.ts +27 -2
- package/dist/interaction-route-stages.d.ts +25 -0
- package/dist/interaction-secrets-vault.d.ts +20 -0
- package/dist/interaction-secrets.d.ts +103 -0
- package/dist/mcp/action-catalog-types.d.ts +14 -0
- package/dist/mcp/action-catalog.gen.d.ts +2 -0
- package/dist/mcp/action-descriptions.d.ts +4 -0
- package/dist/mcp/action-schema-imports.gen.d.ts +1 -0
- package/dist/mcp/capability-account-readiness.d.ts +7 -0
- package/dist/mcp/child-read-evidence.d.ts +9 -0
- package/dist/mcp/company-profile-agent-admin.d.ts +12 -0
- package/dist/mcp/contract-input.d.ts +13 -0
- package/dist/mcp/documents.d.ts +2 -0
- package/dist/mcp/first-party-tool-permissions.d.ts +3 -606
- package/dist/mcp/notification-tools.d.ts +26 -0
- package/dist/mcp/orchestration-failure-diagnostic.d.ts +43 -0
- package/dist/mcp/scheduled-task-input.d.ts +1309 -0
- package/dist/mcp/scheduled-task-view.d.ts +217 -3
- package/dist/mcp/secret-tools.d.ts +14 -0
- package/dist/mcp/server.d.ts +108 -5
- package/dist/mcp/session-admin-access-tools.d.ts +33 -0
- package/dist/mcp/session-event-errors.d.ts +28 -0
- package/dist/mcp/session-event-view.d.ts +62 -0
- package/dist/mcp/session-view.d.ts +15 -0
- package/dist/mcp/session-wait.d.ts +18 -0
- package/dist/mcp/site-agent-clamp-tools.d.ts +38 -0
- package/dist/mcp/site-data-tools.d.ts +22 -0
- package/dist/mcp/site-publication-tools.d.ts +19 -0
- package/dist/mcp/site-sql-tools.d.ts +27 -0
- package/dist/mcp-oauth.d.ts +37 -4
- package/dist/model-calls/chat-completions.d.ts +87 -0
- package/dist/model-calls/pending-usage-settlements.d.ts +57 -0
- package/dist/model-calls/service.d.ts +36 -0
- package/dist/model-catalog.d.ts +9 -3
- package/dist/native-push-dispatch.d.ts +69 -0
- package/dist/observability.d.ts +3 -1
- package/dist/organization-mcp.d.ts +82 -0
- package/dist/prepared-mcp-actor.d.ts +77 -0
- package/dist/prepared-mcp-permissions.d.ts +8 -0
- package/dist/routes/analytics-consent.d.ts +26 -0
- package/dist/routes/api-integrations.d.ts +11 -0
- package/dist/routes/api-keys.d.ts +7 -7
- package/dist/routes/automations.d.ts +2 -0
- package/dist/routes/billing.d.ts +59 -0
- package/dist/routes/browser-sessions.d.ts +65 -2
- package/dist/routes/chat-completions.d.ts +11 -0
- package/dist/routes/claude-core-usage.d.ts +20 -0
- package/dist/routes/claude-subscription-accounts.d.ts +3 -0
- package/dist/routes/claude-subscription-oauth.d.ts +3 -0
- package/dist/routes/client-errors.d.ts +182 -0
- package/dist/routes/codex-core.d.ts +401 -0
- package/dist/routes/codex.d.ts +64 -2
- package/dist/routes/computer-sessions.d.ts +6 -1
- package/dist/routes/desktop-distribution.d.ts +32 -0
- package/dist/routes/github-browser-fonts.gen.d.ts +2 -0
- package/dist/routes/github-browser-pages.d.ts +27 -0
- package/dist/routes/inbox.d.ts +13 -0
- package/dist/routes/insights-response-cache.d.ts +10 -0
- package/dist/routes/insights-usage.d.ts +12 -0
- package/dist/routes/insights.d.ts +28 -0
- package/dist/routes/interaction-placement-message.d.ts +7 -0
- package/dist/routes/managed-sign-in-methods.d.ts +6 -0
- package/dist/routes/model-account-choice.d.ts +13 -0
- package/dist/routes/model-account-settings.d.ts +19 -0
- package/dist/routes/native-app-auth.d.ts +12 -0
- package/dist/routes/organization-integration-policy.d.ts +8 -0
- package/dist/routes/organization-integrations.d.ts +6 -0
- package/dist/routes/organization-mcp-connections.d.ts +3 -0
- package/dist/routes/organization-model-defaults.d.ts +9 -0
- package/dist/routes/organization-service-accounts.d.ts +3 -0
- package/dist/routes/personal-api-keys.d.ts +3 -0
- package/dist/routes/session-admin-access.d.ts +3 -0
- package/dist/routes/session-artifact-associations.d.ts +4 -0
- package/dist/routes/session-history-imports.d.ts +20 -0
- package/dist/routes/sessions.d.ts +38 -2
- package/dist/routes/site-data.d.ts +18 -0
- package/dist/routes/site-publishing.d.ts +5 -0
- package/dist/routes/site-runtime.d.ts +31 -0
- package/dist/routes/site-sql.d.ts +16 -0
- package/dist/routes/slack-bot-access.d.ts +3 -0
- package/dist/routes/subscription-account-pools.d.ts +21 -0
- package/dist/routes/subscription-core-http.d.ts +5 -0
- package/dist/routes/subscription-pool-access.d.ts +37 -0
- package/dist/routes/subscription-pool-core.d.ts +153 -0
- package/dist/routes/supergrok.d.ts +6 -6
- package/dist/routes/usage-allowances.d.ts +12 -0
- package/dist/routes/variable-sets-removed.d.ts +2 -0
- package/dist/routes/vault-providers.d.ts +34 -0
- package/dist/routes/vaults.d.ts +3 -0
- package/dist/routes/workspace-integrations.d.ts +35 -0
- package/dist/routes/workspace-model-providers.d.ts +4 -0
- package/dist/routes/workspaces.d.ts +11 -2
- package/dist/sandbox/agent-update.d.ts +64 -0
- package/dist/sandbox/auth-callout.d.ts +8 -0
- package/dist/sandbox/channel-a.d.ts +15 -1
- package/dist/sandbox/enrollment.d.ts +26 -4
- package/dist/sandbox/machine-audience.d.ts +29 -0
- package/dist/sandbox/machines.d.ts +15 -2
- package/dist/sandbox/metrics-ingestion.d.ts +6 -2
- package/dist/sandbox/screen-control.d.ts +85 -0
- package/dist/sandbox/viewer.d.ts +5 -1
- package/dist/sandbox-file-artifacts.d.ts +17 -1
- package/dist/scheduled-task-blockers.d.ts +39 -0
- package/dist/scheduled-task-deletion.d.ts +3 -4
- package/dist/scheduled-task-lifecycle.d.ts +14 -0
- package/dist/secret-answers.d.ts +40 -0
- package/dist/session-create-observability.d.ts +5 -0
- package/dist/session-event-view-36GO3IL7.js +528 -0
- package/dist/session-event-view-36GO3IL7.js.map +1 -0
- package/dist/signed-state-secret.d.ts +18 -0
- package/dist/site-agent-guard.d.ts +53 -0
- package/dist/site-data/operations.d.ts +103 -0
- package/dist/site-data/service.d.ts +203 -0
- package/dist/site-frame-guard.d.ts +32 -0
- package/dist/site-publishing/agent-data-tools.d.ts +84 -0
- package/dist/site-publishing/agent-model.d.ts +58 -0
- package/dist/site-publishing/agent-session.d.ts +16 -0
- package/dist/site-publishing/content-scanner.d.ts +31 -0
- package/dist/site-publishing/edge-sync.d.ts +48 -0
- package/dist/site-publishing/gateway-signature.d.ts +56 -0
- package/dist/site-publishing/limits.d.ts +63 -0
- package/dist/site-publishing/page-tool-authority.d.ts +30 -0
- package/dist/site-publishing/platform-usage.d.ts +113 -0
- package/dist/site-publishing/platform.d.ts +21 -0
- package/dist/site-publishing/readiness.d.ts +62 -0
- package/dist/site-publishing/runtime.d.ts +179 -0
- package/dist/site-publishing/service.d.ts +264 -0
- package/dist/site-publishing/session-events.d.ts +22 -0
- package/dist/site-publishing/session-views.d.ts +36 -0
- package/dist/site-publishing/viewer.d.ts +40 -0
- package/dist/site-session-origin.d.ts +31 -6
- package/dist/site-sql/format.d.ts +47 -0
- package/dist/site-sql/gateway.d.ts +50 -0
- package/dist/site-sql/service.d.ts +213 -0
- package/dist/temporal-schedule-sync.d.ts +26 -0
- package/dist/transcription/billing-refusal.d.ts +8 -0
- package/dist/transcription/normalize.d.ts +23 -0
- package/dist/transcription/providers/azure-mai.d.ts +12 -0
- package/dist/transcription/providers/azure-openai.d.ts +4 -0
- package/dist/transcription/providers/openai.d.ts +16 -0
- package/dist/transcription/providers/subscription-core.d.ts +39 -0
- package/dist/transcription/service.d.ts +10 -1
- package/dist/transcription/wav-duration.d.ts +8 -0
- package/dist/workspace-tool-gateway-attestations.d.ts +37 -0
- package/dist/workspace-tool-gateway-observability.d.ts +16 -0
- package/dist/workspace-tool-gateway-secrets.d.ts +27 -0
- package/dist/workspace-tool-gateway.d.ts +102 -6
- package/dist/workspace-tool-target-fence.d.ts +116 -0
- package/dist/workspace-tool-target.d.ts +225 -0
- package/dist/workspace-webhook-dispatch.d.ts +26 -0
- package/dist/xai-subscription-core.d.ts +60 -0
- package/package.json +25 -20
- package/src/access-grant-rls.ts +64 -14
- package/src/admission-trace.ts +14 -0
- package/src/app.ts +1684 -252
- package/src/artifact-catalog-cursor.ts +1 -0
- package/src/attached-browser-viewer.ts +26 -0
- package/src/auth/managed-auth-attempt-context.ts +9 -0
- package/src/auth/managed-auth-rate-limits.ts +252 -0
- package/src/auth/managed-auth-session-adapter.ts +64 -29
- package/src/auth/managed-auth.ts +303 -35
- package/src/auth/managed-email.ts +18 -1
- package/src/auth/managed-sign-in-notifications.ts +81 -0
- package/src/auth/new-signups-gate.ts +49 -0
- package/src/auth/organization-user-setup.ts +3 -3
- package/src/auth/signup-funnel-metrics.ts +164 -0
- package/src/azure-live.ts +103 -0
- package/src/browser-action-fences.ts +45 -0
- package/src/browser-controller-authority.ts +1 -186
- package/src/browser-ephemeral.ts +39 -0
- package/src/browser-lost-runtime-end.ts +71 -0
- package/src/browser-state-authority.ts +1 -236
- package/src/claude-default-models.ts +37 -0
- package/src/claude-subscription-core.ts +154 -0
- package/src/claude-subscription-oauth.ts +352 -0
- package/src/claude-subscription-profile.ts +73 -0
- package/src/claude-subscription-usage.ts +51 -0
- package/src/claude-workspace-connection.ts +82 -0
- package/src/codemode.ts +236 -39
- package/src/codex-realtime.ts +181 -53
- package/src/codex-session-pointers.ts +80 -0
- package/src/company-brain-okf.ts +1 -1
- package/src/connected-machine-computer-access.ts +2 -1
- package/src/connection-ownership.ts +19 -13
- package/src/controller-data-plane.ts +34 -0
- package/src/credit-promotion-snapshot.ts +36 -0
- package/src/editable-artifact-production.ts +10 -0
- package/src/editable-artifact-source-session.ts +123 -0
- package/src/editable-artifact-websocket.ts +16 -3
- package/src/fatal-process-boundary.ts +67 -3
- package/src/gateway-realtime.ts +12 -8
- package/src/github-access.ts +31 -5
- package/src/github-browser-flow.ts +1 -1
- package/src/http/acting-person.ts +105 -0
- package/src/http/api-contract-compat.ts +49 -0
- package/src/http/api-error.ts +210 -2
- package/src/http/auth.ts +68 -4
- package/src/http/cors.ts +37 -5
- package/src/http/deprecation.ts +118 -0
- package/src/http/keyed-admission.ts +29 -0
- package/src/http/local-browser-boundary.ts +343 -0
- package/src/http/metrics-listener.ts +57 -0
- package/src/http/path-identifier.ts +54 -0
- package/src/http/registered-route-label.ts +34 -0
- package/src/http/rejection-telemetry.ts +120 -0
- package/src/http/request-body.ts +127 -0
- package/src/http/request-source.ts +154 -13
- package/src/http/sse.ts +88 -28
- package/src/http/unmatched-route.ts +60 -0
- package/src/http/user-content.ts +158 -0
- package/src/http/variable-sets-removed.ts +122 -0
- package/src/http/websocket-upgrade-dispatch.ts +29 -0
- package/src/index.ts +107 -57
- package/src/integration-connect-metrics.ts +228 -0
- package/src/integration-endpoint-test.ts +291 -0
- package/src/integrations/api-integrations.ts +81 -7
- package/src/integrations/atlassian.ts +202 -83
- package/src/integrations/fiken.ts +66 -38
- package/src/integrations/github-app-connect.ts +64 -18
- package/src/integrations/github-lens-connect.ts +8 -29
- package/src/integrations/google-drive.ts +448 -152
- package/src/integrations/integration-commit-authority.ts +69 -0
- package/src/integrations/marketplace-plugin.ts +1 -1
- package/src/integrations/oauth-client.ts +733 -193
- package/src/integrations/oauth-profiles.ts +116 -45
- package/src/integrations/onepassword-vault-provider.ts +16 -0
- package/src/integrations/personal-github-repositories.ts +1 -1
- package/src/integrations/personal-github.ts +61 -35
- package/src/integrations/provider-oauth.ts +67 -85
- package/src/integrations/slack-app-home.ts +5 -5
- package/src/integrations/slack-bot.ts +893 -201
- package/src/integrations/slack-file-upload-flow.ts +147 -0
- package/src/integrations/slack-install.ts +7 -7
- package/src/integrations/slack-interactions.ts +1589 -299
- package/src/integrations/slack-mrkdwn.ts +193 -0
- package/src/integrations/slack-routing.ts +2 -2
- package/src/integrations/slack-session-defaults.ts +224 -0
- package/src/integrations/slack-task-file-upload.ts +323 -0
- package/src/integrations/slack-tool-review.ts +65 -0
- package/src/integrations/social-oauth.ts +90 -58
- package/src/interaction-agent-access.ts +40 -20
- package/src/interaction-agent-version.ts +85 -0
- package/src/interaction-holder-heartbeat.ts +24 -8
- package/src/interaction-metrics.ts +164 -2
- package/src/interaction-route-stages.ts +94 -0
- package/src/interaction-secrets-vault.ts +213 -0
- package/src/interaction-secrets.ts +426 -0
- package/src/mcp/action-catalog-types.ts +14 -0
- package/src/mcp/action-catalog.gen.ts +8014 -0
- package/src/mcp/action-descriptions.ts +299 -0
- package/src/mcp/action-schema-imports.gen.ts +304 -0
- package/src/mcp/capability-account-readiness.ts +17 -0
- package/src/mcp/child-read-evidence.ts +19 -0
- package/src/mcp/company-profile-agent-admin.ts +13 -0
- package/src/mcp/contract-input.ts +165 -0
- package/src/mcp/documents.ts +9 -2
- package/src/mcp/editable-artifacts.ts +29 -11
- package/src/mcp/files.ts +5 -1
- package/src/mcp/first-party-tool-permissions.ts +7 -285
- package/src/mcp/knowledge-entries.ts +108 -34
- package/src/mcp/notification-tools.ts +480 -0
- package/src/mcp/orchestration-failure-diagnostic.ts +43 -0
- package/src/mcp/scheduled-task-input.ts +89 -0
- package/src/mcp/scheduled-task-view.ts +63 -3
- package/src/mcp/secret-tools.ts +185 -0
- package/src/mcp/server.ts +2213 -1116
- package/src/mcp/session-admin-access-tools.ts +163 -0
- package/src/mcp/session-event-errors.ts +123 -0
- package/src/mcp/session-event-view.ts +395 -13
- package/src/mcp/session-view.ts +3 -0
- package/src/mcp/session-wait.ts +67 -7
- package/src/mcp/site-agent-clamp-tools.ts +140 -0
- package/src/mcp/site-data-tools.ts +339 -0
- package/src/mcp/site-publication-tools.ts +201 -0
- package/src/mcp/site-sql-tools.ts +427 -0
- package/src/mcp-oauth.ts +635 -45
- package/src/model-calls/chat-completions.ts +352 -0
- package/src/model-calls/pending-usage-settlements.ts +125 -0
- package/src/model-calls/service.ts +694 -0
- package/src/model-catalog.ts +68 -17
- package/src/native-push-dispatch.ts +457 -0
- package/src/observability.ts +15 -1
- package/src/organization-mcp.ts +485 -0
- package/src/prepared-mcp-actor.ts +154 -0
- package/src/prepared-mcp-permissions.ts +38 -0
- package/src/routes/analytics-consent.ts +123 -0
- package/src/routes/api-integrations.ts +268 -9
- package/src/routes/api-keys.ts +164 -25
- package/src/routes/artifact-catalog.ts +111 -0
- package/src/routes/automations.ts +163 -90
- package/src/routes/billing.ts +535 -59
- package/src/routes/browser-sessions.ts +966 -342
- package/src/routes/canonical-human-identities.ts +61 -0
- package/src/routes/capabilities.ts +112 -5
- package/src/routes/channels.ts +4 -3
- package/src/routes/chat-completions.ts +235 -0
- package/src/routes/claude-core-usage.ts +147 -0
- package/src/routes/claude-subscription-accounts.ts +233 -0
- package/src/routes/claude-subscription-oauth.ts +175 -0
- package/src/routes/client-errors.ts +394 -0
- package/src/routes/codex-core.ts +687 -0
- package/src/routes/codex.ts +1277 -1119
- package/src/routes/company-brain.ts +4 -0
- package/src/routes/computer-sessions.ts +319 -85
- package/src/routes/connect.ts +277 -175
- package/src/routes/connections.ts +690 -363
- package/src/routes/desktop-distribution.ts +217 -0
- package/src/routes/documents.ts +13 -7
- package/src/routes/editable-artifacts.ts +74 -4
- package/src/routes/enrollments.ts +110 -16
- package/src/routes/external-identity-links.ts +13 -12
- package/src/routes/files.ts +41 -16
- package/src/routes/github-browser-fonts.gen.ts +12 -0
- package/src/routes/github-browser-pages.ts +258 -0
- package/src/routes/github.ts +200 -75
- package/src/routes/inbox.ts +353 -0
- package/src/routes/insights-response-cache.ts +83 -0
- package/src/routes/insights-usage.ts +345 -0
- package/src/routes/insights.ts +103 -8
- package/src/routes/install.ts +51 -10
- package/src/routes/integration-facets.ts +70 -28
- package/src/routes/interaction-placement-message.ts +12 -0
- package/src/routes/knowledge.ts +136 -27
- package/src/routes/machines.ts +189 -135
- package/src/routes/managed-auth-session-sets.ts +43 -10
- package/src/routes/managed-onboarding.ts +39 -19
- package/src/routes/managed-sign-in-methods.ts +433 -0
- package/src/routes/memory-slack-publications.ts +3 -2
- package/src/routes/model-account-choice.ts +194 -0
- package/src/routes/model-account-settings.ts +235 -0
- package/src/routes/model-connection-access.ts +210 -48
- package/src/routes/native-app-auth.ts +296 -0
- package/src/routes/organization-integration-policy.ts +116 -0
- package/src/routes/organization-integrations.ts +326 -0
- package/src/routes/organization-mcp-connections.ts +183 -0
- package/src/routes/organization-memberships.ts +205 -19
- package/src/routes/organization-model-defaults.ts +110 -0
- package/src/routes/organization-model-providers.ts +74 -3
- package/src/routes/organization-service-accounts.ts +128 -0
- package/src/routes/organization-sessions.ts +21 -5
- package/src/routes/personal-api-keys.ts +184 -0
- package/src/routes/personal-github-git-broker.ts +2 -2
- package/src/routes/personal-github.ts +9 -4
- package/src/routes/plugins.ts +46 -7
- package/src/routes/pr-review-github.ts +105 -118
- package/src/routes/pr-review.ts +88 -82
- package/src/routes/preference-registry.ts +18 -0
- package/src/routes/rigs.ts +48 -13
- package/src/routes/scheduled-tasks.ts +347 -27
- package/src/routes/session-admin-access.ts +271 -0
- package/src/routes/session-artifact-associations.ts +164 -0
- package/src/routes/session-history-imports.ts +305 -0
- package/src/routes/sessions.ts +1682 -363
- package/src/routes/site-data.ts +340 -0
- package/src/routes/site-publishing.ts +584 -0
- package/src/routes/site-runtime.ts +1944 -0
- package/src/routes/site-sql.ts +263 -0
- package/src/routes/skill-content.ts +72 -7
- package/src/routes/skills.ts +5 -4
- package/src/routes/slack-bot-access.ts +108 -0
- package/src/routes/social.ts +27 -15
- package/src/routes/subscription-account-pools.ts +209 -0
- package/src/routes/subscription-core-http.ts +18 -0
- package/src/routes/subscription-pool-access.ts +180 -0
- package/src/routes/subscription-pool-core.ts +552 -0
- package/src/routes/supergrok.ts +174 -655
- package/src/routes/transcription-recordings.ts +71 -4
- package/src/routes/transcriptions.ts +26 -2
- package/src/routes/usage-allowances.ts +381 -0
- package/src/routes/variable-sets-removed.ts +19 -0
- package/src/routes/vault-providers.ts +782 -0
- package/src/routes/vaults.ts +421 -0
- package/src/routes/video-generation.ts +30 -12
- package/src/routes/workspace-artifacts.ts +165 -53
- package/src/routes/workspace-integrations.ts +576 -0
- package/src/routes/workspace-model-providers.ts +148 -0
- package/src/routes/workspace-state.ts +4 -0
- package/src/routes/workspaces.ts +625 -117
- package/src/sandbox/agent-update.ts +315 -0
- package/src/sandbox/auth-callout.ts +104 -21
- package/src/sandbox/channel-a.ts +165 -55
- package/src/sandbox/enrollment.ts +131 -22
- package/src/sandbox/machine-audience.ts +192 -0
- package/src/sandbox/machines.ts +75 -31
- package/src/sandbox/metrics-ingestion.ts +133 -2
- package/src/sandbox/rematerialize.ts +51 -21
- package/src/sandbox/screen-control.ts +289 -0
- package/src/sandbox/viewer.ts +33 -58
- package/src/sandbox-file-artifacts.ts +53 -27
- package/src/scheduled-task-blockers.ts +293 -0
- package/src/scheduled-task-deletion.ts +13 -3
- package/src/scheduled-task-lifecycle.ts +84 -0
- package/src/secret-answers.ts +119 -0
- package/src/session-create-observability.ts +46 -0
- package/src/session-realtime-context.ts +26 -4
- package/src/signed-state-secret.ts +58 -0
- package/src/site-agent-guard.ts +261 -0
- package/src/site-data/operations.ts +777 -0
- package/src/site-data/service.ts +1043 -0
- package/src/site-frame-guard.ts +107 -0
- package/src/site-publishing/agent-data-tools.ts +250 -0
- package/src/site-publishing/agent-model.ts +127 -0
- package/src/site-publishing/agent-session.ts +148 -0
- package/src/site-publishing/content-scanner.ts +93 -0
- package/src/site-publishing/edge-sync.ts +148 -0
- package/src/site-publishing/gateway-signature.ts +198 -0
- package/src/site-publishing/limits.ts +315 -0
- package/src/site-publishing/page-tool-authority.ts +111 -0
- package/src/site-publishing/platform-usage.ts +479 -0
- package/src/site-publishing/platform.ts +98 -0
- package/src/site-publishing/readiness.ts +330 -0
- package/src/site-publishing/runtime.ts +831 -0
- package/src/site-publishing/service.ts +1282 -0
- package/src/site-publishing/session-events.ts +262 -0
- package/src/site-publishing/session-views.ts +262 -0
- package/src/site-publishing/viewer.ts +75 -0
- package/src/site-session-origin.ts +91 -6
- package/src/site-sql/format.ts +134 -0
- package/src/site-sql/gateway.ts +168 -0
- package/src/site-sql/service.ts +1636 -0
- package/src/site-uploads.ts +27 -5
- package/src/temporal-schedule-sync.ts +74 -0
- package/src/transcription/billing-refusal.ts +14 -0
- package/src/transcription/normalize.ts +77 -0
- package/src/transcription/providers/azure-mai.ts +98 -0
- package/src/transcription/providers/azure-openai.ts +16 -7
- package/src/transcription/providers/codex-subscription.ts +190 -67
- package/src/transcription/providers/openai.ts +79 -5
- package/src/transcription/providers/subscription-core.ts +125 -0
- package/src/transcription/providers/xai-subscription.ts +81 -83
- package/src/transcription/segmenter.ts +7 -1
- package/src/transcription/service.ts +239 -10
- package/src/transcription/wav-duration.ts +39 -0
- package/src/workspace-deletion.ts +25 -1
- package/src/workspace-tool-gateway-attestations.ts +133 -0
- package/src/workspace-tool-gateway-observability.ts +64 -0
- package/src/workspace-tool-gateway-secrets.ts +104 -0
- package/src/workspace-tool-gateway.ts +921 -103
- package/src/workspace-tool-target-fence.ts +380 -0
- package/src/workspace-tool-target.ts +554 -0
- package/src/workspace-webhook-dispatch.ts +225 -0
- package/src/xai-realtime.ts +85 -81
- package/src/xai-subscription-core.ts +172 -0
- package/dist/browser-auth-broker.d.ts +0 -20
- package/dist/chunk-AJ62T5QN.js.map +0 -1
- package/dist/connection-authority-owner.d.ts +0 -59
- package/dist/routes/connection-authorities.d.ts +0 -3
- package/dist/routes/environments.d.ts +0 -5
- package/dist/routes/host-mcp-bindings.d.ts +0 -5
- package/dist/routes/host-mcp-resolvers.d.ts +0 -3
- package/dist/routes/packs.d.ts +0 -3
- package/dist/session-event-view-MU3HMNV3.js +0 -264
- package/dist/session-event-view-MU3HMNV3.js.map +0 -1
- package/dist/xai-subscription-auth.d.ts +0 -23
- package/src/browser-auth-broker.ts +0 -155
- package/src/connection-authority-owner.ts +0 -61
- package/src/routes/connection-authorities.ts +0 -139
- package/src/routes/environments.ts +0 -388
- package/src/routes/host-mcp-bindings.ts +0 -122
- package/src/routes/host-mcp-resolvers.ts +0 -41
- package/src/routes/packs.ts +0 -784
- package/src/xai-subscription-auth.ts +0 -139
|
@@ -0,0 +1,401 @@
|
|
|
1
|
+
import type { Context } from "hono";
|
|
2
|
+
import { requireAccessGrant, type ApiRouteDeps } from "@opengeni/core";
|
|
3
|
+
import { type SubscriptionCoreCodexCredentialInput } from "@opengeni/db";
|
|
4
|
+
import type { CodexUsagePayload } from "@opengeni/codex";
|
|
5
|
+
import { codexModelsForPicker, requireCodexAppsHuman } from "./codex.js";
|
|
6
|
+
import { SUBSCRIPTION_CORE_CUTOVER_DISABLED, typedHttpError } from "./subscription-core-http.js";
|
|
7
|
+
export { SUBSCRIPTION_CORE_CUTOVER_DISABLED, typedHttpError };
|
|
8
|
+
/**
|
|
9
|
+
* Only an enabled Codex cutover admits a request. Missing and disabled rows
|
|
10
|
+
* are maintenance: fail closed, never fall back to legacy state.
|
|
11
|
+
*/
|
|
12
|
+
export declare function codexRouteDisposition(deps: ApiRouteDeps, accountId: string): Promise<"core">;
|
|
13
|
+
/**
|
|
14
|
+
* Persist a finished device-code sign-in on the core (M3 PR 3b): the legacy
|
|
15
|
+
* `connect/poll` response. `workspaceId` null is the organization route.
|
|
16
|
+
*/
|
|
17
|
+
export declare function coreCodexConnected(c: Context, deps: ApiRouteDeps, input: {
|
|
18
|
+
accountId: string;
|
|
19
|
+
workspaceId: string | null;
|
|
20
|
+
subjectId: string;
|
|
21
|
+
credential: SubscriptionCoreCodexCredentialInput;
|
|
22
|
+
}): Promise<Response & import("hono").TypedResponse<{
|
|
23
|
+
status: string;
|
|
24
|
+
plan: string | null;
|
|
25
|
+
accountId: string;
|
|
26
|
+
isActive: boolean;
|
|
27
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
28
|
+
/** Disconnect one account on the core: the legacy `{ disconnected, newActiveId }`. */
|
|
29
|
+
export declare function coreCodexDisconnect(c: Context, deps: ApiRouteDeps, input: {
|
|
30
|
+
accountId: string;
|
|
31
|
+
workspaceId: string | null;
|
|
32
|
+
subjectId: string;
|
|
33
|
+
connectionId: string;
|
|
34
|
+
}): Promise<Response & import("hono").TypedResponse<{
|
|
35
|
+
disconnected: boolean;
|
|
36
|
+
newActiveId: string | null;
|
|
37
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
38
|
+
/** The legacy workspace "disconnect all" on the core: `{ disconnected }`. */
|
|
39
|
+
export declare function coreCodexDisconnectAll(c: Context, deps: ApiRouteDeps, input: {
|
|
40
|
+
accountId: string;
|
|
41
|
+
workspaceId: string;
|
|
42
|
+
subjectId: string;
|
|
43
|
+
}): Promise<Response & import("hono").TypedResponse<{
|
|
44
|
+
disconnected: boolean;
|
|
45
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
46
|
+
export declare function coreCodexSource(c: Context, deps: ApiRouteDeps, accountId: string, workspaceId: string): Promise<Response & import("hono").TypedResponse<{
|
|
47
|
+
accountId: string;
|
|
48
|
+
workspaceId: string;
|
|
49
|
+
workspaceKind: "personal" | "shared";
|
|
50
|
+
mode: import("@opengeni/db").WorkspaceCodexSubscriptionMode;
|
|
51
|
+
effectiveSource: import("@opengeni/db").EffectiveCodexSubscriptionSource;
|
|
52
|
+
workspaceAvailable: boolean;
|
|
53
|
+
organizationAvailable: boolean;
|
|
54
|
+
workspaceSetAside?: boolean;
|
|
55
|
+
organizationCount?: number;
|
|
56
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
57
|
+
export declare function coreCodexSetSource(c: Context, deps: ApiRouteDeps, input: {
|
|
58
|
+
accountId: string;
|
|
59
|
+
workspaceId: string;
|
|
60
|
+
subjectId: string;
|
|
61
|
+
mode: "automatic" | "workspace" | "organization" | "disabled";
|
|
62
|
+
}): Promise<Response & import("hono").TypedResponse<{
|
|
63
|
+
accountId: string;
|
|
64
|
+
workspaceId: string;
|
|
65
|
+
workspaceKind: "personal" | "shared";
|
|
66
|
+
mode: import("@opengeni/db").WorkspaceCodexSubscriptionMode;
|
|
67
|
+
effectiveSource: import("@opengeni/db").EffectiveCodexSubscriptionSource;
|
|
68
|
+
workspaceAvailable: boolean;
|
|
69
|
+
organizationAvailable: boolean;
|
|
70
|
+
workspaceSetAside?: boolean;
|
|
71
|
+
organizationCount?: number;
|
|
72
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
73
|
+
/**
|
|
74
|
+
* Readiness is computed from the core pool; there is no live provider model
|
|
75
|
+
* probe (that needs a connection-level credential read, which is PR 2c's usage
|
|
76
|
+
* seam), so `valid` reports whether a serviceable account exists and `models`
|
|
77
|
+
* is the configured Codex catalog.
|
|
78
|
+
*/
|
|
79
|
+
export declare function coreCodexStatus(c: Context, deps: ApiRouteDeps, accountId: string, workspaceId: string, catalogSettings: Parameters<typeof codexModelsForPicker>[0], viewerSubjectId: string): Promise<Response & import("hono").TypedResponse<{
|
|
80
|
+
connected: boolean;
|
|
81
|
+
plan: string | null;
|
|
82
|
+
valid: boolean;
|
|
83
|
+
activeAccountValid: boolean;
|
|
84
|
+
poolReady: boolean;
|
|
85
|
+
workerRoutable: boolean;
|
|
86
|
+
expiresAt: string | null;
|
|
87
|
+
lastError: string | null;
|
|
88
|
+
models: {
|
|
89
|
+
id: string;
|
|
90
|
+
label: string;
|
|
91
|
+
provider: string;
|
|
92
|
+
providerLabel: string;
|
|
93
|
+
api: "responses";
|
|
94
|
+
}[];
|
|
95
|
+
activeAccount: {
|
|
96
|
+
id: string;
|
|
97
|
+
label: string | null;
|
|
98
|
+
chatgptAccountId: string | null;
|
|
99
|
+
} | null;
|
|
100
|
+
accountCount: number;
|
|
101
|
+
source: {
|
|
102
|
+
accountId: string;
|
|
103
|
+
workspaceId: string;
|
|
104
|
+
workspaceKind: "personal" | "shared";
|
|
105
|
+
mode: import("@opengeni/db").WorkspaceCodexSubscriptionMode;
|
|
106
|
+
effectiveSource: import("@opengeni/db").EffectiveCodexSubscriptionSource;
|
|
107
|
+
workspaceAvailable: boolean;
|
|
108
|
+
organizationAvailable: boolean;
|
|
109
|
+
workspaceSetAside?: boolean;
|
|
110
|
+
organizationCount?: number;
|
|
111
|
+
};
|
|
112
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
113
|
+
export declare function coreCodexAccounts(c: Context, deps: ApiRouteDeps, grant: Awaited<ReturnType<typeof requireAccessGrant>>, workspaceId: string): Promise<Response & import("hono").TypedResponse<{
|
|
114
|
+
accounts: {
|
|
115
|
+
canEnableApps: boolean;
|
|
116
|
+
id: string;
|
|
117
|
+
source: "organization" | "workspace";
|
|
118
|
+
chatgptAccountId: string | null;
|
|
119
|
+
label: string | null;
|
|
120
|
+
email: string | null;
|
|
121
|
+
plan: string | null;
|
|
122
|
+
planCheckedAt: string | null;
|
|
123
|
+
planChangedFrom: string | null;
|
|
124
|
+
planChangedAt: string | null;
|
|
125
|
+
planExcludedModels: {
|
|
126
|
+
model: string;
|
|
127
|
+
label: string;
|
|
128
|
+
excludedAt: string;
|
|
129
|
+
retryAfter: string;
|
|
130
|
+
}[];
|
|
131
|
+
status: string;
|
|
132
|
+
active: boolean;
|
|
133
|
+
expiresAt: string | null;
|
|
134
|
+
lastRefreshAt: string | null;
|
|
135
|
+
lastError: string | null;
|
|
136
|
+
fiveHour: {
|
|
137
|
+
used: number;
|
|
138
|
+
limit: number;
|
|
139
|
+
remaining: number;
|
|
140
|
+
percent: number;
|
|
141
|
+
resetAt: string | null;
|
|
142
|
+
resetAfterSeconds: number | null;
|
|
143
|
+
limitWindowSeconds: number;
|
|
144
|
+
} | null;
|
|
145
|
+
weekly: {
|
|
146
|
+
used: number;
|
|
147
|
+
limit: number;
|
|
148
|
+
remaining: number;
|
|
149
|
+
percent: number;
|
|
150
|
+
resetAt: string | null;
|
|
151
|
+
resetAfterSeconds: number | null;
|
|
152
|
+
limitWindowSeconds: number;
|
|
153
|
+
} | null;
|
|
154
|
+
usageCheckedAt: string | null;
|
|
155
|
+
extraCreditsEnabled: boolean;
|
|
156
|
+
extraCreditsVersion: number;
|
|
157
|
+
extraCreditsUpdatedAt: string | null;
|
|
158
|
+
allocatorEnabled: boolean;
|
|
159
|
+
allocatorVersion: number;
|
|
160
|
+
allocatorUpdatedAt: string | null;
|
|
161
|
+
resetCreditAvailableCount: number | null;
|
|
162
|
+
resetCreditsCheckedAt: string | null;
|
|
163
|
+
exhaustedUntil: string | null;
|
|
164
|
+
ownInWorkspaceIds?: string[] | undefined;
|
|
165
|
+
appsDesignated: boolean;
|
|
166
|
+
}[];
|
|
167
|
+
activeAccountId: string | null;
|
|
168
|
+
source: {
|
|
169
|
+
accountId: string;
|
|
170
|
+
workspaceId: string;
|
|
171
|
+
workspaceKind: "personal" | "shared";
|
|
172
|
+
mode: import("@opengeni/db").WorkspaceCodexSubscriptionMode;
|
|
173
|
+
effectiveSource: import("@opengeni/db").EffectiveCodexSubscriptionSource;
|
|
174
|
+
workspaceAvailable: boolean;
|
|
175
|
+
organizationAvailable: boolean;
|
|
176
|
+
workspaceSetAside?: boolean;
|
|
177
|
+
organizationCount?: number;
|
|
178
|
+
};
|
|
179
|
+
apps: {
|
|
180
|
+
available: boolean;
|
|
181
|
+
credentialId: string | null;
|
|
182
|
+
version: number;
|
|
183
|
+
designatedAt: string | null;
|
|
184
|
+
canDisable: boolean;
|
|
185
|
+
};
|
|
186
|
+
settings: {
|
|
187
|
+
rotationEnabled: boolean;
|
|
188
|
+
rotationStrategy: string;
|
|
189
|
+
activeCredentialId: string | null;
|
|
190
|
+
};
|
|
191
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
192
|
+
type AppsHuman = Awaited<ReturnType<typeof requireCodexAppsHuman>>;
|
|
193
|
+
export declare function coreCodexDesignateApps(c: Context, deps: ApiRouteDeps, workspaceId: string, { human, accountId }: AppsHuman): Promise<Response & import("hono").TypedResponse<{
|
|
194
|
+
credentialId: string | null;
|
|
195
|
+
version: number;
|
|
196
|
+
designatedAt: string | null;
|
|
197
|
+
changed: boolean;
|
|
198
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
199
|
+
export declare function coreCodexClearApps(c: Context, deps: ApiRouteDeps, workspaceId: string, { human, accountId }: AppsHuman): Promise<Response & import("hono").TypedResponse<{
|
|
200
|
+
credentialId: string | null;
|
|
201
|
+
version: number;
|
|
202
|
+
designatedAt: string | null;
|
|
203
|
+
changed: boolean;
|
|
204
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
205
|
+
type Admin = {
|
|
206
|
+
accountId: string;
|
|
207
|
+
workspaceId: string | null;
|
|
208
|
+
subjectId: string;
|
|
209
|
+
};
|
|
210
|
+
export declare function coreCodexActivate(c: Context, deps: ApiRouteDeps, admin: Admin, connectionId: string): Promise<Response & import("hono").TypedResponse<{
|
|
211
|
+
activated: true;
|
|
212
|
+
accountId: string;
|
|
213
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
214
|
+
export declare function coreCodexSetRotation(c: Context, deps: ApiRouteDeps, admin: Admin, rotationEnabled: boolean): Promise<Response & import("hono").TypedResponse<{
|
|
215
|
+
rotationEnabled: boolean;
|
|
216
|
+
rotationStrategy: string;
|
|
217
|
+
activeCredentialId: string | null;
|
|
218
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
219
|
+
export declare function coreCodexRename(c: Context, deps: ApiRouteDeps, admin: Admin, connectionId: string, label: string | null): Promise<Response & import("hono").TypedResponse<{
|
|
220
|
+
id: string;
|
|
221
|
+
source: "organization" | "workspace";
|
|
222
|
+
chatgptAccountId: string | null;
|
|
223
|
+
label: string | null;
|
|
224
|
+
email: string | null;
|
|
225
|
+
plan: string | null;
|
|
226
|
+
planCheckedAt: string | null;
|
|
227
|
+
planChangedFrom: string | null;
|
|
228
|
+
planChangedAt: string | null;
|
|
229
|
+
planExcludedModels: {
|
|
230
|
+
model: string;
|
|
231
|
+
label: string;
|
|
232
|
+
excludedAt: string;
|
|
233
|
+
retryAfter: string;
|
|
234
|
+
}[];
|
|
235
|
+
status: string;
|
|
236
|
+
active: boolean;
|
|
237
|
+
expiresAt: string | null;
|
|
238
|
+
lastRefreshAt: string | null;
|
|
239
|
+
lastError: string | null;
|
|
240
|
+
fiveHour: {
|
|
241
|
+
used: number;
|
|
242
|
+
limit: number;
|
|
243
|
+
remaining: number;
|
|
244
|
+
percent: number;
|
|
245
|
+
resetAt: string | null;
|
|
246
|
+
resetAfterSeconds: number | null;
|
|
247
|
+
limitWindowSeconds: number;
|
|
248
|
+
} | null;
|
|
249
|
+
weekly: {
|
|
250
|
+
used: number;
|
|
251
|
+
limit: number;
|
|
252
|
+
remaining: number;
|
|
253
|
+
percent: number;
|
|
254
|
+
resetAt: string | null;
|
|
255
|
+
resetAfterSeconds: number | null;
|
|
256
|
+
limitWindowSeconds: number;
|
|
257
|
+
} | null;
|
|
258
|
+
usageCheckedAt: string | null;
|
|
259
|
+
extraCreditsEnabled: boolean;
|
|
260
|
+
extraCreditsVersion: number;
|
|
261
|
+
extraCreditsUpdatedAt: string | null;
|
|
262
|
+
allocatorEnabled: boolean;
|
|
263
|
+
allocatorVersion: number;
|
|
264
|
+
allocatorUpdatedAt: string | null;
|
|
265
|
+
resetCreditAvailableCount: number | null;
|
|
266
|
+
resetCreditsCheckedAt: string | null;
|
|
267
|
+
exhaustedUntil: string | null;
|
|
268
|
+
ownInWorkspaceIds?: string[] | undefined;
|
|
269
|
+
appsDesignated: boolean;
|
|
270
|
+
canEnableApps: boolean;
|
|
271
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
272
|
+
export declare function coreCodexAllocator(c: Context, deps: ApiRouteDeps, admin: Admin, connectionId: string, body: {
|
|
273
|
+
enabled: boolean;
|
|
274
|
+
expectedVersion: number;
|
|
275
|
+
}): Promise<Response & import("hono").TypedResponse<{
|
|
276
|
+
allocatorEnabled: boolean;
|
|
277
|
+
allocatorVersion: number;
|
|
278
|
+
allocatorUpdatedAt: string | null;
|
|
279
|
+
changed: boolean;
|
|
280
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
281
|
+
export declare function coreCodexExtraCredits(c: Context, deps: ApiRouteDeps, admin: Admin, connectionId: string, body: {
|
|
282
|
+
enabled: boolean;
|
|
283
|
+
expectedVersion: number;
|
|
284
|
+
}): Promise<Response & import("hono").TypedResponse<{
|
|
285
|
+
extraCreditsEnabled: boolean;
|
|
286
|
+
extraCreditsVersion: number;
|
|
287
|
+
extraCreditsUpdatedAt: string | null;
|
|
288
|
+
changed: boolean;
|
|
289
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
290
|
+
export declare function coreOrganizationCodexAccounts(c: Context, deps: ApiRouteDeps, organizationId: string, subjectId: string): Promise<Response & import("hono").TypedResponse<{
|
|
291
|
+
accounts: {
|
|
292
|
+
id: string;
|
|
293
|
+
source: "organization" | "workspace";
|
|
294
|
+
chatgptAccountId: string | null;
|
|
295
|
+
label: string | null;
|
|
296
|
+
email: string | null;
|
|
297
|
+
plan: string | null;
|
|
298
|
+
planCheckedAt: string | null;
|
|
299
|
+
planChangedFrom: string | null;
|
|
300
|
+
planChangedAt: string | null;
|
|
301
|
+
planExcludedModels: {
|
|
302
|
+
model: string;
|
|
303
|
+
label: string;
|
|
304
|
+
excludedAt: string;
|
|
305
|
+
retryAfter: string;
|
|
306
|
+
}[];
|
|
307
|
+
status: string;
|
|
308
|
+
active: boolean;
|
|
309
|
+
expiresAt: string | null;
|
|
310
|
+
lastRefreshAt: string | null;
|
|
311
|
+
lastError: string | null;
|
|
312
|
+
fiveHour: {
|
|
313
|
+
used: number;
|
|
314
|
+
limit: number;
|
|
315
|
+
remaining: number;
|
|
316
|
+
percent: number;
|
|
317
|
+
resetAt: string | null;
|
|
318
|
+
resetAfterSeconds: number | null;
|
|
319
|
+
limitWindowSeconds: number;
|
|
320
|
+
} | null;
|
|
321
|
+
weekly: {
|
|
322
|
+
used: number;
|
|
323
|
+
limit: number;
|
|
324
|
+
remaining: number;
|
|
325
|
+
percent: number;
|
|
326
|
+
resetAt: string | null;
|
|
327
|
+
resetAfterSeconds: number | null;
|
|
328
|
+
limitWindowSeconds: number;
|
|
329
|
+
} | null;
|
|
330
|
+
usageCheckedAt: string | null;
|
|
331
|
+
extraCreditsEnabled: boolean;
|
|
332
|
+
extraCreditsVersion: number;
|
|
333
|
+
extraCreditsUpdatedAt: string | null;
|
|
334
|
+
allocatorEnabled: boolean;
|
|
335
|
+
allocatorVersion: number;
|
|
336
|
+
allocatorUpdatedAt: string | null;
|
|
337
|
+
resetCreditAvailableCount: number | null;
|
|
338
|
+
resetCreditsCheckedAt: string | null;
|
|
339
|
+
exhaustedUntil: string | null;
|
|
340
|
+
ownInWorkspaceIds?: string[] | undefined;
|
|
341
|
+
appsDesignated: boolean;
|
|
342
|
+
canEnableApps: boolean;
|
|
343
|
+
}[];
|
|
344
|
+
activeAccountId: string | null;
|
|
345
|
+
settings: {
|
|
346
|
+
rotationEnabled: boolean;
|
|
347
|
+
rotationStrategy: string;
|
|
348
|
+
activeCredentialId: string | null;
|
|
349
|
+
};
|
|
350
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
351
|
+
type Grant = Awaited<ReturnType<typeof requireAccessGrant>>;
|
|
352
|
+
/**
|
|
353
|
+
* Live usage on the core (EP-N21): the workspace's effective primary
|
|
354
|
+
* connection (the legacy active account), or one connection of the
|
|
355
|
+
* workspace's pool by id or legacy alias. The 404 copy matches legacy.
|
|
356
|
+
*/
|
|
357
|
+
export declare function coreCodexUsage(c: Context, deps: ApiRouteDeps, grant: Grant, workspaceId: string, requestedId: string | null): Promise<Response & import("hono").TypedResponse<{
|
|
358
|
+
status: CodexUsagePayload["status"];
|
|
359
|
+
usage: {
|
|
360
|
+
status: import("@opengeni/codex").CodexUsageStatus;
|
|
361
|
+
planType: string | null;
|
|
362
|
+
fiveHour: import("@opengeni/codex").CodexUsageWindow | null;
|
|
363
|
+
weekly: import("@opengeni/codex").CodexUsageWindow | null;
|
|
364
|
+
limitReached: boolean;
|
|
365
|
+
fetchedAt: string;
|
|
366
|
+
rateLimitResetCredits: import("@opengeni/codex").CodexRateLimitResetCreditsSummary | null;
|
|
367
|
+
reason?: "needs_relogin" | undefined;
|
|
368
|
+
additionalLimits?: import("@opengeni/codex").CodexAdditionalLimit[] | undefined;
|
|
369
|
+
credits?: {
|
|
370
|
+
hasCredits: boolean;
|
|
371
|
+
unlimited: boolean;
|
|
372
|
+
overageLimitReached: boolean;
|
|
373
|
+
balance: string | null;
|
|
374
|
+
} | undefined;
|
|
375
|
+
};
|
|
376
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
|
377
|
+
/** Batched live refresh over the workspace's core pool, four provider calls at a time. */
|
|
378
|
+
export declare function coreCodexUsageRefresh(c: Context, deps: ApiRouteDeps, grant: Grant, workspaceId: string): Promise<Response & import("hono").TypedResponse<{
|
|
379
|
+
usage: {
|
|
380
|
+
[x: string]: {
|
|
381
|
+
status: CodexUsagePayload["status"];
|
|
382
|
+
usage: {
|
|
383
|
+
status: import("@opengeni/codex").CodexUsageStatus;
|
|
384
|
+
planType: string | null;
|
|
385
|
+
fiveHour: import("@opengeni/codex").CodexUsageWindow | null;
|
|
386
|
+
weekly: import("@opengeni/codex").CodexUsageWindow | null;
|
|
387
|
+
limitReached: boolean;
|
|
388
|
+
fetchedAt: string;
|
|
389
|
+
rateLimitResetCredits: import("@opengeni/codex").CodexRateLimitResetCreditsSummary | null;
|
|
390
|
+
reason?: "needs_relogin" | undefined;
|
|
391
|
+
additionalLimits?: import("@opengeni/codex").CodexAdditionalLimit[] | undefined;
|
|
392
|
+
credits?: {
|
|
393
|
+
hasCredits: boolean;
|
|
394
|
+
unlimited: boolean;
|
|
395
|
+
overageLimitReached: boolean;
|
|
396
|
+
balance: string | null;
|
|
397
|
+
} | undefined;
|
|
398
|
+
};
|
|
399
|
+
};
|
|
400
|
+
};
|
|
401
|
+
}, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
|
package/dist/routes/codex.d.ts
CHANGED
|
@@ -1,4 +1,47 @@
|
|
|
1
|
+
import { type Settings } from "@opengeni/config";
|
|
2
|
+
import { type CodexUsagePayload } from "@opengeni/codex";
|
|
1
3
|
import { type CodexAccountStatus } from "@opengeni/db";
|
|
4
|
+
export declare function codexAccountJson(row: CodexAccountStatus, options?: {
|
|
5
|
+
appsCredentialId?: string | null;
|
|
6
|
+
canManageApps?: boolean;
|
|
7
|
+
humanSubjectId?: string | null;
|
|
8
|
+
}): {
|
|
9
|
+
id: string;
|
|
10
|
+
source: "organization" | "workspace";
|
|
11
|
+
chatgptAccountId: string | null;
|
|
12
|
+
label: string | null;
|
|
13
|
+
email: string | null;
|
|
14
|
+
plan: string | null;
|
|
15
|
+
planCheckedAt: Date | null;
|
|
16
|
+
planChangedFrom: string | null;
|
|
17
|
+
planChangedAt: Date | null;
|
|
18
|
+
planExcludedModels: {
|
|
19
|
+
model: string;
|
|
20
|
+
label: string;
|
|
21
|
+
excludedAt: Date;
|
|
22
|
+
retryAfter: Date;
|
|
23
|
+
}[];
|
|
24
|
+
status: string;
|
|
25
|
+
active: boolean;
|
|
26
|
+
expiresAt: Date | null;
|
|
27
|
+
lastRefreshAt: Date | null;
|
|
28
|
+
lastError: string | null;
|
|
29
|
+
fiveHour: import("@opengeni/codex").CodexUsageWindow | null;
|
|
30
|
+
weekly: import("@opengeni/codex").CodexUsageWindow | null;
|
|
31
|
+
usageCheckedAt: Date | null;
|
|
32
|
+
extraCreditsEnabled: boolean;
|
|
33
|
+
extraCreditsVersion: number;
|
|
34
|
+
extraCreditsUpdatedAt: Date | null;
|
|
35
|
+
allocatorEnabled: boolean;
|
|
36
|
+
allocatorVersion: number;
|
|
37
|
+
allocatorUpdatedAt: Date | null;
|
|
38
|
+
resetCreditAvailableCount: number | null;
|
|
39
|
+
resetCreditsCheckedAt: Date | null;
|
|
40
|
+
exhaustedUntil: Date | null;
|
|
41
|
+
ownInWorkspaceIds?: string[];
|
|
42
|
+
appsDesignated: boolean;
|
|
43
|
+
canEnableApps: boolean;
|
|
44
|
+
};
|
|
2
45
|
/**
|
|
3
46
|
* Derive the two distinct cached worker-readiness meanings exposed by the
|
|
4
47
|
* status route. `poolReady` means at least one effective-pool account passes
|
|
@@ -16,7 +59,11 @@ export declare function codexWorkerReadiness(input: {
|
|
|
16
59
|
poolReady: boolean;
|
|
17
60
|
workerRoutable: boolean;
|
|
18
61
|
};
|
|
19
|
-
export declare function
|
|
62
|
+
export declare function codexUsageJson(payload: CodexUsagePayload): {
|
|
63
|
+
status: CodexUsagePayload["status"];
|
|
64
|
+
usage: CodexUsagePayload;
|
|
65
|
+
};
|
|
66
|
+
export declare function codexModelsForPicker(settings?: Settings, supportedSlugs?: readonly string[]): Array<{
|
|
20
67
|
id: string;
|
|
21
68
|
label: string;
|
|
22
69
|
provider: string;
|
|
@@ -29,7 +76,22 @@ type ManagedCookieHuman = {
|
|
|
29
76
|
subjectId: string;
|
|
30
77
|
browserSessionHash: string;
|
|
31
78
|
};
|
|
32
|
-
export declare function
|
|
79
|
+
export declare function managedCookieHuman(c: Context, deps: ApiRouteDeps): Promise<ManagedCookieHuman | null>;
|
|
80
|
+
/**
|
|
81
|
+
* The person in this browser, or an agent acting as them. Only for routes that
|
|
82
|
+
* then require the same person's workspace grant; provider sign-in steps keep
|
|
83
|
+
* managedCookieHuman. An agent has no browser session, so its hash never
|
|
84
|
+
* matches a sign-in started in one.
|
|
85
|
+
*/
|
|
86
|
+
export declare function managedHumanOrAgent(c: Context, deps: ApiRouteDeps): Promise<ManagedCookieHuman | null>;
|
|
87
|
+
export declare function requireOrganizationCodexHuman(c: Context, deps: ApiRouteDeps, organizationId: string, options?: {
|
|
88
|
+
/** A provider sign-in step: the person does it in the browser, never an agent. */
|
|
89
|
+
providerConsent?: boolean;
|
|
90
|
+
}): Promise<ManagedCookieHuman>;
|
|
33
91
|
export declare function requireSameOriginBrowserMutation(c: Context, deps: ApiRouteDeps): void;
|
|
92
|
+
export declare function requireCodexAppsHuman(c: Context, deps: ApiRouteDeps, workspaceId: string): Promise<{
|
|
93
|
+
human: ManagedCookieHuman;
|
|
94
|
+
accountId: string;
|
|
95
|
+
}>;
|
|
34
96
|
export declare function registerCodexRoutes(app: Hono, deps: ApiRouteDeps): void;
|
|
35
97
|
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type ApiRouteDeps } from "@opengeni/core";
|
|
2
2
|
import { type ComputerControlFrame, type ExpectedComputerFrameEvidence } from "@opengeni/runtime/sandbox";
|
|
3
3
|
import type { Hono } from "hono";
|
|
4
|
+
import { type InteractionSecretsPort } from "../interaction-secrets.js";
|
|
4
5
|
type ComputerFrameCaptureClient = {
|
|
5
6
|
capture(targetId: string, options: {
|
|
6
7
|
format?: "jpeg" | "png";
|
|
@@ -11,8 +12,12 @@ type ComputerFrameCaptureClient = {
|
|
|
11
12
|
};
|
|
12
13
|
export declare function validateComputerFrameForApi(frame: Pick<ComputerControlFrame, "data" | "mediaType" | "metadataHeader">, expected: ExpectedComputerFrameEvidence): ComputerControlFrame;
|
|
13
14
|
export declare function captureModelComputerFrame(sessionClient: ComputerFrameCaptureClient, expected: ExpectedComputerFrameEvidence): Promise<ComputerControlFrame>;
|
|
15
|
+
/** One validated screen frame, served as sandboxed, non-embeddable user content. */
|
|
16
|
+
export declare function computerScreenshotResponse(frame: Pick<ComputerControlFrame, "data" | "mediaType" | "metadataHeader">): Response;
|
|
14
17
|
/** Public ComputerSession resource surface. Physical app/window authority stays
|
|
15
18
|
* in the same placement controller used by BrowserSession; this route owns only
|
|
16
19
|
* durable authorization, placement fencing, lifecycle receipts, and routing. */
|
|
17
|
-
export declare function registerComputerSessionRoutes(app: Hono, deps: ApiRouteDeps
|
|
20
|
+
export declare function registerComputerSessionRoutes(app: Hono, deps: ApiRouteDeps, options?: {
|
|
21
|
+
interactionSecrets?: InteractionSecretsPort | null;
|
|
22
|
+
}): void;
|
|
18
23
|
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Hono } from "hono";
|
|
2
|
+
import type { ApiRouteDeps } from "@opengeni/core";
|
|
3
|
+
export declare const DESKTOP_INSTALLER_PATH = "/desktop/install.sh";
|
|
4
|
+
export declare const DESKTOP_RELEASE_PAGE_PATH = "/desktop/latest";
|
|
5
|
+
export declare const DESKTOP_DOWNLOAD_PREFIX = "/desktop/latest/";
|
|
6
|
+
/** The versioned release file for a version-less name, or null if it isn't one. */
|
|
7
|
+
export declare function desktopReleaseFile(asset: string, version: string): string | null;
|
|
8
|
+
/** The highest stable version among desktop-v<version> tags. */
|
|
9
|
+
export declare function newestDesktopVersion(tags: readonly string[]): string | null;
|
|
10
|
+
/** owner/name for a https://github.com/<owner>/<name>/releases base, else null. */
|
|
11
|
+
export declare function githubRepositoryOf(releasesBase: string): string | null;
|
|
12
|
+
export interface DesktopVersionResolverOptions {
|
|
13
|
+
/** An operator pin. When set, it is the only version ever served. */
|
|
14
|
+
pinnedVersion?: string | undefined;
|
|
15
|
+
releasesBase: string;
|
|
16
|
+
fetchImpl?: typeof fetch;
|
|
17
|
+
now?: () => number;
|
|
18
|
+
/** How long a looked-up version is reused. */
|
|
19
|
+
freshForMs?: number;
|
|
20
|
+
/** How long to wait before looking again after a failed lookup. */
|
|
21
|
+
retryAfterMs?: number;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* The version /desktop/latest serves: the pin, or the newest desktop-v tag on
|
|
25
|
+
* the release repository. A lookup is shared by concurrent requests and reused
|
|
26
|
+
* for ten minutes, well within GitHub's unauthenticated rate limit. When GitHub
|
|
27
|
+
* is unreachable the last known version keeps serving.
|
|
28
|
+
*/
|
|
29
|
+
export declare function createDesktopVersionResolver(options: DesktopVersionResolverOptions): () => Promise<string>;
|
|
30
|
+
export declare function desktopInstallerFor(body: string, publicBaseUrl: string | undefined): string;
|
|
31
|
+
export declare function registerDesktopDistributionRoutes(app: Hono, deps: ApiRouteDeps, resolveVersion?: () => Promise<string>): void;
|
|
32
|
+
export declare function isDesktopDistributionPath(path: string): boolean;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { GitHubInstallationBindingCandidate } from "@opengeni/contracts";
|
|
2
|
+
export declare function githubInstallationChooserHtml(candidates: GitHubInstallationBindingCandidate[], state: string, workspaceId: string, baseUrl: string): string;
|
|
3
|
+
export declare function githubSetupSuccessHtml(account: string, returnUrl: string): string;
|
|
4
|
+
/**
|
|
5
|
+
* GitHub sends a non-owner here after they ask their organization owners to
|
|
6
|
+
* approve the app (`setup_action=request`). Nothing is connected yet: an owner
|
|
7
|
+
* approves on GitHub, then an owner connects the organization in Opengeni.
|
|
8
|
+
*/
|
|
9
|
+
export declare function githubSetupPendingHtml(returnUrl?: string | null): string;
|
|
10
|
+
/**
|
|
11
|
+
* Where GitHub sends an organization owner after they approve a member's
|
|
12
|
+
* request (or install the app straight from GitHub). The redirect carries no
|
|
13
|
+
* Opengeni state, so it cannot name a workspace and must not connect one: an
|
|
14
|
+
* owner chooses the workspace explicitly from inside Opengeni.
|
|
15
|
+
*/
|
|
16
|
+
export declare function githubOwnerApprovedHtml(homeUrl: string): string;
|
|
17
|
+
/**
|
|
18
|
+
* Why a GitHub browser step could not continue. Browser navigation (a stale
|
|
19
|
+
* page-load link, GitHub's Cancel button, a non-owner) must land on a readable
|
|
20
|
+
* page with a way back, never on a raw JSON error body.
|
|
21
|
+
*/
|
|
22
|
+
export type GitHubConnectFailure = "expired" | "cancelled" | "not_owner" | "forbidden" | "policy_denied" | "signed_out" | "failed";
|
|
23
|
+
export declare function githubConnectFailureHtml(failure: GitHubConnectFailure, returnUrl: string, detail?: string | null): string;
|
|
24
|
+
export declare function prReviewInstallationChooserHtml(candidates: GitHubInstallationBindingCandidate[], state: string, action: string): string;
|
|
25
|
+
export declare function prReviewSetupSuccessHtml(account: string, returnUrl: string): string;
|
|
26
|
+
export declare function prReviewSetupPendingHtml(): string;
|
|
27
|
+
export declare function githubSuccessHtml(envLines: string[]): string;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type InboxItem } from "@opengeni/contracts";
|
|
2
|
+
import { type ApiRouteDeps } from "@opengeni/core";
|
|
3
|
+
import { type InboxItemRow } from "@opengeni/db";
|
|
4
|
+
import type { Hono } from "hono";
|
|
5
|
+
/**
|
|
6
|
+
* The items another member's agent sent from a session the person cannot
|
|
7
|
+
* open (such as that member's private session). Those show no session: no
|
|
8
|
+
* title and no link. The person's own items are never checked here.
|
|
9
|
+
*/
|
|
10
|
+
export declare function itemsWithUnavailableSession(rows: readonly InboxItemRow[], canRead: (row: InboxItemRow) => Promise<boolean>): Promise<Set<string>>;
|
|
11
|
+
/** An inbox row as the person sees it. */
|
|
12
|
+
export declare function presentInboxItem(row: InboxItemRow, sessionTitle: string | null, sessionAvailable: boolean): InboxItem;
|
|
13
|
+
export declare function registerInboxRoutes(app: Hono, deps: ApiRouteDeps): void;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const INSIGHTS_RESPONSE_TTL_MS = 60000;
|
|
2
|
+
/** Ephemeral keyed digest: raw credentials never become retained map keys or logs. */
|
|
3
|
+
export declare function createInsightsCredentialPartition(): (authorization: string | undefined, cookie: string | undefined) => string;
|
|
4
|
+
export declare function createInsightsResponseCache(clock?: () => number): {
|
|
5
|
+
get<T>(key: string, fence: string): T | null;
|
|
6
|
+
put(key: string, fence: string, value: unknown): void;
|
|
7
|
+
readonly size: number;
|
|
8
|
+
};
|
|
9
|
+
/** Match existing bounded cause-chain PostgreSQL timeout handling; never expose SQL. */
|
|
10
|
+
export declare function insightsWithFriendlyTimeout<T>(read: () => Promise<T>): Promise<T>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { AccessContext } from "@opengeni/contracts";
|
|
2
|
+
import { type ApiRouteDeps, type InsightsQueryScope } from "@opengeni/core";
|
|
3
|
+
import type { Hono } from "hono";
|
|
4
|
+
/** Keep repeated filters, but reject repeated scalar options in the strict schema. */
|
|
5
|
+
export declare function insightsQueryParameters(query: Record<string, string[]>): Record<string, string | string[]>;
|
|
6
|
+
/** Frozen interim capabilities: a newer additive contract must not silently widen a raw query. */
|
|
7
|
+
export declare function insightsRawQuerySupported(query: Record<string, unknown>, organization: boolean, calls: boolean): boolean;
|
|
8
|
+
/** The actor and its canonical detail authority are part of every sharing key. */
|
|
9
|
+
export declare function insightsUsageCoalesceKey(scope: InsightsQueryScope, query: unknown, actor: string | null): string;
|
|
10
|
+
/** Reuse canonical read grants, never infer session access from billing authority. */
|
|
11
|
+
export declare function organizationInsightsScope(context: AccessContext, accountId: string): InsightsQueryScope;
|
|
12
|
+
export declare function registerInsightsUsageRoutes(app: Hono, deps: ApiRouteDeps): void;
|
|
@@ -1,4 +1,32 @@
|
|
|
1
1
|
import { type ApiRouteDeps, type WorkspaceInsightsFilterField } from "@opengeni/core";
|
|
2
2
|
import type { Hono } from "hono";
|
|
3
3
|
export declare function normalizeWorkspaceInsightsQueryFilter(value: string | null | undefined, field: WorkspaceInsightsFilterField): string | null;
|
|
4
|
+
/**
|
|
5
|
+
* Share one in-flight computation between identical concurrent callers.
|
|
6
|
+
*
|
|
7
|
+
* A reload, a second tab, or a retried fetch joins the rollup already running
|
|
8
|
+
* instead of starting another multi-second aggregate on the database.
|
|
9
|
+
* Authorization and filter validation still run per request before a caller
|
|
10
|
+
* may join; the map only ever holds running work. The caller supplies the
|
|
11
|
+
* complete sharing key, which must identify everything the result depends on.
|
|
12
|
+
*/
|
|
13
|
+
export declare function createInFlightCoalescer<T>(): {
|
|
14
|
+
run: (key: string, work: () => Promise<T>) => Promise<T>;
|
|
15
|
+
readonly size: number;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Insights rows are filtered by the database RLS actor (private sessions are
|
|
19
|
+
* visible only to their owner), so two administrators of one workspace can
|
|
20
|
+
* legitimately receive different responses. The actor identity is part of
|
|
21
|
+
* the key; requests share work only when every visibility input is equal.
|
|
22
|
+
*/
|
|
23
|
+
export declare function workspaceInsightsCoalesceKey(input: {
|
|
24
|
+
workspaceId: string;
|
|
25
|
+
range: string;
|
|
26
|
+
provider: string | null;
|
|
27
|
+
model: string | null;
|
|
28
|
+
rootSessionId?: string | null;
|
|
29
|
+
sessionId?: string | null;
|
|
30
|
+
rlsActor: string | null;
|
|
31
|
+
}): string;
|
|
4
32
|
export declare function registerInsightsRoutes(app: Hono, deps: ApiRouteDeps): void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The 422 a session gets when it asks for a computer or browser on a Connected
|
|
3
|
+
* Machine it is not currently placed on. Name the exact way to get there so an
|
|
4
|
+
* agent switches itself over instead of delegating or giving up, and keep it
|
|
5
|
+
* conditional because not every session is allowed to swap.
|
|
6
|
+
*/
|
|
7
|
+
export declare function wrongInteractionPlacementMessage(targetSandboxId: string): string;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ApiRouteDeps } from "@opengeni/core";
|
|
2
|
+
import type { Context, Hono } from "hono";
|
|
3
|
+
export declare function admitManagedSignInMutation(context: Context, deps: ApiRouteDeps): Promise<void>;
|
|
4
|
+
export declare function registerManagedSignInMethodRoutes(app: Hono, deps: ApiRouteDeps): void;
|
|
5
|
+
/** Intercept only database-backed, product-issued explicit connect states. */
|
|
6
|
+
export declare function handleManagedSignInConnectCallback(context: Context, deps: ApiRouteDeps, provider: "google" | "github"): Promise<Response | null>;
|