@opengeni/core 0.28.1 → 1.0.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/README.md +1 -1
- package/dist/access/external-actor-authority.d.ts +47 -0
- package/dist/access/index.d.ts +182 -3
- package/dist/access/service-initiator.d.ts +3 -0
- package/dist/application/api-integration-servers.d.ts +20 -0
- package/dist/application/archived-session-imports.d.ts +6 -0
- package/dist/application/composer-submit.d.ts +24 -0
- package/dist/application/connect-authority.d.ts +13 -0
- package/dist/application/connect-operation.d.ts +31 -0
- package/dist/application/external-continuation.d.ts +15 -0
- package/dist/application/external-identity-lifecycle.d.ts +20 -0
- package/dist/application/external-link-work-admission.d.ts +12 -0
- package/dist/application/external-workspace-members.d.ts +34 -0
- package/dist/application/modal-native-worker-host-transport.d.ts +297 -0
- package/dist/application/new-session-drafts.d.ts +39 -2
- package/dist/application/sandbox-recovery.d.ts +58 -0
- package/dist/application/session-commands.d.ts +26 -13
- package/dist/application/session-mcp-credential-rotation.d.ts +29 -0
- package/dist/application/session-tenancy.d.ts +19 -0
- package/dist/application/user-resource-grants.d.ts +20 -0
- package/dist/billing/limits.d.ts +11 -0
- package/dist/canonical-human-identities.d.ts +7 -2
- package/dist/canonical-human-identities.js +17 -4
- package/dist/canonical-human-identities.js.map +1 -1
- package/dist/{chunk-6WKPWE5S.js → chunk-2MKMRGSY.js} +108 -24
- package/dist/chunk-2MKMRGSY.js.map +1 -0
- package/dist/{chunk-NYPMQ7NO.js → chunk-GVO3N37G.js} +205 -37
- package/dist/chunk-GVO3N37G.js.map +1 -0
- package/dist/{chunk-JJU6I5XD.js → chunk-LCQXNR62.js} +36 -10
- package/dist/chunk-LCQXNR62.js.map +1 -0
- package/dist/chunk-MM6N7CTO.js +387 -0
- package/dist/chunk-MM6N7CTO.js.map +1 -0
- package/dist/chunk-QO5GVFFO.js +235 -0
- package/dist/chunk-QO5GVFFO.js.map +1 -0
- package/dist/codex-model-availability.d.ts +14 -0
- package/dist/default-session-model.d.ts +139 -0
- package/dist/dependencies.d.ts +87 -4
- package/dist/developer-setup-credential-ceiling.d.ts +10 -0
- package/dist/domain/agent-config-resolution.d.ts +49 -0
- package/dist/domain/automations.d.ts +58 -0
- package/dist/domain/capabilities.d.ts +22 -4
- package/dist/domain/company-profile-agent-admin.d.ts +25 -0
- package/dist/domain/connection-account-selection-error.d.ts +8 -0
- package/dist/domain/connector-tool-permissions.d.ts +36 -0
- package/dist/domain/direct-model-provider.d.ts +3 -0
- package/dist/domain/editable-artifacts/agent-application.d.ts +10 -1
- package/dist/domain/editable-artifacts/durable-export.d.ts +22 -1
- package/dist/domain/editable-artifacts/ports.d.ts +10 -0
- package/dist/domain/editable-artifacts/service.d.ts +4 -3
- package/dist/domain/environments.d.ts +5 -9
- package/dist/domain/external-creation-attribution.d.ts +6 -0
- package/dist/domain/file-owner.d.ts +8 -0
- package/dist/domain/github-action-policies.d.ts +36 -0
- package/dist/domain/github-repository-bindings.d.ts +117 -0
- package/dist/domain/github-skill-source.d.ts +5 -0
- package/dist/domain/governed-learning-slack-publication.d.ts +45 -0
- package/dist/domain/insights-timing.d.ts +16 -0
- package/dist/domain/insights-usage.d.ts +27 -0
- package/dist/domain/insights.d.ts +28 -1
- package/dist/domain/knowledge-files.d.ts +20 -0
- package/dist/domain/knowledge-messages.d.ts +39 -0
- package/dist/domain/knowledge-messages.test.d.ts +1 -0
- package/dist/domain/knowledge-preparation.d.ts +10 -0
- package/dist/domain/knowledge-preparation.test.d.ts +1 -0
- package/dist/domain/knowledge-search.d.ts +15 -0
- package/dist/domain/knowledge-search.test.d.ts +1 -0
- package/dist/domain/knowledge.d.ts +9 -0
- package/dist/domain/mcp-account-bindings.d.ts +19 -0
- package/dist/domain/mcp-account-routes.d.ts +21 -0
- package/dist/domain/native-mcp-connection-admission.d.ts +3 -0
- package/dist/domain/organization-integration-catalog.d.ts +15 -0
- package/dist/domain/organization-membership-lifecycle.d.ts +1 -0
- package/dist/domain/personal-connection-delegations.d.ts +87 -4
- package/dist/domain/pr-review.d.ts +249 -0
- package/dist/domain/resources.d.ts +24 -3
- package/dist/domain/scheduled-task-access.d.ts +247 -0
- package/dist/domain/scheduled-tasks.d.ts +103 -6
- package/dist/domain/session-connection-accounts.d.ts +16 -0
- package/dist/domain/session-file-access.d.ts +4 -0
- package/dist/domain/session-native-connection-replacement.d.ts +14 -0
- package/dist/domain/session-start-timing.d.ts +7 -0
- package/dist/domain/session-tool-policy.d.ts +93 -4
- package/dist/domain/sessions.d.ts +275 -28
- package/dist/domain/skill-imports.d.ts +1 -0
- package/dist/domain/skill-search.d.ts +30 -0
- package/dist/domain/skills.d.ts +117 -0
- package/dist/domain/slack-bot.d.ts +46 -1
- package/dist/domain/workspace-members.d.ts +8 -1
- package/dist/editable-artifact-live/application.d.ts +12 -3
- package/dist/editable-artifact-live/ports.d.ts +0 -1
- package/dist/editable-artifact-live/server.d.ts +5 -2
- package/dist/editable-artifact-live/ticket.d.ts +2 -2
- package/dist/editable-artifact-live/types.d.ts +14 -2
- package/dist/editable-artifact-live.js +2 -2
- package/dist/editable-artifacts.js +10 -4
- package/dist/index.d.ts +49 -3
- package/dist/index.js +18812 -6833
- package/dist/index.js.map +1 -1
- package/dist/managed-auth-session-sets.d.ts +131 -0
- package/dist/managed-auth-session-sets.js +51 -0
- package/dist/managed-auth-session-sets.js.map +1 -0
- package/dist/managed-session.d.ts +98 -11
- package/dist/model-catalog.d.ts +117 -0
- package/dist/product-usage-metrics.d.ts +30 -0
- package/dist/rigs/index.d.ts +22 -5
- package/dist/rigs/provider-images.d.ts +1 -1
- package/dist/sandbox/fleet.d.ts +59 -10
- package/dist/sandbox/routing.d.ts +22 -2
- package/dist/sandbox/runtime-settings.d.ts +56 -0
- package/dist/session-authorization.d.ts +38 -1
- package/dist/site-session-origin.d.ts +9 -0
- package/dist/transcription.d.ts +12 -1
- package/dist/turn-surface.d.ts +18 -0
- package/dist/user-presence.d.ts +32 -0
- package/package.json +18 -11
- package/src/access/external-actor-authority.ts +94 -0
- package/src/access/index.ts +1386 -44
- package/src/access/service-initiator.ts +50 -0
- package/src/application/api-integration-servers.ts +215 -0
- package/src/application/archived-session-imports.ts +161 -0
- package/src/application/composer-submit.ts +77 -0
- package/src/application/connect-authority.ts +77 -0
- package/src/application/connect-operation.ts +80 -0
- package/src/application/external-continuation.ts +129 -0
- package/src/application/external-identity-lifecycle.ts +48 -0
- package/src/application/external-link-work-admission.ts +90 -0
- package/src/application/external-workspace-members.ts +232 -0
- package/src/application/modal-native-worker-host-transport.ts +263 -0
- package/src/application/new-session-drafts.ts +222 -29
- package/src/application/sandbox-recovery.ts +78 -0
- package/src/application/session-commands.ts +430 -73
- package/src/application/session-mcp-credential-rotation.ts +217 -0
- package/src/application/session-tenancy.ts +445 -0
- package/src/application/user-resource-grants.ts +154 -0
- package/src/billing/limits.ts +103 -24
- package/src/canonical-human-identities.ts +22 -3
- package/src/codex-model-availability.ts +136 -0
- package/src/default-session-model.ts +656 -0
- package/src/dependencies.ts +97 -5
- package/src/developer-setup-credential-ceiling.ts +60 -0
- package/src/domain/agent-config-resolution.ts +148 -0
- package/src/domain/automations.ts +270 -0
- package/src/domain/capabilities.ts +244 -151
- package/src/domain/company-profile-agent-admin.ts +56 -0
- package/src/domain/connection-account-selection-error.ts +19 -0
- package/src/domain/connector-tool-permissions.ts +371 -0
- package/src/domain/direct-model-provider.ts +62 -0
- package/src/domain/editable-artifacts/agent-application.ts +61 -15
- package/src/domain/editable-artifacts/durable-export.ts +100 -5
- package/src/domain/editable-artifacts/in-memory.ts +6 -0
- package/src/domain/editable-artifacts/ports.ts +11 -0
- package/src/domain/editable-artifacts/service.ts +32 -1
- package/src/domain/editable-artifacts/snapshot-compaction.ts +9 -5
- package/src/domain/editable-artifacts/snapshot-verifier-genesis.ts +10 -8
- package/src/domain/editable-artifacts/snapshot-verifier.ts +10 -3
- package/src/domain/environments.ts +25 -45
- package/src/domain/external-creation-attribution.ts +22 -0
- package/src/domain/file-owner.ts +67 -0
- package/src/domain/github-action-policies.ts +169 -0
- package/src/domain/github-repository-bindings.ts +295 -0
- package/src/domain/github-skill-source.ts +233 -0
- package/src/domain/governed-learning-slack-publication.ts +157 -0
- package/src/domain/insights-timing.ts +95 -0
- package/src/domain/insights-usage.ts +67 -0
- package/src/domain/insights.ts +270 -169
- package/src/domain/knowledge-files.ts +46 -0
- package/src/domain/knowledge-messages.test.ts +91 -0
- package/src/domain/knowledge-messages.ts +106 -0
- package/src/domain/knowledge-preparation.test.ts +276 -0
- package/src/domain/knowledge-preparation.ts +147 -0
- package/src/domain/knowledge-search.test.ts +561 -0
- package/src/domain/knowledge-search.ts +256 -0
- package/src/domain/knowledge.ts +133 -0
- package/src/domain/mcp-account-bindings.ts +171 -0
- package/src/domain/mcp-account-routes.ts +121 -0
- package/src/domain/native-mcp-connection-admission.ts +14 -0
- package/src/domain/organization-integration-catalog.ts +88 -0
- package/src/domain/organization-membership-lifecycle.ts +10 -0
- package/src/domain/personal-connection-delegations.ts +758 -115
- package/src/domain/pr-review.ts +687 -0
- package/src/domain/resources.ts +182 -25
- package/src/domain/scheduled-task-access.ts +1052 -0
- package/src/domain/scheduled-tasks.ts +1952 -215
- package/src/domain/session-connection-accounts.ts +67 -0
- package/src/domain/session-file-access.ts +47 -0
- package/src/domain/session-native-connection-replacement.ts +64 -0
- package/src/domain/session-start-timing.ts +55 -0
- package/src/domain/session-tool-policy.ts +443 -19
- package/src/domain/sessions.ts +3417 -619
- package/src/domain/skill-imports.ts +137 -17
- package/src/domain/skill-search.ts +221 -0
- package/src/domain/skills.ts +104 -0
- package/src/domain/slack-bot.ts +128 -3
- package/src/domain/workspace-members.ts +34 -2
- package/src/editable-artifact-live/application.ts +29 -4
- package/src/editable-artifact-live/ports.ts +0 -1
- package/src/editable-artifact-live/server.ts +167 -13
- package/src/editable-artifact-live/ticket.ts +87 -6
- package/src/editable-artifact-live/types.ts +16 -2
- package/src/editable-artifact-live/wire.ts +0 -10
- package/src/index.ts +69 -4
- package/src/managed-auth-session-sets.ts +371 -0
- package/src/managed-session.ts +520 -2
- package/src/model-catalog.ts +873 -0
- package/src/product-usage-metrics.ts +101 -0
- package/src/rigs/index.ts +179 -63
- package/src/rigs/provider-images.ts +2 -3
- package/src/sandbox/fleet.ts +471 -59
- package/src/sandbox/routing.ts +160 -33
- package/src/sandbox/runtime-settings.ts +281 -0
- package/src/session-authorization.ts +262 -78
- package/src/site-session-origin.ts +22 -0
- package/src/transcription.ts +13 -1
- package/src/turn-surface.ts +45 -0
- package/src/user-presence.ts +134 -0
- package/dist/chunk-6WKPWE5S.js.map +0 -1
- package/dist/chunk-IBOEYG6N.js +0 -34
- package/dist/chunk-IBOEYG6N.js.map +0 -1
- package/dist/chunk-JJU6I5XD.js.map +0 -1
- package/dist/chunk-NYPMQ7NO.js.map +0 -1
- package/dist/domain/durable-learning-slack-publication.d.ts +0 -72
- package/dist/domain/packs.d.ts +0 -55
- package/src/domain/durable-learning-slack-publication.ts +0 -202
- package/src/domain/packs.ts +0 -556
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { McpServerConnectionRef } from "@opengeni/contracts";
|
|
2
|
+
import { HTTPException } from "hono/http-exception";
|
|
3
|
+
|
|
4
|
+
/** Reject retired authority sources instead of aliasing them to native IDs. */
|
|
5
|
+
export function assertNativeMcpConnectionRef(
|
|
6
|
+
connectionRef: McpServerConnectionRef | null | undefined,
|
|
7
|
+
): void {
|
|
8
|
+
if (connectionRef?.authoritySource === "host") {
|
|
9
|
+
throw new HTTPException(422, {
|
|
10
|
+
message:
|
|
11
|
+
"host-owned MCP connection refs are no longer supported; select an ordinary native connection",
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { CORE_INTEGRATION_DEFINITIONS } from "@opengeni/capabilities";
|
|
2
|
+
import {
|
|
3
|
+
assertOrganizationIntegrationAllowed,
|
|
4
|
+
type IntegrationSourceInput,
|
|
5
|
+
type OrganizationIntegrationPolicy,
|
|
6
|
+
} from "@opengeni/contracts";
|
|
7
|
+
|
|
8
|
+
/** Admission for source discovery, before any credential-bearing network work.
|
|
9
|
+
* Auto-detection may try only protocols the organization actually permits.
|
|
10
|
+
*/
|
|
11
|
+
export function integrationSourceForOrganizationPolicy(
|
|
12
|
+
policy: OrganizationIntegrationPolicy,
|
|
13
|
+
source: IntegrationSourceInput,
|
|
14
|
+
): IntegrationSourceInput {
|
|
15
|
+
const snapshot = structuredClone(source);
|
|
16
|
+
if (policy.mode === "unrestricted") return snapshot;
|
|
17
|
+
// An inline document is a custom OpenAPI Integration under the same key.
|
|
18
|
+
if (snapshot.kind === "openapi_document") {
|
|
19
|
+
assertOrganizationIntegrationAllowed(policy, "custom:openapi");
|
|
20
|
+
return snapshot;
|
|
21
|
+
}
|
|
22
|
+
if (snapshot.kind === "definition") {
|
|
23
|
+
const definition = CORE_INTEGRATION_DEFINITIONS.find(
|
|
24
|
+
(item) => item.id === snapshot.definitionId,
|
|
25
|
+
);
|
|
26
|
+
assertOrganizationIntegrationAllowed(policy, definition?.id ?? null);
|
|
27
|
+
return snapshot;
|
|
28
|
+
}
|
|
29
|
+
if (snapshot.kind !== "auto") {
|
|
30
|
+
assertOrganizationIntegrationAllowed(policy, `custom:${snapshot.kind}`);
|
|
31
|
+
return snapshot;
|
|
32
|
+
}
|
|
33
|
+
const openapi = policy.allowedIntegrationKeys.includes("custom:openapi");
|
|
34
|
+
const graphql = policy.allowedIntegrationKeys.includes("custom:graphql");
|
|
35
|
+
if (openapi && graphql) return snapshot;
|
|
36
|
+
if (openapi) return { ...snapshot, kind: "openapi" };
|
|
37
|
+
if (graphql) return { kind: "graphql", endpoint: snapshot.url };
|
|
38
|
+
assertOrganizationIntegrationAllowed(policy, null);
|
|
39
|
+
return snapshot;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
const dedicated = [
|
|
43
|
+
{ key: "gmail", label: "Gmail" },
|
|
44
|
+
{ key: "atlassian", label: "Atlassian (Jira and Confluence)" },
|
|
45
|
+
{ key: "slack-personal", label: "Slack personal accounts" },
|
|
46
|
+
{ key: "slack-bot", label: "Slack workspace bots" },
|
|
47
|
+
{ key: "github-personal", label: "GitHub personal accounts" },
|
|
48
|
+
{ key: "github-app", label: "GitHub App installations" },
|
|
49
|
+
{ key: "github-lens", label: "GitHub PR review" },
|
|
50
|
+
{ key: "fiken", label: "Fiken" },
|
|
51
|
+
{ key: "x", label: "X" },
|
|
52
|
+
{ key: "reddit", label: "Reddit" },
|
|
53
|
+
] as const;
|
|
54
|
+
|
|
55
|
+
/** Product identities owned by the server, independent of mutable workspace catalogs. */
|
|
56
|
+
export function organizationIntegrationCatalog(): {
|
|
57
|
+
integrations: Array<{ key: string; label: string; kind: "curated" | "custom" }>;
|
|
58
|
+
} {
|
|
59
|
+
return {
|
|
60
|
+
integrations: [
|
|
61
|
+
...CORE_INTEGRATION_DEFINITIONS.map((definition) => ({
|
|
62
|
+
key: definition.id,
|
|
63
|
+
label: definition.name,
|
|
64
|
+
kind: "curated" as const,
|
|
65
|
+
})),
|
|
66
|
+
...dedicated.map((item) => ({ ...item, kind: "curated" as const })),
|
|
67
|
+
{ key: "custom:mcp", label: "Custom MCP servers", kind: "custom" },
|
|
68
|
+
{ key: "custom:openapi", label: "Custom OpenAPI services", kind: "custom" },
|
|
69
|
+
{ key: "custom:graphql", label: "Custom GraphQL services", kind: "custom" },
|
|
70
|
+
],
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/** Only use for a validated built-in Connect adapter, never caller-authored catalog metadata. */
|
|
75
|
+
export function integrationKeyForConnectProvider(providerId: string): string | null {
|
|
76
|
+
if (CORE_INTEGRATION_DEFINITIONS.some((definition) => definition.id === providerId))
|
|
77
|
+
return providerId;
|
|
78
|
+
if (dedicated.some((item) => item.key === providerId)) return providerId;
|
|
79
|
+
if (providerId === "fiken-token" || providerId === "fiken-oauth") return "fiken";
|
|
80
|
+
if (providerId === "google-drive-knowledge" || providerId === "google-drive-publish")
|
|
81
|
+
return "google-drive";
|
|
82
|
+
if (["mcp-oauth", "mcp-headers", "mcp-bearer", "mcp-install"].includes(providerId))
|
|
83
|
+
return "custom:mcp";
|
|
84
|
+
if (providerId === "openapi") return "custom:openapi";
|
|
85
|
+
if (providerId === "graphql") return "custom:graphql";
|
|
86
|
+
// Unknown adapter identities do not inherit an allowed provider's authority.
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function organizationMembershipHttpStatus(
|
|
2
|
+
sqlState: string | null,
|
|
3
|
+
): 400 | 403 | 404 | 409 | null {
|
|
4
|
+
if (sqlState === "22023" || sqlState === "23514") return 400;
|
|
5
|
+
if (sqlState === "42501") return 403;
|
|
6
|
+
if (sqlState === "P0002") return 404;
|
|
7
|
+
if (sqlState === "23505" || sqlState === "40001" || sqlState === "55000" || sqlState === "55P03")
|
|
8
|
+
return 409;
|
|
9
|
+
return null;
|
|
10
|
+
}
|