@opengeni/db 6.2.0 → 6.3.0-canary.36927100590001
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/archived-session-imports.d.ts +115 -0
- package/dist/automations.d.ts +10 -0
- package/dist/browser-deadline-checkpoints.d.ts +31 -0
- package/dist/browser-sessions.d.ts +3 -0
- package/dist/canonical-human-identities.js +3 -3
- package/dist/capability-integrations.d.ts +8 -2
- package/dist/capability-reconciliation.js +2 -2
- package/dist/{chunk-WKLDMSSX.js → chunk-25DAVPRJ.js} +2 -2
- package/dist/{chunk-RTVDWDBS.js → chunk-2X2GKAC4.js} +5 -4
- package/dist/{chunk-RTVDWDBS.js.map → chunk-2X2GKAC4.js.map} +1 -1
- package/dist/{chunk-FMEZG5WH.js → chunk-3MP2V2GC.js} +4 -4
- package/dist/{chunk-I2VSFY4F.js → chunk-3UKWSD43.js} +2 -2
- package/dist/{chunk-UBNUEKCJ.js → chunk-3ZYFTK7X.js} +3 -3
- package/dist/{chunk-T2SHSMIB.js → chunk-7ORQCNBA.js} +154 -8
- package/dist/chunk-7ORQCNBA.js.map +1 -0
- package/dist/{chunk-3I4SGUQX.js → chunk-7PFJLY2U.js} +344 -18
- package/dist/chunk-7PFJLY2U.js.map +1 -0
- package/dist/{chunk-DBX35PJN.js → chunk-LQ4IB3NH.js} +5 -5
- package/dist/{chunk-73ZUIXCL.js → chunk-M3TGZ7B4.js} +2 -2
- package/dist/{chunk-6ZTMU7BF.js → chunk-NJIWKMV3.js} +34 -2
- package/dist/chunk-NJIWKMV3.js.map +1 -0
- package/dist/{chunk-457JAWAA.js → chunk-RP7EQP36.js} +2 -2
- package/dist/{chunk-VHPOPKEZ.js → chunk-UAR7ZDNG.js} +309 -5
- package/dist/chunk-UAR7ZDNG.js.map +1 -0
- package/dist/{chunk-5NIBMHXQ.js → chunk-VTVNNCYZ.js} +4 -4
- package/dist/{chunk-IWTPR5EV.js → chunk-VWGYBPX4.js} +2 -2
- package/dist/{chunk-VOL2VGEL.js → chunk-YHIBDQ7N.js} +55 -4
- package/dist/chunk-YHIBDQ7N.js.map +1 -0
- package/dist/claude-subscription-tokens.d.ts +43 -0
- package/dist/claude-subscription-usage.d.ts +2 -0
- package/dist/connect-attempts.js +3 -3
- package/dist/connection-token-resolver.d.ts +8 -0
- package/dist/credit-debit-attribution.d.ts +29 -0
- package/dist/database.d.ts +1 -1
- package/dist/editable-artifact-durable-export.js +2 -2
- package/dist/editable-artifacts.d.ts +7 -0
- package/dist/editable-artifacts.js +5 -3
- package/dist/external-identity-links.d.ts +1 -1
- package/dist/external-link-work.d.ts +1 -1
- package/dist/external-membership-operations.d.ts +1 -1
- package/dist/index.d.ts +213 -7
- package/dist/index.js +9402 -8209
- package/dist/index.js.map +1 -1
- package/dist/integration-oauth-pending-states.d.ts +7 -1
- package/dist/knowledge-entries-schema.d.ts +41 -0
- package/dist/knowledge-indexing.d.ts +25 -1
- package/dist/lifecycle-fact-backfill.d.ts +33 -0
- package/dist/managed-auth-session-sets.js +3 -3
- package/dist/mcp-account-bindings.d.ts +10 -0
- package/dist/mcp-operations.js +2 -2
- package/dist/organization-integration-policy.js +3 -3
- package/dist/provision-roles.js +1 -1
- package/dist/retained-provider-commands.js +6 -6
- package/dist/runtime-posture.d.ts +9 -4
- package/dist/schema.d.ts +2343 -197
- package/dist/schema.js +21 -1
- package/dist/session-background-commands.js +4 -4
- package/dist/session-command-output.js +5 -5
- package/dist/session-event-slices.js +3 -3
- package/dist/session-file-attachments.d.ts +10 -0
- package/dist/session-final-reply.d.ts +8 -0
- package/dist/session-mcp-credential-rotation.js +5 -5
- package/dist/session-queue-commands.d.ts +4 -0
- package/dist/session-realtime.d.ts +3 -1
- package/dist/session-tenancy.js +3 -3
- package/dist/turn-initiator.d.ts +9 -0
- package/dist/usage-allowances.d.ts +126 -0
- package/dist/usage-analytics.d.ts +33 -0
- package/dist/video-generation.js +4 -3
- package/dist/workspace-artifacts.d.ts +2 -0
- package/dist/workspace-tool-defaults.js +4 -4
- package/drizzle/0550_organization_oauth_pending_states.sql +15 -0
- package/drizzle/0552_usage_allowances.sql +1179 -0
- package/drizzle/0553_non_model_debit_attribution.sql +419 -0
- package/drizzle/0554_video_allowance_refunds.sql +149 -0
- package/drizzle/0555_member_collaborator_permissions.sql +165 -0
- package/drizzle/0556_member_collaborator_permissions_backfill_index.sql +40 -0
- package/drizzle/0557_member_collaborator_permissions_backfill.sql +69 -0
- package/drizzle/0558_external_membership_removal_owner_rls.sql +85 -0
- package/drizzle/0559_session_agent_config.sql +10 -0
- package/drizzle/0560_archived_session_imports.sql +267 -0
- package/drizzle/0561_scheduled_session_agent_identity.sql +38 -0
- package/drizzle/0562_realtime_connection_accounts.sql +9 -0
- package/drizzle/0563_accepted_preference_snapshot_recovery.sql +140 -0
- package/drizzle/0564_browser_deadline_checkpoints.sql +268 -0
- package/drizzle/0565_usage_analytics_presence_and_facts.sql +1136 -0
- package/drizzle/0566_usage_analytics_credit_ledger_triggers.sql +20 -0
- package/drizzle/0567_usage_analytics_connection_triggers.sql +23 -0
- package/drizzle/0568_lifecycle_backfill_read_setup_receipts.sql +38 -0
- package/drizzle/0569_lifecycle_backfill_read_additional_organization_receipts.sql +38 -0
- package/drizzle/0570_lifecycle_backfill_read_codex_credentials.sql +38 -0
- package/drizzle/0571_lifecycle_backfill_read_xai_credentials.sql +38 -0
- package/drizzle/0572_lifecycle_backfill_read_model_provider_connections.sql +38 -0
- package/drizzle/0573_lifecycle_backfill_read_model_provider_operations.sql +38 -0
- package/drizzle/0574_lifecycle_backfill_read_credit_ledger_entries.sql +38 -0
- package/drizzle/0575_lifecycle_backfill_read_connections.sql +38 -0
- package/drizzle/0576_lifecycle_backfill_read_scheduled_tasks.sql +38 -0
- package/drizzle/0577_lifecycle_backfill_read_skill_source_bindings.sql +38 -0
- package/drizzle/0578_lifecycle_backfill_read_preferences.sql +38 -0
- package/drizzle/0579_lifecycle_backfill_read_slack_bot_user_links.sql +38 -0
- package/drizzle/0580_lifecycle_backfill_read_enrollments.sql +38 -0
- package/drizzle/0581_lifecycle_backfill_read_organization_memberships.sql +38 -0
- package/drizzle/0582_scheduled_setup_policy_identity.sql +40 -0
- package/package.json +8 -7
- package/src/archived-session-imports.ts +563 -0
- package/src/automations.ts +54 -8
- package/src/browser-deadline-checkpoints.ts +49 -0
- package/src/browser-sessions.ts +36 -0
- package/src/capability-integrations.ts +29 -3
- package/src/claude-subscription-tokens.ts +178 -0
- package/src/claude-subscription-usage.ts +21 -8
- package/src/connection-token-resolver.ts +51 -0
- package/src/credit-debit-attribution.ts +81 -0
- package/src/database.ts +2 -0
- package/src/editable-artifacts.ts +69 -1
- package/src/index.ts +474 -53
- package/src/integration-oauth-pending-states.ts +60 -8
- package/src/knowledge-entries-schema.ts +6 -0
- package/src/knowledge-indexing.ts +9 -0
- package/src/lifecycle-fact-backfill.ts +116 -0
- package/src/mcp-account-bindings.ts +48 -0
- package/src/provision-roles.ts +37 -0
- package/src/runtime-posture.ts +180 -4
- package/src/schema.ts +321 -5
- package/src/session-file-attachments.ts +24 -0
- package/src/session-final-reply.ts +79 -0
- package/src/session-queue-commands.ts +33 -1
- package/src/session-realtime-context.ts +6 -1
- package/src/session-realtime-ledger.ts +24 -1
- package/src/session-realtime.ts +10 -0
- package/src/turn-initiator.ts +70 -0
- package/src/usage-allowances.ts +391 -0
- package/src/usage-analytics.ts +97 -0
- package/src/video-generation.ts +20 -0
- package/src/workspace-artifacts.ts +26 -0
- package/dist/chunk-3I4SGUQX.js.map +0 -1
- package/dist/chunk-6ZTMU7BF.js.map +0 -1
- package/dist/chunk-T2SHSMIB.js.map +0 -1
- package/dist/chunk-VHPOPKEZ.js.map +0 -1
- package/dist/chunk-VOL2VGEL.js.map +0 -1
- /package/dist/{chunk-WKLDMSSX.js.map → chunk-25DAVPRJ.js.map} +0 -0
- /package/dist/{chunk-FMEZG5WH.js.map → chunk-3MP2V2GC.js.map} +0 -0
- /package/dist/{chunk-I2VSFY4F.js.map → chunk-3UKWSD43.js.map} +0 -0
- /package/dist/{chunk-UBNUEKCJ.js.map → chunk-3ZYFTK7X.js.map} +0 -0
- /package/dist/{chunk-DBX35PJN.js.map → chunk-LQ4IB3NH.js.map} +0 -0
- /package/dist/{chunk-73ZUIXCL.js.map → chunk-M3TGZ7B4.js.map} +0 -0
- /package/dist/{chunk-457JAWAA.js.map → chunk-RP7EQP36.js.map} +0 -0
- /package/dist/{chunk-5NIBMHXQ.js.map → chunk-VTVNNCYZ.js.map} +0 -0
- /package/dist/{chunk-IWTPR5EV.js.map → chunk-VWGYBPX4.js.map} +0 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { AppendArchivedSessionEventsRequest, ImportArchivedSessionRequest, type ArchivedSessionImportEvent, type Session, type SessionEvent, type TurnInitiator, type TurnInitiatorContext, type Permission, type AccessGrant, type FileAsset } from "@opengeni/contracts";
|
|
2
|
+
import { type Database } from "./database.js";
|
|
3
|
+
type ArchivedImportDependencies = {
|
|
4
|
+
createSessionWithIdempotencyKeyResult: (db: Database, input: {
|
|
5
|
+
accountId: string;
|
|
6
|
+
workspaceId: string;
|
|
7
|
+
subjectId: string;
|
|
8
|
+
visibility: "user_private" | "workspace_shared";
|
|
9
|
+
createIdempotencyKey: string;
|
|
10
|
+
initialMessage: string;
|
|
11
|
+
resources: never[];
|
|
12
|
+
skills: never[];
|
|
13
|
+
tools: never[];
|
|
14
|
+
metadata: Record<string, unknown>;
|
|
15
|
+
createdBy: TurnInitiator;
|
|
16
|
+
createdByContext?: TurnInitiatorContext;
|
|
17
|
+
model: string;
|
|
18
|
+
reasoningEffort: "low";
|
|
19
|
+
latencyMode: "standard";
|
|
20
|
+
sandboxBackend: "none";
|
|
21
|
+
variableSetIds: string[];
|
|
22
|
+
firstPartyMcpTools: never[];
|
|
23
|
+
firstPartyMcpPermissions: never[];
|
|
24
|
+
beforeCreateCommit: (tx: Database, sessionId: string, context?: {
|
|
25
|
+
created: boolean;
|
|
26
|
+
}) => Promise<void>;
|
|
27
|
+
}) => Promise<{
|
|
28
|
+
denied: false;
|
|
29
|
+
created: boolean;
|
|
30
|
+
session: {
|
|
31
|
+
id: string;
|
|
32
|
+
};
|
|
33
|
+
} | {
|
|
34
|
+
denied: true;
|
|
35
|
+
}>;
|
|
36
|
+
getFilesForSubject: (db: Database, input: {
|
|
37
|
+
accountId: string;
|
|
38
|
+
workspaceId: string;
|
|
39
|
+
subjectId: string | null;
|
|
40
|
+
fileIds: readonly string[];
|
|
41
|
+
}) => Promise<FileAsset[]>;
|
|
42
|
+
getSession: (db: Database, workspaceId: string, sessionId: string) => Promise<Session | null>;
|
|
43
|
+
getWorkspaceGrant: (db: Database, subjectId: string, workspaceId: string) => Promise<AccessGrant | null>;
|
|
44
|
+
isCreateConflict: (error: unknown) => boolean;
|
|
45
|
+
isCreateUnavailable: (error: unknown) => boolean;
|
|
46
|
+
};
|
|
47
|
+
/** Bind canonical session/file helpers at the root composition, never by
|
|
48
|
+
* importing that barrel back into a reexported leaf. No permissive defaults. */
|
|
49
|
+
export declare function createArchivedSessionImportPersistence(dependencies: ArchivedImportDependencies): {
|
|
50
|
+
importArchivedSession: (db: Database, input: Parameters<typeof importArchivedSession>[1]) => Promise<{
|
|
51
|
+
session: Session;
|
|
52
|
+
importId: string;
|
|
53
|
+
created: boolean;
|
|
54
|
+
nextOffset: number;
|
|
55
|
+
events: SessionEvent[];
|
|
56
|
+
}>;
|
|
57
|
+
appendArchivedSessionEvents: (db: Database, input: Parameters<typeof appendArchivedSessionEvents>[1]) => Promise<{
|
|
58
|
+
sessionId: string;
|
|
59
|
+
importId: string;
|
|
60
|
+
nextOffset: number;
|
|
61
|
+
replayed: boolean;
|
|
62
|
+
events: SessionEvent[];
|
|
63
|
+
}>;
|
|
64
|
+
};
|
|
65
|
+
export type ArchivedSessionImportErrorCode = "SESSION_IMPORT_CONFLICT" | "SESSION_IMPORT_OFFSET_CONFLICT" | "SESSION_IMPORT_NOT_FOUND" | "SESSION_IMPORT_INVALID_FILE" | "SESSION_IMPORTED_READ_ONLY";
|
|
66
|
+
export declare class ArchivedSessionImportError extends Error {
|
|
67
|
+
readonly code: ArchivedSessionImportErrorCode;
|
|
68
|
+
readonly name = "ArchivedSessionImportError";
|
|
69
|
+
constructor(code: ArchivedSessionImportErrorCode);
|
|
70
|
+
}
|
|
71
|
+
export declare function assertSessionIsNotImported(session: Pick<Session, "importedArchive">): void;
|
|
72
|
+
export declare function canonicalArchivedSessionImportHash(value: unknown): string;
|
|
73
|
+
type ImportScope = {
|
|
74
|
+
accountId: string;
|
|
75
|
+
workspaceId: string;
|
|
76
|
+
subjectId: string;
|
|
77
|
+
/** Set only from verified request ownership, never from a payload label. */
|
|
78
|
+
fileOwnerSubjectId: string | null;
|
|
79
|
+
requireLiveSubject?: boolean;
|
|
80
|
+
apiKeyId?: string;
|
|
81
|
+
requiredPermission?: Permission;
|
|
82
|
+
beforeCommit?: (tx: Database) => Promise<void>;
|
|
83
|
+
};
|
|
84
|
+
/** JSON is already bounded by the contract; inspect nested resources as well as
|
|
85
|
+
* the usual top-level attachment refs. Never accept another workspace's file,
|
|
86
|
+
* even when its personal-file ACL happens to allow the importing human. */
|
|
87
|
+
export declare function archivedSessionImportFileIds(events: readonly ArchivedSessionImportEvent[]): string[];
|
|
88
|
+
declare function importArchivedSession(db: Database, input: ImportScope & {
|
|
89
|
+
payload: ImportArchivedSessionRequest;
|
|
90
|
+
createdBy: TurnInitiator;
|
|
91
|
+
createdByContext?: TurnInitiatorContext;
|
|
92
|
+
}, dependencies: ArchivedImportDependencies): Promise<{
|
|
93
|
+
session: Session;
|
|
94
|
+
importId: string;
|
|
95
|
+
created: boolean;
|
|
96
|
+
nextOffset: number;
|
|
97
|
+
events: SessionEvent[];
|
|
98
|
+
}>;
|
|
99
|
+
declare function appendArchivedSessionEvents(db: Database, input: ImportScope & {
|
|
100
|
+
importId: string;
|
|
101
|
+
payload: AppendArchivedSessionEventsRequest;
|
|
102
|
+
/** A host authorization decision may happen before locking, but its target
|
|
103
|
+
* and mutable database authority are verified again after the prefix. */
|
|
104
|
+
sessionId: string;
|
|
105
|
+
}, dependencies: ArchivedImportDependencies): Promise<{
|
|
106
|
+
sessionId: string;
|
|
107
|
+
importId: string;
|
|
108
|
+
nextOffset: number;
|
|
109
|
+
replayed: boolean;
|
|
110
|
+
events: SessionEvent[];
|
|
111
|
+
}>;
|
|
112
|
+
/** Scoped lookup only. Core authorizes the resolved target; another importer
|
|
113
|
+
* never receives a session identity just because its shared timeline is visible. */
|
|
114
|
+
export declare function getArchivedSessionImportId(db: Database, workspaceId: string, subjectId: string, importId: string): Promise<string | null>;
|
|
115
|
+
export {};
|
package/dist/automations.d.ts
CHANGED
|
@@ -4,6 +4,10 @@ export declare class AutomationDeliveryConflictError extends Error {
|
|
|
4
4
|
readonly name = "AutomationDeliveryConflictError";
|
|
5
5
|
constructor();
|
|
6
6
|
}
|
|
7
|
+
export declare class AutomationCredentialRestrictionConflictError extends Error {
|
|
8
|
+
readonly name = "AutomationCredentialRestrictionConflictError";
|
|
9
|
+
constructor();
|
|
10
|
+
}
|
|
7
11
|
export declare class AutomationRevisionConflictError extends Error {
|
|
8
12
|
readonly name = "AutomationRevisionConflictError";
|
|
9
13
|
constructor();
|
|
@@ -73,6 +77,8 @@ export declare function createAutomationTrigger(db: Database, input: {
|
|
|
73
77
|
createdBySubjectId: string;
|
|
74
78
|
request: CreateAutomationTriggerRequest;
|
|
75
79
|
adapterId: string;
|
|
80
|
+
/** Canonical server-only creator restriction, never request metadata. */
|
|
81
|
+
credentialRestriction?: "developer_setup";
|
|
76
82
|
/** Trusted database-only admission seam. Throwing rolls creation back. */
|
|
77
83
|
beforeCreateCommit?: (tx: Database) => Promise<void>;
|
|
78
84
|
}): Promise<AutomationTrigger>;
|
|
@@ -94,6 +100,8 @@ export declare function updateAutomationTrigger(db: Database, input: {
|
|
|
94
100
|
triggerId: string;
|
|
95
101
|
subjectId: string;
|
|
96
102
|
request: UpdateAutomationTriggerRequest;
|
|
103
|
+
/** May add a canonical restriction; can never downgrade the stored ceiling. */
|
|
104
|
+
credentialRestriction?: "developer_setup";
|
|
97
105
|
/** Trusted database-only admission seam. Throwing rolls the revision back. */
|
|
98
106
|
beforeUpdateCommit?: (tx: Database) => Promise<void>;
|
|
99
107
|
}): Promise<AutomationTrigger | null>;
|
|
@@ -110,6 +118,8 @@ export declare function recordAutomationEvent(db: Database, input: {
|
|
|
110
118
|
deliveryKey: string;
|
|
111
119
|
requestDigest: string;
|
|
112
120
|
normalizedEvent: AutomationNormalizedEvent;
|
|
121
|
+
/** Trusted caller authority; never accepted from normalized adapter/event JSON. */
|
|
122
|
+
credentialRestriction?: "developer_setup";
|
|
113
123
|
ignoredReason?: string | null;
|
|
114
124
|
}): Promise<{
|
|
115
125
|
event: AutomationStoredEvent;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { type Database } from "./database.js";
|
|
3
|
+
declare const Target: z.ZodObject<{
|
|
4
|
+
accountId: z.ZodUUID;
|
|
5
|
+
workspaceId: z.ZodUUID;
|
|
6
|
+
sandboxGroupId: z.ZodUUID;
|
|
7
|
+
leaseId: z.ZodUUID;
|
|
8
|
+
leaseEpoch: z.ZodNumber;
|
|
9
|
+
instanceId: z.ZodString;
|
|
10
|
+
browserSessionId: z.ZodUUID;
|
|
11
|
+
controllerGeneration: z.ZodString;
|
|
12
|
+
}, z.core.$strip>;
|
|
13
|
+
declare const Claim: z.ZodObject<{
|
|
14
|
+
operationId: z.ZodUUID;
|
|
15
|
+
state: z.ZodEnum<{
|
|
16
|
+
completed: "completed";
|
|
17
|
+
dispatched: "dispatched";
|
|
18
|
+
prepared: "prepared";
|
|
19
|
+
}>;
|
|
20
|
+
}, z.core.$strip>;
|
|
21
|
+
export type BrowserDeadlineCheckpointTarget = z.infer<typeof Target>;
|
|
22
|
+
export type BrowserDeadlineCheckpointClaim = z.infer<typeof Claim>;
|
|
23
|
+
/** Private, bounded system inventory. It contains no user session authority or profile bytes. */
|
|
24
|
+
export declare function listBrowserDeadlineCheckpoints(db: Database, limit?: number): Promise<BrowserDeadlineCheckpointTarget[]>;
|
|
25
|
+
/** The definer rechecks and locks the exact lease, holder, operation and controller.
|
|
26
|
+
* Preparing is allowed only after provider rotation is already requested. */
|
|
27
|
+
export declare function browserDeadlineCheckpoint(db: Database, target: BrowserDeadlineCheckpointTarget, options?: {
|
|
28
|
+
prepare?: boolean;
|
|
29
|
+
touch?: boolean;
|
|
30
|
+
}): Promise<BrowserDeadlineCheckpointClaim | null>;
|
|
31
|
+
export {};
|
|
@@ -2,6 +2,7 @@ import { BrowserSession, InteractionControllerBinding, type BrowserSessionCapabi
|
|
|
2
2
|
import { type Database } from "./database.js";
|
|
3
3
|
import { type BrowserStateArtifactCommitInput } from "./browser-state-artifacts.js";
|
|
4
4
|
import * as schema from "./schema.js";
|
|
5
|
+
import { type BrowserDeadlineCheckpointTarget } from "./browser-deadline-checkpoints.js";
|
|
5
6
|
type BrowserSessionRow = typeof schema.browserSessions.$inferSelect;
|
|
6
7
|
type InteractionOperationRow = typeof schema.interactionOperations.$inferSelect;
|
|
7
8
|
export declare const MANAGED_BROWSER_SESSION_CAPABILITIES: {
|
|
@@ -307,6 +308,7 @@ export declare function dispatchBrowserSessionOperation(db: Database, input: {
|
|
|
307
308
|
objectKey: string;
|
|
308
309
|
cleanupAfter: Date;
|
|
309
310
|
};
|
|
311
|
+
deadlineTarget?: BrowserDeadlineCheckpointTarget;
|
|
310
312
|
}): Promise<InteractionLifecycleOperationReceiptValue>;
|
|
311
313
|
/** Pulse one exact dispatched lifecycle operation while its controller mutation
|
|
312
314
|
* is still in flight. This is not viewer or resource activity: it exists only
|
|
@@ -363,6 +365,7 @@ export declare function commitBrowserSessionSuspension(db: Database, input: {
|
|
|
363
365
|
browserSessionId: string;
|
|
364
366
|
controllerGeneration: string;
|
|
365
367
|
artifact: BrowserStateArtifactCommitInput;
|
|
368
|
+
deadlineTarget?: BrowserDeadlineCheckpointTarget;
|
|
366
369
|
}): Promise<BrowserSessionMutationResponseValue>;
|
|
367
370
|
export declare function clearSuspendedBrowserSessionController(db: Database, input: {
|
|
368
371
|
accountId: string;
|
|
@@ -11,9 +11,9 @@ import {
|
|
|
11
11
|
getCanonicalHumanIdentityProjection,
|
|
12
12
|
synchronizeCanonicalHumanLoginBindings,
|
|
13
13
|
validateCanonicalHumanSession
|
|
14
|
-
} from "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
14
|
+
} from "./chunk-M3TGZ7B4.js";
|
|
15
|
+
import "./chunk-2X2GKAC4.js";
|
|
16
|
+
import "./chunk-UAR7ZDNG.js";
|
|
17
17
|
import "./chunk-S2TZ3F4L.js";
|
|
18
18
|
import "./chunk-PZ5AY32C.js";
|
|
19
19
|
export {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type IntegrationSourceInput, type McpServerConnectionRef } from "@opengeni/contracts";
|
|
2
2
|
import { type Database } from "./database.js";
|
|
3
3
|
export type ApiIntegrationProtocol = "openapi" | "graphql";
|
|
4
4
|
export type ApiIntegrationToolSafety = "read" | "write" | "destructive";
|
|
@@ -95,6 +95,12 @@ export type InstallApiIntegrationInput = {
|
|
|
95
95
|
requiredScopes?: string[];
|
|
96
96
|
ownership?: "workspace" | "subject" | "either";
|
|
97
97
|
allowedTools?: string[];
|
|
98
|
+
/**
|
|
99
|
+
* Selected write/destructive tools that run without per-call human approval.
|
|
100
|
+
* Removing an approval requirement is never a permission reduction, so it
|
|
101
|
+
* always passes installation acquisition (organization policy) again.
|
|
102
|
+
*/
|
|
103
|
+
autoApprovedTools?: string[];
|
|
98
104
|
facetDefinitions?: readonly ApiIntegrationFacetDefinition[];
|
|
99
105
|
revision: StoredApiIntegrationRevision;
|
|
100
106
|
owner?: ApiIntegrationOwner;
|
|
@@ -199,7 +205,7 @@ export declare function getApiIntegrationReconciliationSnapshot(db: Database, in
|
|
|
199
205
|
accountId: string;
|
|
200
206
|
workspaceId: string;
|
|
201
207
|
subjectId: string;
|
|
202
|
-
source:
|
|
208
|
+
source: IntegrationSourceInput;
|
|
203
209
|
connectionId?: string;
|
|
204
210
|
instanceKey?: string;
|
|
205
211
|
expectedRevisionId: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
nestedPostgresSqlState,
|
|
3
3
|
rawRows
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-2X2GKAC4.js";
|
|
5
5
|
|
|
6
6
|
// src/managed-auth-session-sets.ts
|
|
7
7
|
import {
|
|
@@ -296,4 +296,4 @@ export {
|
|
|
296
296
|
reapManagedAuthIsolatedSessions,
|
|
297
297
|
reapExpiredManagedAuthSessionSets
|
|
298
298
|
};
|
|
299
|
-
//# sourceMappingURL=chunk-
|
|
299
|
+
//# sourceMappingURL=chunk-25DAVPRJ.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
sessions,
|
|
4
4
|
workspaceSessionActivityRevisions,
|
|
5
5
|
workspaces
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-UAR7ZDNG.js";
|
|
7
7
|
import {
|
|
8
8
|
LOSSLESS_CONTENT_WRITER_APPLICATION_NAME
|
|
9
9
|
} from "./chunk-S2TZ3F4L.js";
|
|
@@ -756,7 +756,7 @@ async function withWorkspaceSubjectRls(db, workspaceId, subjectId, fn, transacti
|
|
|
756
756
|
sessionTenancyFence
|
|
757
757
|
);
|
|
758
758
|
}
|
|
759
|
-
async function withWorkspaceSubjectSessionActivityRls(db, workspaceId, subjectId, fn, transactionConfig, fenceMode = "shared") {
|
|
759
|
+
async function withWorkspaceSubjectSessionActivityRls(db, workspaceId, subjectId, fn, transactionConfig, fenceMode = "shared", organizationMembershipFence = false) {
|
|
760
760
|
if (!subjectId.trim()) {
|
|
761
761
|
throw new Error("withWorkspaceSubjectSessionActivityRls: a non-empty subjectId is required");
|
|
762
762
|
}
|
|
@@ -769,7 +769,8 @@ async function withWorkspaceSubjectSessionActivityRls(db, workspaceId, subjectId
|
|
|
769
769
|
return await fn(scopedDb);
|
|
770
770
|
},
|
|
771
771
|
transactionConfig,
|
|
772
|
-
fenceMode
|
|
772
|
+
fenceMode,
|
|
773
|
+
organizationMembershipFence
|
|
773
774
|
);
|
|
774
775
|
}
|
|
775
776
|
async function setSubjectRlsContext(db, subjectId) {
|
|
@@ -837,4 +838,4 @@ export {
|
|
|
837
838
|
withAccountRls,
|
|
838
839
|
dbBindingFor
|
|
839
840
|
};
|
|
840
|
-
//# sourceMappingURL=chunk-
|
|
841
|
+
//# sourceMappingURL=chunk-2X2GKAC4.js.map
|