@opengeni/db 0.28.9 → 0.36.0
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/attached-browser-devices.d.ts +42 -0
- package/dist/attempt-tool-catalogs.d.ts +16 -0
- package/dist/browser-auth.d.ts +299 -0
- package/dist/browser-downloads.d.ts +51 -0
- package/dist/browser-identities.d.ts +137 -0
- package/dist/browser-sessions.d.ts +354 -0
- package/dist/browser-state-artifacts.d.ts +91 -0
- package/dist/canonical-human-identities.d.ts +48 -0
- package/dist/canonical-human-identities.js +28 -0
- package/dist/canonical-human-identities.js.map +1 -0
- package/dist/capability-components.d.ts +37 -0
- package/dist/capability-integrations.d.ts +194 -0
- package/dist/chunk-5KTIEDX7.js +13200 -0
- package/dist/chunk-5KTIEDX7.js.map +1 -0
- package/dist/chunk-CQZ4QSP5.js +995 -0
- package/dist/chunk-CQZ4QSP5.js.map +1 -0
- package/dist/chunk-F32YT7MP.js +117 -0
- package/dist/chunk-F32YT7MP.js.map +1 -0
- package/dist/chunk-JC5QPLUM.js +666 -0
- package/dist/chunk-JC5QPLUM.js.map +1 -0
- package/dist/chunk-P3RE4D2B.js +3535 -0
- package/dist/chunk-P3RE4D2B.js.map +1 -0
- package/dist/chunk-TAUTWOS5.js +259 -0
- package/dist/chunk-TAUTWOS5.js.map +1 -0
- package/dist/chunk-VKLB2ZGI.js +2389 -0
- package/dist/chunk-VKLB2ZGI.js.map +1 -0
- package/dist/codemode-operations.d.ts +117 -0
- package/dist/codex-token-resolver.d.ts +2 -2
- package/dist/company-profile-schema.d.ts +798 -0
- package/dist/company-profile.d.ts +268 -0
- package/dist/computer-sessions.d.ts +109 -0
- package/dist/connection-token-resolver.d.ts +9 -4
- package/dist/database.d.ts +57 -3
- package/dist/editable-artifact-durable-export.d.ts +153 -0
- package/dist/editable-artifact-durable-export.js +788 -0
- package/dist/editable-artifact-durable-export.js.map +1 -0
- package/dist/editable-artifact-materialization.d.ts +123 -0
- package/dist/editable-artifacts-schema.d.ts +4152 -0
- package/dist/editable-artifacts.d.ts +610 -0
- package/dist/editable-artifacts.js +26 -0
- package/dist/editable-artifacts.js.map +1 -0
- package/dist/generated-images.d.ts +139 -0
- package/dist/index.d.ts +1122 -126
- package/dist/index.js +42329 -18407
- package/dist/index.js.map +1 -1
- package/dist/insights.d.ts +73 -10
- package/dist/integration-bindings.d.ts +70 -0
- package/dist/integration-facets.d.ts +99 -0
- package/dist/interaction-revisions.d.ts +14 -0
- package/dist/interaction-schema.d.ts +6036 -0
- package/dist/knowledge-source-sync-schema.d.ts +1679 -0
- package/dist/knowledge-source-sync.d.ts +274 -0
- package/dist/memory-governance.d.ts +2 -2
- package/dist/memory-slack-delivery.d.ts +101 -0
- package/dist/new-session-drafts.d.ts +2 -2
- package/dist/pack-components.d.ts +76 -0
- package/dist/pack-installations.d.ts +86 -0
- package/dist/persistence-errors.d.ts +3 -3
- package/dist/plugin-packages.d.ts +126 -0
- package/dist/preference-registry.d.ts +1 -1
- package/dist/provision-roles.d.ts +9 -1
- package/dist/provision-roles.js +1 -1
- package/dist/runtime-posture.d.ts +19 -6
- package/dist/schema.d.ts +22654 -9359
- package/dist/schema.js +209 -3
- package/dist/scoped-knowledge.d.ts +97 -1
- package/dist/session-control.d.ts +33 -7
- package/dist/session-queue-commands.d.ts +19 -11
- package/dist/session-realtime-context.d.ts +2 -2
- package/dist/session-realtime-ledger.d.ts +4 -4
- package/dist/session-realtime-mirror.d.ts +2 -2
- package/dist/session-realtime-state.d.ts +1 -1
- package/dist/session-realtime-terminal.d.ts +1 -1
- package/dist/session-realtime.d.ts +7 -7
- package/dist/session-tenancy.d.ts +44 -0
- package/dist/session-tenancy.js +16 -0
- package/dist/session-tenancy.js.map +1 -0
- package/dist/session-tool-call-settlement.d.ts +1 -1
- package/dist/slack-task-policy-schema.d.ts +847 -0
- package/dist/slack-task-policy.d.ts +65 -0
- package/dist/slack-user-link-access.d.ts +54 -0
- package/dist/task-notes-schema.d.ts +924 -0
- package/dist/task-notes.d.ts +85 -0
- package/dist/transcription-recordings.d.ts +2 -2
- package/dist/turn-initiator.d.ts +2 -2
- package/dist/video-generation.d.ts +225 -0
- package/dist/video-generation.js +68 -0
- package/dist/video-generation.js.map +1 -0
- package/dist/workspace-artifacts.d.ts +1 -1
- package/dist/workspace-instruction-policies.d.ts +1 -1
- package/dist/workspace-learning-policy-schema.d.ts +932 -0
- package/dist/workspace-learning-policy.d.ts +161 -0
- package/dist/xai-subscription.d.ts +326 -0
- package/drizzle/0183_model_call_provider_cost_estimates.sql +39 -0
- package/drizzle/0184_sandbox_drain_teardown_fence.sql +682 -0
- package/drizzle/0185_temporal_schedule_cleanup_outbox.sql +168 -0
- package/drizzle/0186_sandbox_capture_provider_contract.sql +400 -0
- package/drizzle/0187_generated_image_artifacts.sql +173 -0
- package/drizzle/0188_image_generation_retention_failure.sql +25 -0
- package/drizzle/0189_retained_session_image_formats.sql +13 -0
- package/drizzle/0190_timeline_annotations.sql +31 -0
- package/drizzle/0191_editable_artifact_engine.sql +3853 -0
- package/drizzle/0192_editable_artifact_live_tickets.sql +338 -0
- package/drizzle/0193_editable_artifact_authorization.sql +190 -0
- package/drizzle/0194_editable_artifact_durable_exports.sql +160 -0
- package/drizzle/0195_editable_artifact_import_authorization.sql +203 -0
- package/drizzle/0196_rig_provider_images.sql +152 -0
- package/drizzle/0197_knowledge_source_sync_schedules.sql +523 -0
- package/drizzle/0198_memory_slack_publication_delivery.sql +393 -0
- package/drizzle/0199_workspace_learning_policy.sql +980 -0
- package/drizzle/0201_company_profile_authority.sql +849 -0
- package/drizzle/0202_document_index_checkpoints.sql +85 -0
- package/drizzle/0203_durable_video_generation.sql +353 -0
- package/drizzle/0204_video_generation_funding.sql +44 -0
- package/drizzle/0205_attempt_tool_catalogs.sql +230 -0
- package/drizzle/0206_browser_sessions.sql +646 -0
- package/drizzle/0207_browser_identities.sql +379 -0
- package/drizzle/0208_attached_browser_devices.sql +165 -0
- package/drizzle/0209_computer_sessions.sql +575 -0
- package/drizzle/0210_browser_auth_network_interventions.sql +441 -0
- package/drizzle/0211_editable_artifact_session_links.sql +58 -0
- package/drizzle/0212_browser_state_transfer_hardening.sql +560 -0
- package/drizzle/0212_slack_installation_bindings.sql +348 -0
- package/drizzle/0213_browser_interaction_authority.sql +67 -0
- package/drizzle/0213_slack_user_link_access_requests.sql +177 -0
- package/drizzle/0214_browser_download_saves.sql +34 -0
- package/drizzle/0214_session_activity_commit_gate.sql +262 -0
- package/drizzle/0215_browser_controller_host.sql +385 -0
- package/drizzle/0215_capabilities_platform.sql +980 -0
- package/drizzle/0216_browser_auth_health_evidence.sql +137 -0
- package/drizzle/0216_pack_component_ownership.sql +235 -0
- package/drizzle/0217_capability_definition_delete_authority.sql +32 -0
- package/drizzle/0217_external_browser_auth_operations.sql +22 -0
- package/drizzle/0218_organization_tenancy_foundation.sql +299 -0
- package/drizzle/0219_organization_tenancy_managed_human_provisioning.sql +317 -0
- package/drizzle/0219_site_auth_maintenance_sessions.sql +234 -0
- package/drizzle/0220_memory_slack_append_only_cascade.sql +38 -0
- package/drizzle/0220_session_channels.sql +54 -0
- package/drizzle/0221_sessions_channel_index.sql +5 -0
- package/drizzle/0222_session_visibility_authority_epochs.sql +158 -0
- package/drizzle/0222_sessions_channel_fk.sql +89 -0
- package/drizzle/0223_pending_tool_event_output.sql +55 -0
- package/drizzle/0223_sessions_channel_fk_validate.sql +118 -0
- package/drizzle/0224_slack_post_outcome_reconciliation.sql +123 -0
- package/drizzle/0225_session_visibility_fork_activation.sql +1363 -0
- package/drizzle/0226_personal_codex_authority_foundation.sql +365 -0
- package/drizzle/0227_slack_native_actions.sql +145 -0
- package/drizzle/0228_interaction_controller_data_plane.sql +14 -0
- package/drizzle/0228_slack_task_policy.sql +400 -0
- package/drizzle/0229_slack_inbox_file_fact.sql +10 -0
- package/drizzle/0230_user_scoped_variable_sets_rigs.sql +84 -0
- package/drizzle/0231_integration_definition_identity_cutover.sql +271 -0
- package/drizzle/0232_integration_facet_authority_cutover.sql +610 -0
- package/drizzle/0233_skill_and_integration_authority_cutover.sql +1162 -0
- package/drizzle/0234_xai_subscription_authority.sql +1139 -0
- package/drizzle/0235_canonical_human_login_bindings.sql +920 -0
- package/drizzle/0236_browser_identity_lifecycle.sql +39 -0
- package/drizzle/0236_session_visibility_slack_policy.sql +72 -0
- package/drizzle/0237_interaction_transition_reaper.sql +263 -0
- package/drizzle/0238_goal_persistence_policy.sql +471 -0
- package/drizzle/0238_supergrok_realtime_model.sql +29 -0
- package/drizzle/0239_supergrok_video_funding.sql +50 -0
- package/drizzle/0239_task_tree_notes.sql +990 -0
- package/package.json +26 -5
- package/src/attached-browser-devices.ts +371 -0
- package/src/attempt-tool-catalogs.ts +131 -0
- package/src/browser-auth.ts +4373 -0
- package/src/browser-downloads.ts +517 -0
- package/src/browser-identities.ts +1385 -0
- package/src/browser-sessions.ts +2294 -0
- package/src/browser-state-artifacts.ts +449 -0
- package/src/canonical-human-identities.ts +317 -0
- package/src/capability-components.ts +166 -0
- package/src/capability-integrations.ts +1571 -0
- package/src/codemode-operations.ts +674 -0
- package/src/company-profile-schema.ts +143 -0
- package/src/company-profile.ts +968 -0
- package/src/computer-sessions.ts +1130 -0
- package/src/connection-token-resolver.ts +270 -25
- package/src/database.ts +468 -24
- package/src/editable-artifact-durable-export.ts +1201 -0
- package/src/editable-artifact-materialization.ts +893 -0
- package/src/editable-artifacts-schema.ts +879 -0
- package/src/editable-artifacts.ts +5404 -0
- package/src/generated-images.ts +740 -0
- package/src/index.ts +9963 -1465
- package/src/insights.ts +251 -23
- package/src/integration-bindings.ts +455 -0
- package/src/integration-facets.ts +862 -0
- package/src/interaction-revisions.ts +70 -0
- package/src/interaction-schema.ts +1606 -0
- package/src/knowledge-source-sync-schema.ts +192 -0
- package/src/knowledge-source-sync.ts +1922 -0
- package/src/memory-slack-delivery.ts +801 -0
- package/src/pack-components.ts +954 -0
- package/src/pack-installations.ts +886 -0
- package/src/persistence-errors.ts +4 -7
- package/src/plugin-packages.ts +1186 -0
- package/src/provision-roles.ts +534 -1
- package/src/runtime-posture-cli.ts +9 -0
- package/src/runtime-posture.ts +721 -5
- package/src/schema.ts +6270 -3159
- package/src/scoped-knowledge-schema.ts +1 -1
- package/src/scoped-knowledge.ts +655 -3
- package/src/session-control.ts +130 -42
- package/src/session-queue-commands.ts +265 -15
- package/src/session-realtime-context.ts +2 -2
- package/src/session-realtime-ledger.ts +3 -3
- package/src/session-realtime.ts +7 -7
- package/src/session-tenancy.ts +188 -0
- package/src/session-tool-call-settlement.ts +18 -3
- package/src/slack-task-policy-schema.ts +130 -0
- package/src/slack-task-policy.ts +341 -0
- package/src/slack-user-link-access.ts +702 -0
- package/src/task-notes-schema.ts +135 -0
- package/src/task-notes.ts +178 -0
- package/src/video-generation.ts +1530 -0
- package/src/workspace-artifacts.ts +1 -1
- package/src/workspace-learning-policy-schema.ts +139 -0
- package/src/workspace-learning-policy.ts +595 -0
- package/src/xai-subscription.ts +1887 -0
- package/dist/chunk-P6CUHXQZ.js +0 -7248
- package/dist/chunk-P6CUHXQZ.js.map +0 -1
- package/dist/chunk-VHBFHMPC.js +0 -1219
- package/dist/chunk-VHBFHMPC.js.map +0 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type AttachedBrowserDevice as AttachedBrowserDeviceValue, type AttachedBrowserDeviceListResponse as AttachedBrowserDeviceListResponseValue, type AttachedBrowserInventorySnapshot as AttachedBrowserInventorySnapshotValue } from "@opengeni/contracts";
|
|
2
|
+
import { type Database } from "./database.js";
|
|
3
|
+
export declare class AttachedBrowserDeviceNotFoundError extends Error {
|
|
4
|
+
readonly name = "AttachedBrowserDeviceNotFoundError";
|
|
5
|
+
}
|
|
6
|
+
export declare class AttachedBrowserInventoryConflictError extends Error {
|
|
7
|
+
readonly name = "AttachedBrowserInventoryConflictError";
|
|
8
|
+
}
|
|
9
|
+
export type ReconcileAttachedBrowserInventoryResult = {
|
|
10
|
+
accepted: boolean;
|
|
11
|
+
changed: boolean;
|
|
12
|
+
revision: number;
|
|
13
|
+
};
|
|
14
|
+
/** Reconcile one full browser-bridge snapshot. The enrollment row serializes
|
|
15
|
+
* concurrent heartbeats; a lower revision from the same bridge generation is
|
|
16
|
+
* ignored, and a replay only refreshes liveness. */
|
|
17
|
+
export declare function reconcileAttachedBrowserInventory(db: Database, input: {
|
|
18
|
+
accountId: string;
|
|
19
|
+
workspaceId: string;
|
|
20
|
+
enrollmentId: string;
|
|
21
|
+
snapshot: AttachedBrowserInventorySnapshotValue;
|
|
22
|
+
}): Promise<ReconcileAttachedBrowserInventoryResult>;
|
|
23
|
+
/** Immediately mark every live Chrome profile on a cleanly disconnected agent
|
|
24
|
+
* offline. Historical endpoint rows remain discoverable and reconnect in place. */
|
|
25
|
+
export declare function disconnectAttachedBrowserDevices(db: Database, input: {
|
|
26
|
+
accountId: string;
|
|
27
|
+
workspaceId: string;
|
|
28
|
+
enrollmentId: string;
|
|
29
|
+
}): Promise<{
|
|
30
|
+
changed: boolean;
|
|
31
|
+
revision: number;
|
|
32
|
+
}>;
|
|
33
|
+
export declare function listAttachedBrowserDevices(db: Database, input: {
|
|
34
|
+
accountId: string;
|
|
35
|
+
workspaceId: string;
|
|
36
|
+
includeDisconnected?: boolean;
|
|
37
|
+
}): Promise<AttachedBrowserDeviceListResponseValue>;
|
|
38
|
+
export declare function getAttachedBrowserDevice(db: Database, input: {
|
|
39
|
+
accountId: string;
|
|
40
|
+
workspaceId: string;
|
|
41
|
+
deviceId: string;
|
|
42
|
+
}): Promise<AttachedBrowserDeviceValue>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { AttemptToolCatalog } from "@opengeni/contracts";
|
|
2
|
+
import type { Database } from "./database.js";
|
|
3
|
+
export declare class AttemptToolCatalogAuthorityError extends Error {
|
|
4
|
+
readonly code = "attempt_tool_catalog_authority_mismatch";
|
|
5
|
+
constructor();
|
|
6
|
+
}
|
|
7
|
+
export declare class AttemptToolCatalogConflictError extends Error {
|
|
8
|
+
readonly code = "attempt_tool_catalog_conflict";
|
|
9
|
+
constructor();
|
|
10
|
+
}
|
|
11
|
+
export declare function persistAttemptToolCatalog(db: Database, input: AttemptToolCatalog): Promise<AttemptToolCatalog>;
|
|
12
|
+
export declare function getAttemptToolCatalog(db: Database, input: {
|
|
13
|
+
accountId: string;
|
|
14
|
+
workspaceId: string;
|
|
15
|
+
attemptId: string;
|
|
16
|
+
}): Promise<AttemptToolCatalog | null>;
|
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
import { type AuthRun as AuthRunValue, type AuthRunListResponse as AuthRunListResponseValue, type AuthRunMutationResponse as AuthRunMutationResponseValue, type CreateInteractionInterventionRequest as CreateInteractionInterventionRequestValue, type CreateNetworkRouteRequest as CreateNetworkRouteRequestValue, type CreateSiteAuthConnectionRequest as CreateSiteAuthConnectionRequestValue, type BrowserExternalAuthResult as BrowserExternalAuthResultValue, type ExternalAuthInteractiveRequest as ExternalAuthInteractiveRequestValue, type ExternalAuthRunRequest as ExternalAuthRunRequestValue, type ExternalAuthRunResponse as ExternalAuthRunResponseValue, type InteractionIntervention as InteractionInterventionValue, type InteractionInterventionListResponse as InteractionInterventionListResponseValue, type InteractionInterventionMutationResponse as InteractionInterventionMutationResponseValue, type NetworkRoute as NetworkRouteValue, type NetworkRouteListResponse as NetworkRouteListResponseValue, type NetworkRouteMutationResponse as NetworkRouteMutationResponseValue, type ProtectedAuthFillRequest as ProtectedAuthFillRequestValue, type ProtectedAuthFillResponse as ProtectedAuthFillResponseValue, type ReportAuthRunRequest as ReportAuthRunRequestValue, type ResolveInteractionInterventionRequest as ResolveInteractionInterventionRequestValue, type RequestHumanInteractionToolInput as RequestHumanInteractionToolInputValue, type SessionEvent, type SiteAuthAuthority as SiteAuthAuthorityValue, type SiteAuthConnection as SiteAuthConnectionValue, type SiteAuthConnectionListResponse as SiteAuthConnectionListResponseValue, type SiteAuthConnectionMutationResponse as SiteAuthConnectionMutationResponseValue, type StartAuthRunRequest as StartAuthRunRequestValue, type UpdateNetworkRouteRequest as UpdateNetworkRouteRequestValue, type UpdateSiteAuthConnectionRequest as UpdateSiteAuthConnectionRequestValue, type VerifyAuthRunRequest as VerifyAuthRunRequestValue } from "@opengeni/contracts";
|
|
2
|
+
import { type Database } from "./database.js";
|
|
3
|
+
import * as schema from "./schema.js";
|
|
4
|
+
type ResourceOperationRow = typeof schema.interactionResourceOperations.$inferSelect;
|
|
5
|
+
type InteractionMutationScope = {
|
|
6
|
+
accountId: string;
|
|
7
|
+
workspaceId: string;
|
|
8
|
+
actorSubjectId: string;
|
|
9
|
+
};
|
|
10
|
+
export declare class InteractionResourceNotFoundError extends Error {
|
|
11
|
+
readonly name = "InteractionResourceNotFoundError";
|
|
12
|
+
}
|
|
13
|
+
export declare class InteractionResourceConflictError extends Error {
|
|
14
|
+
readonly name = "InteractionResourceConflictError";
|
|
15
|
+
}
|
|
16
|
+
export declare class InteractionResourceStateError extends Error {
|
|
17
|
+
readonly name = "InteractionResourceStateError";
|
|
18
|
+
}
|
|
19
|
+
export type SiteAuthMaintenanceClaim = {
|
|
20
|
+
operationId: string;
|
|
21
|
+
sessionId: string;
|
|
22
|
+
accountId: string;
|
|
23
|
+
workspaceId: string;
|
|
24
|
+
siteAuthConnectionId: string;
|
|
25
|
+
connectionVersion: number;
|
|
26
|
+
action: "health_check" | "repair";
|
|
27
|
+
dueAt: Date;
|
|
28
|
+
claimedAt: Date;
|
|
29
|
+
name: string;
|
|
30
|
+
accountLabel: string;
|
|
31
|
+
loginUrl: string | null;
|
|
32
|
+
verificationUrlPrefixes: string[];
|
|
33
|
+
preferredIdentityId: string | null;
|
|
34
|
+
preferredPlacement: SiteAuthConnectionValue["preferredPlacement"];
|
|
35
|
+
preferredNetworkRouteId: string | null;
|
|
36
|
+
healthPolicy: SiteAuthConnectionValue["healthPolicy"];
|
|
37
|
+
verificationState: SiteAuthConnectionValue["verificationState"];
|
|
38
|
+
};
|
|
39
|
+
/** Claim a bounded cross-workspace batch. Stale pre-start claims keep the same
|
|
40
|
+
* operation/session ids, so worker loss repairs one durable dispatch. */
|
|
41
|
+
export declare function claimSiteAuthMaintenance(db: Database, input: {
|
|
42
|
+
claimTimeoutMs: number;
|
|
43
|
+
limit: number;
|
|
44
|
+
}): Promise<SiteAuthMaintenanceClaim[]>;
|
|
45
|
+
/** Link the exact hidden maintenance claim to its service-created session in
|
|
46
|
+
* the caller's create transaction. A false result must abort that transaction. */
|
|
47
|
+
export declare function confirmSiteAuthMaintenanceSessionInTransaction(tx: Database, input: {
|
|
48
|
+
accountId: string;
|
|
49
|
+
workspaceId: string;
|
|
50
|
+
siteAuthConnectionId: string;
|
|
51
|
+
operationId: string;
|
|
52
|
+
sessionId: string;
|
|
53
|
+
}): Promise<boolean>;
|
|
54
|
+
/** Standalone wrapper retained for exact DB callers and tests. Session creation
|
|
55
|
+
* uses the in-transaction form so a changed claim cannot leave an empty shell. */
|
|
56
|
+
export declare function confirmSiteAuthMaintenanceSession(db: Database, input: Parameters<typeof confirmSiteAuthMaintenanceSessionInTransaction>[1]): Promise<boolean>;
|
|
57
|
+
/** Release an exact claim that failed before a maintenance session started. */
|
|
58
|
+
export declare function deferSiteAuthMaintenance(db: Database, input: {
|
|
59
|
+
accountId: string;
|
|
60
|
+
workspaceId: string;
|
|
61
|
+
siteAuthConnectionId: string;
|
|
62
|
+
operationId: string;
|
|
63
|
+
sessionId: string;
|
|
64
|
+
retryAt: Date;
|
|
65
|
+
}): Promise<boolean>;
|
|
66
|
+
export declare function listNetworkRoutes(db: Database, input: {
|
|
67
|
+
accountId: string;
|
|
68
|
+
workspaceId: string;
|
|
69
|
+
includeArchived?: boolean;
|
|
70
|
+
}): Promise<NetworkRouteListResponseValue>;
|
|
71
|
+
export declare function getNetworkRoute(db: Database, input: {
|
|
72
|
+
accountId: string;
|
|
73
|
+
workspaceId: string;
|
|
74
|
+
routeId: string;
|
|
75
|
+
}): Promise<NetworkRouteValue>;
|
|
76
|
+
export declare function createNetworkRoute(db: Database, input: InteractionMutationScope & CreateNetworkRouteRequestValue): Promise<NetworkRouteMutationResponseValue>;
|
|
77
|
+
export declare function updateNetworkRoute(db: Database, input: InteractionMutationScope & {
|
|
78
|
+
routeId: string;
|
|
79
|
+
} & UpdateNetworkRouteRequestValue): Promise<NetworkRouteMutationResponseValue>;
|
|
80
|
+
export declare function listSiteAuthConnections(db: Database, input: {
|
|
81
|
+
accountId: string;
|
|
82
|
+
workspaceId: string;
|
|
83
|
+
includeArchived?: boolean;
|
|
84
|
+
}): Promise<SiteAuthConnectionListResponseValue>;
|
|
85
|
+
export declare function getSiteAuthConnection(db: Database, input: {
|
|
86
|
+
accountId: string;
|
|
87
|
+
workspaceId: string;
|
|
88
|
+
siteAuthConnectionId: string;
|
|
89
|
+
}): Promise<SiteAuthConnectionValue>;
|
|
90
|
+
export declare function createSiteAuthConnection(db: Database, input: InteractionMutationScope & CreateSiteAuthConnectionRequestValue): Promise<SiteAuthConnectionMutationResponseValue>;
|
|
91
|
+
export declare function updateSiteAuthConnection(db: Database, input: InteractionMutationScope & {
|
|
92
|
+
siteAuthConnectionId: string;
|
|
93
|
+
} & UpdateSiteAuthConnectionRequestValue): Promise<SiteAuthConnectionMutationResponseValue>;
|
|
94
|
+
type ExternalAuthOperationMetadata = {
|
|
95
|
+
schemaVersion: 1;
|
|
96
|
+
authRunVersion: number;
|
|
97
|
+
authority: Extract<SiteAuthAuthorityValue, {
|
|
98
|
+
kind: "external_provider";
|
|
99
|
+
}>;
|
|
100
|
+
};
|
|
101
|
+
export type ExternalAuthPreparation = {
|
|
102
|
+
run: AuthRunValue;
|
|
103
|
+
authority: ExternalAuthOperationMetadata["authority"];
|
|
104
|
+
operationState: ResourceOperationRow["state"];
|
|
105
|
+
response: ExternalAuthRunResponseValue | null;
|
|
106
|
+
replayed: boolean;
|
|
107
|
+
};
|
|
108
|
+
export type ProtectedAuthFillPreparation = {
|
|
109
|
+
run: AuthRunValue;
|
|
110
|
+
authority: SiteAuthAuthorityValue;
|
|
111
|
+
origins: string[];
|
|
112
|
+
credentialVersion: number | null;
|
|
113
|
+
operationState: ResourceOperationRow["state"];
|
|
114
|
+
response: ProtectedAuthFillResponseValue | null;
|
|
115
|
+
replayed: boolean;
|
|
116
|
+
};
|
|
117
|
+
export declare function getProtectedAuthFillPreparation(db: Database, input: InteractionMutationScope & {
|
|
118
|
+
authRunId: string;
|
|
119
|
+
} & ProtectedAuthFillRequestValue): Promise<ProtectedAuthFillPreparation | null>;
|
|
120
|
+
export declare function listAuthRuns(db: Database, input: {
|
|
121
|
+
accountId: string;
|
|
122
|
+
workspaceId: string;
|
|
123
|
+
browserSessionId?: string;
|
|
124
|
+
siteAuthConnectionId?: string;
|
|
125
|
+
includeSettled?: boolean;
|
|
126
|
+
}): Promise<AuthRunListResponseValue>;
|
|
127
|
+
export declare function getAuthRun(db: Database, input: {
|
|
128
|
+
accountId: string;
|
|
129
|
+
workspaceId: string;
|
|
130
|
+
authRunId: string;
|
|
131
|
+
}): Promise<AuthRunValue>;
|
|
132
|
+
export type ExternalAuthInteractiveContext = {
|
|
133
|
+
run: AuthRunValue;
|
|
134
|
+
authority: Extract<SiteAuthAuthorityValue, {
|
|
135
|
+
kind: "external_provider";
|
|
136
|
+
}>;
|
|
137
|
+
};
|
|
138
|
+
/** Resolve only the durable authority needed to reveal an external provider's
|
|
139
|
+
* hosted login UI. The hosted URL itself is deliberately never persisted. */
|
|
140
|
+
export declare function getExternalAuthInteractiveContext(db: Database, input: InteractionMutationScope & {
|
|
141
|
+
authRunId: string;
|
|
142
|
+
} & ExternalAuthInteractiveRequestValue): Promise<ExternalAuthInteractiveContext>;
|
|
143
|
+
export declare function startAuthRun(db: Database, input: InteractionMutationScope & {
|
|
144
|
+
browserSessionId: string;
|
|
145
|
+
controllerGeneration: string;
|
|
146
|
+
/** Trusted attempt provenance supplied by the API grant. */
|
|
147
|
+
originatingSessionId?: string | null;
|
|
148
|
+
} & StartAuthRunRequestValue): Promise<AuthRunMutationResponseValue>;
|
|
149
|
+
export type SettleSessionMaintenanceResult = {
|
|
150
|
+
cancelledAuthRuns: number;
|
|
151
|
+
releasedClaim: boolean;
|
|
152
|
+
};
|
|
153
|
+
/** A terminal-for-now maintenance session cannot leave an AuthRun or its claim
|
|
154
|
+
* pinned. Interventions settle linked runs first; this covers every other path. */
|
|
155
|
+
export declare function settleSessionMaintenanceInTransaction(db: Database, input: {
|
|
156
|
+
accountId: string;
|
|
157
|
+
workspaceId: string;
|
|
158
|
+
sessionId: string;
|
|
159
|
+
}): Promise<SettleSessionMaintenanceResult>;
|
|
160
|
+
export declare function reportAuthRun(db: Database, input: InteractionMutationScope & {
|
|
161
|
+
authRunId: string;
|
|
162
|
+
controllerGeneration: string;
|
|
163
|
+
} & ReportAuthRunRequestValue): Promise<AuthRunMutationResponseValue>;
|
|
164
|
+
export declare function getExternalAuthPreparation(db: Database, input: InteractionMutationScope & {
|
|
165
|
+
authRunId: string;
|
|
166
|
+
} & ExternalAuthRunRequestValue): Promise<ExternalAuthPreparation | null>;
|
|
167
|
+
export declare function prepareExternalAuth(db: Database, input: InteractionMutationScope & {
|
|
168
|
+
authRunId: string;
|
|
169
|
+
} & ExternalAuthRunRequestValue): Promise<ExternalAuthPreparation>;
|
|
170
|
+
export declare function dispatchExternalAuth(db: Database, input: InteractionMutationScope & {
|
|
171
|
+
authRunId: string;
|
|
172
|
+
operationId: string;
|
|
173
|
+
}): Promise<ResourceOperationRow["state"]>;
|
|
174
|
+
export declare function completeExternalAuth(db: Database, input: InteractionMutationScope & {
|
|
175
|
+
authRunId: string;
|
|
176
|
+
operationId: string;
|
|
177
|
+
result: BrowserExternalAuthResultValue;
|
|
178
|
+
target?: {
|
|
179
|
+
id: string;
|
|
180
|
+
targetGeneration: string;
|
|
181
|
+
documentGeneration: string | null;
|
|
182
|
+
};
|
|
183
|
+
intervention?: {
|
|
184
|
+
originatingSessionId: string;
|
|
185
|
+
originatingTurnId?: string | null;
|
|
186
|
+
originatingAttemptId?: string | null;
|
|
187
|
+
originatingToolOperationId?: string | null;
|
|
188
|
+
expiresInSeconds: number;
|
|
189
|
+
};
|
|
190
|
+
}): Promise<ExternalAuthRunResponseValue>;
|
|
191
|
+
export declare function prepareProtectedAuthFill(db: Database, input: InteractionMutationScope & {
|
|
192
|
+
authRunId: string;
|
|
193
|
+
credentialVersion: number | null;
|
|
194
|
+
} & ProtectedAuthFillRequestValue): Promise<ProtectedAuthFillPreparation>;
|
|
195
|
+
export declare function dispatchProtectedAuthFill(db: Database, input: InteractionMutationScope & {
|
|
196
|
+
authRunId: string;
|
|
197
|
+
operationId: string;
|
|
198
|
+
}): Promise<ResourceOperationRow["state"]>;
|
|
199
|
+
export declare function completeProtectedAuthFill(db: Database, input: InteractionMutationScope & {
|
|
200
|
+
authRunId: string;
|
|
201
|
+
operationId: string;
|
|
202
|
+
status: ProtectedAuthFillResponseValue["status"];
|
|
203
|
+
targetGeneration?: string;
|
|
204
|
+
documentGeneration?: string | null;
|
|
205
|
+
failureCode?: string;
|
|
206
|
+
intervention?: {
|
|
207
|
+
originatingSessionId: string;
|
|
208
|
+
originatingTurnId?: string | null;
|
|
209
|
+
originatingAttemptId?: string | null;
|
|
210
|
+
originatingToolOperationId?: string | null;
|
|
211
|
+
kind: "manual_login" | "mfa" | "external_action" | "confirmation" | "other";
|
|
212
|
+
reason: string;
|
|
213
|
+
expiresInSeconds: number;
|
|
214
|
+
};
|
|
215
|
+
}): Promise<ProtectedAuthFillResponseValue>;
|
|
216
|
+
export declare function markProtectedAuthFillOutcomeUnknown(db: Database, input: InteractionMutationScope & {
|
|
217
|
+
authRunId: string;
|
|
218
|
+
operationId: string;
|
|
219
|
+
errorCode: string;
|
|
220
|
+
}): Promise<void>;
|
|
221
|
+
export declare function verifyAuthRun(db: Database, input: InteractionMutationScope & {
|
|
222
|
+
authRunId: string;
|
|
223
|
+
controllerGeneration: string;
|
|
224
|
+
targetId: string;
|
|
225
|
+
targetGeneration: string;
|
|
226
|
+
documentGeneration: string | null;
|
|
227
|
+
url: string;
|
|
228
|
+
} & VerifyAuthRunRequestValue): Promise<AuthRunMutationResponseValue>;
|
|
229
|
+
export declare function listInteractionInterventions(db: Database, input: {
|
|
230
|
+
accountId: string;
|
|
231
|
+
workspaceId: string;
|
|
232
|
+
resourceKind?: "browser_session" | "computer_session";
|
|
233
|
+
resourceId?: string;
|
|
234
|
+
includeSettled?: boolean;
|
|
235
|
+
}): Promise<InteractionInterventionListResponseValue>;
|
|
236
|
+
export declare function getInteractionIntervention(db: Database, input: {
|
|
237
|
+
accountId: string;
|
|
238
|
+
workspaceId: string;
|
|
239
|
+
interventionId: string;
|
|
240
|
+
}): Promise<InteractionInterventionValue>;
|
|
241
|
+
export type AttemptInteractionInterventionRequest = {
|
|
242
|
+
id: string;
|
|
243
|
+
operationId: string;
|
|
244
|
+
accountId: string;
|
|
245
|
+
workspaceId: string;
|
|
246
|
+
originatingSessionId: string;
|
|
247
|
+
originatingTurnId: string;
|
|
248
|
+
originatingAttemptId: string;
|
|
249
|
+
toolCallId: string;
|
|
250
|
+
input: RequestHumanInteractionToolInputValue;
|
|
251
|
+
};
|
|
252
|
+
/**
|
|
253
|
+
* Persist one interaction interruption inside the same transaction as its
|
|
254
|
+
* frozen Agent RunState. This is deliberately transaction-local: callers must
|
|
255
|
+
* already hold the session/turn/attempt settlement locks and RLS context.
|
|
256
|
+
*/
|
|
257
|
+
export declare function persistAttemptInteractionInterventionInTransaction(db: Database, raw: AttemptInteractionInterventionRequest): Promise<InteractionInterventionValue>;
|
|
258
|
+
export declare function getInteractionInterventionApprovalTarget(db: Database, input: {
|
|
259
|
+
accountId: string;
|
|
260
|
+
workspaceId: string;
|
|
261
|
+
interventionId: string;
|
|
262
|
+
}): Promise<{
|
|
263
|
+
sessionId: string;
|
|
264
|
+
toolCallId: string;
|
|
265
|
+
} | null>;
|
|
266
|
+
export declare function getInteractionInterventionResumeForEvent(db: Database, workspaceId: string, sessionId: string, event: Pick<SessionEvent, "type" | "payload">): Promise<{
|
|
267
|
+
toolCallId: string;
|
|
268
|
+
intervention: InteractionInterventionValue;
|
|
269
|
+
} | null>;
|
|
270
|
+
export declare function createInteractionIntervention(db: Database, input: InteractionMutationScope & CreateInteractionInterventionRequestValue & {
|
|
271
|
+
originatingSessionId: string;
|
|
272
|
+
originatingTurnId?: string | null;
|
|
273
|
+
originatingAttemptId?: string | null;
|
|
274
|
+
originatingToolOperationId?: string | null;
|
|
275
|
+
}): Promise<InteractionInterventionMutationResponseValue>;
|
|
276
|
+
export declare function resolveInteractionInterventionInTransaction(db: Database, input: InteractionMutationScope & {
|
|
277
|
+
interventionId: string;
|
|
278
|
+
} & ResolveInteractionInterventionRequestValue): Promise<InteractionInterventionMutationResponseValue>;
|
|
279
|
+
export declare function resolveInteractionIntervention(db: Database, input: InteractionMutationScope & {
|
|
280
|
+
interventionId: string;
|
|
281
|
+
} & ResolveInteractionInterventionRequestValue): Promise<InteractionInterventionMutationResponseValue>;
|
|
282
|
+
/**
|
|
283
|
+
* Cancel every still-open intervention created by a logical agent turn when
|
|
284
|
+
* that turn becomes terminal. The caller already owns the turn-settlement
|
|
285
|
+
* transaction, so no resource can outlive the terminal session truth.
|
|
286
|
+
*/
|
|
287
|
+
export declare function cancelTurnInteractionInterventionsInTransaction(db: Database, input: {
|
|
288
|
+
accountId: string;
|
|
289
|
+
workspaceId: string;
|
|
290
|
+
sessionId: string;
|
|
291
|
+
turnId: string;
|
|
292
|
+
}): Promise<number>;
|
|
293
|
+
export declare function cancelOpenInteractionInterventions(db: Database, input: {
|
|
294
|
+
accountId: string;
|
|
295
|
+
workspaceId: string;
|
|
296
|
+
resourceKind: "browser_session" | "computer_session";
|
|
297
|
+
resourceId: string;
|
|
298
|
+
}): Promise<number>;
|
|
299
|
+
export {};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { type BrowserDownload as BrowserDownloadValue, type BrowserDownloadSaveRequest as BrowserDownloadSaveRequestValue, type BrowserDownloadSaveResponse as BrowserDownloadSaveResponseValue } from "@opengeni/contracts";
|
|
2
|
+
import { type Database } from "./database.js";
|
|
3
|
+
import * as schema from "./schema.js";
|
|
4
|
+
type OperationRow = typeof schema.interactionResourceOperations.$inferSelect;
|
|
5
|
+
type SaveMetadata = {
|
|
6
|
+
browserSessionId: string;
|
|
7
|
+
controllerGeneration: string;
|
|
8
|
+
sourceSessionId: string;
|
|
9
|
+
destinationPath: string;
|
|
10
|
+
overwrite: boolean;
|
|
11
|
+
fileId: string;
|
|
12
|
+
uploadId: string;
|
|
13
|
+
objectKey: string;
|
|
14
|
+
safeFilename: string;
|
|
15
|
+
contentType: string;
|
|
16
|
+
download: BrowserDownloadValue;
|
|
17
|
+
};
|
|
18
|
+
export type BrowserDownloadSavePreparation = SaveMetadata & {
|
|
19
|
+
operationId: string;
|
|
20
|
+
state: OperationRow["state"];
|
|
21
|
+
errorCode: string | null;
|
|
22
|
+
replayed: boolean;
|
|
23
|
+
dispatchedNow: boolean;
|
|
24
|
+
response: BrowserDownloadSaveResponseValue | null;
|
|
25
|
+
};
|
|
26
|
+
type SaveIdentity = {
|
|
27
|
+
accountId: string;
|
|
28
|
+
workspaceId: string;
|
|
29
|
+
actorSubjectId: string;
|
|
30
|
+
browserSessionId: string;
|
|
31
|
+
downloadId: string;
|
|
32
|
+
request: BrowserDownloadSaveRequestValue;
|
|
33
|
+
};
|
|
34
|
+
export declare function findBrowserDownloadSave(db: Database, inputValue: SaveIdentity): Promise<BrowserDownloadSavePreparation | null>;
|
|
35
|
+
export declare function prepareBrowserDownloadSave(db: Database, inputValue: SaveIdentity & {
|
|
36
|
+
sourceSessionId: string;
|
|
37
|
+
download: BrowserDownloadValue;
|
|
38
|
+
fileId: string;
|
|
39
|
+
safeFilename: string;
|
|
40
|
+
contentType: string;
|
|
41
|
+
bucket: string;
|
|
42
|
+
objectKey: string;
|
|
43
|
+
uploadExpiresAt: Date;
|
|
44
|
+
}): Promise<BrowserDownloadSavePreparation>;
|
|
45
|
+
export declare function dispatchBrowserDownloadSave(db: Database, inputValue: SaveIdentity): Promise<BrowserDownloadSavePreparation>;
|
|
46
|
+
export declare function completeBrowserDownloadSave(db: Database, inputValue: SaveIdentity): Promise<BrowserDownloadSaveResponseValue>;
|
|
47
|
+
export declare function settleBrowserDownloadSaveFailure(db: Database, inputValue: SaveIdentity & {
|
|
48
|
+
state: "failed" | "outcome_unknown";
|
|
49
|
+
errorCode: string;
|
|
50
|
+
}): Promise<void>;
|
|
51
|
+
export {};
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { type BrowserIdentity as BrowserIdentityValue, type BrowserIdentityListResponse as BrowserIdentityListResponseValue, type BrowserIdentityMutationResponse as BrowserIdentityMutationResponseValue, type BrowserRevision as BrowserRevisionValue, type BrowserRevisionListResponse as BrowserRevisionListResponseValue, type BrowserRevisionMaterialization as BrowserRevisionMaterializationValue, type InteractionError as InteractionErrorValue, type PublishBrowserRevisionResponse as PublishBrowserRevisionResponseValue, type UpdateBrowserIdentityRequest as UpdateBrowserIdentityRequestValue } from "@opengeni/contracts";
|
|
2
|
+
import { type Database } from "./database.js";
|
|
3
|
+
import { type BrowserStateArtifactCommitInput } from "./browser-state-artifacts.js";
|
|
4
|
+
export declare class BrowserIdentityNotFoundError extends Error {
|
|
5
|
+
readonly name = "BrowserIdentityNotFoundError";
|
|
6
|
+
}
|
|
7
|
+
export declare class BrowserIdentityConflictError extends Error {
|
|
8
|
+
readonly name = "BrowserIdentityConflictError";
|
|
9
|
+
}
|
|
10
|
+
export declare class BrowserIdentityStateError extends Error {
|
|
11
|
+
readonly name = "BrowserIdentityStateError";
|
|
12
|
+
}
|
|
13
|
+
export type BrowserRevisionPublicationPreparation = {
|
|
14
|
+
kind: "completed";
|
|
15
|
+
response: PublishBrowserRevisionResponseValue;
|
|
16
|
+
} | {
|
|
17
|
+
kind: "pending";
|
|
18
|
+
operationState: "prepared" | "dispatched";
|
|
19
|
+
browserSessionId: string;
|
|
20
|
+
controllerGeneration: string;
|
|
21
|
+
identity: BrowserIdentityValue;
|
|
22
|
+
parentRevisionId: string | null;
|
|
23
|
+
};
|
|
24
|
+
export type BrowserRevisionPublicationDispatch = {
|
|
25
|
+
kind: "completed";
|
|
26
|
+
response: PublishBrowserRevisionResponseValue;
|
|
27
|
+
} | {
|
|
28
|
+
kind: "dispatched";
|
|
29
|
+
browserSessionId: string;
|
|
30
|
+
controllerGeneration: string;
|
|
31
|
+
replayed: boolean;
|
|
32
|
+
};
|
|
33
|
+
export type BrowserRevisionArtifactAuthority = {
|
|
34
|
+
revision: BrowserRevisionValue;
|
|
35
|
+
artifacts: Array<{
|
|
36
|
+
componentId: string;
|
|
37
|
+
artifactId: string;
|
|
38
|
+
objectKey: string;
|
|
39
|
+
encryptedDataKey: string;
|
|
40
|
+
contentDigest: string;
|
|
41
|
+
manifestDigest: string;
|
|
42
|
+
artifactDigest: string;
|
|
43
|
+
sizeBytes: number;
|
|
44
|
+
format: string;
|
|
45
|
+
materialization: BrowserRevisionMaterializationValue;
|
|
46
|
+
}>;
|
|
47
|
+
};
|
|
48
|
+
export declare function listBrowserIdentities(db: Database, input: {
|
|
49
|
+
accountId: string;
|
|
50
|
+
workspaceId: string;
|
|
51
|
+
includeArchived?: boolean;
|
|
52
|
+
}): Promise<BrowserIdentityListResponseValue>;
|
|
53
|
+
export declare function getBrowserIdentity(db: Database, input: {
|
|
54
|
+
accountId: string;
|
|
55
|
+
workspaceId: string;
|
|
56
|
+
identityId: string;
|
|
57
|
+
}): Promise<BrowserIdentityValue>;
|
|
58
|
+
export declare function listBrowserRevisions(db: Database, input: {
|
|
59
|
+
accountId: string;
|
|
60
|
+
workspaceId: string;
|
|
61
|
+
identityId: string;
|
|
62
|
+
}): Promise<BrowserRevisionListResponseValue>;
|
|
63
|
+
export declare function createBrowserIdentity(db: Database, input: {
|
|
64
|
+
accountId: string;
|
|
65
|
+
workspaceId: string;
|
|
66
|
+
operationId: string;
|
|
67
|
+
name: string;
|
|
68
|
+
actorSubjectId: string;
|
|
69
|
+
}): Promise<BrowserIdentityMutationResponseValue>;
|
|
70
|
+
export declare function updateBrowserIdentity(db: Database, input: {
|
|
71
|
+
accountId: string;
|
|
72
|
+
workspaceId: string;
|
|
73
|
+
identityId: string;
|
|
74
|
+
actorSubjectId: string;
|
|
75
|
+
} & UpdateBrowserIdentityRequestValue): Promise<BrowserIdentityMutationResponseValue>;
|
|
76
|
+
export declare function browserRevisionPublicationRequestDigest(input: {
|
|
77
|
+
browserSessionId: string;
|
|
78
|
+
identityId: string;
|
|
79
|
+
expectedHeadGeneration: number;
|
|
80
|
+
advanceDefault: boolean;
|
|
81
|
+
actorSubjectId: string;
|
|
82
|
+
}): string;
|
|
83
|
+
export declare function prepareBrowserRevisionPublication(db: Database, input: {
|
|
84
|
+
accountId: string;
|
|
85
|
+
workspaceId: string;
|
|
86
|
+
operationId: string;
|
|
87
|
+
browserSessionId: string;
|
|
88
|
+
identityId: string;
|
|
89
|
+
expectedHeadGeneration: number;
|
|
90
|
+
advanceDefault: boolean;
|
|
91
|
+
actorSubjectId: string;
|
|
92
|
+
}): Promise<BrowserRevisionPublicationPreparation>;
|
|
93
|
+
export declare function dispatchBrowserRevisionPublication(db: Database, input: {
|
|
94
|
+
accountId: string;
|
|
95
|
+
workspaceId: string;
|
|
96
|
+
operationId: string;
|
|
97
|
+
browserSessionId: string;
|
|
98
|
+
controllerGeneration: string;
|
|
99
|
+
identityId: string;
|
|
100
|
+
expectedHeadGeneration: number;
|
|
101
|
+
advanceDefault: boolean;
|
|
102
|
+
actorSubjectId: string;
|
|
103
|
+
stateUpload?: {
|
|
104
|
+
objectKey: string;
|
|
105
|
+
cleanupAfter: Date;
|
|
106
|
+
};
|
|
107
|
+
}): Promise<BrowserRevisionPublicationDispatch>;
|
|
108
|
+
export declare function commitBrowserRevisionPublication(db: Database, input: {
|
|
109
|
+
accountId: string;
|
|
110
|
+
workspaceId: string;
|
|
111
|
+
operationId: string;
|
|
112
|
+
browserSessionId: string;
|
|
113
|
+
controllerGeneration: string;
|
|
114
|
+
identityId: string;
|
|
115
|
+
expectedHeadGeneration: number;
|
|
116
|
+
advanceDefault: boolean;
|
|
117
|
+
actorSubjectId: string;
|
|
118
|
+
manifestDigest: string;
|
|
119
|
+
artifacts: readonly BrowserStateArtifactCommitInput[];
|
|
120
|
+
}): Promise<PublishBrowserRevisionResponseValue>;
|
|
121
|
+
export declare function failBrowserRevisionPublication(db: Database, input: {
|
|
122
|
+
accountId: string;
|
|
123
|
+
workspaceId: string;
|
|
124
|
+
operationId: string;
|
|
125
|
+
browserSessionId: string;
|
|
126
|
+
controllerGeneration: string;
|
|
127
|
+
state?: "failed" | "outcome_unknown";
|
|
128
|
+
error: InteractionErrorValue;
|
|
129
|
+
}): Promise<void>;
|
|
130
|
+
/** Server-only storage authority used to restore a revision. Never project this
|
|
131
|
+
* result through HTTP, MCP, Codemode output, or the public SDK. */
|
|
132
|
+
export declare function getBrowserRevisionArtifactAuthority(db: Database, input: {
|
|
133
|
+
accountId: string;
|
|
134
|
+
workspaceId: string;
|
|
135
|
+
identityId: string;
|
|
136
|
+
revisionId: string;
|
|
137
|
+
}): Promise<BrowserRevisionArtifactAuthority>;
|