@opengeni/contracts 0.44.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/dist/agent-authored-durable-text.d.ts +70 -0
- package/dist/agent-config.d.ts +869 -0
- package/dist/agent-instruction-changes.d.ts +110 -0
- package/dist/agent-learning.d.ts +243 -0
- package/dist/agent-topology.d.ts +292 -0
- package/dist/allowance-refusal.d.ts +9 -0
- package/dist/allowance-refusal.js +50 -0
- package/dist/allowance-refusal.js.map +1 -0
- package/dist/analytics-consent-report.d.ts +19 -0
- package/dist/analytics-consent-report.js +10 -0
- package/dist/analytics-consent-report.js.map +1 -0
- package/dist/api-key-presets.d.ts +19 -0
- package/dist/artifact-catalog.d.ts +161 -0
- package/dist/artifacts.d.ts +135 -11
- package/dist/atlassian-native-retirement.d.ts +16 -0
- package/dist/atlassian-native-retirement.js +30 -0
- package/dist/atlassian-native-retirement.js.map +1 -0
- package/dist/atlassian.d.ts +2 -0
- package/dist/atlassian.js +27 -11
- package/dist/browser-storage.d.ts +5 -0
- package/dist/browser-storage.js +9 -0
- package/dist/browser-storage.js.map +1 -0
- package/dist/bundled-skills.d.ts +40 -0
- package/dist/canonical-human-identities.d.ts +157 -0
- package/dist/canonical-human-identities.js +23 -0
- package/dist/canonical-human-identities.js.map +1 -0
- package/dist/chunk-2ACYHZFB.js +292 -0
- package/dist/chunk-2ACYHZFB.js.map +1 -0
- package/dist/chunk-2VORLN2R.js +353 -0
- package/dist/chunk-2VORLN2R.js.map +1 -0
- package/dist/{chunk-Y3MLSLB4.js → chunk-3SIZGL3O.js} +42 -30
- package/dist/chunk-3SIZGL3O.js.map +1 -0
- package/dist/chunk-46KLD2UH.js +186 -0
- package/dist/chunk-46KLD2UH.js.map +1 -0
- package/dist/chunk-4JGHSSB7.js +11 -0
- package/dist/chunk-4JGHSSB7.js.map +1 -0
- package/dist/{chunk-52SGB2QO.js → chunk-5IXYF6XN.js} +50 -10
- package/dist/chunk-5IXYF6XN.js.map +1 -0
- package/dist/chunk-BCS7WHCK.js +139 -0
- package/dist/chunk-BCS7WHCK.js.map +1 -0
- package/dist/chunk-EK7NDGFR.js +128 -0
- package/dist/chunk-EK7NDGFR.js.map +1 -0
- package/dist/{chunk-5UDNP7AO.js → chunk-FZ6BXQHL.js} +78 -38
- package/dist/chunk-FZ6BXQHL.js.map +1 -0
- package/dist/chunk-GRG7PHWQ.js +25 -0
- package/dist/chunk-GRG7PHWQ.js.map +1 -0
- package/dist/chunk-JUFK3T4Q.js +80 -0
- package/dist/chunk-JUFK3T4Q.js.map +1 -0
- package/dist/chunk-KHHZTBP7.js +11 -0
- package/dist/chunk-KHHZTBP7.js.map +1 -0
- package/dist/chunk-KR2V42UZ.js +187 -0
- package/dist/chunk-KR2V42UZ.js.map +1 -0
- package/dist/chunk-MZLBPKFE.js +168 -0
- package/dist/chunk-MZLBPKFE.js.map +1 -0
- package/dist/{chunk-H5BVCZKF.js → chunk-NRMCVHAU.js} +6 -5
- package/dist/chunk-NRMCVHAU.js.map +1 -0
- package/dist/{chunk-TZ6YEYN4.js → chunk-NVJMJWLL.js} +3 -1
- package/dist/chunk-NVJMJWLL.js.map +1 -0
- package/dist/chunk-O77VSFYZ.js +70 -0
- package/dist/chunk-O77VSFYZ.js.map +1 -0
- package/dist/chunk-PX3VCKAU.js +29 -0
- package/dist/chunk-PX3VCKAU.js.map +1 -0
- package/dist/chunk-QR5D2IQC.js +61 -0
- package/dist/chunk-QR5D2IQC.js.map +1 -0
- package/dist/chunk-RJ76DRPO.js +117 -0
- package/dist/chunk-RJ76DRPO.js.map +1 -0
- package/dist/chunk-RKX3NQYS.js +28 -0
- package/dist/chunk-RKX3NQYS.js.map +1 -0
- package/dist/{chunk-FJBG5E4O.js → chunk-SIOU2K4U.js} +45 -22
- package/dist/chunk-SIOU2K4U.js.map +1 -0
- package/dist/chunk-TSCDAGET.js +75 -0
- package/dist/chunk-TSCDAGET.js.map +1 -0
- package/dist/{chunk-LSB7GRLG.js → chunk-TXTQIYCV.js} +15 -11
- package/dist/chunk-TXTQIYCV.js.map +1 -0
- package/dist/chunk-X7ETVO4P.js +26544 -0
- package/dist/chunk-X7ETVO4P.js.map +1 -0
- package/dist/{chunk-CADSX6UN.js → chunk-Y3KNXVTD.js} +2 -2
- package/dist/chunk-YBW5JSA3.js +251 -0
- package/dist/chunk-YBW5JSA3.js.map +1 -0
- package/dist/chunk-YRXAWWCU.js +45 -0
- package/dist/chunk-YRXAWWCU.js.map +1 -0
- package/dist/claude-provider-account-authority.d.ts +18 -0
- package/dist/claude-subscription-oauth.d.ts +42 -0
- package/dist/claude-subscription-usage.d.ts +159 -0
- package/dist/client-error-report.d.ts +109 -0
- package/dist/client-error-report.js +87 -0
- package/dist/client-error-report.js.map +1 -0
- package/dist/code-search.d.ts +52 -0
- package/dist/code-search.js +40 -0
- package/dist/code-search.js.map +1 -0
- package/dist/codex-provider-account-authority.d.ts +23 -0
- package/dist/codex-provider-account-authority.js +23 -0
- package/dist/codex-provider-account-authority.js.map +1 -0
- package/dist/company-brain-governed-writes.d.ts +475 -0
- package/dist/company-brain.d.ts +336 -0
- package/dist/company-profile.d.ts +566 -0
- package/dist/connect.d.ts +325 -0
- package/dist/connect.js +191 -0
- package/dist/connect.js.map +1 -0
- package/dist/connection-account-label.d.ts +2 -0
- package/dist/connection-account-label.js +35 -0
- package/dist/connection-account-label.js.map +1 -0
- package/dist/connection-authority.d.ts +193 -0
- package/dist/connection-authority.js +50 -0
- package/dist/connection-authority.js.map +1 -0
- package/dist/connector-attachments.d.ts +95 -0
- package/dist/connector-attachments.js +51 -0
- package/dist/connector-attachments.js.map +1 -0
- package/dist/connector-tool-permissions.d.ts +73 -0
- package/dist/direct-model-provider.d.ts +36 -0
- package/dist/editable-artifact-codec-registry.d.ts +16 -7
- package/dist/editable-artifact-codec-registry.js +19 -9
- package/dist/editable-artifact-committed-transaction.d.ts +2 -2
- package/dist/editable-artifact-committed-transaction.js +2 -2
- package/dist/editable-artifact-live.d.ts +11 -12
- package/dist/editable-artifact-live.js +110 -45
- package/dist/editable-artifact-live.js.map +1 -1
- package/dist/editable-artifact-serialized-commit.d.ts +2 -1
- package/dist/editable-artifact-serialized-commit.js +8 -7
- package/dist/editable-artifact-versions.d.ts +20 -5
- package/dist/editable-artifact-versions.js +23 -5
- package/dist/editable-artifacts.d.ts +2 -0
- package/dist/editable-artifacts.js +48 -36
- package/dist/external-identities.d.ts +784 -0
- package/dist/external-identities.js +44 -0
- package/dist/external-identities.js.map +1 -0
- package/dist/feedback.d.ts +51 -0
- package/dist/github-repository-contracts.d.ts +36 -0
- package/dist/github-repository-contracts.js +59 -0
- package/dist/github-repository-contracts.js.map +1 -0
- package/dist/github-repository.d.ts +14 -0
- package/dist/github-repository.js +36 -0
- package/dist/github-repository.js.map +1 -0
- package/dist/google-drive.d.ts +90 -1
- package/dist/google-drive.js +91 -15
- package/dist/google-drive.js.map +1 -1
- package/dist/governed-learning-activation.d.ts +154 -0
- package/dist/governed-learning-evaluator.d.ts +152 -0
- package/dist/host-mcp-bindings.d.ts +326 -0
- package/dist/host-mcp-bindings.js +252 -0
- package/dist/host-mcp-bindings.js.map +1 -0
- package/dist/image-generation.d.ts +1 -0
- package/dist/index.d.ts +27574 -5374
- package/dist/index.js +2531 -177
- package/dist/insights-usage.d.ts +877 -0
- package/dist/insights-usage.js +509 -0
- package/dist/insights-usage.js.map +1 -0
- package/dist/interaction.d.ts +1752 -13
- package/dist/knowledge-entries.d.ts +982 -0
- package/dist/knowledge-preparation.d.ts +237 -0
- package/dist/knowledge.d.ts +740 -0
- package/dist/managed-auth-session-sets.d.ts +241 -0
- package/dist/managed-auth-session-sets.js +191 -0
- package/dist/managed-auth-session-sets.js.map +1 -0
- package/dist/managed-sign-in-methods.d.ts +56 -0
- package/dist/managed-sign-in-methods.js +46 -0
- package/dist/managed-sign-in-methods.js.map +1 -0
- package/dist/mcp-catalog-limits.d.ts +2 -0
- package/dist/mcp-endpoint.d.ts +7 -0
- package/dist/mcp-endpoint.js +9 -0
- package/dist/mcp-endpoint.js.map +1 -0
- package/dist/mcp-oauth.d.ts +71 -0
- package/dist/modal-native-proof-v2.d.ts +587 -0
- package/dist/modal-native-proof-v2.js +37 -0
- package/dist/modal-native-proof-v2.js.map +1 -0
- package/dist/model-availability.d.ts +15 -0
- package/dist/model-connection-access.d.ts +24 -0
- package/dist/model-context-inspector.d.ts +329 -0
- package/dist/model-display.d.ts +38 -0
- package/dist/model-display.js +134 -0
- package/dist/model-display.js.map +1 -0
- package/dist/model-picker-order.d.ts +25 -0
- package/dist/model-picker-order.js +42 -0
- package/dist/model-picker-order.js.map +1 -0
- package/dist/organization-access.d.ts +231 -0
- package/dist/organization-access.js +34 -0
- package/dist/organization-access.js.map +1 -0
- package/dist/organization-integration-policy.d.ts +27 -0
- package/dist/organization-membership-lifecycle.d.ts +1022 -0
- package/dist/organization-model-usage.d.ts +146 -0
- package/dist/organization-model-usage.js +67 -0
- package/dist/organization-model-usage.js.map +1 -0
- package/dist/organization-recovery.d.ts +337 -0
- package/dist/organization-recovery.js +37 -0
- package/dist/organization-recovery.js.map +1 -0
- package/dist/organization-usage.d.ts +138 -0
- package/dist/permissions.d.ts +54 -0
- package/dist/personal-github.d.ts +320 -0
- package/dist/personal-github.js +222 -0
- package/dist/personal-github.js.map +1 -0
- package/dist/plugin-discovery.d.ts +35 -0
- package/dist/plugin-discovery.js +7 -0
- package/dist/plugin-discovery.js.map +1 -0
- package/dist/preference-registry.d.ts +44 -1
- package/dist/product-analytics.d.ts +113 -0
- package/dist/product-lifecycle-facts.d.ts +73 -0
- package/dist/remember.d.ts +350 -0
- package/dist/retained-output.d.ts +8 -0
- package/dist/sandbox-file-artifacts.d.ts +57 -0
- package/dist/sandbox-provider-command.d.ts +113 -0
- package/dist/sandbox-recovery.d.ts +146 -0
- package/dist/sandbox-snapshots.d.ts +39 -0
- package/dist/session-final-reply.d.ts +6 -0
- package/dist/session-final-reply.js +9 -0
- package/dist/session-final-reply.js.map +1 -0
- package/dist/session-goal-reports.d.ts +21 -0
- package/dist/session-history-import.d.ts +947 -0
- package/dist/session-list-entries.d.ts +4 -0
- package/dist/session-list-entries.js +51 -0
- package/dist/session-list-entries.js.map +1 -0
- package/dist/session-mcp-projections.d.ts +215 -0
- package/dist/session-message-search.d.ts +68 -0
- package/dist/session-titles.d.ts +68 -0
- package/dist/session-titles.js +25 -0
- package/dist/session-titles.js.map +1 -0
- package/dist/session-topology-primitives.d.ts +22 -0
- package/dist/signup-attribution.d.ts +39 -0
- package/dist/site-request-headers.test.d.ts +1 -0
- package/dist/site-session-http.d.ts +11 -0
- package/dist/site-session-http.js +11 -0
- package/dist/site-session-http.js.map +1 -0
- package/dist/skill-catalog-context.d.ts +7 -0
- package/dist/skill-files.d.ts +12 -0
- package/dist/skill-metadata.d.ts +9 -0
- package/dist/skill-use.d.ts +61 -0
- package/dist/skills.d.ts +185 -0
- package/dist/slack-bot-scopes.d.ts +46 -21
- package/dist/slack-bot-scopes.js +14 -3
- package/dist/slack-rest-mcp.d.ts +31 -0
- package/dist/slack-rest-mcp.js +19 -0
- package/dist/slack-rest-mcp.js.map +1 -0
- package/dist/slack-task-policy.d.ts +294 -0
- package/dist/spreadsheet-artifact-commands.d.ts +2 -3
- package/dist/spreadsheet-artifact-commands.js +4 -2
- package/dist/spreadsheet-artifact-query.js +3 -2
- package/dist/subscription-account-pools.d.ts +292 -0
- package/dist/task-notes.d.ts +169 -0
- package/dist/tool-catalog.d.ts +286 -0
- package/dist/tool-result-spill.d.ts +16 -0
- package/dist/usage-allowances.d.ts +285 -0
- package/dist/usage-allowances.js +49 -0
- package/dist/usage-allowances.js.map +1 -0
- package/dist/video-generation.d.ts +51 -0
- package/dist/video-generation.js +9 -1
- package/dist/work-claims.d.ts +411 -0
- package/dist/workspace-instruction-policies.d.ts +94 -0
- package/dist/workspace-integration-wire.d.ts +36 -0
- package/dist/workspace-integration-wire.js +23 -0
- package/dist/workspace-integration-wire.js.map +1 -0
- package/dist/workspace-integrations.d.ts +948 -0
- package/dist/workspace-learning-administration.d.ts +289 -0
- package/dist/workspace-learning-policy.d.ts +1 -1
- package/dist/workspace-state.d.ts +85 -416
- package/dist/xai-provider-account-authority.d.ts +26 -0
- package/dist/xai-provider-account-authority.js +9 -0
- package/dist/xai-provider-account-authority.js.map +1 -0
- package/package.json +146 -1
- package/src/agent-authored-durable-text.ts +116 -0
- package/src/agent-config.ts +1527 -0
- package/src/agent-instruction-changes.ts +98 -0
- package/src/agent-learning.ts +161 -0
- package/src/agent-topology.ts +69 -0
- package/src/allowance-refusal.ts +81 -0
- package/src/analytics-consent-report.ts +20 -0
- package/src/api-key-presets.ts +25 -0
- package/src/artifact-catalog.ts +60 -0
- package/src/artifacts.ts +146 -18
- package/src/atlassian-native-retirement.ts +33 -0
- package/src/browser-storage.ts +10 -0
- package/src/bundled-skills.ts +73 -0
- package/src/canonical-human-identities.ts +93 -0
- package/src/claude-provider-account-authority.ts +12 -0
- package/src/claude-subscription-oauth.ts +62 -0
- package/src/claude-subscription-usage.ts +59 -0
- package/src/client-error-report.ts +184 -0
- package/src/code-search.ts +105 -0
- package/src/codex-provider-account-authority.ts +37 -0
- package/src/company-brain-governed-writes.ts +356 -0
- package/src/company-brain.ts +201 -0
- package/src/company-profile.ts +167 -1
- package/src/connect.ts +202 -0
- package/src/connection-account-label.ts +46 -0
- package/src/connection-authority.ts +213 -0
- package/src/connector-attachments.ts +327 -0
- package/src/connector-tool-permissions.ts +60 -0
- package/src/direct-model-provider.ts +98 -0
- package/src/editable-artifact-codec-registry.ts +55 -17
- package/src/editable-artifact-committed-transaction.ts +44 -31
- package/src/editable-artifact-live.ts +123 -57
- package/src/editable-artifact-serialized-commit.ts +2 -1
- package/src/editable-artifact-versions.ts +26 -5
- package/src/editable-artifacts.ts +2 -0
- package/src/external-identities.ts +285 -0
- package/src/feedback.ts +39 -0
- package/src/github-repository-contracts.ts +85 -0
- package/src/github-repository.ts +59 -0
- package/src/google-drive.ts +76 -4
- package/src/governed-learning-activation.ts +191 -0
- package/src/governed-learning-evaluator.ts +176 -0
- package/src/host-mcp-bindings.ts +298 -0
- package/src/image-generation.ts +8 -2
- package/src/index.ts +8019 -1799
- package/src/insights-usage.ts +679 -0
- package/src/interaction.ts +1102 -6
- package/src/knowledge-entries.ts +375 -0
- package/src/knowledge-preparation.ts +50 -0
- package/src/knowledge.ts +335 -0
- package/src/managed-auth-session-sets.ts +253 -0
- package/src/managed-sign-in-methods.ts +37 -0
- package/src/mcp-catalog-limits.ts +2 -0
- package/src/mcp-endpoint.ts +30 -0
- package/src/mcp-oauth.ts +66 -0
- package/src/modal-native-proof-v2.ts +398 -0
- package/src/model-availability.ts +22 -0
- package/src/model-connection-access.ts +17 -0
- package/src/model-context-inspector.ts +139 -0
- package/src/model-display.ts +195 -0
- package/src/model-picker-order.ts +97 -0
- package/src/organization-access.ts +176 -0
- package/src/organization-integration-policy.ts +54 -0
- package/src/organization-membership-lifecycle.ts +559 -0
- package/src/organization-model-usage.ts +72 -0
- package/src/organization-recovery.ts +186 -0
- package/src/organization-usage.ts +79 -0
- package/src/permissions.ts +58 -0
- package/src/personal-github.ts +267 -0
- package/src/plugin-discovery.ts +33 -0
- package/src/preference-registry.ts +20 -1
- package/src/product-analytics.ts +253 -0
- package/src/product-lifecycle-facts.ts +121 -0
- package/src/remember.ts +243 -0
- package/src/retained-output.ts +20 -3
- package/src/sandbox-file-artifacts.ts +73 -0
- package/src/sandbox-provider-command.ts +82 -0
- package/src/sandbox-recovery.ts +116 -0
- package/src/sandbox-snapshots.ts +142 -0
- package/src/session-final-reply.ts +16 -0
- package/src/session-goal-reports.ts +55 -0
- package/src/session-history-import.ts +159 -0
- package/src/session-list-entries.ts +91 -0
- package/src/session-mcp-projections.ts +273 -0
- package/src/session-message-search.ts +54 -0
- package/src/session-titles.ts +467 -0
- package/src/session-topology-primitives.ts +21 -0
- package/src/signup-attribution.ts +81 -0
- package/src/site-request-headers.test.ts +28 -0
- package/src/site-session-http.ts +63 -0
- package/src/skill-catalog-context.ts +50 -0
- package/src/skill-files.ts +52 -0
- package/src/skill-metadata.ts +40 -0
- package/src/skill-use.ts +77 -0
- package/src/skills.ts +136 -0
- package/src/slack-bot-scopes.ts +106 -42
- package/src/slack-rest-mcp.ts +194 -0
- package/src/slack-task-policy.ts +215 -0
- package/src/spreadsheet-artifact-commands.ts +12 -13
- package/src/subscription-account-pools.ts +44 -0
- package/src/task-notes.ts +105 -0
- package/src/tool-catalog.ts +155 -0
- package/src/tool-result-spill.ts +35 -0
- package/src/usage-allowances.ts +187 -0
- package/src/video-generation.ts +43 -6
- package/src/work-claims.ts +266 -0
- package/src/workspace-instruction-policies.ts +31 -0
- package/src/workspace-integration-wire.ts +99 -0
- package/src/workspace-integrations.ts +640 -0
- package/src/workspace-learning-administration.ts +88 -0
- package/src/workspace-learning-policy.ts +4 -3
- package/src/workspace-state.ts +16 -126
- package/src/xai-provider-account-authority.ts +38 -0
- package/dist/chunk-52SGB2QO.js.map +0 -1
- package/dist/chunk-5UDNP7AO.js.map +0 -1
- package/dist/chunk-BVGIYW7D.js +0 -11
- package/dist/chunk-BVGIYW7D.js.map +0 -1
- package/dist/chunk-FJBG5E4O.js.map +0 -1
- package/dist/chunk-H5BVCZKF.js.map +0 -1
- package/dist/chunk-LSB7GRLG.js.map +0 -1
- package/dist/chunk-TZ6YEYN4.js.map +0 -1
- package/dist/chunk-VA22KRHS.js +0 -15177
- package/dist/chunk-VA22KRHS.js.map +0 -1
- package/dist/chunk-Y3MLSLB4.js.map +0 -1
- /package/dist/{chunk-CADSX6UN.js.map → chunk-Y3KNXVTD.js.map} +0 -0
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Session, SessionListEntry } from "./index.js";
|
|
2
|
+
/** Explicit list projection. Detail/configuration remains available from getSession. */
|
|
3
|
+
export type SessionListEntryInput = Omit<SessionListEntry, "displayTitle" | "renameSeed" | "scheduledTaskId" | "siteOrigin" | "pinned" | "pinnedAt" | "pinVersion" | "unread" | "activelyWorking" | "attentionVersion" | "archived" | "archivedAt" | "archiveVersion"> & Partial<Pick<Session, "pinned" | "pinnedAt" | "pinVersion" | "unread" | "activelyWorking" | "attentionVersion" | "archived" | "archivedAt" | "archiveVersion">> & Pick<Session, "metadata" | "initialMessage">;
|
|
4
|
+
export declare function sessionListEntry(session: SessionListEntryInput): SessionListEntry;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import {
|
|
2
|
+
deriveAutomaticSessionTitlePreview,
|
|
3
|
+
deriveSessionDisplayTitle,
|
|
4
|
+
sessionTitleIsPending
|
|
5
|
+
} from "./chunk-2ACYHZFB.js";
|
|
6
|
+
|
|
7
|
+
// src/session-list-entries.ts
|
|
8
|
+
function sessionListEntry(session) {
|
|
9
|
+
const origin = session.metadata._opengeniSiteOrigin;
|
|
10
|
+
const siteOrigin = origin && typeof origin.siteId === "string" && /^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/i.test(origin.siteId) && typeof origin.title === "string" ? { siteId: origin.siteId, title: origin.title } : null;
|
|
11
|
+
const scheduledTaskId = session.metadata.scheduledTaskId;
|
|
12
|
+
return {
|
|
13
|
+
id: session.id,
|
|
14
|
+
workspaceId: session.workspaceId,
|
|
15
|
+
accountId: session.accountId,
|
|
16
|
+
status: session.status,
|
|
17
|
+
backgroundCommandActivity: session.backgroundCommandActivity,
|
|
18
|
+
hasSchedules: session.hasSchedules,
|
|
19
|
+
title: session.title,
|
|
20
|
+
titleSource: session.titleSource,
|
|
21
|
+
displayTitle: deriveSessionDisplayTitle(session),
|
|
22
|
+
renameSeed: sessionTitleIsPending(session) ? deriveAutomaticSessionTitlePreview(session.initialMessage) ?? "" : session.title?.trim() ?? "",
|
|
23
|
+
scheduledTaskId: typeof scheduledTaskId === "string" && scheduledTaskId.length > 0 ? scheduledTaskId : null,
|
|
24
|
+
siteOrigin,
|
|
25
|
+
createdBy: session.createdBy,
|
|
26
|
+
channelId: session.channelId,
|
|
27
|
+
parentSessionId: session.parentSessionId,
|
|
28
|
+
rootSessionId: session.rootSessionId,
|
|
29
|
+
effectiveControl: session.effectiveControl,
|
|
30
|
+
inputWait: session.inputWait,
|
|
31
|
+
lastSequence: session.lastSequence,
|
|
32
|
+
pinned: session.pinned ?? false,
|
|
33
|
+
pinnedAt: session.pinnedAt ?? null,
|
|
34
|
+
pinVersion: session.pinVersion ?? 0,
|
|
35
|
+
unread: session.unread ?? false,
|
|
36
|
+
activelyWorking: session.activelyWorking ?? false,
|
|
37
|
+
attentionVersion: session.attentionVersion ?? 0,
|
|
38
|
+
archived: session.archived ?? false,
|
|
39
|
+
archivedAt: session.archivedAt ?? null,
|
|
40
|
+
importedArchive: session.importedArchive,
|
|
41
|
+
archiveVersion: session.archiveVersion ?? 0,
|
|
42
|
+
treeStats: session.treeStats,
|
|
43
|
+
requiresActionSince: session.requiresActionSince,
|
|
44
|
+
createdAt: session.createdAt,
|
|
45
|
+
updatedAt: session.updatedAt
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
export {
|
|
49
|
+
sessionListEntry
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=session-list-entries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/session-list-entries.ts"],"sourcesContent":["import type { Session, SessionListEntry } from \"./index\";\nimport {\n deriveAutomaticSessionTitlePreview,\n deriveSessionDisplayTitle,\n sessionTitleIsPending,\n} from \"./session-titles\";\n\n/** Explicit list projection. Detail/configuration remains available from getSession. */\nexport type SessionListEntryInput = Omit<\n SessionListEntry,\n | \"displayTitle\"\n | \"renameSeed\"\n | \"scheduledTaskId\"\n | \"siteOrigin\"\n | \"pinned\"\n | \"pinnedAt\"\n | \"pinVersion\"\n | \"unread\"\n | \"activelyWorking\"\n | \"attentionVersion\"\n | \"archived\"\n | \"archivedAt\"\n | \"archiveVersion\"\n> &\n Partial<\n Pick<\n Session,\n | \"pinned\"\n | \"pinnedAt\"\n | \"pinVersion\"\n | \"unread\"\n | \"activelyWorking\"\n | \"attentionVersion\"\n | \"archived\"\n | \"archivedAt\"\n | \"archiveVersion\"\n >\n > &\n Pick<Session, \"metadata\" | \"initialMessage\">;\n\nexport function sessionListEntry(session: SessionListEntryInput): SessionListEntry {\n const origin = session.metadata._opengeniSiteOrigin as\n | { siteId?: unknown; title?: unknown }\n | undefined;\n const siteOrigin =\n origin &&\n typeof origin.siteId === \"string\" &&\n /^[\\da-f]{8}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{12}$/i.test(origin.siteId) &&\n typeof origin.title === \"string\"\n ? { siteId: origin.siteId, title: origin.title }\n : null;\n const scheduledTaskId = session.metadata.scheduledTaskId;\n return {\n id: session.id,\n workspaceId: session.workspaceId,\n accountId: session.accountId,\n status: session.status,\n backgroundCommandActivity: session.backgroundCommandActivity,\n hasSchedules: session.hasSchedules,\n title: session.title,\n titleSource: session.titleSource,\n displayTitle: deriveSessionDisplayTitle(session),\n renameSeed: sessionTitleIsPending(session)\n ? (deriveAutomaticSessionTitlePreview(session.initialMessage) ?? \"\")\n : (session.title?.trim() ?? \"\"),\n scheduledTaskId:\n typeof scheduledTaskId === \"string\" && scheduledTaskId.length > 0 ? scheduledTaskId : null,\n siteOrigin,\n createdBy: session.createdBy,\n channelId: session.channelId,\n parentSessionId: session.parentSessionId,\n rootSessionId: session.rootSessionId,\n effectiveControl: session.effectiveControl,\n inputWait: session.inputWait,\n lastSequence: session.lastSequence,\n pinned: session.pinned ?? false,\n pinnedAt: session.pinnedAt ?? null,\n pinVersion: session.pinVersion ?? 0,\n unread: session.unread ?? false,\n activelyWorking: session.activelyWorking ?? false,\n attentionVersion: session.attentionVersion ?? 0,\n archived: session.archived ?? false,\n archivedAt: session.archivedAt ?? null,\n importedArchive: session.importedArchive,\n archiveVersion: session.archiveVersion ?? 0,\n treeStats: session.treeStats,\n requiresActionSince: session.requiresActionSince,\n createdAt: session.createdAt,\n updatedAt: session.updatedAt,\n };\n}\n"],"mappings":";;;;;;;AAwCO,SAAS,iBAAiB,SAAkD;AACjF,QAAM,SAAS,QAAQ,SAAS;AAGhC,QAAM,aACJ,UACA,OAAO,OAAO,WAAW,YACzB,6DAA6D,KAAK,OAAO,MAAM,KAC/E,OAAO,OAAO,UAAU,WACpB,EAAE,QAAQ,OAAO,QAAQ,OAAO,OAAO,MAAM,IAC7C;AACN,QAAM,kBAAkB,QAAQ,SAAS;AACzC,SAAO;AAAA,IACL,IAAI,QAAQ;AAAA,IACZ,aAAa,QAAQ;AAAA,IACrB,WAAW,QAAQ;AAAA,IACnB,QAAQ,QAAQ;AAAA,IAChB,2BAA2B,QAAQ;AAAA,IACnC,cAAc,QAAQ;AAAA,IACtB,OAAO,QAAQ;AAAA,IACf,aAAa,QAAQ;AAAA,IACrB,cAAc,0BAA0B,OAAO;AAAA,IAC/C,YAAY,sBAAsB,OAAO,IACpC,mCAAmC,QAAQ,cAAc,KAAK,KAC9D,QAAQ,OAAO,KAAK,KAAK;AAAA,IAC9B,iBACE,OAAO,oBAAoB,YAAY,gBAAgB,SAAS,IAAI,kBAAkB;AAAA,IACxF;AAAA,IACA,WAAW,QAAQ;AAAA,IACnB,WAAW,QAAQ;AAAA,IACnB,iBAAiB,QAAQ;AAAA,IACzB,eAAe,QAAQ;AAAA,IACvB,kBAAkB,QAAQ;AAAA,IAC1B,WAAW,QAAQ;AAAA,IACnB,cAAc,QAAQ;AAAA,IACtB,QAAQ,QAAQ,UAAU;AAAA,IAC1B,UAAU,QAAQ,YAAY;AAAA,IAC9B,YAAY,QAAQ,cAAc;AAAA,IAClC,QAAQ,QAAQ,UAAU;AAAA,IAC1B,iBAAiB,QAAQ,mBAAmB;AAAA,IAC5C,kBAAkB,QAAQ,oBAAoB;AAAA,IAC9C,UAAU,QAAQ,YAAY;AAAA,IAC9B,YAAY,QAAQ,cAAc;AAAA,IAClC,iBAAiB,QAAQ;AAAA,IACzB,gBAAgB,QAAQ,kBAAkB;AAAA,IAC1C,WAAW,QAAQ;AAAA,IACnB,qBAAqB,QAAQ;AAAA,IAC7B,WAAW,QAAQ;AAAA,IACnB,WAAW,QAAQ;AAAA,EACrB;AACF;","names":[]}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import type { SessionGoalStatus, SessionStatus } from "./session-topology-primitives.js";
|
|
2
|
+
import type { WorkDiscoveryProjection } from "./work-claims.js";
|
|
3
|
+
import type { Session, SessionQueueSnapshot } from "./index.js";
|
|
4
|
+
/** MCP-only presentation choice. REST/SDK session shapes keep their own defaults. */
|
|
5
|
+
export type SessionMcpDetail = "compact" | "full";
|
|
6
|
+
/** Search evidence is inseparable from matching; presentation opts never weaken search. */
|
|
7
|
+
export declare function sessionMcpIncludesRelatedWork(options: {
|
|
8
|
+
detail?: SessionMcpDetail | undefined;
|
|
9
|
+
includeRelatedWork?: boolean | undefined;
|
|
10
|
+
query?: string | undefined;
|
|
11
|
+
subject?: unknown;
|
|
12
|
+
}): boolean;
|
|
13
|
+
/** A database prefix plus its exact Unicode code-point count, not a JS UTF-16 count. */
|
|
14
|
+
export declare function boundSessionMcpText(value: string | null, maxChars?: number, originalChars?: number | null): {
|
|
15
|
+
text: null;
|
|
16
|
+
truncated: boolean;
|
|
17
|
+
} | {
|
|
18
|
+
text: string;
|
|
19
|
+
truncated: boolean;
|
|
20
|
+
};
|
|
21
|
+
export type SessionMcpControlSource = {
|
|
22
|
+
state: string;
|
|
23
|
+
primaryBlocker: {
|
|
24
|
+
kind: "session" | "workspace";
|
|
25
|
+
sessionId?: string | undefined;
|
|
26
|
+
displayName: string;
|
|
27
|
+
displayNameOriginalChars?: number;
|
|
28
|
+
reason?: string | null;
|
|
29
|
+
} | null;
|
|
30
|
+
additionalBlockerCount: number;
|
|
31
|
+
};
|
|
32
|
+
/** Call only after related-access projection: this helper never grants ancestor access. */
|
|
33
|
+
export declare function compactSessionMcpPause(control: SessionMcpControlSource): {
|
|
34
|
+
state: string;
|
|
35
|
+
source?: {
|
|
36
|
+
kind: "session" | "workspace";
|
|
37
|
+
sessionId?: string;
|
|
38
|
+
displayName: string | null;
|
|
39
|
+
displayNameTruncated?: boolean;
|
|
40
|
+
reason?: string | null;
|
|
41
|
+
reasonTruncated?: boolean;
|
|
42
|
+
};
|
|
43
|
+
additionalBlockerCount?: number;
|
|
44
|
+
} | undefined;
|
|
45
|
+
export type SessionMcpListSource = {
|
|
46
|
+
channelId?: string | null;
|
|
47
|
+
id: string;
|
|
48
|
+
title: string | null;
|
|
49
|
+
titleOriginalChars?: number | null;
|
|
50
|
+
status: SessionStatus;
|
|
51
|
+
parentSessionId: string | null;
|
|
52
|
+
effectiveControl: SessionMcpControlSource;
|
|
53
|
+
goal: {
|
|
54
|
+
status: SessionGoalStatus;
|
|
55
|
+
text: string;
|
|
56
|
+
textOriginalChars?: number;
|
|
57
|
+
} | null;
|
|
58
|
+
updatedAt: string;
|
|
59
|
+
workDiscovery?: WorkDiscoveryProjection;
|
|
60
|
+
treeStats?: {
|
|
61
|
+
attentionDescendants: number;
|
|
62
|
+
pausedDescendants: number;
|
|
63
|
+
failedDescendants: number;
|
|
64
|
+
truncated: boolean;
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
/** Closed allowlist, shared by MCP adapters. Never spread a database/session object. */
|
|
68
|
+
export declare function compactSessionMcpListRow(session: SessionMcpListSource, includeRelatedWork?: boolean): {
|
|
69
|
+
id: string;
|
|
70
|
+
projectId?: string;
|
|
71
|
+
title: string | null;
|
|
72
|
+
status: "cancelled" | "failed" | "idle" | "queued" | "recovering" | "requires_action" | "running" | "waiting_capacity";
|
|
73
|
+
titleTruncated?: boolean;
|
|
74
|
+
parentSessionId?: string;
|
|
75
|
+
goal?: {
|
|
76
|
+
status: "active" | "completed" | "paused";
|
|
77
|
+
summary: string | null;
|
|
78
|
+
summaryTruncated?: boolean;
|
|
79
|
+
};
|
|
80
|
+
pause?: {
|
|
81
|
+
state: string;
|
|
82
|
+
source?: {
|
|
83
|
+
kind: "session" | "workspace";
|
|
84
|
+
sessionId?: string;
|
|
85
|
+
displayName: string | null;
|
|
86
|
+
displayNameTruncated?: boolean;
|
|
87
|
+
reason?: string | null;
|
|
88
|
+
reasonTruncated?: boolean;
|
|
89
|
+
};
|
|
90
|
+
additionalBlockerCount?: number;
|
|
91
|
+
};
|
|
92
|
+
attention?: {
|
|
93
|
+
requiresActionDescendants?: number;
|
|
94
|
+
pausedDescendants?: number;
|
|
95
|
+
failedDescendants?: number;
|
|
96
|
+
truncated?: boolean;
|
|
97
|
+
};
|
|
98
|
+
relatedWork?: {
|
|
99
|
+
claims: {
|
|
100
|
+
id: string;
|
|
101
|
+
sessionId: string;
|
|
102
|
+
subject: {
|
|
103
|
+
namespace: string;
|
|
104
|
+
type: "artifact" | "branch" | "ci_run" | "issue" | "other" | "pull_request" | "release" | "repository";
|
|
105
|
+
canonicalKey: string;
|
|
106
|
+
displayLabel: string | null;
|
|
107
|
+
};
|
|
108
|
+
role: "delivering" | "monitoring" | "reviewing" | "working";
|
|
109
|
+
state: "active" | "released" | "stale" | "superseded";
|
|
110
|
+
revision: number;
|
|
111
|
+
provenance: "explicit_agent" | "session_resource" | "system_lifecycle" | "trusted_integration" | "user_api";
|
|
112
|
+
version: {
|
|
113
|
+
kind: "artifact_version" | "branch_head" | "ci_run" | "git_commit" | "other" | "pull_request_head" | "release_version";
|
|
114
|
+
value: string;
|
|
115
|
+
} | null;
|
|
116
|
+
observedAt: string;
|
|
117
|
+
updatedAt: string;
|
|
118
|
+
settledAt: string | null;
|
|
119
|
+
}[];
|
|
120
|
+
claimsTruncated: boolean;
|
|
121
|
+
match: {
|
|
122
|
+
class: "exact_subject" | "fuzzy" | "goal" | "title";
|
|
123
|
+
field: "claim_key" | "claim_label" | "goal" | "subject" | "title";
|
|
124
|
+
scoreBand: "exact" | "related" | "strong";
|
|
125
|
+
claimId: string | null;
|
|
126
|
+
} | null;
|
|
127
|
+
possibleOverlap: boolean;
|
|
128
|
+
advisoryOnly: true;
|
|
129
|
+
noAdditionalAccess: true;
|
|
130
|
+
};
|
|
131
|
+
updatedAt: string;
|
|
132
|
+
};
|
|
133
|
+
export type SessionMcpMonitoringSource = {
|
|
134
|
+
goal: {
|
|
135
|
+
status: SessionGoalStatus;
|
|
136
|
+
text: string;
|
|
137
|
+
textOriginalChars: number;
|
|
138
|
+
evidence: string | null;
|
|
139
|
+
evidenceOriginalChars: number | null;
|
|
140
|
+
rationale: string | null;
|
|
141
|
+
rationaleOriginalChars: number | null;
|
|
142
|
+
pausedReason: string | null;
|
|
143
|
+
pausedReasonOriginalChars: number | null;
|
|
144
|
+
} | null;
|
|
145
|
+
progress: {
|
|
146
|
+
sequence: number;
|
|
147
|
+
text: string | null;
|
|
148
|
+
/** Null when a bounded encoded prefix cannot establish the original code-point count. */
|
|
149
|
+
originalChars: number | null;
|
|
150
|
+
textTruncated?: true;
|
|
151
|
+
occurredAt: string;
|
|
152
|
+
} | null;
|
|
153
|
+
wait: {
|
|
154
|
+
reason: string;
|
|
155
|
+
until: string;
|
|
156
|
+
} | null;
|
|
157
|
+
};
|
|
158
|
+
/** Closed management projection shared by adapters; never includes session configuration.
|
|
159
|
+
* Apply target/ancestor authorization projection to session before calling. */
|
|
160
|
+
export declare function compactSessionMcpDetail(session: Session, monitoring: SessionMcpMonitoringSource, queue: SessionQueueSnapshot | null): {
|
|
161
|
+
id: string;
|
|
162
|
+
projectId?: string;
|
|
163
|
+
title: string | null;
|
|
164
|
+
status: "cancelled" | "failed" | "idle" | "queued" | "recovering" | "requires_action" | "running" | "waiting_capacity";
|
|
165
|
+
titleTruncated?: boolean;
|
|
166
|
+
parentSessionId?: string;
|
|
167
|
+
activeTurnId?: string;
|
|
168
|
+
lastSequence: number;
|
|
169
|
+
goal?: {
|
|
170
|
+
status: "active" | "completed" | "paused";
|
|
171
|
+
summary: string | null;
|
|
172
|
+
summaryTruncated?: boolean;
|
|
173
|
+
evidence?: string | null;
|
|
174
|
+
evidenceTruncated?: true;
|
|
175
|
+
pausedReason?: string | null;
|
|
176
|
+
pausedReasonTruncated?: true;
|
|
177
|
+
rationale?: string | null;
|
|
178
|
+
rationaleTruncated?: true;
|
|
179
|
+
};
|
|
180
|
+
progress?: {
|
|
181
|
+
sequence: number;
|
|
182
|
+
text: string | null;
|
|
183
|
+
occurredAt: string;
|
|
184
|
+
textTruncated?: boolean;
|
|
185
|
+
};
|
|
186
|
+
pause?: {
|
|
187
|
+
state: string;
|
|
188
|
+
source?: {
|
|
189
|
+
kind: "session" | "workspace";
|
|
190
|
+
sessionId?: string;
|
|
191
|
+
displayName: string | null;
|
|
192
|
+
displayNameTruncated?: boolean;
|
|
193
|
+
reason?: string | null;
|
|
194
|
+
reasonTruncated?: boolean;
|
|
195
|
+
};
|
|
196
|
+
additionalBlockerCount?: number;
|
|
197
|
+
};
|
|
198
|
+
wait?: {
|
|
199
|
+
reason: string | null;
|
|
200
|
+
until: string;
|
|
201
|
+
reasonTruncated?: boolean;
|
|
202
|
+
};
|
|
203
|
+
queue?: {
|
|
204
|
+
queuedTurns: number;
|
|
205
|
+
pendingInputs: number;
|
|
206
|
+
stoppingPreviousAttempt?: boolean;
|
|
207
|
+
};
|
|
208
|
+
stopping?: {
|
|
209
|
+
attempts?: number;
|
|
210
|
+
backgroundCommands?: number;
|
|
211
|
+
};
|
|
212
|
+
updatedAt: string;
|
|
213
|
+
};
|
|
214
|
+
export type SessionMcpCompactListRow = ReturnType<typeof compactSessionMcpListRow>;
|
|
215
|
+
export type SessionMcpCompactDetail = ReturnType<typeof compactSessionMcpDetail>;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/** Literal Unicode case-insensitive search, without trimming or normalization. */
|
|
3
|
+
export declare const SessionMessageSearchRequest: z.ZodObject<{
|
|
4
|
+
query: z.ZodString;
|
|
5
|
+
sessionId: z.ZodOptional<z.ZodString>;
|
|
6
|
+
groupBy: z.ZodOptional<z.ZodLiteral<"session">>;
|
|
7
|
+
archiveStatus: z.ZodOptional<z.ZodEnum<{
|
|
8
|
+
active: "active";
|
|
9
|
+
all: "all";
|
|
10
|
+
archived: "archived";
|
|
11
|
+
}>>;
|
|
12
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
13
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
14
|
+
}, z.core.$strict>;
|
|
15
|
+
export type SessionMessageSearchRequest = z.infer<typeof SessionMessageSearchRequest>;
|
|
16
|
+
export declare const SessionMessageSearchMatch: z.ZodObject<{
|
|
17
|
+
sessionId: z.ZodString;
|
|
18
|
+
sessionTitle: z.ZodNullable<z.ZodString>;
|
|
19
|
+
eventId: z.ZodString;
|
|
20
|
+
sequence: z.ZodNumber;
|
|
21
|
+
turnId: z.ZodNullable<z.ZodString>;
|
|
22
|
+
role: z.ZodEnum<{
|
|
23
|
+
assistant: "assistant";
|
|
24
|
+
user: "user";
|
|
25
|
+
}>;
|
|
26
|
+
messageId: z.ZodNullable<z.ZodString>;
|
|
27
|
+
messageMatchOffset: z.ZodNumber;
|
|
28
|
+
snippet: z.ZodObject<{
|
|
29
|
+
text: z.ZodString;
|
|
30
|
+
matchStart: z.ZodNumber;
|
|
31
|
+
matchEnd: z.ZodNumber;
|
|
32
|
+
}, z.core.$strip>;
|
|
33
|
+
}, z.core.$strip>;
|
|
34
|
+
export type SessionMessageSearchMatch = z.infer<typeof SessionMessageSearchMatch>;
|
|
35
|
+
/** A bounded scan page, not necessarily a full page of matches. Continue even
|
|
36
|
+
* after an empty page while hasMore is true. Counts describe this live traversal,
|
|
37
|
+
* not a frozen snapshot; restart to reflect concurrent changes. All non-overlapping
|
|
38
|
+
* literal occurrences in user messages and completed assistant messages.
|
|
39
|
+
* With groupBy=session, matches and both matched counts describe one first-hit
|
|
40
|
+
* representative per matching session, not full message/occurrence totals.
|
|
41
|
+
*/
|
|
42
|
+
export declare const SessionMessageSearchResponse: z.ZodObject<{
|
|
43
|
+
matches: z.ZodArray<z.ZodObject<{
|
|
44
|
+
sessionId: z.ZodString;
|
|
45
|
+
sessionTitle: z.ZodNullable<z.ZodString>;
|
|
46
|
+
eventId: z.ZodString;
|
|
47
|
+
sequence: z.ZodNumber;
|
|
48
|
+
turnId: z.ZodNullable<z.ZodString>;
|
|
49
|
+
role: z.ZodEnum<{
|
|
50
|
+
assistant: "assistant";
|
|
51
|
+
user: "user";
|
|
52
|
+
}>;
|
|
53
|
+
messageId: z.ZodNullable<z.ZodString>;
|
|
54
|
+
messageMatchOffset: z.ZodNumber;
|
|
55
|
+
snippet: z.ZodObject<{
|
|
56
|
+
text: z.ZodString;
|
|
57
|
+
matchStart: z.ZodNumber;
|
|
58
|
+
matchEnd: z.ZodNumber;
|
|
59
|
+
}, z.core.$strip>;
|
|
60
|
+
}, z.core.$strip>>;
|
|
61
|
+
nextCursor: z.ZodNullable<z.ZodString>;
|
|
62
|
+
hasMore: z.ZodBoolean;
|
|
63
|
+
scannedMessages: z.ZodNumber;
|
|
64
|
+
matchedMessageCount: z.ZodNumber;
|
|
65
|
+
matchedOccurrenceCount: z.ZodNumber;
|
|
66
|
+
countIsExact: z.ZodBoolean;
|
|
67
|
+
}, z.core.$strip>;
|
|
68
|
+
export type SessionMessageSearchResponse = z.infer<typeof SessionMessageSearchResponse>;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/** Human-authored session titles keep the existing public API ceiling. */
|
|
2
|
+
export declare const SESSION_TITLE_MAX_CHARACTERS = 200;
|
|
3
|
+
/**
|
|
4
|
+
* Automatic titles are intentionally much shorter than the manual rename
|
|
5
|
+
* ceiling. This is measured in grapheme clusters so emoji and combining text
|
|
6
|
+
* are never split into malformed display strings.
|
|
7
|
+
*/
|
|
8
|
+
export declare const AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES = 80;
|
|
9
|
+
/**
|
|
10
|
+
* Safe durable title used until semantic generation succeeds. It contains no
|
|
11
|
+
* user prompt bytes, so provider failure/offline operation cannot leak a
|
|
12
|
+
* credential or leave a raw prompt prefix in navigation surfaces.
|
|
13
|
+
*/
|
|
14
|
+
export declare const AUTOMATIC_SESSION_TITLE_FALLBACK = "New conversation";
|
|
15
|
+
export declare const PROMPT_PREVIEW_SCAN_MAX_CODE_UNITS = 4096;
|
|
16
|
+
/**
|
|
17
|
+
* Whether a bounded automatic-title candidate contains a credential, URL, or
|
|
18
|
+
* opaque identifier that must stay out of navigation and other display-title
|
|
19
|
+
* surfaces. Callers handling an unbounded source must bound it before invoking
|
|
20
|
+
* this helper.
|
|
21
|
+
*/
|
|
22
|
+
export declare function containsSensitiveAutomaticSessionTitleValue(value: string): boolean;
|
|
23
|
+
/** Bound an already-normalized automatic-title candidate without splitting graphemes. */
|
|
24
|
+
export declare function boundAutomaticSessionTitle(value: string): string;
|
|
25
|
+
/**
|
|
26
|
+
* Normalize a model/system-authored title before it reaches durable session
|
|
27
|
+
* metadata. Human renames intentionally do not use this path.
|
|
28
|
+
*
|
|
29
|
+
* Returns null when the candidate is empty, only boilerplate, or appears to
|
|
30
|
+
* contain a credential/opaque prompt value. Callers should retain the current
|
|
31
|
+
* title (normally {@link AUTOMATIC_SESSION_TITLE_FALLBACK}) in that case.
|
|
32
|
+
*/
|
|
33
|
+
export declare function normalizeAutomaticSessionTitle(value: string): string | null;
|
|
34
|
+
export type SessionDisplayTitleInput = {
|
|
35
|
+
id?: string | null | undefined;
|
|
36
|
+
title?: string | null | undefined;
|
|
37
|
+
titleSource?: "user" | "agent" | null | undefined;
|
|
38
|
+
initialMessage?: string | null | undefined;
|
|
39
|
+
metadata?: Readonly<Record<string, unknown>> | undefined;
|
|
40
|
+
};
|
|
41
|
+
export type SessionDisplayTitleOptions = {
|
|
42
|
+
/** Optional metadata fields to try before the opening-prompt preview. */
|
|
43
|
+
metadataKeys?: readonly string[] | undefined;
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Derive a bounded, sensitive-safe preview from the opening prompt.
|
|
47
|
+
*
|
|
48
|
+
* Unsafe leading lines are skipped instead of forcing the whole session back
|
|
49
|
+
* to a generic label. This covers prompts that begin with a pasted URL or
|
|
50
|
+
* identifier followed by an ordinary natural-language request on the next
|
|
51
|
+
* line, without putting the rejected value into navigation surfaces.
|
|
52
|
+
*/
|
|
53
|
+
export declare function deriveAutomaticSessionTitlePreview(value: unknown): string | null;
|
|
54
|
+
/**
|
|
55
|
+
* Whether the durable title still represents the automatic-title pending state.
|
|
56
|
+
* A user-authored title always wins, even when its literal value is the marker.
|
|
57
|
+
*/
|
|
58
|
+
export declare function sessionTitleIsPending(input: SessionDisplayTitleInput): boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Derive the title a human-facing client should display for a session.
|
|
61
|
+
*
|
|
62
|
+
* A semantic agent title or human rename wins. While automatic naming is still
|
|
63
|
+
* pending, clients show a short, sensitive-safe preview of the opening prompt.
|
|
64
|
+
* If no safe prompt text exists, a UUID-derived reference keeps real sessions
|
|
65
|
+
* distinguishable without exposing prompt bytes. The durable pending marker is
|
|
66
|
+
* therefore an internal lifecycle value rather than the ordinary visible name.
|
|
67
|
+
*/
|
|
68
|
+
export declare function deriveSessionDisplayTitle(input: SessionDisplayTitleInput, options?: SessionDisplayTitleOptions): string;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import {
|
|
2
|
+
AUTOMATIC_SESSION_TITLE_FALLBACK,
|
|
3
|
+
AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES,
|
|
4
|
+
PROMPT_PREVIEW_SCAN_MAX_CODE_UNITS,
|
|
5
|
+
SESSION_TITLE_MAX_CHARACTERS,
|
|
6
|
+
boundAutomaticSessionTitle,
|
|
7
|
+
containsSensitiveAutomaticSessionTitleValue,
|
|
8
|
+
deriveAutomaticSessionTitlePreview,
|
|
9
|
+
deriveSessionDisplayTitle,
|
|
10
|
+
normalizeAutomaticSessionTitle,
|
|
11
|
+
sessionTitleIsPending
|
|
12
|
+
} from "./chunk-2ACYHZFB.js";
|
|
13
|
+
export {
|
|
14
|
+
AUTOMATIC_SESSION_TITLE_FALLBACK,
|
|
15
|
+
AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES,
|
|
16
|
+
PROMPT_PREVIEW_SCAN_MAX_CODE_UNITS,
|
|
17
|
+
SESSION_TITLE_MAX_CHARACTERS,
|
|
18
|
+
boundAutomaticSessionTitle,
|
|
19
|
+
containsSensitiveAutomaticSessionTitleValue,
|
|
20
|
+
deriveAutomaticSessionTitlePreview,
|
|
21
|
+
deriveSessionDisplayTitle,
|
|
22
|
+
normalizeAutomaticSessionTitle,
|
|
23
|
+
sessionTitleIsPending
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=session-titles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const SessionStatus: z.ZodEnum<{
|
|
3
|
+
cancelled: "cancelled";
|
|
4
|
+
failed: "failed";
|
|
5
|
+
idle: "idle";
|
|
6
|
+
queued: "queued";
|
|
7
|
+
recovering: "recovering";
|
|
8
|
+
requires_action: "requires_action";
|
|
9
|
+
running: "running";
|
|
10
|
+
waiting_capacity: "waiting_capacity";
|
|
11
|
+
}>;
|
|
12
|
+
export type SessionStatus = z.infer<typeof SessionStatus>;
|
|
13
|
+
export declare const SessionGoalStatus: z.ZodEnum<{
|
|
14
|
+
active: "active";
|
|
15
|
+
completed: "completed";
|
|
16
|
+
paused: "paused";
|
|
17
|
+
}>;
|
|
18
|
+
export type SessionGoalStatus = z.infer<typeof SessionGoalStatus>;
|
|
19
|
+
/** Physical ceiling of the PostgreSQL integer columns that persist depth policy. */
|
|
20
|
+
export declare const MAX_NESTED_AGENT_DEPTH = 2147483647;
|
|
21
|
+
export declare const NestedAgentDepthValue: z.ZodNumber;
|
|
22
|
+
export type NestedAgentDepthValue = z.infer<typeof NestedAgentDepthValue>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* First-touch marketing parameters accepted on the web app landing URL. The
|
|
4
|
+
* browser keeps them in memory only and forwards them with a sign-up request,
|
|
5
|
+
* so nothing is written to the device before analytics consent.
|
|
6
|
+
*/
|
|
7
|
+
export declare const SIGNUP_ATTRIBUTION_URL_PARAMETERS: {
|
|
8
|
+
readonly utmSource: "utm_source";
|
|
9
|
+
readonly utmMedium: "utm_medium";
|
|
10
|
+
readonly utmCampaign: "utm_campaign";
|
|
11
|
+
readonly utmContent: "utm_content";
|
|
12
|
+
readonly ref: "ref";
|
|
13
|
+
};
|
|
14
|
+
/** Maximum retained length of one attribution value. */
|
|
15
|
+
export declare const SIGNUP_ATTRIBUTION_VALUE_MAX_LENGTH = 100;
|
|
16
|
+
/**
|
|
17
|
+
* Campaign labels are marketer-chosen slug tokens such as `hero-cta` or
|
|
18
|
+
* `opengeni.ai`. The closed character set has no space, `@`, `:`, `/`, `?`,
|
|
19
|
+
* `=`, or `%`, so free text, email addresses, and URL payloads are rejected
|
|
20
|
+
* before they reach any sink. The web boot capture and the session-set social
|
|
21
|
+
* start request mirror this rule; tests pin each copy to it.
|
|
22
|
+
*/
|
|
23
|
+
export declare const SIGNUP_ATTRIBUTION_VALUE_PATTERN: RegExp;
|
|
24
|
+
export declare const SignupAttribution: z.ZodObject<{
|
|
25
|
+
utmSource: z.ZodOptional<z.ZodString>;
|
|
26
|
+
utmMedium: z.ZodOptional<z.ZodString>;
|
|
27
|
+
utmCampaign: z.ZodOptional<z.ZodString>;
|
|
28
|
+
utmContent: z.ZodOptional<z.ZodString>;
|
|
29
|
+
ref: z.ZodOptional<z.ZodString>;
|
|
30
|
+
}, z.core.$strict>;
|
|
31
|
+
export type SignupAttribution = z.infer<typeof SignupAttribution>;
|
|
32
|
+
/** Closed acquisition channels reported by server-side sign-up metrics. */
|
|
33
|
+
export declare const SIGNUP_ACQUISITION_SOURCES: readonly ["producthunt", "website", "direct", "other"];
|
|
34
|
+
export type SignupAcquisitionSource = (typeof SIGNUP_ACQUISITION_SOURCES)[number];
|
|
35
|
+
/**
|
|
36
|
+
* Normalize untrusted first-touch attribution to a closed channel. Missing
|
|
37
|
+
* attribution is `direct`; malformed or unrecognized attribution is `other`.
|
|
38
|
+
*/
|
|
39
|
+
export declare function signupAcquisitionSource(input: unknown): SignupAcquisitionSource;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** A Site/Codemode SDK request named a route outside the proxied surface. */
|
|
2
|
+
export declare class SiteSessionPathError extends Error {
|
|
3
|
+
readonly code = "site_session_path_unsupported";
|
|
4
|
+
constructor();
|
|
5
|
+
}
|
|
6
|
+
/** Route browser/preview SDK requests to the host workspace. This is a URL
|
|
7
|
+
* boundary, not an endpoint or HTTP-method allowlist. Ordinary API handlers
|
|
8
|
+
* authorize every operation with the viewer or agent's existing authority. */
|
|
9
|
+
export declare function siteSessionPath(path: string, workspaceId: string, _method?: string, siteId?: string): string;
|
|
10
|
+
/** Preserve SDK request semantics while the host supplies identity and transport headers. */
|
|
11
|
+
export declare function siteRequestHeaders(input: HeadersInit): Headers;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Durable, model-visible catalog context. Text markers survive SDK/provider replay. */
|
|
2
|
+
export declare const SKILL_CATALOG_CONTEXT_PREFIX = "<opengeni_skill_catalog>\n";
|
|
3
|
+
export declare const SKILL_CATALOG_CONTEXT_SUFFIX = "\n</opengeni_skill_catalog>";
|
|
4
|
+
export declare function skillCatalogContextItem(catalog: string): Record<string, unknown>;
|
|
5
|
+
/** Accept the Chat Completions projection and SDK text-part normalization too. */
|
|
6
|
+
export declare function readSkillCatalogContext(item: Record<string, unknown>): string | null;
|
|
7
|
+
export declare function latestSkillCatalogContext(items: readonly Record<string, unknown>[]): Record<string, unknown> | undefined;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Shared text-folder limits for API admission, runtime imports and checkout. */
|
|
2
|
+
export declare const SKILL_MAX_FILES = 1024;
|
|
3
|
+
export declare const SKILL_MAX_FILE_BYTES: number;
|
|
4
|
+
export declare const SKILL_MAX_TOTAL_BYTES: number;
|
|
5
|
+
export declare function isSafeSkillRelativePath(path: string): boolean;
|
|
6
|
+
/** Validates bytes, not extensions. Does not rewrite text or interpret metadata. */
|
|
7
|
+
export declare function validateSkillTextFiles(files: readonly {
|
|
8
|
+
path: string;
|
|
9
|
+
content: string;
|
|
10
|
+
}[]): {
|
|
11
|
+
totalBytes: number;
|
|
12
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** The one interpretation of Skill metadata for imports, writes and migration. */
|
|
2
|
+
export declare function parseSkillFrontmatter(markdown: string): {
|
|
3
|
+
name: string | null;
|
|
4
|
+
description: string | null;
|
|
5
|
+
};
|
|
6
|
+
export declare function readSkillMetadata(markdown: string): {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* `_meta` key of the content-free Skill-use fact on a model `skill_read`
|
|
4
|
+
* result. MCP `_meta` never reaches the model: it survives only into the
|
|
5
|
+
* `agent.toolCall.output` event projection, never into model history.
|
|
6
|
+
*/
|
|
7
|
+
export declare const SKILL_USE_META_KEY: "opengeni/skillUse";
|
|
8
|
+
/** Where the Skill a read resolved to comes from. `personal` is a user-scope Skill. */
|
|
9
|
+
export declare const SkillUseSource: z.ZodEnum<{
|
|
10
|
+
builtin: "builtin";
|
|
11
|
+
organization: "organization";
|
|
12
|
+
personal: "personal";
|
|
13
|
+
session: "session";
|
|
14
|
+
workspace: "workspace";
|
|
15
|
+
}>;
|
|
16
|
+
export type SkillUseSource = z.infer<typeof SkillUseSource>;
|
|
17
|
+
/**
|
|
18
|
+
* What a `skill_read` returned: `full` is the default SKILL.md read, `files`
|
|
19
|
+
* explicit paths, `list` a path inventory, and `already_in_context` the short
|
|
20
|
+
* repeat receipt. `refused` means the read returned an error instead of Skill
|
|
21
|
+
* text; it has no result, so it appears only in metrics.
|
|
22
|
+
*/
|
|
23
|
+
export declare const SkillReadKind: z.ZodEnum<{
|
|
24
|
+
already_in_context: "already_in_context";
|
|
25
|
+
files: "files";
|
|
26
|
+
full: "full";
|
|
27
|
+
list: "list";
|
|
28
|
+
refused: "refused";
|
|
29
|
+
}>;
|
|
30
|
+
export type SkillReadKind = z.infer<typeof SkillReadKind>;
|
|
31
|
+
/**
|
|
32
|
+
* Ids, digests, and counts only. Never Skill text, user text, or a Skill's
|
|
33
|
+
* title or description. `label` is reserved for a platform display label of a
|
|
34
|
+
* built-in; user-authored Skills never set it. This is the writer's closed
|
|
35
|
+
* shape: an unknown field fails the parse, so nothing else can be attached.
|
|
36
|
+
*/
|
|
37
|
+
export declare const SkillUse: z.ZodObject<{
|
|
38
|
+
id: z.ZodString;
|
|
39
|
+
source: z.ZodEnum<{
|
|
40
|
+
builtin: "builtin";
|
|
41
|
+
organization: "organization";
|
|
42
|
+
personal: "personal";
|
|
43
|
+
session: "session";
|
|
44
|
+
workspace: "workspace";
|
|
45
|
+
}>;
|
|
46
|
+
label: z.ZodOptional<z.ZodString>;
|
|
47
|
+
contentSha256: z.ZodOptional<z.ZodString>;
|
|
48
|
+
revisionId: z.ZodOptional<z.ZodString>;
|
|
49
|
+
kind: z.ZodEnum<{
|
|
50
|
+
already_in_context: "already_in_context";
|
|
51
|
+
files: "files";
|
|
52
|
+
full: "full";
|
|
53
|
+
list: "list";
|
|
54
|
+
}>;
|
|
55
|
+
bytes: z.ZodNumber;
|
|
56
|
+
inIndex: z.ZodBoolean;
|
|
57
|
+
searchedThisTurn: z.ZodBoolean;
|
|
58
|
+
}, z.core.$strict>;
|
|
59
|
+
export type SkillUse = z.infer<typeof SkillUse>;
|
|
60
|
+
/** The Skill-use fact on a tool result or its event projection, when present and valid. */
|
|
61
|
+
export declare function skillUseFromToolOutput(output: unknown): SkillUse | null;
|